diff options
-rw-r--r-- | lang/perl5-base/Makefile | 8 | ||||
-rw-r--r-- | lang/perl5-base/files/patch-sum | 5 | ||||
-rw-r--r-- | lang/perl5-base/patches/patch-ag | 28 | ||||
-rw-r--r-- | lang/perl5-base/patches/patch-ah | 12 | ||||
-rw-r--r-- | lang/perl5-base/patches/patch-ai | 36 |
5 files changed, 81 insertions, 8 deletions
diff --git a/lang/perl5-base/Makefile b/lang/perl5-base/Makefile index a057549179e..6084776dff2 100644 --- a/lang/perl5-base/Makefile +++ b/lang/perl5-base/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.1.1.1 2000/09/05 09:18:21 jlam Exp $ +# $NetBSD: Makefile,v 1.2 2000/11/08 08:28:00 martin Exp $ # FreeBSD Id: Makefile,v 1.20 1997/07/18 06:16:44 markm Exp # @@ -20,12 +20,6 @@ CONFIGURE_ARGS+= -sde -Dprefix=${PREFIX} -Doptimize="${CFLAGS}" \ -Dcc=gcc -Dusemymalloc=false MAKE_ENV+= LD_LIBRARY_PATH=${WRKSRC} -.if exists(/usr/libexec/ld.so) || exists(/usr/libexec/ld.elf_so) -CONFIGURE_ARGS+= -Duseshrplib=true -.else -CONFIGURE_ARGS+= -Duseshrplib=false -.endif - .include "../../mk/bsd.prefs.mk" .if ${OPSYS} == "SunOS" diff --git a/lang/perl5-base/files/patch-sum b/lang/perl5-base/files/patch-sum index 4c50434c1d2..97acc50ca6d 100644 --- a/lang/perl5-base/files/patch-sum +++ b/lang/perl5-base/files/patch-sum @@ -1,4 +1,4 @@ -$NetBSD: patch-sum,v 1.1.1.1 2000/09/05 09:18:21 jlam Exp $ +$NetBSD: patch-sum,v 1.2 2000/11/08 08:28:00 martin Exp $ MD5 (patch-aa) = 22d1a3a613210ca5f129c81449eab10b MD5 (patch-ab) = 032835dd7aaab9ee4531e7e6e83ffba5 @@ -6,3 +6,6 @@ MD5 (patch-ac) = ddd3e3b08afdc062c78f26175e4fcc44 MD5 (patch-ad) = 76f075f7badc7dcc5a315b3c2a82657c MD5 (patch-ae) = 197b8ed09f99be86865c0d6d66927e96 MD5 (patch-af) = 16d95e0667ef104d0dba4a61531d5b11 +MD5 (patch-ag) = a2e03195dab858bf57005a63043ca355 +MD5 (patch-ah) = 450115a339f77225d07d09e8554d41a9 +MD5 (patch-ai) = 27f1ec73c9eadd3252c7a7d37f2e0e11 diff --git a/lang/perl5-base/patches/patch-ag b/lang/perl5-base/patches/patch-ag new file mode 100644 index 00000000000..552f0fc779b --- /dev/null +++ b/lang/perl5-base/patches/patch-ag @@ -0,0 +1,28 @@ +$NetBSD: patch-ag,v 1.1 2000/11/08 08:28:00 martin Exp $ + +--- hints/netbsd.sh.orig Sun Feb 6 15:57:09 2000 ++++ hints/netbsd.sh Wed Nov 8 08:26:20 2000 +@@ -63,6 +63,23 @@ + '') usevfork=true ;; + esac + ++# Using perl's malloc leads to trouble on some toolchain versions... ++test "$usemymalloc" || usemymalloc='n' ++ ++# The toolchain on sparc64 is not realy production quality right now, ++# but gcc 2.96 is supposed to fix most problems. ++# The -g triggers -DDEBUGGING, which plays the real trick and circumvents ++# code generation bugs. So we add -g everywhere, to at least have a ++# realy debuggable build. ++if [ "`uname -m`" = "sparc64" ]; then ++ if $cc -v 2>&1 | grep "gcc version" | grep "2.95.2" > /dev/null; then ++ ccdlflags="-g $ccdlflags" ++ cccdlflags="-g $cccdlflags" ++ lddlflags="-g $lddlflags" ++ optimize='-g -msoft-quad-float -O2 -DGCC2952_SPARC64_WORKAROUND' ++ fi ++fi ++ + # Pre-empt the /usr/bin/perl question of installperl. + installusrbinperl='n' + diff --git a/lang/perl5-base/patches/patch-ah b/lang/perl5-base/patches/patch-ah new file mode 100644 index 00000000000..373b892b9db --- /dev/null +++ b/lang/perl5-base/patches/patch-ah @@ -0,0 +1,12 @@ +$NetBSD: patch-ah,v 1.1 2000/11/08 08:28:01 martin Exp $ + +--- regcomp.c.orig Tue Mar 14 23:19:44 2000 ++++ regcomp.c Wed Nov 8 01:23:19 2000 +@@ -669,6 +669,7 @@ + regnode *oscan = scan; + struct regnode_charclass_class this_class; + struct regnode_charclass_class *oclass = NULL; ++ pos_before = 1; + + switch (PL_regkind[(U8)OP(scan)]) { + case WHILEM: /* End of (?:...)* . */ diff --git a/lang/perl5-base/patches/patch-ai b/lang/perl5-base/patches/patch-ai new file mode 100644 index 00000000000..dfd1859610f --- /dev/null +++ b/lang/perl5-base/patches/patch-ai @@ -0,0 +1,36 @@ +$NetBSD: patch-ai,v 1.1 2000/11/08 08:28:01 martin Exp $ + +--- pp.c.orig Mon Mar 20 16:35:44 2000 ++++ pp.c Mon Nov 6 23:07:51 2000 +@@ -1834,6 +1834,16 @@ + } + } + ++#ifdef GCC2952_SPARC64_WORKAROUND ++double myLocalModf(double theVal, double * theIntRes) ++{ ++ double res, ret; ++ ret = modf(theVal, &res); ++ *theIntRes = res; ++ return ret; ++} ++#endif ++ + PP(pp_int) + { + djSP; dTARGET; +@@ -1846,8 +1856,13 @@ + SETi(iv); + } + else { +- if (value >= 0.0) ++ if (value >= 0.0) { ++#ifdef GCC2952_SPARC64_WORKAROUND ++ (void)myLocalModf(value, &value); ++#else + (void)Perl_modf(value, &value); ++#endif ++ } + else { + (void)Perl_modf(-value, &value); + value = -value; |