Fri Oct 10 21:58:44 2008 UTC ()
Update perl5 from version 5.8.8nb8 to 5.10.0.

A large number of packages have had their internal regression tests
run successfully with this update, including mod_perl for Apache.

Pkgsrc changes: a number of our local patches are no longer needed.

Upstream changes from version 5.8.8:

  # Core Enhancements

    * The feature pragma
    * New -E command-line switch
    * Defined-or operator
    * Switch and Smart Match operator
    * Regular expressions
    * say()
    * Lexical $_
    * The _ prototype
    * UNITCHECK blocks
    * New Pragma, mro
    * readdir() may return a "short filename" on Windows
    * readpipe() is now overridable
    * Default argument for readline()
    * state() variables
    * Stacked filetest operators
    * UNIVERSAL::DOES()
    * Formats
    * Byte-order modifiers for pack() and unpack()
    * no VERSION
    * chdir, chmod and chown on filehandles
    * OS groups
    * Recursive sort subs
    * Exceptions in constant folding
    * Source filters in @INC
    * New internal variables
    * Miscellaneous
    * UCD 5.0.0
    * MAD
    * kill() on Windows

  # Incompatible Changes

    * Packing and UTF-8 strings
    * Byte/character count feature in unpack()
    * The $* and $# variables have been removed
    * substr() lvalues are no longer fixed-length
    * Parsing of -f _
    * :unique
    * Effect of pragmas in eval
    * chdir FOO
    * Handling of .pmc files
    * $^V is now a version object instead of a v-string
    * @- and @+ in patterns
    * $AUTOLOAD can now be tainted
    * Tainting and printf
    * undef and signal handlers
    * strictures and dereferencing in defined()
    * (?p{}) has been removed
    * Pseudo-hashes have been removed
    * Removal of the bytecode compiler and of perlcc
    * Removal of the JPL
    * Recursive inheritance detected earlier

  # Modules and Pragmata

    * Upgrading individual core modules
    * Pragmata Changes
    * New modules
    * Selected Changes to Core Modules

  # Utility Changes
  # New Documentation
  # Performance Enhancements

    * In-place sorting
    * Lexical array access
    * XS-assisted SWASHGET
    * Constant subroutines
    * PERL_DONT_CREATE_GVSV
    * Weak references are cheaper
    * sort() enhancements
    * Memory optimisations
    * UTF-8 cache optimisation
    * Sloppy stat on Windows
    * Regular expressions optimisations

  # Installation and Configuration Improvements

    * Configuration improvements
    * Compilation improvements
    * Installation improvements
    * New Or Improved Platforms

  # Selected Bug Fixes
  # New or Changed Diagnostics
  # Changed Internals

    * Reordering of SVt_* constants
    * Elimination of SVt_PVBM
    * New type SVt_BIND
    * Removal of CPP symbols
    * Less space is used by ops
    * New parser
    * Use of const
    * Mathoms
    * AvFLAGS has been removed
    * av_* changes
    * $^H and %^H
    * B:: modules inheritance changed
    * Anonymous hash and array constructors

  ...

See 'perldoc perldelta' or http://perldoc.perl.org/perldelta.html
for explanation of each of these points.


(he)
diff -r1.137 -r1.138 pkgsrc/lang/perl5/Makefile
diff -r1.49 -r1.50 pkgsrc/lang/perl5/distinfo
diff -r1.30 -r1.31 pkgsrc/lang/perl5/patches/patch-aa
diff -r1.10 -r0 pkgsrc/lang/perl5/patches/patch-ac
diff -r1.11 -r0 pkgsrc/lang/perl5/patches/patch-ad
diff -r1.11 -r0 pkgsrc/lang/perl5/patches/patch-ae
diff -r1.11 -r0 pkgsrc/lang/perl5/patches/patch-ag
diff -r1.13 -r0 pkgsrc/lang/perl5/patches/patch-af
diff -r1.9 -r1.10 pkgsrc/lang/perl5/patches/patch-ah
diff -r1.5 -r0 pkgsrc/lang/perl5/patches/patch-ai
diff -r1.9 -r0 pkgsrc/lang/perl5/patches/patch-aj
diff -r1.3 -r0 pkgsrc/lang/perl5/patches/patch-ak
diff -r1.4 -r0 pkgsrc/lang/perl5/patches/patch-am
diff -r1.4 -r0 pkgsrc/lang/perl5/patches/patch-cb
diff -r1.2 -r0 pkgsrc/lang/perl5/patches/patch-an
diff -r1.2 -r0 pkgsrc/lang/perl5/patches/patch-ce
diff -r1.2 -r0 pkgsrc/lang/perl5/patches/patch-da
diff -r1.1 -r0 pkgsrc/lang/perl5/patches/patch-ap
diff -r1.1 -r0 pkgsrc/lang/perl5/patches/patch-ar
diff -r1.1 -r1.2 pkgsrc/lang/perl5/patches/patch-aq
diff -r1.1 -r1.2 pkgsrc/lang/perl5/patches/patch-cn
diff -r1.1 -r1.2 pkgsrc/lang/perl5/patches/patch-co
diff -r1.1 -r1.2 pkgsrc/lang/perl5/patches/patch-ta
diff -r1.2 -r1.3 pkgsrc/lang/perl5/patches/patch-as
diff -r1.2 -r1.3 pkgsrc/lang/perl5/patches/patch-zc
diff -r1.4 -r1.5 pkgsrc/lang/perl5/patches/patch-ba
diff -r1.5 -r1.6 pkgsrc/lang/perl5/patches/patch-ca
diff -r1.3 -r1.4 pkgsrc/lang/perl5/patches/patch-ch
diff -r1.3 -r1.4 pkgsrc/lang/perl5/patches/patch-ci
diff -r0 -r1.1 pkgsrc/lang/perl5/patches/patch-zd

cvs diff -r1.137 -r1.138 pkgsrc/lang/perl5/Makefile (expand / switch to context diff)
--- pkgsrc/lang/perl5/Makefile 2008/06/01 22:04:07 1.137
+++ pkgsrc/lang/perl5/Makefile 2008/10/10 21:58:43 1.138
@@ -1,10 +1,8 @@
-# $NetBSD: Makefile,v 1.137 2008/06/01 22:04:07 he Exp $
+# $NetBSD: Makefile,v 1.138 2008/10/10 21:58:43 he Exp $
 
-DISTNAME=	perl-5.8.8
-PKGREVISION=	8
+DISTNAME=	perl-5.10.0
 CATEGORIES=	lang devel perl5
 MASTER_SITES=	${MASTER_SITE_PERL_CPAN:S,/modules/by-module/$,/src/,}
-EXTRACT_SUFX=	.tar.bz2
 DISTFILES+=	${DISTNAME}${EXTRACT_SUFX}
 
 MAINTAINER=	jlam@pkgsrc.org
@@ -260,6 +258,25 @@
 CONFIGURE_ARGS+=	-Duse64bitint
 .  endif
 .endif
+
+# Remove a spurious workdir reference
+SUBST_CLASSES+=		rm
+SUBST_STAGE.rm=		pre-install
+SUBST_FILES.rm=		lib/Config_heavy.pl
+SUBST_SED.rm=	-e "s!^rm_try=\'/.*work/.tools/bin/rm -f!rm_try=\'/bin/rm -f!"
+
+# Replace our perl as the interpreter
+REPLACE_PERL+=		lib/Class/ISA.pm
+REPLACE_PERL+=		lib/File/DosGlob.pm
+REPLACE_PERL+=		lib/version.pm
+
+# And replace a perl interpreter during the pre-install stage
+# I think this may be a bootstrap script, so can't use REPLACE_PERL
+# because that is acted upon already in the pre-configure stage
+SUBST_CLASSES+=		miniperl
+SUBST_STAGE.miniperl=	pre-install
+SUBST_FILES.miniperl=	lib/ExtUtils/xsubpp
+SUBST_SED.miniperl=	-e "1s:\#!./miniperl:\#!${PERL5}:"
 
 # Some platforms may want the directory mode not to be 0755.  This
 # is, unfortunately, hardcoded in quite a few places in Perl, so

cvs diff -r1.49 -r1.50 pkgsrc/lang/perl5/distinfo (expand / switch to context diff)
--- pkgsrc/lang/perl5/distinfo 2008/07/30 23:07:52 1.49
+++ pkgsrc/lang/perl5/distinfo 2008/10/10 21:58:43 1.50
@@ -1,35 +1,21 @@
-$NetBSD: distinfo,v 1.49 2008/07/30 23:07:52 ahoka Exp $
+$NetBSD: distinfo,v 1.50 2008/10/10 21:58:43 he Exp $
 
-SHA1 (perl-5.8.8.tar.bz2) = 4aab490040727ca4419098720eca2ba4367df539
-RMD160 (perl-5.8.8.tar.bz2) = e78f26d9b96e6db35f946ad4ff55e3a69385c71b
-Size (perl-5.8.8.tar.bz2) = 10123359 bytes
-SHA1 (patch-aa) = 9b6844635086206dc7740103747a2b54bf987941
+SHA1 (perl-5.10.0.tar.gz) = adf73606dd5248af7ccdd735bcaa0e628ea75b3c
+RMD160 (perl-5.10.0.tar.gz) = c6614fc99a162790a703f91085b24a60af903ba2
+Size (perl-5.10.0.tar.gz) = 15595020 bytes
+SHA1 (patch-aa) = 5bd44a8076cf27e2deac52240af7f3898865859c
 SHA1 (patch-ab) = e32427327192f023477b16f29bc55fdf4f057410
-SHA1 (patch-ac) = 428e0757495b82a47ec092a71333fb3ec366f14f
-SHA1 (patch-ad) = 914e1c74555a9b6a0256992a694b2ba609f29786
-SHA1 (patch-ae) = 287ac0d97a5372c8b45457129f3e70fe42cf69e2
-SHA1 (patch-af) = b11574297e46b910f206f09702effc6cc272b0fd
-SHA1 (patch-ag) = 0122ec30b8fcd17198e068d07e95974bee0945b6
-SHA1 (patch-ah) = 25443063c26287b1b8130c53d5c9d92248d4c0d1
-SHA1 (patch-ai) = 4a07c6268a1e27b73f2f6fcde86f788fce77fcbd
-SHA1 (patch-aj) = a2fc32766ed8556455c60780fe242a034ce491a9
-SHA1 (patch-ak) = 8899f8b6d1d038b950979073cb0527c8e7afca1e
-SHA1 (patch-am) = cf1687063d0c0542e811545aaaad291bad12d75e
-SHA1 (patch-an) = 987763c3098bf4356993dd6d8741962a1ff8190d
-SHA1 (patch-ap) = 178d6909a8aa6544b849c2b63530fcf1893b77ea
-SHA1 (patch-aq) = b9569d0cd74a06912e82498cd2bfba131c0b6f3b
-SHA1 (patch-ar) = 9d257ceeca337e3d477b80215560bbc290d19dd2
-SHA1 (patch-as) = 371827db418eac11f0b49df45e9d587106908bf0
-SHA1 (patch-ba) = 27aefd5043c251380ac607df54fff882f689f237
-SHA1 (patch-ca) = 5ed14e043a6d5f8dadf5711b59418f01aa5f6f21
-SHA1 (patch-cb) = 2cbcaa476f33c270bfea50cddd0da3f476dbe689
-SHA1 (patch-ce) = 6b1efab32c6bc28e0faf7522322e6d805eb21730
-SHA1 (patch-ch) = a0831869e23d4a66588e6e27eecedb08527c9498
-SHA1 (patch-ci) = fe943f07044efa457d163eb86974ea10bb356226
+SHA1 (patch-ah) = 1d2f4049dcc8dafcd0eafad36a74531dc7f305c9
+SHA1 (patch-aq) = 3ece22678e3e6dcd3cf641e6389ff203cbe351b9
+SHA1 (patch-as) = 8656cb4d9baf43dd92f4c467aaa40802d4c43239
+SHA1 (patch-ba) = dc150656628e83e25c99f246a0fb30906d185184
+SHA1 (patch-ca) = 47db0530a705b8086b2bfc58491f9b56de4b9e12
+SHA1 (patch-ch) = 5b6a89c82e158bab0a5f06add48c28e600678099
+SHA1 (patch-ci) = 70531d44b6e2cb7a7ab9fb20ffe91d97e5c03e3a
 SHA1 (patch-cj) = 3f40f1b166a054d55224c3e79d74516ca608b696
 SHA1 (patch-ck) = 28207b8186c9ad194a1edc696159915bc16d1097
-SHA1 (patch-cn) = b5e56787fb9ca10025e9061d7bfd2da549ee3fa3
+SHA1 (patch-cn) = 7ca2b1ff19f8371637a34ec26779b37d74c74cca
-SHA1 (patch-co) = 4f7ae271aa6a17860e60411dfa45566ee02b0f58
+SHA1 (patch-co) = 493ae6cb6cb544ce023c2a1fb067abe943bba2d4
-SHA1 (patch-da) = 24c8783fcdbead35de20bc3cecf1627a64717853
+SHA1 (patch-ta) = 60d9ef72db56b9f149f3995b3f526fc32a352bd7
-SHA1 (patch-ta) = ca0d1e4bc2dbbc4b86a087fed27cd1e7bbb2873f
+SHA1 (patch-zc) = a23002397ffaebb243f7683c95c8fb227af90f49
-SHA1 (patch-zc) = 0c61b6028813e0f80bfe0760a1e74e3037d37cdd
+SHA1 (patch-zd) = ee67148b8f44fb3826273574abb62ad9ca4ffa7f

cvs diff -r1.30 -r1.31 pkgsrc/lang/perl5/patches/Attic/patch-aa (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-aa 2006/04/09 06:34:32 1.30
+++ pkgsrc/lang/perl5/patches/Attic/patch-aa 2008/10/10 21:58:43 1.31
@@ -1,19 +1,19 @@
-$NetBSD: patch-aa,v 1.30 2006/04/09 06:34:32 jlam Exp $
+$NetBSD: patch-aa,v 1.31 2008/10/10 21:58:43 he Exp $
 
---- lib/ExtUtils/MM_Unix.pm.orig	2005-05-21 05:42:56.000000000 -0400
+--- lib/ExtUtils/MM_Unix.pm.orig	2007-12-18 11:47:07.000000000 +0100
 +++ lib/ExtUtils/MM_Unix.pm
-@@ -12,8 +12,8 @@ use DirHandle;
+@@ -11,8 +11,8 @@ use DirHandle;
  
  use vars qw($VERSION @ISA
              $Is_OS2 $Is_VMS $Is_Win32 $Is_Dos
 -            $Is_OSF $Is_IRIX  $Is_NetBSD $Is_BSD
 -            $Is_SunOS4 $Is_Solaris $Is_SunOS $Is_Interix
-+            $Is_OSF $Is_IRIX $Is_BSD
++            $Is_OSF $Is_IRIX  $Is_BSD
 +            $Is_SunOS4 $Is_Solaris $Is_SunOS
-             $Verbose %pm
              %Config_Override
             );
-@@ -32,13 +32,11 @@ BEGIN { 
+ 
+@@ -30,8 +30,6 @@ BEGIN { 
      $Is_VMS     = $^O eq 'VMS';
      $Is_OSF     = $^O eq 'dec_osf';
      $Is_IRIX    = $^O eq 'irix';
@@ -22,36 +22,12 @@
      $Is_SunOS4  = $^O eq 'sunos';
      $Is_Solaris = $^O eq 'solaris';
      $Is_SunOS   = $Is_SunOS4 || $Is_Solaris;
-     $Is_BSD     = $^O =~ /^(?:free|net|open)bsd$/ or
--                  $^O eq 'bsdos' or $^O eq 'interix';
-+                  $^O eq 'bsdos' or $^O eq 'dragonfly' or $^O eq 'interix';
- }
+@@ -932,7 +930,7 @@ $(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $
  
- BEGIN {
-@@ -928,7 +926,7 @@ $(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $
- 
      my $libs = '$(LDLOADLIBS)';
  
--    if (($Is_NetBSD || $Is_Interix) && $Config{'useshrplib'}) {
-+    if ($Is_BSD && $Config{'useshrplib'}) {
+-    if (($Is_NetBSD || $Is_Interix) && $Config{'useshrplib'} eq 'true') {
++    if ($Is_BSD && $Config{'useshrplib'} eq 'true') {
  	# Use nothing on static perl platforms, and to the flags needed
  	# to link against the shared libperl library on shared perl
  	# platforms.  We peek at lddlflags to see if we need -Wl,-R
-@@ -2074,7 +2072,7 @@ pure_site_install ::
- 		$(INST_LIB) $(DESTINSTALLSITELIB) \
- 		$(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \
- 		$(INST_BIN) $(DESTINSTALLSITEBIN) \
--		$(INST_SCRIPT) $(DESTINSTALLSCRIPT) \
-+		$(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \
- 		$(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \
- 		$(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR)
- 	$(NOECHO) $(WARN_IF_OLD_PACKLIST) \
-@@ -2087,7 +2085,7 @@ pure_vendor_install ::
- 		$(INST_LIB) $(DESTINSTALLVENDORLIB) \
- 		$(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \
- 		$(INST_BIN) $(DESTINSTALLVENDORBIN) \
--		$(INST_SCRIPT) $(DESTINSTALLSCRIPT) \
-+		$(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \
- 		$(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \
- 		$(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR)
- 

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ac

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ad

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ae

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ag

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-af

cvs diff -r1.9 -r1.10 pkgsrc/lang/perl5/patches/Attic/patch-ah (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-ah 2008/01/08 15:19:39 1.9
+++ pkgsrc/lang/perl5/patches/Attic/patch-ah 2008/10/10 21:58:43 1.10
@@ -1,8 +1,8 @@
-$NetBSD: patch-ah,v 1.9 2008/01/08 15:19:39 apb Exp $
+$NetBSD: patch-ah,v 1.10 2008/10/10 21:58:43 he Exp $
 
---- perl.c.orig	2006-01-31 12:34:47.000000000 +0000
+--- perl.c.orig	2007-12-18 11:47:08.000000000 +0100
 +++ perl.c
-@@ -4615,8 +4615,10 @@ S_procself_val(pTHX_ SV *sv, char *arg0)
+@@ -1454,8 +1454,10 @@ S_procself_val(pTHX_ SV *sv, const char 
         to the executable (or returning an error from the readlink).  Any valid
         path has a '/' in it somewhere, so use that to validate the result.
         See http://www.freebsd.org/cgi/query-pr.cgi?pr=35703
@@ -14,24 +14,24 @@
  	sv_setpvn(sv,buf,len);
      }
      else {
-@@ -4770,45 +4772,12 @@ S_init_perllib(pTHX)
+@@ -4747,45 +4749,8 @@ S_init_perllib(pTHX)
      }
  
  /* Use the ~-expanded versions of APPLLIB (undocumented),
 -    ARCHLIB PRIVLIB SITEARCH SITELIB VENDORARCH and VENDORLIB
 +    SITEARCH SITELIB VENDORARCH VENDORLIB ARCHLIB and PRIVLIB
  */
- #ifdef APPLLIB_EXP
-     incpush(APPLLIB_EXP, TRUE, TRUE, TRUE);
- #endif
- 
+-#ifdef APPLLIB_EXP
+-    incpush(APPLLIB_EXP, TRUE, TRUE, TRUE, TRUE);
+-#endif
+-
 -#ifdef ARCHLIB_EXP
--    incpush(ARCHLIB_EXP, FALSE, FALSE, TRUE);
+-    incpush(ARCHLIB_EXP, FALSE, FALSE, TRUE, TRUE);
 -#endif
 -#ifdef MACOS_TRADITIONAL
 -    {
 -	Stat_t tmpstatbuf;
--    	SV * privdir = NEWSV(55, 0);
+-    	SV * privdir = newSV(0);
 -	char * macperl = PerlEnv_getenv("MACPERL");
 -	
 -	if (!macperl)
@@ -39,39 +39,43 @@
 -	
 -	Perl_sv_setpvf(aTHX_ privdir, "%slib:", macperl);
 -	if (PerlLIO_stat(SvPVX(privdir), &tmpstatbuf) >= 0 && S_ISDIR(tmpstatbuf.st_mode))
--	    incpush(SvPVX(privdir), TRUE, FALSE, TRUE);
+-	    incpush(SvPVX(privdir), TRUE, FALSE, TRUE, FALSE);
 -	Perl_sv_setpvf(aTHX_ privdir, "%ssite_perl:", macperl);
 -	if (PerlLIO_stat(SvPVX(privdir), &tmpstatbuf) >= 0 && S_ISDIR(tmpstatbuf.st_mode))
--	    incpush(SvPVX(privdir), TRUE, FALSE, TRUE);
+-	    incpush(SvPVX(privdir), TRUE, FALSE, TRUE, FALSE);
 -	
 -   	SvREFCNT_dec(privdir);
 -    }
 -    if (!PL_tainting)
--	incpush(":", FALSE, FALSE, TRUE);
+-	incpush(":", FALSE, FALSE, TRUE, FALSE);
 -#else
 -#ifndef PRIVLIB_EXP
 -#  define PRIVLIB_EXP "/usr/local/lib/perl5:/usr/local/lib/perl"
 -#endif
 -#if defined(WIN32)
--    incpush(PRIVLIB_EXP, TRUE, FALSE, TRUE);
+-    incpush(PRIVLIB_EXP, TRUE, FALSE, TRUE, TRUE);
 -#else
--    incpush(PRIVLIB_EXP, FALSE, FALSE, TRUE);
+-    incpush(PRIVLIB_EXP, FALSE, FALSE, TRUE, TRUE);
 -#endif
 -
  #ifdef SITEARCH_EXP
      /* sitearch is always relative to sitelib on Windows for
       * DLL-based path intuition to work correctly */
-@@ -4850,6 +4819,39 @@ S_init_perllib(pTHX)
-     incpush(PERL_VENDORLIB_STEM, FALSE, TRUE, TRUE);
+@@ -4828,6 +4793,43 @@ S_init_perllib(pTHX)
+     incpush(PERL_VENDORLIB_STEM, FALSE, TRUE, TRUE, TRUE);
  #endif
  
++#ifdef APPLLIB_EXP
++    incpush(APPLLIB_EXP, TRUE, TRUE, TRUE, TRUE);
++#endif
++
 +#ifdef ARCHLIB_EXP
-+    incpush(ARCHLIB_EXP, FALSE, FALSE, TRUE);
++    incpush(ARCHLIB_EXP, FALSE, FALSE, TRUE, TRUE);
 +#endif
 +#ifdef MACOS_TRADITIONAL
 +    {
 +	Stat_t tmpstatbuf;
-+    	SV * privdir = NEWSV(55, 0);
++    	SV * privdir = newSV(0);
 +	char * macperl = PerlEnv_getenv("MACPERL");
 +	
 +	if (!macperl)
@@ -79,25 +83,25 @@
 +	
 +	Perl_sv_setpvf(aTHX_ privdir, "%slib:", macperl);
 +	if (PerlLIO_stat(SvPVX(privdir), &tmpstatbuf) >= 0 && S_ISDIR(tmpstatbuf.st_mode))
-+	    incpush(SvPVX(privdir), TRUE, FALSE, TRUE);
++	    incpush(SvPVX(privdir), TRUE, FALSE, TRUE, FALSE);
 +	Perl_sv_setpvf(aTHX_ privdir, "%ssite_perl:", macperl);
 +	if (PerlLIO_stat(SvPVX(privdir), &tmpstatbuf) >= 0 && S_ISDIR(tmpstatbuf.st_mode))
-+	    incpush(SvPVX(privdir), TRUE, FALSE, TRUE);
++	    incpush(SvPVX(privdir), TRUE, FALSE, TRUE, FALSE);
 +	
 +   	SvREFCNT_dec(privdir);
 +    }
 +    if (!PL_tainting)
-+	incpush(":", FALSE, FALSE, TRUE);
++	incpush(":", FALSE, FALSE, TRUE, FALSE);
 +#else
 +#ifndef PRIVLIB_EXP
 +#  define PRIVLIB_EXP "/usr/local/lib/perl5:/usr/local/lib/perl"
 +#endif
 +#if defined(WIN32)
-+    incpush(PRIVLIB_EXP, TRUE, FALSE, TRUE);
++    incpush(PRIVLIB_EXP, TRUE, FALSE, TRUE, TRUE);
 +#else
-+    incpush(PRIVLIB_EXP, FALSE, FALSE, TRUE);
++    incpush(PRIVLIB_EXP, FALSE, FALSE, TRUE, TRUE);
 +#endif
 +
  #ifdef PERL_OTHERLIBDIRS
-     incpush(PERL_OTHERLIBDIRS, TRUE, TRUE, TRUE);
+     incpush(PERL_OTHERLIBDIRS, TRUE, TRUE, TRUE, TRUE);
  #endif

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ai

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-aj

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ak

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-am

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-cb

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-an

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ce

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-da

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ap

File Deleted: pkgsrc/lang/perl5/patches/Attic/patch-ar

cvs diff -r1.1 -r1.2 pkgsrc/lang/perl5/patches/Attic/patch-aq (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-aq 2006/05/06 12:32:20 1.1
+++ pkgsrc/lang/perl5/patches/Attic/patch-aq 2008/10/10 21:58:43 1.2
@@ -1,8 +1,8 @@
-$NetBSD: patch-aq,v 1.1 2006/05/06 12:32:20 jlam Exp $
+$NetBSD: patch-aq,v 1.2 2008/10/10 21:58:43 he Exp $
 
---- XSUB.h.orig	2006-01-02 09:45:29.000000000 -0500
+--- XSUB.h.orig	2007-12-18 11:47:07.000000000 +0100
 +++ XSUB.h
-@@ -85,17 +85,16 @@ handled automatically by C<xsubpp>.
+@@ -93,6 +93,9 @@ is a lexical $_ in scope.
  #ifndef PERL_UNUSED_VAR
  #  define PERL_UNUSED_VAR(x) ((void)x)
  #endif
@@ -12,15 +12,20 @@
  
  #define ST(off) PL_stack_base[ax + (off)]
  
- #if defined(__CYGWIN__) && defined(USE_DYNAMIC_LOADING)
- #  define XS(name) __declspec(dllexport) void name(pTHX_ CV* cv)
- #else
--#  ifdef HASATTRIBUTE_UNUSED
+@@ -116,15 +119,7 @@ is a lexical $_ in scope.
+ #  define XS(name) EXPORT_C XSPROTO(name)
+ #endif
+ #ifndef XS
+-#  if defined(HASATTRIBUTE_UNUSED) && !defined(__cplusplus)
 -#    define XS(name) void name(pTHX_ CV* cv __attribute__unused__)
 -#  else
--#    define XS(name) void name(pTHX_ CV* cv)
+-#    ifdef __cplusplus
+-#      define XS(name) extern "C" XSPROTO(name)
+-#    else
+-#      define XS(name) XSPROTO(name)
+-#    endif
 -#  endif
 +#  define XS(name) void name(pTHX_ CV* cv PERL_UNUSED_DECL)
  #endif
  
- #define dAX const I32 ax = MARK - PL_stack_base + 1
+ #define dAX const I32 ax = (I32)(MARK - PL_stack_base + 1)

cvs diff -r1.1 -r1.2 pkgsrc/lang/perl5/patches/Attic/patch-cn (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-cn 2007/04/21 15:32:15 1.1
+++ pkgsrc/lang/perl5/patches/Attic/patch-cn 2008/10/10 21:58:43 1.2
@@ -1,8 +1,8 @@
-$NetBSD: patch-cn,v 1.1 2007/04/21 15:32:15 tnn Exp $
+$NetBSD: patch-cn,v 1.2 2008/10/10 21:58:43 he Exp $
 
---- hints/hpux.sh.orig	2007-04-21 17:17:01.000000000 +0200
+--- hints/hpux.sh.orig	2007-12-18 11:47:07.000000000 +0100
 +++ hints/hpux.sh
-@@ -371,7 +371,7 @@ case "$ccisgcc" in
+@@ -376,7 +376,7 @@ case "$ccisgcc" in
  	    *O[3456789]*) optimize=`echo "$optimize" | sed -e 's/O[3-9]/O2/'` ;;
  	    esac
  	#ld="$cc"
@@ -11,7 +11,7 @@
  	cccdlflags='-fPIC'
  	#lddlflags='-shared'
  	lddlflags='-b'
-@@ -428,7 +428,7 @@ case "$ccisgcc" in
+@@ -434,7 +434,7 @@ case "$ccisgcc" in
  	    toke_cflags="$toke_cflags;optimize=\"$opt\""
  	    regexec_cflags="optimize=\"$opt\""
  	    fi

cvs diff -r1.1 -r1.2 pkgsrc/lang/perl5/patches/Attic/patch-co (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-co 2008/07/30 23:07:52 1.1
+++ pkgsrc/lang/perl5/patches/Attic/patch-co 2008/10/10 21:58:43 1.2
@@ -1,6 +1,6 @@
-$NetBSD: patch-co,v 1.1 2008/07/30 23:07:52 ahoka Exp $
+$NetBSD: patch-co,v 1.2 2008/10/10 21:58:43 he Exp $
 
---- hints/freebsd.sh.orig	2004-03-24 22:47:33.000000000 +0100
+--- hints/freebsd.sh.orig	2007-12-18 11:47:07.000000000 +0100
 +++ hints/freebsd.sh
 @@ -114,7 +114,7 @@ case "$osvers" in
  	lddlflags="-Bshareable $lddlflags"
@@ -9,8 +9,8 @@
 -*)
 +3*|4*|5*|6*)
          objformat=`/usr/bin/objformat`
-         if [ x$objformat = xelf ]; then
-             libpth="/usr/lib /usr/local/lib"
+         if [ x$objformat = xaout ]; then
+             if [ -e /usr/lib/aout ]; then
 @@ -130,6 +130,14 @@ case "$osvers" in
          fi
          cccdlflags='-DPIC -fPIC'

cvs diff -r1.1 -r1.2 pkgsrc/lang/perl5/patches/Attic/patch-ta (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-ta 2006/07/02 20:35:53 1.1
+++ pkgsrc/lang/perl5/patches/Attic/patch-ta 2008/10/10 21:58:44 1.2
@@ -1,23 +1,25 @@
-$NetBSD: patch-ta,v 1.1 2006/07/02 20:35:53 rillig Exp $
+$NetBSD: patch-ta,v 1.2 2008/10/10 21:58:44 he Exp $
 
 On NetBSD, filesystems may be mounted with the noatime option.
 
---- t/io/fs.t.orig	2006-01-08 22:46:15.000000000 +0100
-+++ t/io/fs.t	2006-07-02 22:33:01.000000000 +0200
-@@ -255,13 +255,13 @@ SKIP: {
-             is( $atime, 500000001,          'atime' );
-             is( $mtime, 500000000 + $delta, 'mtime' );
-         }
--        elsif ($^O eq 'beos') {
-+        elsif ($^O eq 'beos' || $^O eq 'netbsd') {
-             SKIP: { skip "atime not updated", 1; }
-             is($mtime, 500000001, 'mtime');
-         }
-         else {
--            fail("atime");
--            fail("mtime");
-+            fail("atime: expected 500000000, got ${atime}");
-+            fail("mtime: expected ".(500000000+$delta).", got ${mtime}");
-         }
+--- t/io/fs.t.orig	2007-12-18 11:47:08.000000000 +0100
++++ t/io/fs.t
+@@ -275,15 +275,15 @@ sub check_utime_result {
+ 		is( $atime, 500000001,          'atime' );
+ 		is( $mtime, 500000000 + $delta, 'mtime' );
+ 	    }
+-	    elsif ($^O eq 'beos') {
++	    elsif ($^O eq 'beos' || $^O eq 'netbsd') {
+             SKIP: {
+ 		    skip "atime not updated", 1;
+ 		}
+ 		is($mtime, 500000001, 'mtime');
+ 	    }
+ 	    else {
+-		fail("atime");
+-		fail("mtime");
++		fail("atime: expected 500000000, got ${atime}");
++		fail("mtime: expected ".(500000000+$delta).", got ${mtime}");
+ 	    }
+ 	}
      }
- }

cvs diff -r1.2 -r1.3 pkgsrc/lang/perl5/patches/Attic/patch-as (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-as 2008/01/13 00:20:22 1.2
+++ pkgsrc/lang/perl5/patches/Attic/patch-as 2008/10/10 21:58:43 1.3
@@ -1,17 +1,16 @@
-$NetBSD: patch-as,v 1.2 2008/01/13 00:20:22 joerg Exp $
+$NetBSD: patch-as,v 1.3 2008/10/10 21:58:43 he Exp $
 
 asm/page.h is no longer installed as part of the kernel header
 page on Gentoo/Linux.
 
---- ext/IPC/SysV/SysV.xs.orig	2008-01-12 15:55:22.000000000 +0100
+--- ext/IPC/SysV/SysV.xs.orig	2007-12-18 11:47:07.000000000 +0100
 +++ ext/IPC/SysV/SysV.xs
-@@ -3,9 +3,6 @@
+@@ -24,8 +24,6 @@
- #include "XSUB.h"
+ #      elif defined(HAS_GETPAGESIZE)
- 
+ #          undef  SHMLBA /* not static: determined at boot time */
- #include <sys/types.h>
+ #          define SHMLBA getpagesize()
--#ifdef __linux__
+-#      elif defined(__linux__)
--#   include <asm/page.h>
+-#          include <asm/page.h>          
--#endif
+ #      endif
- #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
+ #   endif
- #ifndef HAS_SEM
+ #endif
- #   include <sys/ipc.h>

cvs diff -r1.2 -r1.3 pkgsrc/lang/perl5/patches/Attic/patch-zc (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-zc 2006/04/09 06:34:33 1.2
+++ pkgsrc/lang/perl5/patches/Attic/patch-zc 2008/10/10 21:58:44 1.3
@@ -1,6 +1,6 @@
-$NetBSD: patch-zc,v 1.2 2006/04/09 06:34:33 jlam Exp $
+$NetBSD: patch-zc,v 1.3 2008/10/10 21:58:44 he Exp $
 
---- Policy_sh.SH.orig	2003-08-01 08:23:23.000000000 -0400
+--- Policy_sh.SH.orig	2007-12-18 11:47:07.000000000 +0100
 +++ Policy_sh.SH
 @@ -184,10 +184,10 @@ do
  	;;

cvs diff -r1.4 -r1.5 pkgsrc/lang/perl5/patches/Attic/patch-ba (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-ba 2006/08/08 15:36:00 1.4
+++ pkgsrc/lang/perl5/patches/Attic/patch-ba 2008/10/10 21:58:43 1.5
@@ -1,40 +1,18 @@
-$NetBSD: patch-ba,v 1.4 2006/08/08 15:36:00 tron Exp $
+$NetBSD: patch-ba,v 1.5 2008/10/10 21:58:43 he Exp $
 
---- hints/netbsd.sh.orig	2003-08-07 17:57:56.000000000 +0100
-+++ hints/netbsd.sh	2006-08-08 16:33:33.000000000 +0100
-@@ -78,6 +78,30 @@
- 	d_setreuid="$undef"
+--- hints/netbsd.sh.orig	2007-12-18 11:47:07.000000000 +0100
++++ hints/netbsd.sh
+@@ -79,7 +79,7 @@ case "$osvers" in
  	;;
  esac
-+case "$osvers" in
-+0.9*|1.*|2.*|3.*|4.*)
-+	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
- 
- # These are obsolete in any netbsd.
- d_setrgid="$undef"
-@@ -133,23 +157,6 @@
- esac 
+ case "$osvers" in
+-0.9*|1.*|2.*|3.*|4.*)
++0.9*|1.*|2.*|3.*|4.*|5.*)
+ 	d_getprotoent_r="$undef"
+ 	d_getprotobyname_r="$undef"
+ 	d_getprotobynumber_r="$undef"
+@@ -175,23 +175,6 @@ $define|true|[yY]*)
+ esac
  EOCBU
  
 -# Set sensible defaults for NetBSD: look for local software in

cvs diff -r1.5 -r1.6 pkgsrc/lang/perl5/patches/Attic/patch-ca (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-ca 2006/04/09 06:34:33 1.5
+++ pkgsrc/lang/perl5/patches/Attic/patch-ca 2008/10/10 21:58:43 1.6
@@ -1,23 +1,25 @@
-$NetBSD: patch-ca,v 1.5 2006/04/09 06:34:33 jlam Exp $
+$NetBSD: patch-ca,v 1.6 2008/10/10 21:58:43 he Exp $
 
---- Configure.orig	2006-01-08 09:51:03.000000000 -0500
+--- Configure.orig	2007-12-18 11:47:07.000000000 +0100
 +++ Configure
-@@ -3130,11 +3130,13 @@ EOM
- 		dgux)	osname=dgux 
+@@ -3206,13 +3206,14 @@ EOM
  			osvers="$3"
  			;;
-+		dragonfly) osname=dragonfly
-+			osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'` ;;
+ 		dragonfly) osname=dragonfly
+-			osvers="$3"
++			osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'`
+ 			;;
  		dynixptx*) osname=dynixptx
  			osvers=`echo "$4"|sed 's/^v//'`
  			;;
- 		freebsd) osname=freebsd 
+ 		freebsd) osname=freebsd
 -			osvers="$3" ;;
-+			osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'` ;;
++			osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'`
++			;;
  		genix)	osname=genix ;;
  		gnu)	osname=gnu
  			osvers="$3" ;;
-@@ -3156,7 +3158,7 @@ EOM
+@@ -3234,7 +3235,7 @@ EOM
  		MiNT)	osname=mint
  			;;
  		netbsd*) osname=netbsd
@@ -26,7 +28,7 @@
  			;;
  		news-os) osvers="$3"
  			case "$3" in
-@@ -3167,8 +3169,8 @@ EOM
+@@ -3245,8 +3246,8 @@ EOM
  		next*) osname=next ;;
  		nonstop-ux) osname=nonstopux ;;
  		openbsd) osname=openbsd
@@ -37,7 +39,7 @@
  		os2)	osname=os2
  			osvers="$4"
  			;;
-@@ -4445,7 +4447,7 @@ case "$plibpth" in
+@@ -4739,7 +4740,7 @@ case "$plibpth" in
  esac
  case "$libpth" in
  ' ') dlist='';;
@@ -46,18 +48,18 @@
  *) dlist="$libpth";;
  esac
  
-@@ -6485,7 +6487,9 @@ rp='Pathname for the site-specific libra
+@@ -6425,7 +6426,9 @@ rp='Pathname for the site-specific libra
  . ./getfile
- sitelib="$ans"
- sitelibexp="$ansexp"
+ prefixvar=sitelib
+ . ./setprefixvar
 -sitelib_stem=`echo "$sitelibexp" | sed "s,/$version$,,"`
 +if $test -z "$sitelib_stem"; then
 +	sitelib_stem=`echo "$sitelibexp" | sed "s,/$version$,,"`
 +fi
- : Change installation prefix, if necessary.
- if $test X"$prefix" != X"$installprefix"; then
- 	installsitelib=`echo $sitelibexp | $sed "s#^$prefix#$installprefix#"`
-@@ -6606,7 +6610,9 @@ case "$vendorprefix" in
+ 
+ : Determine list of previous versions to include in @INC
+ $cat > getverlist <<EOPL
+@@ -6925,7 +6928,9 @@ case "$vendorprefix" in
  	vendorlibexp="$ansexp"
  	;;
  esac
@@ -65,19 +67,10 @@
 +if $test -z "$vendorlib_stem"; then
 +	vendorlib_stem=`echo "$vendorlibexp" | sed "s,/$version$,,"`
 +fi
- : Change installation prefix, if necessary.
- if $test X"$prefix" != X"$installprefix"; then
- 	installvendorlib=`echo $vendorlibexp | $sed "s#^$prefix#$installprefix#"`
-@@ -7889,7 +7895,7 @@ if "$useshrplib"; then
- 	solaris)
- 		xxx="-R $shrpdir"
- 		;;
--	freebsd|netbsd|openbsd|interix)
-+	freebsd|netbsd|openbsd|dragonfly|interix)
- 		xxx="-Wl,-R$shrpdir"
- 		;;
- 	bsdos|linux|irix*|dec_osf|gnu*)
-@@ -9010,6 +9016,13 @@ EOCP
+ prefixvar=vendorlib
+ . ./installprefix
+ 
+@@ -9170,6 +9175,13 @@ EOCP
  	;;
  esac
  
@@ -91,7 +84,7 @@
  case "$vendorprefix" in
  '')	d_vendorbin="$undef"
  	vendorbin=''
-@@ -17776,7 +17789,15 @@ RCAT(Rei,ser)
+@@ -18347,7 +18359,15 @@ RCAT(Rei,ser)
  ACAT(Cir,cus)
  EOCP
  $cppstdin $cppflags $cppminus <cpp_stuff.c >cpp_stuff.out 2>&1

cvs diff -r1.3 -r1.4 pkgsrc/lang/perl5/patches/Attic/patch-ch (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-ch 2006/04/09 06:34:33 1.3
+++ pkgsrc/lang/perl5/patches/Attic/patch-ch 2008/10/10 21:58:43 1.4
@@ -1,11 +1,11 @@
-$NetBSD: patch-ch,v 1.3 2006/04/09 06:34:33 jlam Exp $
+$NetBSD: patch-ch,v 1.4 2008/10/10 21:58:43 he Exp $
 
---- hints/dec_osf.sh.orig	2006-01-08 04:53:29.000000000 -0500
+--- hints/dec_osf.sh.orig	2007-12-18 11:47:07.000000000 +0100
 +++ hints/dec_osf.sh
-@@ -285,7 +285,7 @@ case "`uname -r`" in
+@@ -79,7 +79,7 @@ case "$unamer" in
  		      # fixed in 4.0E or better.
  		      ;;
- 		  *)    
+ 		  *)
 -                      lddlflags="$lddlflags $optimize"
 +                      lddlflags="$lddlflags"
  		      ;;

cvs diff -r1.3 -r1.4 pkgsrc/lang/perl5/patches/Attic/patch-ci (expand / switch to context diff)
--- pkgsrc/lang/perl5/patches/Attic/patch-ci 2006/04/09 06:34:33 1.3
+++ pkgsrc/lang/perl5/patches/Attic/patch-ci 2008/10/10 21:58:43 1.4
@@ -1,8 +1,8 @@
-$NetBSD: patch-ci,v 1.3 2006/04/09 06:34:33 jlam Exp $
+$NetBSD: patch-ci,v 1.4 2008/10/10 21:58:43 he Exp $
 
---- pp_sys.c.orig	2006-01-13 13:15:15.000000000 -0500
+--- pp_sys.c.orig	2007-12-18 11:47:08.000000000 +0100
 +++ pp_sys.c
-@@ -4516,12 +4516,15 @@ PP(pp_gmtime)
+@@ -4452,12 +4452,15 @@ PP(pp_gmtime)
  	when = (Time_t)SvIVx(POPs);
  #endif
  

File Added: pkgsrc/lang/perl5/patches/Attic/patch-zd
$NetBSD: patch-zd,v 1.1 2008/10/10 21:58:44 he Exp $

--- lib/Module/Build/t/tilde.t.orig	2007-12-18 11:47:07.000000000 +0100
+++ lib/Module/Build/t/tilde.t
@@ -40,6 +40,9 @@ my $p = 'install_base';
 SKIP: {
     my $home = $ENV{HOME} ? $ENV{HOME} : undef;
     skip "Needs case and syntax tweaks for VMS", 14 if $^O eq 'VMS';
+    if ($home =~ /work\/.home/) {
+      skip "Skipping test in pkgsrc env to avoid FAKE_HOME trouble", 14;
+    }
     unless (defined $home) {
       my @info = eval { getpwuid $> };
       skip "No home directory for tilde-expansion tests", 14 if $@;