summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>2004-01-03 20:23:51 +0000
committerjlam <jlam@pkgsrc.org>2004-01-03 20:23:51 +0000
commit24f7929dc215b42dce86fc5cd36d848a3e54389c (patch)
tree909c29693f96352506c82950230053b537ac2650
parent6d9af8d68d56c4569329a5d06d3a7e121c31268a (diff)
downloadpkgsrc-24f7929dc215b42dce86fc5cd36d848a3e54389c.tar.gz
Extend the "l" command by allowing changing "-lfoo" into "-lbar -lbaz" by
saying "l:foo:bar:baz".
-rw-r--r--mk/buildlink3/gen-transform.sh17
1 files changed, 12 insertions, 5 deletions
diff --git a/mk/buildlink3/gen-transform.sh b/mk/buildlink3/gen-transform.sh
index 046639951f0..348e992602f 100644
--- a/mk/buildlink3/gen-transform.sh
+++ b/mk/buildlink3/gen-transform.sh
@@ -1,6 +1,6 @@
#!@BUILDLINK_SHELL@
#
-# $NetBSD: gen-transform.sh,v 1.3 2003/09/03 16:35:01 jlam Exp $
+# $NetBSD: gen-transform.sh,v 1.4 2004/01/03 20:23:51 jlam Exp $
transform="@_BLNK_TRANSFORM_SEDFILE@"
untransform="@_BLNK_UNTRANSFORM_SEDFILE@"
@@ -15,7 +15,7 @@ untransform="@_BLNK_UNTRANSFORM_SEDFILE@"
# depot:src:dst translates "src/<dir>/" into "dst/"
# I:src:dst translates "-Isrc" into "-Idst"
# L:src:dst translates "-Lsrc" into "-Ldst"
-# l:foo:bar translates "-lfoo" into "-lbar"
+# l:foo:bar[:baz1...] translates "-lfoo" into "-lbar [-lbaz...]"
# P:src:dst translates "src/libfoo.{a,la}" into
# "dst/libfoo.{a,la}"
# p:path translates "path/*/libfoo.so" into
@@ -95,10 +95,17 @@ EOF
l)
case "$action" in
transform|untransform)
+ shift
+ fromlib="-l$1"; shift
+ tolibs="-l$1"; shift
+ while [ $# -gt 0 ]; do
+ tolibs="$tolibs -l$1"
+ shift
+ done
@CAT@ >> $sedfile << EOF
-s|-$1$2\([ "':;]\)|-$1$3\1|g
-s|-$1$2$|-$1$3|g
-s|-$1$2/|-$1$3/|g
+s|$fromlib\([ "':;]\)|$tolibs\1|g
+s|$fromlib|$tolibs|g
+s|$fromlib/|$tolibs/|g
EOF
;;
esac