Subject: Re: anyone built perl-5.8.6nb1 successfully on NetBSD/alpha?
To: None <othyro@freeshell.org>
From: Greg A. Woods <woods@weird.com>
List: tech-pkg
Date: 01/10/2005 14:13:01
[ On Saturday, January 8, 2005 at 16:59:16 (-0500), othyro@freeshell.org wrote: ]
> Subject: anyone built perl-5.8.6nb1 successfully on NetBSD/alpha?
>
> Has anyone successfully build perl-5.8.6nb1 on NetBSD/alpha 1.6.2
Yes, well, er, I've just now successfully built perl-5.8.5nb7 (from the
pkgsrc-2004Q4 branch) on my 1.6.2_STABLE machine. My build finishes
without error and displays the final message:
Everything is up to date. Type '/usr/bin/make test' to run test suite.
appended are some changes I made to pkgsrc, though I don't think any of
them would explain the difference you're seeing, but the nb1 vs. nb7 may
explain it.....
> with
> all the packages that depend on it?
Not yet -- I'm trying to work out how I might keep "both" versions of
perl installed, but I think I'll have to reinstall all the perl-using
packages anyway....
> Upgrading is imminent, yet
> scary...
Hmmm..... yes, especially given the way pkgsrc manages, or rather fails
to manage, simultaneous intalls of different perl versions. ;-)
--
Greg A. Woods
H:+1 416 218-0098 W:+1 416 489-5852 x122 VE3TCP RoboHack <woods@robohack.ca>
Planix, Inc. <woods@planix.com> Secrets of the Weird <woods@weird.com>
cvs diff: Diffing lang/perl58
Index: lang/perl58/Makefile
===================================================================
RCS file: /cvs/master/m-NetBSD/main/pkgsrc/lang/perl58/Makefile,v
retrieving revision 1.68.2.1
diff -u -r1.68.2.1 Makefile
--- lang/perl58/Makefile 5 Jan 2005 11:46:51 -0000 1.68.2.1
+++ lang/perl58/Makefile 10 Jan 2005 19:10:37 -0000
@@ -83,6 +83,12 @@
.include "../../mk/bsd.prefs.mk"
+# XXX many packages which use perl as an extension language don't work
+# well, or sometimes at all, with their own custom static-linked perl
+# interpreter.
+#
+LDSTATIC= # empty
+
.if ${OPSYS} == "Darwin"
#
# The perl build attempts to work around case-insensitivity problems on
@@ -191,6 +197,9 @@
. endfor
.endif
+# XXX this is _really_ GROSS AND UGLY. This target modifies at least
+# one patched file.
+#
# It's tough to guess which hints file will be used, so add our modifications
# to all of them:
#
@@ -238,11 +247,6 @@
${INSTALL_PROGRAM_DIR} ${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKSRC_PERL5} ${PREFIX}/bin/perl${PERL5_VERS}
${LN} -f ${PREFIX}/bin/perl${PERL5_VERS} ${PREFIX}/bin/perl
-.if defined(_STRIPFLAG_INSTALL) && !empty(_STRIPFLAG_INSTALL)
- if [ -x ${PREFIX}/bin/a2p ]; then \
- strip ${PREFIX}/bin/a2p; \
- fi
-.endif
# Generate the PLIST template
eval `${PERL5} -V:installarchlib 2>/dev/null`; \
eval `${PERL5} -V:installsitearch 2>/dev/null`; \
Index: lang/perl58/distinfo
===================================================================
RCS file: /cvs/master/m-NetBSD/main/pkgsrc/lang/perl58/distinfo,v
retrieving revision 1.23.2.1
diff -u -r1.23.2.1 distinfo
--- lang/perl58/distinfo 5 Jan 2005 11:46:51 -0000 1.23.2.1
+++ lang/perl58/distinfo 10 Jan 2005 19:11:14 -0000
@@ -5,7 +5,7 @@
SHA1 (patch-aa) = a441cba11b12a4285284e98b6e5918efbd8bafef
SHA1 (patch-ae) = fa3bbb1561192ce9214a7a7c756ccb2595a52c80
SHA1 (patch-ah) = b180ba8d91d2ac5e685b7d23a265245605e7eb74
-SHA1 (patch-ba) = 74a01f3a86f263720b9f07d1fdbaadbaecafb012
+SHA1 (patch-ba) = 2d09a4b7d65210e8993fe7ad2b720c3b541f9ade
SHA1 (patch-bd) = 9f96ba1912f2a8db93db31f7a63c0b49a045318d
SHA1 (patch-be) = 768f472fdd9c1aaea8d0262cfa1d53197348f3e4
SHA1 (patch-ca) = ffe5eecd1162e7c8b591a74582d4c92b7a70ea96
cvs diff: Diffing lang/perl58/patches
Index: lang/perl58/patches/patch-ba
===================================================================
RCS file: /cvs/master/m-NetBSD/main/pkgsrc/lang/perl58/patches/patch-ba,v
retrieving revision 1.2
diff -u -r1.2 patch-ba
--- lang/perl58/patches/patch-ba 9 Jun 2004 20:47:20 -0000 1.2
+++ lang/perl58/patches/patch-ba 10 Jan 2005 19:09:23 -0000
@@ -2,11 +2,25 @@
--- hints/netbsd.sh.orig 2003-08-07 12:57:56.000000000 -0400
+++ hints/netbsd.sh 2004-06-06 18:45:19.000000000 -0400
-@@ -78,6 +78,30 @@
- d_setreuid="$undef"
+@@ -66,16 +66,33 @@ case "$osvers" in
;;
esac
-+case "$osvers" in
+
+-# netbsd had these but they don't really work as advertised, in the
+-# versions listed below. if they are defined, then there isn't a
+-# way to make perl call setuid() or setgid(). if they aren't, then
+-# ($<, $>) = ($u, $u); will work (same for $(/$)). this is because
+-# you can not change the real userid of a process under 4.4BSD.
+-# netbsd fixed this in 1.3.2.
++# These violate the fundamental Unix security model and they are normally
++# turned off in any kernel I build.
++d_setregid="$undef"
++d_setreuid="$undef"
++
+ case "$osvers" in
+-0.9*|1.[012]*|1.3|1.3.1)
+- d_setregid="$undef"
+- d_setreuid="$undef"
+0.9*|1.*|2.*)
+ d_getprotoent_r="$undef"
+ d_getprotobyname_r="$undef"
@@ -28,12 +42,10 @@
+ d_getservbyport_r_proto="$undef"
+ d_setservent_r_proto="$undef"
+ d_endservent_r_proto="$undef"
-+ ;;
-+esac
+ ;;
+ esac
- # These are obsolete in any netbsd.
- d_setrgid="$undef"
-@@ -133,23 +157,6 @@
+@@ -133,23 +150,6 @@ $define|true|[yY]*)
esac
EOCBU