summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorjlam <jlam>2003-11-25 14:44:39 +0000
committerjlam <jlam>2003-11-25 14:44:39 +0000
commit9df29e05df794cc9371eaedcd8cc5bf3ea5db2b9 (patch)
treeac902c95f49164a6fe5f0faa05c1328463cb5648 /mk
parent92d52adacc20dd62e910810225c8b8d72367cf01 (diff)
downloadpkgsrc-9df29e05df794cc9371eaedcd8cc5bf3ea5db2b9.tar.gz
If we're linking a shared library by "cc -shared -o /srcdir/shlib", we
need to protect the full path after "-o" from being transformed from "/srcdir/shlib" to "-L/srcdir -lshlib". This fixes building graphics/freetype2, which uses lots of full paths to sources and objects.
Diffstat (limited to 'mk')
-rw-r--r--mk/buildlink3/marshall10
1 files changed, 9 insertions, 1 deletions
diff --git a/mk/buildlink3/marshall b/mk/buildlink3/marshall
index 36c2c1edfd1..6c6e2512fb5 100644
--- a/mk/buildlink3/marshall
+++ b/mk/buildlink3/marshall
@@ -1,4 +1,4 @@
-# $NetBSD: marshall,v 1.5 2003/10/09 08:19:47 jlam Exp $
+# $NetBSD: marshall,v 1.6 2003/11/25 14:44:39 jlam Exp $
#
# Handle cases where multiple consecutive arguments must be processed
# together, either by merging the arguments or "skipping" the extra
@@ -16,6 +16,14 @@ case $arg in
shift
;;
#
+# If we're linking a shared library by "cc -shared -o /srcdir/shlib",
+# we need to protect the full path after "-o" from being transformed
+# from "/srcdir/shlib" to "-L/srcdir -lshlib"
+#
+-o)
+ 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"