Change 16939: Integrate perl

[email protected] (Chris Nandor) Fri, 31 May 2002 18:05:39 -0400
Newsgroups perl.perl5.changes.mac
Message-ID <p05100302b91da41b25d5@[10.0.1.177]>
Change 16939 by pudge@pudge-mobile on 2002/05/31 20:48:09

	Integrate perl

Affected files ...

.... //depot/macperl/MANIFEST#10 integrate
.... //depot/macperl/hints/hpux.sh#5 integrate
.... //depot/macperl/lib/Math/BigInt/t/mbi_rand.t#3 integrate
.... //depot/macperl/pod/perldelta.pod#10 integrate
.... //depot/macperl/pod/perlhist.pod#2 integrate
.... //depot/macperl/pod/perlport.pod#4 integrate
.... //depot/macperl/pod/perlvar.pod#3 integrate
.... //depot/macperl/t/lib/sample-tests/skip_all#2 delete
.... //depot/macperl/t/lib/sample-tests/skip_no_msg#2 delete

Differences ...

==== //depot/macperl/MANIFEST#10 (text) ====
Index: macperl/MANIFEST
--- macperl/MANIFEST#9~16929~	Fri May 31 09:27:30 2002
+++ macperl/MANIFEST	Fri May 31 13:48:09 2002
@@ -2379,9 +2379,7 @@
 t/lib/sample-tests/skip			Test data for Test::Harness
 t/lib/sample-tests/skipall	Test data for Test::Harness
 t/lib/sample-tests/skipall_nomsg	Test data for Test::Harness
-t/lib/sample-tests/skip_all		Test data for Test::Harness
 t/lib/sample-tests/skip_nomsg	Test data for Test::Harness
-t/lib/sample-tests/skip_no_msg		Test data for Test::Harness
 t/lib/sample-tests/taint		Test data for Test::Harness
 t/lib/sample-tests/todo			Test data for Test::Harness
 t/lib/sample-tests/todo_inline		Test data for Test::Harness

==== //depot/macperl/hints/hpux.sh#5 (text) ====
Index: macperl/hints/hpux.sh
--- macperl/hints/hpux.sh#4~16870~	Wed May 29 23:06:34 2002
+++ macperl/hints/hpux.sh	Fri May 31 13:48:09 2002
@@ -18,8 +18,8 @@
     # up to date with new CPU/OS releases.
     xxcpu=`getconf CPU_VERSION`; # Get the number.
     xxcpu=`printf '0x%x' $xxcpu`; # convert to hex
-    archname=`sed -n -e "s/^#[ \t]*define[ \t]*CPU_//p" /usr/include/sys/unistd.h |
-	sed -n -e "s/[ \t]*$xxcpu[ \t].*//p" |
+    archname=`sed -n -e "s/^#[[:space:]]*define[[:space:]]*CPU_//p" /usr/include/sys/unistd.h |
+	sed -n -e "s/[[:space:]]*$xxcpu[[:space:]].*//p" |
 	sed -e s/_RISC/-RISC/ -e s/HP_// -e s/_/./ -e "s/[[:space:]]*//g"`;
 else
     # This system is running <= 9.x

==== //depot/macperl/lib/Math/BigInt/t/mbi_rand.t#3 (text) ====
Index: macperl/lib/Math/BigInt/t/mbi_rand.t
--- macperl/lib/Math/BigInt/t/mbi_rand.t#2~16929~	Fri May 31 09:27:30 2002
+++ macperl/lib/Math/BigInt/t/mbi_rand.t	Fri May 31 13:48:09 2002
@@ -25,7 +25,8 @@
 # If you get a failure here, please re-run the test with the printed seed
 # value as input: perl t/mbi_rand.t seed
 
-my $seed = int(rand(65537)); print "# seed: $seed\n"; srand($seed);
+my $seed = ($#ARGV == 0) ? $ARGV[0] : int(rand(65537));
+print "# seed: $seed\n"; srand($seed);
 
 my ($A,$B,$As,$Bs,$ADB,$AMB,$la,$lb);
 my $two = Math::BigInt->new(2);
@@ -40,8 +41,12 @@
   # together digits, we would end up with "1272398823211223" etc.
   while (length($As) < $la) { $As .= int(rand(100)) x int(rand(16)); }
   while (length($Bs) < $lb) { $Bs .= int(rand(100)) x int(rand(16)); }
+  # Strip leading zeros, but don't let As and Bs end up empty.
   $As =~ s/^0+//; $Bs =~ s/^0+//;
+  $As = '0' if $As eq '';
+  $Bs = '0' if $Bs eq '';
   $A = $c->new($As); $B = $c->new($Bs);
+  # print "# As $As\n# Bs $Bs\n";
   # print "# A $A\n# B $B\n";
   if ($A->is_zero() || $B->is_zero())
     {
@@ -58,4 +63,5 @@
   print "# ". join(' ',Math::BigInt::Calc->_base_len()),"\n"
    unless ok ($ADB*$A+$two*$AMB-$AMB,$Bs);
   }
+
 

==== //depot/macperl/pod/perldelta.pod#10 (text) ====
Index: macperl/pod/perldelta.pod
--- macperl/pod/perldelta.pod#9~16929~	Fri May 31 09:27:30 2002
+++ macperl/pod/perldelta.pod	Fri May 31 13:48:09 2002
@@ -2800,6 +2800,15 @@
 
 =back
 
+=head2 Alpha systems with old gccs fail several tests
+
+If you see op/pack, op/pat, op/regexp, or ext/Storable tests failing
+in a Linux/alpha or *BSD/Alpha, it's probably time to upgrade your gcc.
+gccs prior to 2.95.3 are definitely not good enough, and gcc 3.1 may
+be even better.  (RedHat Linux/alpha with gcc 3.1 reported no problems,
+as did Linux 2.4.18 with gcc 2.95.4.)  (In Tru64, it is preferable to
+use the bundled C compiler.)
+
 =head2 BeOS
 
 The following tests fail on 5.8.0 Perl in BeOS Personal 5.03:
@@ -2855,6 +2864,10 @@
 =head2 Linux With Sfio Fails op/misc Test 48
 
 No known fix.
+
+=head2 libwww-perl (LWP) fails base/date #51
+
+Use libwww-perl 5.65 or later.
 
 =head2 Mac OS X
 

==== //depot/macperl/pod/perlhist.pod#2 (text) ====
Index: macperl/pod/perlhist.pod
--- macperl/pod/perlhist.pod#1~16123~	Tue Apr 23 18:25:17 2002
+++ macperl/pod/perlhist.pod	Fri May 31 13:48:09 2002
@@ -358,6 +358,7 @@
           5.7.1         2001-Apr-09
           5.7.2         2001-Jul-13     Virtual release candidate 0.
           5.7.3         2002-Mar-05
+          5.8.0-RC1     2002-Jun-01
 
 =head2 SELECTED RELEASE SIZES
 

==== //depot/macperl/pod/perlport.pod#4 (text) ====
Index: macperl/pod/perlport.pod
--- macperl/pod/perlport.pod#3~16929~	Fri May 31 09:27:30 2002
+++ macperl/pod/perlport.pod	Fri May 31 13:48:09 2002
@@ -453,30 +453,32 @@
 Don't assume that the name used to invoke a command or program with
 C<system> or C<exec> can also be used to test for the existence of the
 file that holds the executable code for that command or program.
-First, many operating systems have "internal" commands that are
-built-in to the OS and while these commands can be invoked, there is
-no corresponding file.  Second, some operating systems (Cygwin, DJGPP,
-OS/2, and VOS) have required suffixes for executable files; these
-suffixes are generally permitted on the command name but are not
+First, many systems have "internal" commands that are built-in to the
+shell or OS and while these commands can be invoked, there is no
+corresponding file.  Second, some operating systems (e.g., Cygwin,
+DJGPP, OS/2, and VOS) have required suffixes for executable files;
+these suffixes are generally permitted on the command name but are not
 required.  Thus, a command like "perl" might exist in a file named
 "perl", "perl.exe", or "perl.pm", depending on the operating system.
 The variable "_exe" in the Config module holds the executable suffix,
-if any.  Third, VMS files always end in a version number, which comes
-after the executable suffix.
+if any.  Third, the VMS port carefully sets up $^X and
+$Config{perlpath} so that no further processing is required.  This is
+just as well, because the matching regular expression used below would
+then have to deal with a possible trailing version number in the VMS
+file name.
 
 To convert $^X to a file pathname, taking account of the requirements
 of the various operating system possibilities, say:
   use Config;
-  use File::Spec;
   $thisperl = $^X;
-  $thisperl .= $Config{_exe} unless $thisperl ~= m/$Config{_exe}([;\d]*)$/i;
+  if ($^O ne 'VMS')
+     {$thisperl .= $Config{_exe} unless $thisperl =~ m/$Config{_exe}$/i;}
 
 To convert $Config{perlpath} to a file pathname, say:
-
   use Config;
-  use File::Spec;
-  $thisperl = File::Spec->canonpath($Config{perlpath});
-  $thisperl .= $Config{_exe} unless $thisperl ~= m/$Config{_exe}([;\d]*)$/i;
+  $thisperl = $Config{perlpath};
+  if ($^O ne 'VMS')
+     {$thisperl .= $Config{_exe} unless $thisperl =~ m/$Config{_exe}$/i;}
 
 =head2 Interprocess Communication (IPC)
 

==== //depot/macperl/pod/perlvar.pod#3 (text) ====
Index: macperl/pod/perlvar.pod
--- macperl/pod/perlvar.pod#2~16929~	Fri May 31 09:27:30 2002
+++ macperl/pod/perlvar.pod	Fri May 31 13:48:09 2002
@@ -1178,10 +1178,10 @@
 
 # Build up a set of file names (not command names).
   use Config;
-  use File::Spec;
-  $this_perl = File::Spec->canonpath($^X);
-  $this_perl .= $Config{_ext}
-          unless $this_perl =~ m/$Config{_ext}([;\d]*)$/i;
+  $this_perl = $^X;
+  if ($^O ne 'VMS')
+     {$this_perl .= $Config{_exe}
+          unless $this_perl =~ m/$Config{_exe}$/i;}
 
 Because many operating systems permit anyone with read access to
 the Perl program file to make a copy of it, patch the copy, and
@@ -1192,10 +1192,10 @@
 command or referenced as a file.
 
   use Config;
-  use File::Spec;
-  $secure_perl_path = File::Spec->canonpath($Config{perlpath});
-  $secure_perl_path .= $Config{_ext}
-          unless $secure_perl_path =~ m/$Config{_ext}([;\d]*)$/i;
+  $secure_perl_path = $Config{perlpath};
+  if ($^O ne 'VMS')
+     {$secure_perl_path .= $Config{_exe}
+          unless $secure_perl_path =~ m/$Config{_exe}$/i;}
 
 =item ARGV
 
End of Patch.