summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeoffrey Oxberry <goxberry@gmail.com>2018-09-19 02:48:53 +0100
committerscheibelp <scheibel1@llnl.gov>2018-09-18 18:48:53 -0700
commitc971f6f1ebff8f263ff17ac9dbd777e664e37ed9 (patch)
tree6f9af6ca257a8d9768f5c0c15acf35174a0acceb
parentd14971b06109d97add4b62ffe2dee00c3916ba8a (diff)
downloadspack-c971f6f1ebff8f263ff17ac9dbd777e664e37ed9.tar.gz
spack-c971f6f1ebff8f263ff17ac9dbd777e664e37ed9.tar.bz2
spack-c971f6f1ebff8f263ff17ac9dbd777e664e37ed9.tar.xz
spack-c971f6f1ebff8f263ff17ac9dbd777e664e37ed9.zip
apple-libunwind: update path to library (#9265)
-rw-r--r--var/spack/repos/builtin/packages/apple-libunwind/package.py20
1 files changed, 17 insertions, 3 deletions
diff --git a/var/spack/repos/builtin/packages/apple-libunwind/package.py b/var/spack/repos/builtin/packages/apple-libunwind/package.py
index 1aacf98c2b..b77301359a 100644
--- a/var/spack/repos/builtin/packages/apple-libunwind/package.py
+++ b/var/spack/repos/builtin/packages/apple-libunwind/package.py
@@ -66,10 +66,24 @@ class AppleLibunwind(Package):
@property
def libs(self):
- """ Export the Apple libunwind library
+ """Export the Apple libunwind library. The Apple libunwind library
+ cannot be linked to directly using an absolute path; doing so
+ will cause the linker to throw an error 'cannot link directly
+ with /usr/lib/system/libunwind.dylib' and the linker will
+ suggest linking with System.framework instead. Linking to this
+ framework is equivalent to linking with libSystem.dylib, which
+ can be confirmed on a macOS system by executing at a terminal
+ the command `ls -l
+ /System/Library/Frameworks/System.Framework` -- the file
+ "System" is a symlink to `/usr/lib/libSystem.B.dylib`, and
+ `/usr/lib/libSystem.dylib` also symlinks to this file.
+
+ Running `otool -L /usr/lib/libSystem.dylib` confirms that
+ it will link dynamically to `/usr/lib/system/libunwind.dylib`.
+
"""
- libs = find_libraries('libunwind',
- join_path(self.prefix.lib, 'system'),
+ libs = find_libraries('libSystem',
+ self.prefix.lib,
shared=True, recursive=False)
if libs:
return libs