summaryrefslogtreecommitdiff
path: root/lang/perl5/patches
diff options
context:
space:
mode:
authorjlam <jlam>2001-09-05 17:13:40 +0000
committerjlam <jlam>2001-09-05 17:13:40 +0000
commit427edb455e478496d564bd06c60f375848f79248 (patch)
tree467c0c79b247b5a4a1bd5d528d1051917d34a847 /lang/perl5/patches
parent19c48947dde718ea9adec71766fa51ecbedd324c (diff)
downloadpkgsrc-427edb455e478496d564bd06c60f375848f79248.tar.gz
Update perl to 5.6.1nb2. Changes from perl-5.6.1nb1 include undoing the
perl mess I created a year ago and making this a vanilla perl installation again, and explicitly setting the system library path so that /usr/local/* doesn't appear anywhere. The installed perl library now also includes CGI.pm-2.752. The www/p5-CGI package installs in to ${PERL5_SITEARCH} so there is no conflict with the "standard" CGI.pm.
Diffstat (limited to 'lang/perl5/patches')
-rw-r--r--lang/perl5/patches/patch-aa17
-rw-r--r--lang/perl5/patches/patch-ab41
-rw-r--r--lang/perl5/patches/patch-ac20
-rw-r--r--lang/perl5/patches/patch-ad51
-rw-r--r--lang/perl5/patches/patch-ae51
5 files changed, 180 insertions, 0 deletions
diff --git a/lang/perl5/patches/patch-aa b/lang/perl5/patches/patch-aa
new file mode 100644
index 00000000000..ad27d4fdaaa
--- /dev/null
+++ b/lang/perl5/patches/patch-aa
@@ -0,0 +1,17 @@
+$NetBSD: patch-aa,v 1.18 2001/09/05 17:13:40 jlam Exp $
+
+--- Configure.orig Sun Mar 18 19:03:33 2001
++++ Configure Sat Sep 1 14:31:15 2001
+@@ -6807,8 +6807,11 @@
+ aix)
+ # We'll set it in Makefile.SH...
+ ;;
+- solaris|netbsd)
++ solaris)
+ xxx="-R $shrpdir"
++ ;;
++ netbsd)
++ xxx="-Wl,-R$shrpdir"
+ ;;
+ freebsd)
+ xxx="-Wl,-R$shrpdir"
diff --git a/lang/perl5/patches/patch-ab b/lang/perl5/patches/patch-ab
new file mode 100644
index 00000000000..4bcece22a03
--- /dev/null
+++ b/lang/perl5/patches/patch-ab
@@ -0,0 +1,41 @@
+$NetBSD: patch-ab,v 1.8 2001/09/05 17:13:41 jlam Exp $
+
+--- hints/netbsd.sh.orig Thu Feb 22 18:57:55 2001
++++ hints/netbsd.sh Sat Sep 1 03:57:59 2001
+@@ -21,7 +21,11 @@
+ 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"
+ cccdlflags="-DPIC -fPIC $cccdlflags"
+ lddlflags="--whole-archive -shared $lddlflags"
+ elif [ "`uname -m`" = "pmax" ]; then
+@@ -59,14 +63,18 @@
+ d_setruid="$undef"
+
+ # 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"
++
++# Don't install any manpages in man3; make user use perldoc
++# (to prevent confusion with similarly named man2/man3 pages).
++man3dir=none
+
+ # Recognize the NetBSD packages collection.
+-# GDBM might be here.
+ test -d /usr/pkg/lib && loclibpth="$loclibpth /usr/pkg/lib"
+ test -d /usr/pkg/include && locincpth="$locincpth /usr/pkg/include"
diff --git a/lang/perl5/patches/patch-ac b/lang/perl5/patches/patch-ac
new file mode 100644
index 00000000000..093b56b8373
--- /dev/null
+++ b/lang/perl5/patches/patch-ac
@@ -0,0 +1,20 @@
+$NetBSD: patch-ac,v 1.8 2001/09/05 17:13:41 jlam Exp $
+
+--- lib/ExtUtils/Install.pm.orig Thu Feb 22 18:57:55 2001
++++ lib/ExtUtils/Install.pm Sat Sep 1 03:57:59 2001
+@@ -156,7 +156,14 @@
+ } else {
+ inc_uninstall($_,$File::Find::dir,$verbose,0); # nonono set to 0
+ }
+- $packlist->{$origfile}++;
++ #
++ # jlam 2001-05-21 - Fix a bug in the packlists where only the
++ # filename and not the full pathname is recorded. The broken
++ # line is:
++ #
++ # $packlist->{$origfile}++;
++ #
++ $packlist->{$targetfile}++;
+
+ }, ".");
+ chdir($cwd) or Carp::croak("Couldn't chdir to $cwd: $!");
diff --git a/lang/perl5/patches/patch-ad b/lang/perl5/patches/patch-ad
new file mode 100644
index 00000000000..d115dce9356
--- /dev/null
+++ b/lang/perl5/patches/patch-ad
@@ -0,0 +1,51 @@
+$NetBSD: patch-ad,v 1.9 2001/09/05 17:13:41 jlam Exp $
+
+--- pp.c.orig Sat Apr 7 23:09:16 2001
++++ pp.c Sat Sep 1 03:57:59 2001
+@@ -1900,6 +1900,28 @@
+ }
+ }
+
++/*
++ * There are strange code-generation bugs caused on sparc64 by gcc-2.95.2.
++ * These need to be revisited when a newer toolchain becomes available.
++ */
++#if defined(__sparc64__) && defined(__GNUC__)
++#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 96)
++#undef SPARC64_WORKAROUND
++#define SPARC64_WORKAROUND 1
++#endif
++#endif
++
++#if defined(SPARC64_WORKAROUND)
++double
++sparc64_workaround_modf(double theVal, double *theIntRes)
++{
++ double res, ret;
++ ret = modf(theVal, &res);
++ *theIntRes = res;
++ return ret;
++}
++#endif
++
+ PP(pp_int)
+ {
+ dSP; dTARGET;
+@@ -1913,6 +1935,9 @@
+ }
+ else {
+ if (value >= 0.0) {
++#if defined(SPARC64_WORKAROUND)
++ (void)sparc64_workaround_modf(value, &value);
++#else
+ #if defined(HAS_MODFL) || defined(LONG_DOUBLE_EQUALS_DOUBLE)
+ (void)Perl_modf(value, &value);
+ #else
+@@ -1920,6 +1945,7 @@
+ (void)Perl_modf(tmp, &tmp);
+ value = (NV)tmp;
+ #endif
++#endif /* SPARC64_WORKAROUND */
+ }
+ else {
+ #if defined(HAS_MODFL) || defined(LONG_DOUBLE_EQUALS_DOUBLE)
diff --git a/lang/perl5/patches/patch-ae b/lang/perl5/patches/patch-ae
new file mode 100644
index 00000000000..4e41088bd59
--- /dev/null
+++ b/lang/perl5/patches/patch-ae
@@ -0,0 +1,51 @@
+$NetBSD: patch-ae,v 1.8 2001/09/05 17:13:41 jlam Exp $
+
+--- regcomp.c.orig Wed Mar 21 21:05:02 2001
++++ regcomp.c Sat Sep 1 03:57:59 2001
+@@ -541,6 +541,17 @@
+ cl->flags |= ANYOF_EOS;
+ }
+
++/*
++ * There are strange code-generation bugs caused on sparc64 by gcc-2.95.2.
++ * These need to be revisited when a newer toolchain becomes available.
++ */
++#if defined(__sparc64__) && defined(__GNUC__)
++#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 96)
++#undef SPARC64_WORKAROUND
++#define SPARC64_WORKAROUND 1
++#endif
++#endif
++
+ /* REx optimizer. Converts nodes into quickier variants "in place".
+ Finds fixed substrings. */
+
+@@ -1076,11 +1087,28 @@
+ int counted = mincount != 0;
+
+ if (data->last_end > 0 && mincount != 0) { /* Ends with a string. */
++#if defined(SPARC64_WORKAROUND)
++ I32 b = 0;
++ STRLEN l = 0;
++ char *s = NULL;
++ I32 old = 0;
++
++ if (pos_before >= data->last_start_min)
++ b = pos_before;
++ else
++ b = data->last_start_min;
++
++ l = 0;
++ s = SvPV(data->last_found, l);
++ old = b - data->last_start_min;
++
++#else
+ I32 b = pos_before >= data->last_start_min
+ ? pos_before : data->last_start_min;
+ STRLEN l;
+ char *s = SvPV(data->last_found, l);
+ I32 old = b - data->last_start_min;
++#endif
+
+ if (UTF)
+ old = utf8_hop((U8*)s, old) - (U8*)s;