summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorPatrick Gartung <gartung@fnal.gov>2020-03-16 08:42:23 -0500
committerGitHub <noreply@github.com>2020-03-16 08:42:23 -0500
commit17e4df1e41998c1f5f777127c1157cdd7c61fe90 (patch)
treed39399cdff93a4810f21bae74233a7ca00f6f11e /share
parent0301ec32b42d46ffb1f497112be71e3406eb4ce6 (diff)
downloadspack-17e4df1e41998c1f5f777127c1157cdd7c61fe90.tar.gz
spack-17e4df1e41998c1f5f777127c1157cdd7c61fe90.tar.bz2
spack-17e4df1e41998c1f5f777127c1157cdd7c61fe90.tar.xz
spack-17e4df1e41998c1f5f777127c1157cdd7c61fe90.zip
Buildcache: Install into non-default directory layouts (#13797)
* Buildcache: Install into non-default directory layouts Store a dictionary mapping of original dependency prefixes to dependency hashes Use the loaded spec to grab the new dependency prefixes in the new directory layout. Map the original dependency prefixes to the new dependency prefixes using the dependency hashes. Use the dependency prefixes map to replace original rpaths with new rpaths preserving the order. For mach-o binaries, use the dependency prefixes map to replace the dependency library entires for libraries and executables and the replace the library id for libraries. On Linux, patchelf is used to replace the rpaths of elf binaries. On macOS, install_name_tool is used to replace the rpaths and dependency libraries of mach-o binaries and the id of mach-o libraries. On Linux, macholib is used to replace the dependency libraries of mach-o binaries and the id of mach-o libraries. Binary text with padding replacement is attempted for all binaries for the following paths: spack layout root spack prefix sbang script location dependency prefixes package prefix Text replacement is attempted for all text files using the paths above. Symbolic links to the absolute path of the package install prefix are replaced, all others produce warnings.
Diffstat (limited to 'share')
0 files changed, 0 insertions, 0 deletions