tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Failing perl updates



Hello,

When ExtUtils::MM_Unix creates .packlist(around line 2080 of
ExtUtils/MM_Unix.pm), it tries to find existing .packlist of the same
module, then merge the old one with the new one.

It means if you type "make replace" in textproc/p5-YAML, ExtUtils::MM_Unix
creates .packlist by merging p5-YAML-0.72nb1's .packlist(located in $LOCALBASE)
and p5-YAML-0.77's .packlist(located in $destdir). So the resulting PLIST
contains files those belongs to p5-YAML-0.72nb1 but not belongs to p5-YAML-0.77.

I've written simple patch to lang/perl5, which forces ExtUtils::MM_Unix to 
ignore
$LOCALBASE when creating .packlist.

Do you think it makes sense?

Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/lang/perl5/distinfo,v
retrieving revision 1.80
diff -u -r1.80 distinfo
--- distinfo    27 Nov 2011 19:47:50 -0000      1.80
+++ distinfo    7 Dec 2011 03:27:37 -0000
@@ -4,7 +4,7 @@
 RMD160 (perl-5.14.2.tar.gz) = bed043edbebd69e1279e9a70424e2552389bea79
 Size (perl-5.14.2.tar.gz) = 15223598 bytes
 SHA1 (patch-Configure) = cc3a55187827ebb16326198fd9b262dfae931653
-SHA1 (patch-aa) = 4c8197cdc0595a17ba377a28c7457f923c2d9bf9
+SHA1 (patch-aa) = 0c41021c9e68ed41ef879954306433b98889a97e
 SHA1 (patch-ab) = b6104a02aa6fbeda2340042a93c2382d1a1965bb
 SHA1 (patch-ac) = c1893ea4cf4b89b03b3acc5dec9b5828d50c5dad
 SHA1 (patch-ah) = 6fe177646f0fc40f11f4b2b4f504ca45ddff1941
Index: patches/patch-aa
===================================================================
RCS file: /cvsroot/pkgsrc/lang/perl5/patches/patch-aa,v
retrieving revision 1.33
diff -u -r1.33 patch-aa
--- patches/patch-aa    19 Aug 2010 20:47:10 -0000      1.33
+++ patches/patch-aa    7 Dec 2011 03:27:37 -0000
@@ -1,8 +1,8 @@
 $NetBSD: patch-aa,v 1.33 2010/08/19 20:47:10 seb Exp $
 
---- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm.orig       2010-05-21 
03:45:50.000000000 +0000
-+++ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm    2010-05-21 
03:46:44.000000000 +0000
-@@ -28,8 +28,6 @@
+--- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm.orig       2011-09-26 
09:44:34.000000000 +0000
++++ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+@@ -28,8 +28,6 @@ BEGIN { 
      $Is{VMS}     = $^O eq 'VMS';
      $Is{OSF}     = $^O eq 'dec_osf';
      $Is{IRIX}    = $^O eq 'irix';
@@ -11,7 +11,7 @@
      $Is{SunOS4}  = $^O eq 'sunos';
      $Is{Solaris} = $^O eq 'solaris';
      $Is{SunOS}   = $Is{SunOS4} || $Is{Solaris};
-@@ -931,7 +929,7 @@
+@@ -931,7 +929,7 @@ $(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $
  
      my $libs = '$(LDLOADLIBS)';
  
@@ -20,3 +20,12 @@
        # 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
+@@ -2081,7 +2079,7 @@ pure_site_install :: all
+ 
+ pure_vendor_install :: all
+       $(NOECHO) $(MOD_INSTALL) \
+-              read 
}.$self->catfile('$(VENDORARCHEXP)','auto','$(FULLEXT)','.packlist').q{ \
++              read "" \
+               write 
}.$self->catfile('$(DESTINSTALLVENDORARCH)','auto','$(FULLEXT)','.packlist').q{ 
\
+               $(INST_LIB) $(DESTINSTALLVENDORLIB) \
+               $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \

At Thu, 1 Dec 2011 16:05:45 +0000 (UTC),
John Klos <john%ziaspace.com@localhost> wrote:
> 
> pkg_rolling-replace gave me this on two different machines running 
> netbsd-5:
> 
> => Creating binary package /usr/pkgsrc/packages/All/p5-YAML-0.77.tgz
> pkg_create: can't stat 
> `/usr/pkgsrc/textproc/p5-YAML/work/.destdir/usr/local/lib/perl5/vendor_perl/5.14.0/YAML/Base.pm'
> pkg_create: can't stat 
> `/usr/pkgsrc/textproc/p5-YAML/work/.destdir/usr/local/lib/perl5/vendor_perl/man/man3/YAML::Base.3'
> pkg_create: lstat failed for file 
> lib/perl5/vendor_perl/5.14.0/YAML/Base.pm: No such file or directory
> *** Error code 2
> 
-- 
// HIRAMATSU Yoshifumi
// hiramatu%boreas.dti.ne.jp@localhost


Home | Main Index | Thread Index | Old Index