summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorjlam <jlam>2004-02-09 04:35:12 +0000
committerjlam <jlam>2004-02-09 04:35:12 +0000
commitd391dfce20004f4233dcf2f5451a2a5464c85f87 (patch)
tree87a7a719bbdea1f1794f6a715b8891c22a9a2943 /mk
parentf1f5719e740c9a779a5c85134451cc673e8c4d32 (diff)
downloadpkgsrc-d391dfce20004f4233dcf2f5451a2a5464c85f87.tar.gz
Darwin's special GCC also uses -dylib_file and -dylib_install_name in
similar ways to -install_name, and all need the subsequent argument to be protected from /path/shlib -> -L/path -lshlib transformations.
Diffstat (limited to 'mk')
-rw-r--r--mk/buildlink3/marshall15
1 files changed, 10 insertions, 5 deletions
diff --git a/mk/buildlink3/marshall b/mk/buildlink3/marshall
index 8405ac14cf5..3af3040ac30 100644
--- a/mk/buildlink3/marshall
+++ b/mk/buildlink3/marshall
@@ -1,4 +1,4 @@
-# $NetBSD: marshall,v 1.7 2004/01/15 09:59:29 jlam Exp $
+# $NetBSD: marshall,v 1.8 2004/02/09 04:35:12 jlam Exp $
#
# Handle cases where multiple consecutive arguments must be processed
# together, either by merging the arguments or "skipping" the extra
@@ -30,12 +30,17 @@ case $arg in
skipargs=1
;;
#
-# Darwin's special GCC uses "-install_name /path/shlib" to indicate
-# the final installed location for the named shared library, and we
-# need to protect the full path from "/path/shlib" -> "-L/path -lshlib"
+# Darwin's special GCC uses:
+#
+# -dylib_file /path/shlib:/path2/shlib
+# -dylib_install_name /path/shlib
+# -install_name /path/shlib
+#
+# to pass the installed locations for the shared libraries to the linker,
+# and we need to protect the full path from "/path/shlib" -> "-L/path -lshlib"
# transformation.
#
--install_name)
+-dylib_file|-dylib_install_name|-install_name)
skipargs=1
;;
esac