Make libgcc_s relocatable on Macos by adding @rpath to installname (#1671)
* Make libgcc_s relocatable * spack specifies full path to lib64 * don't need trailing / * setting rpath is different on macos * add -headerpad_max_install_names linker options * formatting fixes * Add Adam's recommendation
This commit is contained in:
parent
7baefa83b9
commit
4afb7a729c
@ -92,6 +92,10 @@ def configure_args(self):
|
||||
filter_file(r"'@.*@'", "'@[[:alnum:]]*@'", 'libjava/configure',
|
||||
string=True)
|
||||
|
||||
# Make libgcc_s relocatable
|
||||
filter_file(r"@shlib_slibdir@", "@rpath",
|
||||
'libgcc/config/t-slibgcc-darwin', string=True)
|
||||
|
||||
enabled_languages = set(('c', 'c++', 'fortran', 'java', 'objc'))
|
||||
|
||||
if spec.satisfies("@4.7.1:") and sys.platform != 'darwin' and \
|
||||
@ -172,6 +176,11 @@ def write_rpath_specs(self):
|
||||
for line in lines:
|
||||
out.write(line + "\n")
|
||||
if line.startswith("*link:"):
|
||||
out.write("-rpath %s/lib:%s/lib64 \\\n" %
|
||||
(self.prefix, self.prefix))
|
||||
if sys.platform == 'darwin':
|
||||
out.write("-rpath %s/lib -rpath %s/lib64 "
|
||||
r"-headerpad_max_install_names \n" %
|
||||
(self.prefix, self.prefix))
|
||||
else:
|
||||
out.write(r"-rpath %s/lib:%s/lib64 \n" %
|
||||
(self.prefix, self.prefix))
|
||||
set_install_permissions(specs_file)
|
||||
|
Loading…
Reference in New Issue
Block a user