pkgsrc-Changes-HG archive

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

[pkgsrc/pkgsrc-2009Q1]: pkgsrc/lang/parrot Pullup ticket #2739 - requested by he



details:   https://anonhg.NetBSD.org/pkgsrc/rev/62b694393715
branches:  pkgsrc-2009Q1
changeset: 556772:62b694393715
user:      tron <tron%pkgsrc.org@localhost>
date:      Thu Apr 16 21:56:13 2009 +0000

description:
Pullup ticket #2739 - requested by he
parrot: build fix

Revisions pulled up:
- lang/parrot/distinfo                          1.8
- lang/parrot/patches/patch-ad                  1.3
- lang/parrot/patches/patch-ae                  1.1
---
Module Name:    pkgsrc
Committed By:   he
Date:           Tue Apr 14 23:50:20 UTC 2009

Modified Files:
        pkgsrc/lang/parrot: distinfo
Added Files:
        pkgsrc/lang/parrot/patches: patch-ad patch-ae

Log Message:
Fix the detection and use of perldoc, so that this package can be
fully built and installed when the build is run as root.  The reason
this is problematical is that perldoc changes uid if run as root, to
either 'nobody', 'nouser' or uid -2, for security reasons, and then
cannot write files owned by root or create files in directories owned
by root with 'normal' permissions.

No revision bump as this should purely be a build fix.

diffstat:

 lang/parrot/distinfo         |   4 +++-
 lang/parrot/patches/patch-ad |  29 +++++++++++++++++++++++++++++
 lang/parrot/patches/patch-ae |  15 +++++++++++++++
 3 files changed, 47 insertions(+), 1 deletions(-)

diffs (67 lines):

diff -r ac421e19be51 -r 62b694393715 lang/parrot/distinfo
--- a/lang/parrot/distinfo      Tue Apr 14 21:18:59 2009 +0000
+++ b/lang/parrot/distinfo      Thu Apr 16 21:56:13 2009 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.7 2009/03/25 23:01:48 he Exp $
+$NetBSD: distinfo,v 1.7.2.1 2009/04/16 21:56:13 tron Exp $
 
 SHA1 (parrot-1.0.0.tar.gz) = 9e028f5fff38a332c13ad4389652a016d7a824f7
 RMD160 (parrot-1.0.0.tar.gz) = 46f60accd33f16cc910f4ea03840badc358d22c7
@@ -6,3 +6,5 @@
 SHA1 (patch-aa) = b3ad6ae9acbd8f25682395933fe48209b50a9752
 SHA1 (patch-ab) = 4ecbae193b0bfe47daa8d4dd69468d298137c03a
 SHA1 (patch-ac) = 5e2875b46aa390fc512bf22001146a4a470ae192
+SHA1 (patch-ad) = 9002a7ca55f8f960bea669e383431b3eeb83a878
+SHA1 (patch-ae) = 72e4752112dab2f0b72ede5c45b77fd5b5554606
diff -r ac421e19be51 -r 62b694393715 lang/parrot/patches/patch-ad
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/parrot/patches/patch-ad      Thu Apr 16 21:56:13 2009 +0000
@@ -0,0 +1,29 @@
+$NetBSD: patch-ad,v 1.3.2.2 2009/04/16 21:56:14 tron Exp $
+
+Allow parrot to detect perldoc when run as root.  Perldoc changes
+uid to 'nobody', 'nouser' or uid -2 when run as root, so it won't
+be able to write files created by root with mode 0600 (or create new
+files in directories owned by root mode 0755).
+
+--- config/auto/perldoc.pm.orig        2009-03-08 21:32:47.000000000 +0100
++++ config/auto/perldoc.pm
+@@ -38,7 +38,9 @@ sub runstep {
+ 
+     my $cmd = $conf->data->get_p5('scriptdirexp') . q{/perldoc};
+     my ( $fh, $filename ) = tempfile( UNLINK => 1 );
+-    my $content = capture_output("$cmd -ud $filename perldoc") || undef;
++    my($stdout, $stderr, $retval) = 
++      capture_output("$cmd -u perldoc > $filename");
++    my($content) = $retval ? undef : $stderr;
+ 
+     return 1 unless defined( $self->_initial_content_check($conf, $content) );
+ 
+@@ -68,7 +70,7 @@ E_NOTE
+         if ( $new_perldoc ) {
+             $TEMP_pod_build .= <<"END"
+ ops$slash$pod: ..${slash}src${slash}ops${slash}$ops
+-\t\$(PERLDOC) -ud ops${slash}$pod ..${slash}src${slash}ops${slash}$ops
++\t\$(PERLDOC) -u ..${slash}src${slash}ops${slash}$ops > ops${slash}$pod 
+ \t\$(CHMOD) 0644 ops${slash}$pod
+ 
+ END
diff -r ac421e19be51 -r 62b694393715 lang/parrot/patches/patch-ae
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/parrot/patches/patch-ae      Thu Apr 16 21:56:13 2009 +0000
@@ -0,0 +1,15 @@
+$NetBSD: patch-ae,v 1.1.2.2 2009/04/16 21:56:14 tron Exp $
+
+Perldoc's -d is incompatible with doing the build as root.
+
+--- config/gen/makefiles/docs.in.orig  2009-03-09 05:41:01.000000000 +0100
++++ config/gen/makefiles/docs.in
+@@ -37,7 +37,7 @@ doc-prep:
+       $(MKPATH) ops
+ 
+ packfile-c.pod: ../src/packfile.c
+-#IF(new_perldoc):     $(PERLDOC) -ud packfile-c.pod ../src/packfile.c
++#IF(new_perldoc):     $(PERLDOC) -u ../src/packfile.c > packfile-c.pod 
+ #ELSE:        $(PERLDOC) -u ../src/packfile.c > packfile-c.pod
+ 
+ clean:



Home | Main Index | Thread Index | Old Index