[arch-commits] CVS update of core/base/perl (8 files)

Kevin Piche kevin at archlinux.org
Tue Jan 1 05:26:08 UTC 2008


    Date: Tuesday, January 1, 2008 @ 00:26:08
  Author: kevin
    Path: /home/cvs-core/core/base/perl

   Added: perl-5.10.0-archlinux-cpan-installdir.patch (1.1)
          perl-5.10.0-archlinux-inc-order.patch (1.1)
Modified: PKGBUILD (1.54 -> 1.55) perl.install (1.19 -> 1.20)
 Removed: archlinux-cpan-installdir.patch (1.1)
          archlinux-inc-order.patch (1.1) perl-5.8.8-gcc-4.2.0.patch (1.1)
          perl-5.8.8-utf-regexes.patch (1.1)

upgpkg: perl 5.10.0-1
Update to 5.10.0 using new perl policy, remove symlinks to current in install script


---------------------------------------------+
 PKGBUILD                                    |   85 ++++++++-------------
 archlinux-cpan-installdir.patch             |   17 ----
 archlinux-inc-order.patch                   |  101 --------------------------
 perl-5.10.0-archlinux-cpan-installdir.patch |   11 ++
 perl-5.10.0-archlinux-inc-order.patch       |  101 ++++++++++++++++++++++++++
 perl-5.8.8-gcc-4.2.0.patch                  |   10 --
 perl-5.8.8-utf-regexes.patch                |   59 ---------------
 perl.install                                |   43 ++++++-----
 8 files changed, 168 insertions(+), 259 deletions(-)


Index: core/base/perl/PKGBUILD
diff -u core/base/perl/PKGBUILD:1.54 core/base/perl/PKGBUILD:1.55
--- core/base/perl/PKGBUILD:1.54	Sun Dec  2 22:17:25 2007
+++ core/base/perl/PKGBUILD	Tue Jan  1 00:26:07 2008
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD,v 1.54 2007/12/03 03:17:25 dan Exp $
+# $Id: PKGBUILD,v 1.55 2008/01/01 05:26:07 kevin Exp $
 # Maintainer: judd <jvinet at zeroflux.org>
 pkgname=perl
-pkgver=5.8.8
-pkgrel=10
+pkgver=5.10.0
+pkgrel=1
 pkgdesc="Practical Extraction and Report Language"
 arch=(i686 x86_64) 
 license=('GPL' 'PerlArtistic')
@@ -10,77 +10,56 @@
 groups=('base')
 depends=('gdbm' 'db>=4.6' 'coreutils' 'glibc' 'sh')
 source=(http://www.perl.com/CPAN/src/perl-$pkgver.tar.gz
-	http://search.cpan.org/CPAN/authors/id/P/PM/PMQS/DB_File-1.814.tar.gz
-	http://search.cpan.org/CPAN/authors/id/S/SA/SAPER/Sys-Syslog-0.10.tar.gz
-	perl-5.8.6-picdl.patch0
-	perl-5.8.8-gcc-4.2.0.patch
-	perl-5.8.8-utf-regexes.patch
-	archlinux-cpan-installdir.patch
-	archlinux-inc-order.patch)
+#   http://search.cpan.org/CPAN/authors/id/P/PM/PMQS/DB_File-1.814.tar.gz
+    perl-5.8.6-picdl.patch0
+    perl-5.10.0-archlinux-cpan-installdir.patch
+    perl-5.10.0-archlinux-inc-order.patch)
 install=perl.install
-md5sums=('b8c118d4360846829beb30b02a6b91a7'
-         '5ae102fe172f2aaf771a8d9cae23ca3a'
-         '8fc1f24fc7890e4fd8360e7e9f293099'
+md5sums=('d2c39b002ebfd2c3c5dba589365c5a71'
          '319b56a7ce715fb7a494fe4d5cb9474c'
-         '546fc05b63b0add38898361c8de0c949'
-         'b0463a38a49da77734014c1f6d25a8d2'
-         'e09a21b169a006b223b5d9a24151402c'
-         '846a09cdcad976cb665bf8a0b9bb614a')
+         '7183a5a0b9332d135e1e52f582c5d4e4'
+         '0e4853bd75ee36b8f4c70b78c707b2fa')
 # for site_perl this is needed!
 options=('emptydirs')
 
 build() {
   cd $startdir/src/$pkgname-$pkgver
-  # replace Sys/Syslog with fixed version 0.10.
-  cd ext
-  rm -rf Sys/Syslog/*
-  mv $startdir/src/Sys-Syslog-0.10/* Sys/Syslog
+
+  # Update some modules provided with perl:
   # replace the old DB_File with the newest one from CPAN,
   # since it supports sleepycat's db 4.1.x
-  rm -rf DB_File
-  mv $startdir/src/DB_File-1.814 ./DB_File
+#  cd ext
+#  rm -rf DB_File
+#  mv $startdir/src/DB_File-1.814 ./DB_File
 
   cd $startdir/src/$pkgname-$pkgver
-  patch -Np1 -i ${startdir}/src/perl-5.8.8-gcc-4.2.0.patch || return 1
-  patch -Np0 -i ${startdir}/src/perl-5.8.8-utf-regexes.patch || return 1
-  patch -Np0 -i ../archlinux-inc-order.patch
-  patch -Np0 -i ../archlinux-cpan-installdir.patch
+  patch -Np0 -i ../perl-5.10.0-archlinux-inc-order.patch
+  patch -Np0 -i ../perl-5.10.0-archlinux-cpan-installdir.patch
 
   if [ "$CARCH" = "x86_64" ]; then
     # for x86_64
+    arch_opts="-Dcccdlflags='-fPIC'"
     patch -Np0 -i ../perl-5.8.6-picdl.patch0 || return 1
-    ./Configure -des -Dusethreads -Doptimize="$CFLAGS" -Dprefix=/usr \
-	  -Dinstallprefix=$startdir/pkg/usr -Dvendorprefix=/usr \
-      -Dman1dir=/usr/man/man1 -Dman3dir=/usr/man/man3 \
-      -Dprivlib=/usr/share/perl5/core_perl \
-	  -Darchlib=/usr/lib/perl5/core_perl \
-      -Dsitelib=/usr/share/perl5/site_perl/$pkgver \
-      -Dsitearch=/usr/lib/perl5/site_perl/$pkgver \
-      -Dvendorlib=/usr/share/perl5/vendor_perl \
-      -Dvendorarch=/usr/lib/perl5/vendor_perl \
-	  -Dotherlibdirs=/usr/lib/perl5/current:/usr/lib/perl5/site_perl/current \
-	  -Dman1ext=1perl -Dman3ext=3perl -Dcccdlflags='-fPIC'
   else 
     # for i686
-    ./Configure -des -Dusethreads -Doptimize="$CFLAGS" -Dprefix=/usr \
-	  -Dinstallprefix=$startdir/pkg/usr -Dvendorprefix=/usr \
-      -Dman1dir=/usr/man/man1 -Dman3dir=/usr/man/man3 \
-      -Dprivlib=/usr/share/perl5/core_perl \
-	  -Darchlib=/usr/lib/perl5/core_perl \
-      -Dsitelib=/usr/share/perl5/site_perl/$pkgver \
-      -Dsitearch=/usr/lib/perl5/site_perl/$pkgver \
-      -Dvendorlib=/usr/share/perl5/vendor_perl \
-      -Dvendorarch=/usr/lib/perl5/vendor_perl \
-	  -Dotherlibdirs=/usr/lib/perl5/current:/usr/lib/perl5/site_perl/current \
-	  -Dman1ext=1perl -Dman3ext=3perl
+    arch_opts=""
   fi
+  ./Configure -des -Dusethreads -Doptimize="$CFLAGS" -Dprefix=/usr \
+    -Dinstallprefix=$startdir/pkg/usr -Dvendorprefix=/usr \
+    -Dman1dir=/usr/man/man1 -Dman3dir=/usr/man/man3 \
+    -Dprivlib=/usr/share/perl5/core_perl \
+    -Darchlib=/usr/lib/perl5/core_perl \
+    -Dsitelib=/usr/share/perl5/site_perl/$pkgver \
+    -Dsitearch=/usr/lib/perl5/site_perl/$pkgver \
+    -Dvendorlib=/usr/share/perl5/vendor_perl \
+    -Dvendorarch=/usr/lib/perl5/vendor_perl \
+    -Dotherlibdirs=/usr/lib/perl5/current:/usr/lib/perl5/site_perl/current \
+    -Dman1ext=1perl -Dman3ext=3perl $arch_opts
 
   make || return 1
   make install
-  (cd $startdir/pkg/usr/bin; mv perl$pkgver perl; ln -sf c2ph pstruct)
-  (cd $startdir/pkg/usr/bin; ln -sf s2p psed)
-#  (cd $startdir/pkg/usr/lib/perl5; mv $pkgver current)
-#  (cd $startdir/pkg/usr/lib/perl5/site_perl; mv $pkgver current)
+  (cd $startdir/pkg/usr/bin; mv perl$pkgver perl; \
+      ln -sf c2ph pstruct; ln -sf s2p psed)
   grep -Rl "$startdir/pkg" $startdir/pkg/usr | \
       xargs sed -i "s^$startdir/pkg^^g"
 }
Index: core/base/perl/archlinux-cpan-installdir.patch
diff -u core/base/perl/archlinux-cpan-installdir.patch:1.1 core/base/perl/archlinux-cpan-installdir.patch:removed
--- core/base/perl/archlinux-cpan-installdir.patch:1.1	Fri Nov 30 22:36:20 2007
+++ core/base/perl/archlinux-cpan-installdir.patch	Tue Jan  1 00:26:08 2008
@@ -1,17 +0,0 @@
-Some modules which are included in the perl core set INSTALLDIRS => 'perl'
-explicitly in Makefile.PL.  This makes sense for the normal @INC ordering but
-not for Arch Linux.  Provide a sensible default.
-
-Thanks to Charles Mauch (xterminus) for his work on the initial patch.
-
---- lib/CPAN/FirstTime.pm.orig	2007-11-04 22:35:31.000000000 -0500
-+++ lib/CPAN/FirstTime.pm	2007-11-04 22:37:59.000000000 -0500
-@@ -358,7 +358,7 @@
- 
- };
- 
--    $default = $CPAN::Config->{makepl_arg} || "";
-+    $default = $CPAN::Config->{makepl_arg} || "INSTALLDIRS=site";
-     $CPAN::Config->{makepl_arg} =
- 	prompt("Parameters for the 'perl Makefile.PL' command?
- Typical frequently used settings:
Index: core/base/perl/archlinux-inc-order.patch
diff -u core/base/perl/archlinux-inc-order.patch:1.1 core/base/perl/archlinux-inc-order.patch:removed
--- core/base/perl/archlinux-inc-order.patch:1.1	Fri Nov 30 22:36:20 2007
+++ core/base/perl/archlinux-inc-order.patch	Tue Jan  1 00:26:08 2008
@@ -1,101 +0,0 @@
-Tweak @INC so that the ordering is:
-	site (5.8.8)
-	vendor (all)
-	core (5.8.8)
-	obsolete (pre-5.8.8-9) vendor builds
-
-The rationale being that an admin (via site), or module packager (vendor) can
-chose to shadow core modules when there is a newer version than is included in
-core.
-
-Thanks to Charles Mauch (xterminus) for his work on the initial patch.
-
---- perl.c.orig	2006-01-31 07:34:47.000000000 -0500
-+++ perl.c	2007-10-31 22:46:56.000000000 -0400
-@@ -4771,44 +4771,12 @@
- 
- /* Use the ~-expanded versions of APPLLIB (undocumented),
-     ARCHLIB PRIVLIB SITEARCH SITELIB VENDORARCH and VENDORLIB
-+    Arch Linux: SITEARCH SITELIB VENDORARCH VENDORLIB ARCHLIB PRIVLIB OTHER
- */
- #ifdef APPLLIB_EXP
-     incpush(APPLLIB_EXP, TRUE, TRUE, TRUE);
- #endif
- 
--#ifdef ARCHLIB_EXP
--    incpush(ARCHLIB_EXP, FALSE, FALSE, TRUE);
--#endif
--#ifdef MACOS_TRADITIONAL
--    {
--	Stat_t tmpstatbuf;
--    	SV * privdir = NEWSV(55, 0);
--	char * macperl = PerlEnv_getenv("MACPERL");
--	
--	if (!macperl)
--	    macperl = "";
--	
--	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);
--	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);
--	
--   	SvREFCNT_dec(privdir);
--    }
--    if (!PL_tainting)
--	incpush(":", FALSE, FALSE, TRUE);
--#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);
--#else
--    incpush(PRIVLIB_EXP, FALSE, FALSE, TRUE);
--#endif
--
- #ifdef SITEARCH_EXP
-     /* sitearch is always relative to sitelib on Windows for
-      * DLL-based path intuition to work correctly */
-@@ -4850,6 +4818,40 @@
-     incpush(PERL_VENDORLIB_STEM, FALSE, TRUE, TRUE);
- #endif
- 
-+/* Arch Linux: core libs after site and vendor libs. */
-+#ifdef ARCHLIB_EXP
-+    incpush(ARCHLIB_EXP, FALSE, FALSE, TRUE);
-+#endif
-+#ifdef MACOS_TRADITIONAL
-+    {
-+	Stat_t tmpstatbuf;
-+    	SV * privdir = NEWSV(55, 0);
-+	char * macperl = PerlEnv_getenv("MACPERL");
-+	
-+	if (!macperl)
-+	    macperl = "";
-+	
-+	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);
-+	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);
-+	
-+   	SvREFCNT_dec(privdir);
-+    }
-+    if (!PL_tainting)
-+	incpush(":", FALSE, FALSE, TRUE);
-+#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);
-+#else
-+    incpush(PRIVLIB_EXP, FALSE, FALSE, TRUE);
-+#endif
-+
- #ifdef PERL_OTHERLIBDIRS
-     incpush(PERL_OTHERLIBDIRS, TRUE, TRUE, TRUE);
- #endif
Index: core/base/perl/perl-5.10.0-archlinux-cpan-installdir.patch
diff -u /dev/null core/base/perl/perl-5.10.0-archlinux-cpan-installdir.patch:1.1
--- /dev/null	Tue Jan  1 00:26:08 2008
+++ core/base/perl/perl-5.10.0-archlinux-cpan-installdir.patch	Tue Jan  1 00:26:08 2008
@@ -0,0 +1,11 @@
+--- lib/CPAN/FirstTime.pm.orig	2007-12-24 23:21:42.000000000 -0500
++++ lib/CPAN/FirstTime.pm	2007-12-24 23:26:04.000000000 -0500
+@@ -940,7 +940,7 @@
+     }
+ 
+     if (!$matcher or 'makepl_arg make_arg' =~ /$matcher/) {
+-        my_dflt_prompt(makepl_arg => "", $matcher);
++        my_dflt_prompt(makepl_arg => "INSTALLDIRS=site", $matcher);
+         my_dflt_prompt(make_arg => "", $matcher);
+     }
+ 
Index: core/base/perl/perl-5.10.0-archlinux-inc-order.patch
diff -u /dev/null core/base/perl/perl-5.10.0-archlinux-inc-order.patch:1.1
--- /dev/null	Tue Jan  1 00:26:08 2008
+++ core/base/perl/perl-5.10.0-archlinux-inc-order.patch	Tue Jan  1 00:26:08 2008
@@ -0,0 +1,101 @@
+Tweak @INC so that the ordering is:
+	site (5.8.8)
+	vendor (all)
+	core (5.8.8)
+	obsolete (pre-5.8.8-9) vendor builds
+
+The rationale being that an admin (via site), or module packager (vendor) can
+chose to shadow core modules when there is a newer version than is included in
+core.
+
+Thanks to Charles Mauch (xterminus) for his work on the initial patch.
+
+--- perl.c.orig	2007-12-18 05:47:08.000000000 -0500
++++ perl.c	2007-12-24 23:15:23.000000000 -0500
+@@ -4748,44 +4748,12 @@
+ 
+ /* Use the ~-expanded versions of APPLLIB (undocumented),
+     ARCHLIB PRIVLIB SITEARCH SITELIB VENDORARCH and VENDORLIB
++    Arch Linux: SITEARCH SITELIB VENDORARCH VENDORLIB ARCHLIB PRIVLIB OTHER
+ */
+ #ifdef APPLLIB_EXP
+     incpush(APPLLIB_EXP, TRUE, TRUE, TRUE, TRUE);
+ #endif
+ 
+-#ifdef ARCHLIB_EXP
+-    incpush(ARCHLIB_EXP, FALSE, FALSE, TRUE, TRUE);
+-#endif
+-#ifdef MACOS_TRADITIONAL
+-    {
+-	Stat_t tmpstatbuf;
+-    	SV * privdir = newSV(0);
+-	char * macperl = PerlEnv_getenv("MACPERL");
+-	
+-	if (!macperl)
+-	    macperl = "";
+-	
+-	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, 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, FALSE);
+-	
+-   	SvREFCNT_dec(privdir);
+-    }
+-    if (!PL_tainting)
+-	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, TRUE);
+-#else
+-    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 */
+@@ -4828,6 +4796,40 @@
+     incpush(PERL_VENDORLIB_STEM, FALSE, TRUE, TRUE, TRUE);
+ #endif
+ 
++/* Arch Linux: core libs after site and vendor libs. */
++#ifdef ARCHLIB_EXP
++    incpush(ARCHLIB_EXP, FALSE, FALSE, TRUE, TRUE);
++#endif
++#ifdef MACOS_TRADITIONAL
++    {
++	Stat_t tmpstatbuf;
++    	SV * privdir = newSV(0);
++	char * macperl = PerlEnv_getenv("MACPERL");
++	
++	if (!macperl)
++	    macperl = "";
++	
++	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, 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, FALSE);
++	
++   	SvREFCNT_dec(privdir);
++    }
++    if (!PL_tainting)
++	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, TRUE);
++#else
++    incpush(PRIVLIB_EXP, FALSE, FALSE, TRUE, TRUE);
++#endif
++
+ #ifdef PERL_OTHERLIBDIRS
+     incpush(PERL_OTHERLIBDIRS, TRUE, TRUE, TRUE, TRUE);
+ #endif
Index: core/base/perl/perl-5.8.8-gcc-4.2.0.patch
diff -u core/base/perl/perl-5.8.8-gcc-4.2.0.patch:1.1 core/base/perl/perl-5.8.8-gcc-4.2.0.patch:removed
--- core/base/perl/perl-5.8.8-gcc-4.2.0.patch:1.1	Wed May 30 08:35:20 2007
+++ core/base/perl/perl-5.8.8-gcc-4.2.0.patch	Tue Jan  1 00:26:08 2008
@@ -1,10 +0,0 @@
---- perl-5.8.x/makedepend.SH	2006-06-13 15:31:22.000000000 -0400
-+++ perl-5.8.x-andy/makedepend.SH	2006-07-25 14:45:11.000000000 -0400
-@@ -167,6 +167,7 @@
-             -e '/^#.*<builtin>/d' \
-             -e '/^#.*<built-in>/d' \
-             -e '/^#.*<command line>/d' \
-+            -e '/^#.*<command-line>/d' \
- 	    -e '/^#.*"-"/d' \
- 	    -e '/: file path prefix .* never used$/d' \
- 	    -e 's#\.[0-9][0-9]*\.c#'"$file.c#" \
Index: core/base/perl/perl-5.8.8-utf-regexes.patch
diff -u core/base/perl/perl-5.8.8-utf-regexes.patch:1.1 core/base/perl/perl-5.8.8-utf-regexes.patch:removed
--- core/base/perl/perl-5.8.8-utf-regexes.patch:1.1	Tue Nov  6 20:43:18 2007
+++ core/base/perl/perl-5.8.8-utf-regexes.patch	Tue Jan  1 00:26:08 2008
@@ -1,59 +0,0 @@
-CVE-2007-5116 perl regular expression UTF parsing errors
-https://bugzilla.redhat.com/show_bug.cgi?id=323571
-
---- regcomp.c	2006-01-08 12:59:27.000000000 -0800
-+++ regcomp.c	2007-10-05 12:07:55.000000000 -0700
-@@ -135,7 +135,8 @@
-     I32		extralen;
-     I32		seen_zerolen;
-     I32		seen_evals;
--    I32		utf8;
-+    I32		utf8;			/* pattern is utf8 or not */
-+    I32		orig_utf8;		/* pattern was originally utf8 */
- #if ADD_TO_REGEXEC
-     char 	*starttry;		/* -Dr: where regtry was called. */
- #define RExC_starttry	(pRExC_state->starttry)
-@@ -161,6 +162,7 @@
- #define RExC_seen_zerolen	(pRExC_state->seen_zerolen)
- #define RExC_seen_evals	(pRExC_state->seen_evals)
- #define RExC_utf8	(pRExC_state->utf8)
-+#define RExC_orig_utf8	(pRExC_state->orig_utf8)
- 
- #define	ISMULT1(c)	((c) == '*' || (c) == '+' || (c) == '?')
- #define	ISMULT2(s)	((*s) == '*' || (*s) == '+' || (*s) == '?' || \
-@@ -1749,15 +1751,17 @@
-     if (exp == NULL)
- 	FAIL("NULL regexp argument");
- 
--    RExC_utf8 = pm->op_pmdynflags & PMdf_CMP_UTF8;
-+    RExC_orig_utf8 = RExC_utf8 = pm->op_pmdynflags & PMdf_CMP_UTF8;
- 
--    RExC_precomp = exp;
-     DEBUG_r({
- 	 if (!PL_colorset) reginitcolors();
- 	 PerlIO_printf(Perl_debug_log, "%sCompiling REx%s `%s%*s%s'\n",
- 		       PL_colors[4],PL_colors[5],PL_colors[0],
--		       (int)(xend - exp), RExC_precomp, PL_colors[1]);
-+		       (int)(xend - exp), exp, PL_colors[1]);
-     });
-+
-+redo_first_pass:
-+    RExC_precomp = exp;
-     RExC_flags = pm->op_pmflags;
-     RExC_sawback = 0;
- 
-@@ -1783,6 +1787,17 @@
- 	RExC_precomp = Nullch;
- 	return(NULL);
-     }
-+    if (RExC_utf8 && !RExC_orig_utf8) {
-+        STRLEN len = xend-exp;
-+        DEBUG_r(PerlIO_printf(Perl_debug_log,
-+                    "UTF8 mismatch! Converting to utf8 for resizing and compile\n"));
-+        exp = (char*)Perl_bytes_to_utf8(aTHX_ (U8*)exp, &len);
-+        xend = exp + len;
-+        RExC_orig_utf8 = RExC_utf8;
-+        SAVEFREEPV(exp);
-+        goto redo_first_pass;
-+    }
-+
Index: core/base/perl/perl.install
diff -u core/base/perl/perl.install:1.19 core/base/perl/perl.install:1.20
--- core/base/perl/perl.install:1.19	Sat Nov 24 12:12:47 2007
+++ core/base/perl/perl.install	Tue Jan  1 00:26:08 2008
@@ -1,26 +1,31 @@
 # arg 1:  the new package version
 post_install() {
-   for ver in 5.8.{0,1,2,3,4,5,6,7,8}; do
-     if [ -d usr/lib/perl5/$ver ] && [ ! -h usr/lib/perl5/$ver ]; then
-       echo -n "adapting old version: $ver... "
-       cp --no-dereference -pr --reply=no usr/lib/perl5/$ver/* usr/lib/perl5/current/ >/dev/null 2>&1
-       cp --no-dereference -pr --reply=no usr/lib/perl5/site_perl/$ver/* usr/lib/perl5/site_perl/current/ >/dev/null 2>&1
-       rm -rf usr/lib/perl5/$ver usr/lib/perl5/site_perl/$ver >/dev/null 2>&1
-       echo "done"
-     fi
-     [ -h usr/bin/perl$ver ] || ln -sf perl usr/bin/perl$ver
-     [ -h usr/lib/perl5/$ver ] || ln -sf current usr/lib/perl5/$ver
-     [ -h usr/lib/perl5/site_perl/$ver ] || ln -sf current usr/lib/perl5/site_perl/$ver
-   done
+  for ver in 5.8.{0,1,2,3,4,5,6,7,8}; do
+    [ -h usr/lib/perl5/$ver ] && rm usr/lib/perl5/$ver
+    [ -h usr/lib/perl5/site_perl/$ver ] && rm usr/lib/perl5/site_perl/$ver
+    [ -h usr/bin/perl$ver ] && rm usr/bin/perl$ver
+  done
+
+  echo
+  echo "  This version of perl follows the new perl directory hierarchy (see"
+  echo "  http://wiki.archlinux.org/index.php/Perl_Policy)."
+  echo
+  echo "  - The perl package and its modules install in the core_perl directories"
+  echo "  - Perl modules provided by Arch Linux install in vendor_perl directories"
+  echo "  - CPAN installed modules install in site_perl directories"
+  echo "  - Older modules in the current directory should still work"
+  echo "  - Programs with embedded perl interpreters need to be rebuilt"
+  echo
+  echo "  If you use the CPAN shell to install modules it is recommended to"
+  echo "  rebuild the configuration file .../CPAN/Config.pm by using the CPAN"
+  echo "  command: o conf init"
+  echo 
 }
 
-# arg 1:  the old package version
-pre_remove() {
-   for ver in 5.8.{0,1,2,3,4,5,6,7,8}; do
-      rm usr/lib/perl5/$ver
-      rm usr/lib/perl5/site_perl/$ver
-      rm usr/bin/perl$ver
-   done
+# arg 1:  the new package version
+# arg 2:  the old package version
+post_upgrade() {
+  post_install
 }
 
 op=$1




More information about the arch-commits mailing list