diff options
Diffstat (limited to 'lang/perl5/patches/patch-ba')
-rw-r--r-- | lang/perl5/patches/patch-ba | 111 |
1 files changed, 56 insertions, 55 deletions
diff --git a/lang/perl5/patches/patch-ba b/lang/perl5/patches/patch-ba index f342b3cca99..ba0598b86f1 100644 --- a/lang/perl5/patches/patch-ba +++ b/lang/perl5/patches/patch-ba @@ -1,58 +1,59 @@ -$NetBSD: patch-ba,v 1.1 2003/10/05 14:19:09 grant Exp $ +$NetBSD: patch-ba,v 1.2 2005/06/24 06:43:47 jlam Exp $ ---- 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" -+ 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 - # NetBSD 1.3 and 1.3.1 on pmax shipped an `old' ld.so, which will not work. -- d_dlopen=$undef -+ case "$osvers" in -+ 1.3|1.3.1) -+ d_dlopen=$undef -+ ;; -+ esac - elif [ -f /usr/libexec/ld.so ]; then - d_dlopen=$define - d_dlerror=$define -- ccdlflags="-Wl,-R${PREFIX}/lib $ccdlflags" -+ ccdlflags="-Wl,-R$prefix/lib $ccdlflags" - # 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 +75,13 @@ - d_setruid="$undef" +--- hints/netbsd.sh.orig 2003-08-07 12:57:56.000000000 -0400 ++++ hints/netbsd.sh 2004-06-06 18:45:19.000000000 -0400 +@@ -78,6 +78,30 @@ + d_setreuid="$undef" + ;; + esac ++case "$osvers" in ++0.9*|1.*|2.*|3.*) ++ d_getprotoent_r="$undef" ++ d_getprotobyname_r="$undef" ++ d_getprotobynumber_r="$undef" ++ d_setprotoent_r="$undef" ++ d_endprotoent_r="$undef" ++ d_getservent_r="$undef" ++ d_getservbyname_r="$undef" ++ d_getservbyport_r="$undef" ++ d_setservent_r="$undef" ++ d_endservent_r="$undef" ++ d_getprotoent_r_proto="$undef" ++ d_getprotobyname_r_proto="$undef" ++ d_getprotobynumber_r_proto="$undef" ++ d_setprotoent_r_proto="$undef" ++ d_endprotoent_r_proto="$undef" ++ d_getservent_r_proto="$undef" ++ d_getservbyname_r_proto="$undef" ++ d_getservbyport_r_proto="$undef" ++ d_setservent_r_proto="$undef" ++ d_endservent_r_proto="$undef" ++ ;; ++esac - # there's no problem with vfork. --case "$usevfork" in --'') usevfork=true ;; --esac -+usevfork=true -+ -+# Using perl's malloc leads to trouble on some toolchain versions. -+usemymalloc="$undef" - - # Pre-empt the /usr/bin/perl question of installperl. --installusrbinperl='n' -+installusrbinperl="$undef" + # These are obsolete in any netbsd. + d_setrgid="$undef" +@@ -133,23 +157,6 @@ + esac + EOCBU - # Recognize the NetBSD packages collection. - # GDBM might be here. +-# Set sensible defaults for NetBSD: look for local software in +-# /usr/pkg (NetBSD Packages Collection) and in /usr/local. +-# +-loclibpth="/usr/pkg/lib /usr/local/lib" +-locincpth="/usr/pkg/include /usr/local/include" +-case "$rpathflag" in +-'') +- ldflags= +- ;; +-*) +- ldflags= +- for yyy in $loclibpth; do +- ldflags="$ldflags $rpathflag$yyy" +- done +- ;; +-esac +- + case `uname -m` in + alpha) + echo 'int main() {}' > try.c |