ENH: installation helpers
---- install-dirs: a general directory installer Copy installs non-binary (platform) directories. Eg, install-dirs -prefix=... -devel install-dirs -prefix=... -default -no-app ---- install-platform: a platform (binary) installer This is primarily driven by the need to install into system mpi directories. The problem noted in issue #1893 is caused by the rpm-mpi-hooks (fedora and redhat-8). For the additional mpi library qualifier (openmpi-x86_64) to be added to the requirements, the mpi-specific libraries (eg, libPstream.so) need to be installed in the mpi system directory (eg, /usr/lib64/openmpi). However, then need symlinks from the system locations back to our local directories to ensure that the libraries are correctly found via our LD_LIBRARY_PATH and we don't get dummy libraries. ---- update-mpi-links: a post-install update hook Expected paths are registered as persistent information into the hook during packaging. Triggering the hook after installation completes the creation of the symlinks. Normal usage, ``` prefix="/tmp/local-install/openfoam" bin/tools/install-dirs -prefix="$prefix" -common bin/tools/install-platform -prefix="$prefix" ``` Installs - /tmp/local-install/openfoam/META-INFO - /tmp/local-install/openfoam/bin - /tmp/local-install/openfoam/etc - /tmp/local-install/openfoam/platforms/linux64GccDPInt32Opt/bin - /tmp/local-install/openfoam/platforms/linux64GccDPInt32Opt/lib Can also place architecture-dependent bits elsewhere, ``` prefix="/tmp/local-install/openfoam" multi_arch="$(dpkg-architecture -qDEB_TARGET_MULTIARCH)" bin/tools/install-dirs -prefix="$prefix" -common bin/tools/install-platform -exec-prefix="$prefix/$multi_arch" ``` Installs - /tmp/local-install/openfoam/META-INFO - /tmp/local-install/openfoam/bin - /tmp/local-install/openfoam/etc - /tmp/local-install/openfoam/x86_64-linux-gnu/bin - /tmp/local-install/openfoam/x86_64-linux-gnu/lib Can use it to flatten out platforms entirely, ``` prefix="/tmp/local-install/openfoam" bin/tools/install-dirs -prefix="$prefix" -common bin/tools/install-platform -exec-prefix="$prefix" ``` Installs - /tmp/local-install/openfoam/META-INFO - /tmp/local-install/openfoam/bin - /tmp/local-install/openfoam/etc - /tmp/local-install/openfoam/lib
Please register or sign in to comment