diff options
author | jlam <jlam@pkgsrc.org> | 2001-10-02 06:37:55 +0000 |
---|---|---|
committer | jlam <jlam@pkgsrc.org> | 2001-10-02 06:37:55 +0000 |
commit | f49b05e650e8cd4011e4bab40fe9c9e5411789c6 (patch) | |
tree | 8261d3b29aeaaf436cdfb6bbe590e453c618f1e3 /lang/perl5 | |
parent | c39dd73b007c4a67097f5a119687b6538f4f4482 (diff) | |
download | pkgsrc-f49b05e650e8cd4011e4bab40fe9c9e5411789c6.tar.gz |
Teach the ExtUtils modules (the ones that create Makefiles for perl
modules) about -Wl,-R. We cause -Wl,-R/path/to/libdir in LIBS settings
to now get propagated correctly to the link command for shared modules.
The rpath flag is also silently coerced to start with -Wl,-R or -R
depending on the contents of ${LDDLFLAGS} to deal with either cc or ld
being invoked.
Diffstat (limited to 'lang/perl5')
-rw-r--r-- | lang/perl5/distinfo | 3 | ||||
-rw-r--r-- | lang/perl5/patches/patch-af | 35 |
2 files changed, 37 insertions, 1 deletions
diff --git a/lang/perl5/distinfo b/lang/perl5/distinfo index fd5b2c55397..3ad4cbb5360 100644 --- a/lang/perl5/distinfo +++ b/lang/perl5/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.6 2001/10/01 07:05:11 jlam Exp $ +$NetBSD: distinfo,v 1.7 2001/10/02 06:37:55 jlam Exp $ SHA1 (perl-5.6.1.tar.gz) = c718b38685f90d51a9a6b1b008de0d7d198c0744 Size (perl-5.6.1.tar.gz) = 5983695 bytes @@ -7,3 +7,4 @@ SHA1 (patch-ab) = f5fb048313fd3e80dd7ad06fc4def1cbb7f0e209 SHA1 (patch-ac) = dfebafeec171c86de3d6105e5543270a30f82691 SHA1 (patch-ad) = 7a3ca903d958026473f593fdeb172f86f2ef66d2 SHA1 (patch-ae) = 677797f38279b7602fc5bbac8ee80c0e09f6e285 +SHA1 (patch-af) = 94d91fba0731c9ee43b3e544f81cc9367a75a77c diff --git a/lang/perl5/patches/patch-af b/lang/perl5/patches/patch-af new file mode 100644 index 00000000000..b205006e87d --- /dev/null +++ b/lang/perl5/patches/patch-af @@ -0,0 +1,35 @@ +$NetBSD: patch-af,v 1.11 2001/10/02 06:37:56 jlam Exp $ + +--- lib/ExtUtils/Liblist.pm.orig Thu Feb 22 21:57:55 2001 ++++ lib/ExtUtils/Liblist.pm +@@ -68,20 +68,28 @@ + foreach $thislib (split ' ', $potential_libs){ + + # Handle possible linker path arguments. +- if ($thislib =~ s/^(-[LR])//){ # save path flag type ++ if ($thislib =~ s/^(-[LR]|-Wl,-R)//){ # save path flag type + my($ptype) = $1; + unless (-d $thislib){ + warn "$ptype$thislib ignored, directory does not exist\n" + if $verbose; + next; + } ++ my($rtype) = $ptype; ++ if (($ptype eq '-R') or ($ptype eq '-Wl,-R')) { ++ if ($Config{'lddlflags'} =~ /-Wl,-R/) { ++ $rtype = '-Wl,-R'; ++ } elsif ($Config{'lddlflags'} =~ /-R/) { ++ $rtype = '-R'; ++ } ++ } + unless ($self->file_name_is_absolute($thislib)) { + warn "Warning: $ptype$thislib changed to $ptype$pwd/$thislib\n"; + $thislib = $self->catdir($pwd,$thislib); + } + push(@searchpath, $thislib); + push(@extralibs, "$ptype$thislib"); +- push(@ldloadlibs, "$ptype$thislib"); ++ push(@ldloadlibs, "$rtype$thislib"); + next; + } + |