Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 02 May 2001 23:26:49 +0200
From:      Mark Murray <mark@grondar.za>
To:        current@freebsd.org
Subject:   HEADS UP! Breakage in Perl/BSDPAN
Message-ID:  <200105022124.f42LOup61232@gratis.grondar.za>

next in thread | raw e-mail | index | archive | help
Hi

Those who made a buildworld without NO_PERL="true" with sources
newer than Tue, 1 May 2001 02:25:25 -0700 (PDT), but older than
2001/05/02 14:18:33 PDT, must apply the following patch as root in
/usr/libdata/perl/BSDPAN directory.

(If you are tracking CURRENT, then CVSup and/or "cvs update" after this
message will get you the same fix.)

A patch: (by Anton Berezin <tobez@tobez.org>)

diff -u -ru /usr/src/gnu/usr.bin/perl/BSDPAN/BSDPAN/Override.pm ./BSDPAN/Override.pm
--- /usr/src/gnu/usr.bin/perl/BSDPAN/BSDPAN/Override.pm	Tue May  1 11:25:24 2001
+++ ./BSDPAN/Override.pm	Wed May  2 20:38:12 2001
@@ -13,9 +13,8 @@
 #
 use strict;
 use Carp;
+use BSDPAN;
 require Exporter;
-require SelfLoader;	# XXX 2nd-order magic over SelfLoader's magic  :-)
-# require AutoLoader;	# XXX do we need to do similar hoop-la with it?
 
 use vars qw(@ISA @EXPORT);
 @ISA = qw(Exporter);
@@ -77,8 +76,11 @@
 
 	# do we need to protect against SelfLoader?
 	my $sl_autoload = eval "*$pkg\::AUTOLOAD{CODE}";
-	$sl_autoload = 0
-	    if $sl_autoload && $sl_autoload != \&SelfLoader::AUTOLOAD;
+	if ($sl_autoload) {
+	   	require SelfLoader;
+		$sl_autoload = 0
+		    if $sl_autoload != \&SelfLoader::AUTOLOAD;
+	}
 
 	# get the reference to the original sub
 	my $name_addr = eval "*$name\{CODE}";
diff -u -ru /usr/src/gnu/usr.bin/perl/BSDPAN/BSDPAN.pm ./BSDPAN.pm
--- /usr/src/gnu/usr.bin/perl/BSDPAN/BSDPAN.pm	Tue May  1 11:25:23 2001
+++ ./BSDPAN.pm	Wed May  2 20:39:39 2001
@@ -11,7 +11,6 @@
 #
 # The pod documentation for this module is at the end of this file.
 #
-use Config;
 
 my $bsdpan_path;	# Directory pathname of BSDPAN itself
 
@@ -34,19 +33,22 @@
 }
 
 sub perl_version {
-	return $Config{version};
+	require Config;
+	return $Config::Config{version};
 }
 
 sub perl_ver {
+	require Config;
 	# pre-5.6.0 perls
-	return $Config{apiversion} if exists $Config{apiversion};
+	return $Config::Config{apiversion} if exists $Config::Config{apiversion};
 	# post-5.6.0 perls
-	return $Config{version};
+	return $Config::Config{version};
 }
 
 sub perl_arch {
+	require Config;
 	# pre-5.6.0 perls
-	return $Config{archname} if exists $Config{apiversion};
+	return $Config::Config{archname} if exists $Config::Config{apiversion};
 	# post-5.6.0 perls
 	return 'mach';
 }

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200105022124.f42LOup61232>