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',
|
filter_file(r"'@.*@'", "'@[[:alnum:]]*@'", 'libjava/configure',
|
||||||
string=True)
|
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'))
|
enabled_languages = set(('c', 'c++', 'fortran', 'java', 'objc'))
|
||||||
|
|
||||||
if spec.satisfies("@4.7.1:") and sys.platform != 'darwin' and \
|
if spec.satisfies("@4.7.1:") and sys.platform != 'darwin' and \
|
||||||
@ -172,6 +176,11 @@ def write_rpath_specs(self):
|
|||||||
for line in lines:
|
for line in lines:
|
||||||
out.write(line + "\n")
|
out.write(line + "\n")
|
||||||
if line.startswith("*link:"):
|
if line.startswith("*link:"):
|
||||||
out.write("-rpath %s/lib:%s/lib64 \\\n" %
|
if sys.platform == 'darwin':
|
||||||
(self.prefix, self.prefix))
|
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)
|
set_install_permissions(specs_file)
|
||||||
|
Loading…
Reference in New Issue
Block a user