Change 19123 by [EMAIL PROTECTED] on 2003/04/01 16:38:55
Integrate:
[ 19113]
Implemented AIX longdouble support in hints/aix.sh, which now
actually work. Thanks to John L. Allen for the hint.
Subject: Re: AIX longdoubles
From: "H.Merijn Brand" <[EMAIL PROTECTED]>
Date: Tue, 01 Apr 2003 17:18:57 +0200
Message-Id: <[EMAIL PROTECTED]>
[ 19114]
Subject: [PATCH] Text::Abbrev warnings safe
From: Peter Scott <[EMAIL PROTECTED]>
Date: Fri, 28 Mar 2003 16:34:47 -0800
Message-id: <[EMAIL PROTECTED]>
[ 19115]
Subject: [PATCH] overdue perlhack.pod corrections for RT
From: [EMAIL PROTECTED]
Date: Mon, 31 Mar 2003 16:27:14 +0200
Message-ID: <[EMAIL PROTECTED]>
[ 19116]
Subject: [PATCH ext/SDBM_File/sdbm/Makefile.PL] MM hackery and whitespace
changes
From: Michael G Schwern <[EMAIL PROTECTED]>
Date: Mon, 31 Mar 2003 15:16:57 -0800
Message-ID: <[EMAIL PROTECTED]>
[ 19117]
Subject: Re: [EMAIL PROTECTED] bug: make minitest fails with threads
From: Rafael Garcia-Suarez <[EMAIL PROTECTED]>
Date: Tue, 1 Apr 2003 11:02:35 +0200
Message-Id: <[EMAIL PROTECTED]>
[ 19118]
Document the _exit() issue with threads in Linux [perl #17057].
Affected files ...
... //depot/maint-5.8/perl/ext/POSIX/POSIX.pod#6 integrate
... //depot/maint-5.8/perl/ext/SDBM_File/sdbm/Makefile.PL#2 integrate
... //depot/maint-5.8/perl/hints/aix.sh#7 integrate
... //depot/maint-5.8/perl/lib/Text/Abbrev.pm#2 integrate
... //depot/maint-5.8/perl/lib/Text/Abbrev.t#2 integrate
... //depot/maint-5.8/perl/pod/perlhack.pod#3 integrate
... //depot/maint-5.8/perl/t/op/getpid.t#3 integrate
Differences ...
==== //depot/maint-5.8/perl/ext/POSIX/POSIX.pod#6 (text) ====
Index: perl/ext/POSIX/POSIX.pod
--- perl/ext/POSIX/POSIX.pod#5~18575~ Thu Jan 23 04:33:38 2003
+++ perl/ext/POSIX/POSIX.pod Tue Apr 1 08:38:55 2003
@@ -68,6 +68,12 @@
This is identical to the C function C<_exit()>. It exits the program
immediately which means among other things buffered I/O is B<not> flushed.
+Note that when using threads and in Linux this is B<not> a good way to
+exit a thread because in Linux processes and threads are kind of the
+same thing (Note: while this is the situation in early 2003 there are
+projects under way to have threads with more POSIXly semantics in Linux).
+If you want not to return from a thread, detach the thread.
+
=item abort
This is identical to the C function C<abort()>. It terminates the
==== //depot/maint-5.8/perl/ext/SDBM_File/sdbm/Makefile.PL#2 (text) ====
Index: perl/ext/SDBM_File/sdbm/Makefile.PL
--- perl/ext/SDBM_File/sdbm/Makefile.PL#1~17645~ Fri Jul 19 12:29:57 2002
+++ perl/ext/SDBM_File/sdbm/Makefile.PL Tue Apr 1 08:38:55 2003
@@ -22,34 +22,21 @@
);
sub MY::constants {
- package MY;
- my $r = shift->SUPER::constants();
- if ($^O eq 'VMS') {
- $r =~ s/^INST_STATIC =.*$/INST_STATIC = libsdbm\$(LIB_EXT)/m
- }
- return $r;
-}
+ package MY;
+ my $self = shift;
+
+ $self->{INST_STATIC} = 'libsdbm$(LIB_EXT)';
-sub MY::post_constants {
- package MY;
- if ($^O eq 'VMS') {
- shift->SUPER::post_constants();
- } else {
-'
-INST_STATIC = libsdbm$(LIB_EXT)
-'
- }
+ return $self->SUPER::constants();
}
sub MY::top_targets {
- my $noecho = shift->{NOECHO};
-
my $r = '
all :: static
- ' . $noecho . '$(NOOP)
+ $(NOECHO) $(NOOP)
config ::
- ' . $noecho . '$(NOOP)
+ $(NOECHO) $(NOOP)
lint:
lint -abchx $(LIBSRCS)
@@ -60,7 +47,7 @@
# variables into the environment so $(MYEXTLIB) is set in here to this
# value which can not be built.
sdbm/libsdbm.a:
- ' . $noecho . '$(NOOP)
+ $(NOECHO) $(NOOP)
' unless $^O eq 'VMS';
return $r;
==== //depot/maint-5.8/perl/hints/aix.sh#7 (text) ====
Index: perl/hints/aix.sh
--- perl/hints/aix.sh#6~18429~ Fri Jan 3 20:19:57 2003
+++ perl/hints/aix.sh Tue Apr 1 08:38:55 2003
@@ -209,6 +209,24 @@
# the required -bE:$installarchlib/CORE/perl.exp is added by
# libperl.U (Configure) later.
+case "$use64bitall" in
+ $define|true|[yY]*) use64bitint="$define" ;;
+ esac
+
+case "$usemorebits" in
+ $define|true|[yY]*) use64bitint="$define"; uselongdouble="$define" ;;
+ esac
+
+case $cc_type in
+ vac|xlc)
+ case "$uselongdouble" in
+ $define|true|[yY]*)
+ ccflags="$ccflags -qlongdouble"
+ libswanted="c128 $libswanted"
+ ;;
+ esac
+ esac
+
case "$cc" in
*gcc*) ;;
cc*|xlc*) # cc should've been set by line 116 or so if empty.
==== //depot/maint-5.8/perl/lib/Text/Abbrev.pm#2 (text) ====
Index: perl/lib/Text/Abbrev.pm
--- perl/lib/Text/Abbrev.pm#1~17645~ Fri Jul 19 12:29:57 2002
+++ perl/lib/Text/Abbrev.pm Tue Apr 1 08:38:55 2003
@@ -43,6 +43,7 @@
sub abbrev {
my ($word, $hashref, $glob, %table, $returnvoid);
+ @_ or return; # So we don't autovivify onto @_ and trigger warning
if (ref($_[0])) { # hash reference preferably
$hashref = shift;
$returnvoid = 1;
==== //depot/maint-5.8/perl/lib/Text/Abbrev.t#2 (text) ====
Index: perl/lib/Text/Abbrev.t
--- perl/lib/Text/Abbrev.t#1~17645~ Fri Jul 19 12:29:57 2002
+++ perl/lib/Text/Abbrev.t Tue Apr 1 08:38:55 2003
@@ -1,6 +1,6 @@
#!./perl
-print "1..7\n";
+print "1..8\n";
BEGIN {
chdir 't' if -d 't';
@@ -49,3 +49,11 @@
$s = join ':', sort keys %y;
print (($r eq $s)?"ok $test\n":"not ok $test\n"); $test++;
+
+
+# warnings safe with zero arguments
+my $notok;
+$^W = 1;
+$SIG{__WARN__} = sub { $notok++ };
+abbrev();
+print ($notok ? "not ok $test\n" : "ok $test\n"); $test++;
==== //depot/maint-5.8/perl/pod/perlhack.pod#3 (text) ====
Index: perl/pod/perlhack.pod
--- perl/pod/perlhack.pod#2~18173~ Fri Nov 22 18:02:33 2002
+++ perl/pod/perlhack.pod Tue Apr 1 08:38:55 2003
@@ -480,63 +480,23 @@
=back
-=head2 Perlbug remote interface
+=head2 Perlbug administration
-There are three (3) remote administrative interfaces for modifying bug
-status, category, etc. In all cases an admin must be first registered
-with the Perlbug database by sending an email request to
[EMAIL PROTECTED] or [EMAIL PROTECTED]
+There is a single remote administrative interface for modifying bug status,
+category, open issues etc. using the B<RT> I<bugtracker> system, maintained
+by I<Robert Spier>. Become an administrator, and close any bugs you can get
+your sticky mitts on:
-The main requirement is the willingness to classify, (with the
-emphasis on closing where possible :), outstanding bugs. Further
-explanation can be garnered from the web at http://bugs.perl.org/ , or
-by asking on the admin mailing list at: [EMAIL PROTECTED]
+ http://rt.perl.org
-For more info on the web see
+The bugtracker mechanism for B<perl5> bugs in particular is at:
- http://bugs.perl.org/perlbug.cgi?req=spec
+ http://bugs6.perl.org/perlbug
-=over 4
+To email the bug system administrators:
-=item 1 http://bugs.perl.org
+ "perlbug-admin" <[EMAIL PROTECTED]>
-Login via the web, (remove B<admin/> if only browsing), where interested
-Cc's, tests, patches and change-ids, etc. may be assigned.
-
- http://bugs.perl.org/admin/index.html
-
-
-=item 2 [EMAIL PROTECTED]
-
-Where the subject line is used for commands:
-
- To: [EMAIL PROTECTED]
- Subject: -a close bugid1 bugid2 aix install
-
- To: [EMAIL PROTECTED]
- Subject: -h
-
-
-=item 3 [EMAIL PROTECTED]
-
-Where the address itself is the source for the commands:
-
- To: [EMAIL PROTECTED]
-
- To: [EMAIL PROTECTED]
-
-
-=item notes, patches, tests
-
-For patches and tests, the message body is assigned to the appropriate
-bugs and forwarded to p5p for their attention.
-
- To: test_<bugid1>[EMAIL PROTECTED]
- Subject: this is a test for the (now closed) aix bug
-
- Test is the body of the mail
-
-=back
=head2 Submitting patches
==== //depot/maint-5.8/perl/t/op/getpid.t#3 (text) ====
Index: perl/t/op/getpid.t
--- perl/t/op/getpid.t#2~18082~ Sun Nov 3 21:38:52 2002
+++ perl/t/op/getpid.t Tue Apr 1 08:38:55 2003
@@ -11,8 +11,6 @@
use strict;
use Config;
-plan tests => 2;
-
BEGIN {
if (!$Config{useithreads}) {
print "1..0 # Skip: no ithreads\n";
@@ -22,10 +20,19 @@
print "1..0 # Skip: no getppid\n";
exit;
}
+ eval 'use threads; use threads::shared';
+ if ($@ =~ /dynamic loading not available/) {
+ print "1..0 # Skip: no dynamic loading, no threads\n";
+ exit;
+ }
+ plan tests => 3;
+ if ($@) {
+ fail("unable to load thread modules");
+ }
+ else {
+ pass("thread modules loaded");
+ }
}
-
-use threads;
-use threads::shared;
my ($pid, $ppid) = ($$, getppid());
my $pid2 : shared = 0;
End of Patch.