diff options
author | jlam <jlam@pkgsrc.org> | 2003-06-23 07:45:01 +0000 |
---|---|---|
committer | jlam <jlam@pkgsrc.org> | 2003-06-23 07:45:01 +0000 |
commit | 1c480293dde95a231de4e796d6d8b7e6de3a20b7 (patch) | |
tree | 34aebac50a6368ae61faefc1d9e5fe12ef96b2d6 /lang | |
parent | 168a82be23e7ea66ea4b700ba61019054dd1405e (diff) | |
download | pkgsrc-1c480293dde95a231de4e796d6d8b7e6de3a20b7.tar.gz |
Bump PKGREVISIONs of lang/perl5 and lang/perl58: modify the build so that
libgcc.a isn't linked "whole archive" into the perl executable on newer
NetBSD systems (>1.5.x). Newer NetBSD systems have libgcc_pic.a linked
into shared libraries, so this hack isn't needed. This change was tested
by building and testing textproc/xerces-p, a C++ perl5 module that uses
functions in libgcc.a.
Diffstat (limited to 'lang')
-rw-r--r-- | lang/perl5/Makefile | 4 | ||||
-rw-r--r-- | lang/perl5/distinfo | 4 | ||||
-rw-r--r-- | lang/perl5/patches/patch-ab | 28 | ||||
-rw-r--r-- | lang/perl58/Makefile | 4 | ||||
-rw-r--r-- | lang/perl58/distinfo | 4 | ||||
-rw-r--r-- | lang/perl58/patches/patch-ab | 47 |
6 files changed, 67 insertions, 24 deletions
diff --git a/lang/perl5/Makefile b/lang/perl5/Makefile index f547d120fda..9e8754f169c 100644 --- a/lang/perl5/Makefile +++ b/lang/perl5/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.64 2003/05/27 21:57:25 jlam Exp $ +# $NetBSD: Makefile,v 1.65 2003/06/23 07:45:01 jlam Exp $ .include "../../lang/perl5/Makefile.common" -PKGREVISION= 8 +PKGREVISION= 9 CATEGORIES+= lang devel MAINTAINER= jlam@netbsd.org diff --git a/lang/perl5/distinfo b/lang/perl5/distinfo index 87f2abb32bb..d9fd5c670c3 100644 --- a/lang/perl5/distinfo +++ b/lang/perl5/distinfo @@ -1,9 +1,9 @@ -$NetBSD: distinfo,v 1.15 2003/05/27 21:57:25 jlam Exp $ +$NetBSD: distinfo,v 1.16 2003/06/23 07:45:02 jlam Exp $ SHA1 (perl-5.6.1.tar.gz) = c718b38685f90d51a9a6b1b008de0d7d198c0744 Size (perl-5.6.1.tar.gz) = 5983695 bytes SHA1 (patch-aa) = c03ddd0a6c9d738cb523cbc8fb104217cc3870a1 -SHA1 (patch-ab) = 67f1f3fd8664e15449996e4c5fbe138a0c1d6def +SHA1 (patch-ab) = c30dbcbcd72896c324ad18c4adb3304a340c379f SHA1 (patch-ac) = dfebafeec171c86de3d6105e5543270a30f82691 SHA1 (patch-ad) = 7a3ca903d958026473f593fdeb172f86f2ef66d2 SHA1 (patch-ae) = 677797f38279b7602fc5bbac8ee80c0e09f6e285 diff --git a/lang/perl5/patches/patch-ab b/lang/perl5/patches/patch-ab index 46b5efca64d..1aec6bcfdbc 100644 --- a/lang/perl5/patches/patch-ab +++ b/lang/perl5/patches/patch-ab @@ -1,17 +1,25 @@ -$NetBSD: patch-ab,v 1.11 2002/01/30 22:35:58 jlam Exp $ +$NetBSD: patch-ab,v 1.12 2003/06/23 07:45:02 jlam Exp $ ---- hints/netbsd.sh.orig Thu Feb 22 21:57:55 2001 -+++ hints/netbsd.sh Wed Jan 30 17:02:39 2002 -@@ -21,16 +21,24 @@ +--- hints/netbsd.sh.orig Thu Feb 22 18:57:55 2001 ++++ hints/netbsd.sh Fri Jun 20 17:59:50 2003 +@@ -21,16 +21,32 @@ if [ -f /usr/libexec/ld.elf_so ]; then d_dlopen=$define d_dlerror=$define - ccdlflags="-Wl,-E -Wl,-R${PREFIX}/lib $ccdlflags" -+ # Include the whole libgcc.a, required for Xerces-P, which -+ # needs __eh_alloc, __pure_virtual, and others. -+ # XXX This should be obsoleted by gcc-3.0. -+ ccdlflags="-Wl,-whole-archive -lgcc -Wl,-no-whole-archive \ -+ -Wl,-E -Wl,-R$prefix/lib $ccdlflags" ++ case "$osvers" in ++ 1.[0-5]|1.[0-5].*) ++ # Include the whole libgcc.a, required for Xerces-P, ++ # which needs __eh_alloc, __pure_virtual, and others. ++ # XXX This should be obsoleted by gcc-3.0. ++ ccdlflags="-Wl,-whole-archive -lgcc \ ++ -Wl,-no-whole-archive -Wl,-E \ ++ -Wl,-R$prefix/lib $ccdlflags" ++ ;; ++ *) ++ ccdlflags="-Wl,-E -Wl,-R$prefix/lib $ccdlflags" ++ ;; ++ esac cccdlflags="-DPIC -fPIC $cccdlflags" lddlflags="--whole-archive -shared $lddlflags" elif [ "`uname -m`" = "pmax" ]; then @@ -30,7 +38,7 @@ $NetBSD: patch-ab,v 1.11 2002/01/30 22:35:58 jlam Exp $ # we use -fPIC here because -fpic is *NOT* enough for some of the # extensions like Tk on some netbsd platforms (the sparc is one) cccdlflags="-DPIC -fPIC $cccdlflags" -@@ -59,12 +67,13 @@ +@@ -59,12 +75,13 @@ d_setruid="$undef" # there's no problem with vfork. diff --git a/lang/perl58/Makefile b/lang/perl58/Makefile index 3c3fa21df6b..6c1c2649f86 100644 --- a/lang/perl58/Makefile +++ b/lang/perl58/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.14 2003/06/02 14:05:06 abs Exp $ +# $NetBSD: Makefile,v 1.15 2003/06/23 07:45:03 jlam Exp $ .include "Makefile.common" -PKGREVISION= 1 +PKGREVISION= 2 CATEGORIES+= lang devel MAINTAINER= jlam@netbsd.org diff --git a/lang/perl58/distinfo b/lang/perl58/distinfo index ee78a538f9e..68683730402 100644 --- a/lang/perl58/distinfo +++ b/lang/perl58/distinfo @@ -1,9 +1,9 @@ -$NetBSD: distinfo,v 1.5 2003/05/27 21:57:26 jlam Exp $ +$NetBSD: distinfo,v 1.6 2003/06/23 07:45:03 jlam Exp $ SHA1 (perl-5.8.0.tar.gz) = be1e05876ca734464f8a770d61b1f15cca555719 Size (perl-5.8.0.tar.gz) = 11023084 bytes SHA1 (patch-aa) = e140f42f27fe4e2fd3786cd2c6277571b5ffd483 -SHA1 (patch-ab) = 83742476e804b156087d3782ae7f9e448030a959 +SHA1 (patch-ab) = c33566c4287c45a05990fb3f31199bd084350f55 SHA1 (patch-ac) = 8596389f77a6eafea7817e19c46165c1a34fdda6 SHA1 (patch-ae) = 7bb2f96693cef5b4008a02fde2bde5ae1ce73cb6 SHA1 (patch-ah) = 39d007da11f28ab37a81b7403b92be2784e942c6 diff --git a/lang/perl58/patches/patch-ab b/lang/perl58/patches/patch-ab index c7639a2da05..7e0171067b1 100644 --- a/lang/perl58/patches/patch-ab +++ b/lang/perl58/patches/patch-ab @@ -1,12 +1,43 @@ -$NetBSD: patch-ab,v 1.1 2003/05/27 04:53:10 jlam Exp $ +$NetBSD: patch-ab,v 1.2 2003/06/23 07:45:04 jlam Exp $ ---- hints/netbsd.sh.orig Sat Jun 1 13:03:12 2002 -+++ hints/netbsd.sh -@@ -127,20 +127,3 @@ - ;; +--- hints/netbsd.sh.orig Sat Jun 1 10:03:12 2002 ++++ hints/netbsd.sh Fri Jun 20 03:02:13 2003 +@@ -37,16 +37,21 @@ + cccdlflags="-DPIC -fPIC $cccdlflags" + lddlflags="--whole-archive -shared $lddlflags" + rpathflag="-Wl,-rpath," +- # +- # Include the whole libgcc.a into the perl executable so +- # that certain symbols needed by loadable modules built as +- # C++ objects (__eh_alloc, __pure_virtual, etc.) will always +- # be defined. +- # +- # XXX This should be obsoleted by gcc-3.0. +- # +- ccdlflags="-Wl,-whole-archive -lgcc -Wl,-no-whole-archive \ +- -Wl,-E $ccdlflags" ++ case "$osvers" in ++ 1.[0-5]|1.[0-5].*) ++ # ++ # Include the whole libgcc.a into the perl executable ++ # so that certain symbols needed by loadable modules ++ # built as C++ objects (__eh_alloc, __pure_virtual, ++ # etc.) will always be defined. ++ # ++ ccdlflags="-Wl,-whole-archive -lgcc \ ++ -Wl,-no-whole-archive -Wl,-E $ccdlflags" ++ ;; ++ *) ++ ccdlflags="-Wl,-E $ccdlflags" ++ ;; ++ esac + elif test -f /usr/libexec/ld.so; then + # a.out + d_dlopen=$define +@@ -128,19 +132,7 @@ esac EOCBU -- + -# Set sensible defaults for NetBSD: look for local software in -# /usr/pkg (NetBSD Packages Collection) and in /usr/local. -# @@ -23,3 +54,7 @@ $NetBSD: patch-ab,v 1.1 2003/05/27 04:53:10 jlam Exp $ - done - ;; -esac ++locincpth="/opt/pkg/include" ++loclibpth="/opt/pkg/lib" ++ldflags="-Wl,-R/opt/pkg/lib $ldflags" ++glibpth='/usr/lib' |