From 107595f705950042f2c15e9c1fc7125753b4924c Mon Sep 17 00:00:00 2001 From: Nicholas Clark Date: Sat, 12 Nov 2005 22:48:11 +0000 Subject: [PATCH] Integrate: [ 25537] PodParser is now Pod-Parser on CPAN [ 25578] SAPER is the new maintainer of XSLoader [ 25579] Add Porting/checkcfgvar.pl by Jarkko [ 25581] Extend 25579 to cover vc64 too [ 25656] Cope with completely empty lines within the Changes file. Better diagnostics on "malformed" lines. [ 25657] Teach the alias mapping about new committers. [ 25659] checkAUTHORS.pl wasn't aware of one of Merijn's e-mail addresses [ 25660] 2 more e-mail addresses that map to rgs [ 25706] Update with new files from C::Zlib [ 25828] Update one of merijn's previous emails. [ 25864] gbarr is maintaining IO. [ 25865] Check for changes in IO on CPAN. [ 26096] Andy Lester maintains Locale::Maketext now. p4raw-link: @26096 on //depot/perl: 1fc52a95725c307a2eb5e97f05c88c748c1c475c p4raw-link: @25865 on //depot/perl: 6ea79e1700a40a6dac73786dfa0a911a945bcffb p4raw-link: @25864 on //depot/perl: 0f1209c3fbbdc81a56759a26ef10bf7912b1b5ab p4raw-link: @25828 on //depot/perl: 0fbf934d321fa3e4d7b5183ff01c9b8539e5bb0f p4raw-link: @25706 on //depot/perl: e996bb8ad990803f73b79fefe52e52196fa5c9fd p4raw-link: @25660 on //depot/perl: 485444d202c3019eeaf8c01d813fc14f615350bb p4raw-link: @25659 on //depot/perl: 074a06a858a872ab75019c111eb0e6356b07ceca p4raw-link: @25657 on //depot/perl: 5e266217b2ba5a06d688e61df751a774a76e76ec p4raw-link: @25656 on //depot/perl: 84fd1186674f7e16cbe42e2947846d025465181d p4raw-link: @25581 on //depot/perl: 6ab0e26eaad9ac45167b946aa56788746af949e9 p4raw-link: @25579 on //depot/perl: 522c08cc9e4389a24a0837cf43aee02468b29a53 p4raw-link: @25578 on //depot/perl: b9934ccf1c64ef8a8e467adb0682156a3bd23fe7 p4raw-link: @25537 on //depot/perl: a22f4c4d3e1e51482cc69d1e79910ffd56ee57e6 p4raw-id: //depot/maint-5.8/perl@26106 p4raw-branched: from //depot/perl@26105 'branch in' Porting/checkcfgvar.pl (@25579..) p4raw-integrated: from //depot/perl@25656 'ignore' Porting/checkAUTHORS.pl (@24234..) p4raw-integrated: from //depot/perl@25579 'merge in' MANIFEST (@25563..) p4raw-integrated: from //depot/perl@25578 'ignore' Porting/Maintainers.pl (@25537..) --- MANIFEST | 1 + Porting/Maintainers.pl | 18 ++++++--- Porting/checkAUTHORS.pl | 15 +++++-- Porting/checkcfgvar.pl | 101 ++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 127 insertions(+), 8 deletions(-) create mode 100644 Porting/checkcfgvar.pl diff --git a/MANIFEST b/MANIFEST index f852fea..aa5d734 100644 --- a/MANIFEST +++ b/MANIFEST @@ -2393,6 +2393,7 @@ Porting/apply Apply patches sent by mail Porting/check83.pl Check whether we are 8.3-friendly Porting/checkAUTHORS.pl Check that the AUTHORS file is complete Porting/checkcase.pl Check whether we are case-insensitive-fs-friendly +Porting/checkcfgvar.pl Check that config scripts define all symbols Porting/checkURL.pl Check whether we have working URLs Porting/checkVERSION.pl Check whether we have $VERSIONs Porting/cmpVERSION.pl Compare whether two trees have changed modules diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl index b4e46bf..518be66 100644 --- a/Porting/Maintainers.pl +++ b/Porting/Maintainers.pl @@ -50,6 +50,7 @@ package Maintainers; 'rmbarker' => 'Robin Barker ', 'rra' => 'Russ Allbery ', 'sadahiro' => 'SADAHIRO Tomoyuki ', + 'saper' => 'Sébastien Aperghis-Tramoni ', 'sburke' => 'Sean Burke ', 'mschwern' => 'Michael Schwern ', 'smccam' => 'Stephen McCamant ', @@ -110,7 +111,7 @@ package Maintainers; 'Compress::Zlib' => { 'MAINTAINER' => 'pmqs', - 'FILES' => q[ext/Compress/Zlib], + 'FILES' => q[ext/Compress/Zlib t/lib/ZlibTestUtils.pm], 'CPAN' => 1, }, @@ -280,9 +281,9 @@ package Maintainers; 'IO' => { - 'MAINTAINER' => 'p5p', # Not gbarr. + 'MAINTAINER' => 'gbarr', 'FILES' => q[ext/IO], - 'CPAN' => 0, + 'CPAN' => 1, }, 'IO::Zlib' => @@ -316,7 +317,7 @@ package Maintainers; 'Locale::Maketext' => { - 'MAINTAINER' => 'sburke', + 'MAINTAINER' => 'petdance', 'FILES' => q[lib/Locale/Maketext.pm lib/Locale/Maketext], 'CPAN' => 1, }, @@ -444,7 +445,7 @@ package Maintainers; 'CPAN' => 0, }, - 'PodParser' => { + 'Pod::Parser' => { 'MAINTAINER' => 'marekr', 'FILES' => q[lib/Pod/{InputObjects,Parser,ParseUtils,Select,PlainText,Usage,Checker,Find}.pm pod/pod{select,2usage,checker}.PL t/pod/testcmp.pl t/pod/testp2pt.pl t/pod/testpchk.pl t/pod/emptycmd.* t/pod/find.t t/pod/for.* t/pod/headings.* t/pod/include.* t/pod/included.* t/pod/lref.* t/pod/multiline_items.* t/pod/nested_items.* t/pod/nested_seqs.* t/pod/oneline_cmds.* t/pod/poderrs.* t/pod/pod2usage.* t/pod/podselect.* t/pod/special_seqs.*], 'CPAN' => 1, @@ -630,6 +631,13 @@ package Maintainers; 'CPAN' => 0, }, + 'XSLoader' => + { + 'MAINTAINER' => 'saper', + 'FILES' => q[ext/DynaLoader/t/XSLoader.t ext/DynaLoader/XSLoader_pm.PL], + 'CPAN' => 1, + }, + 's2p' => { 'MAINTAINER' => 'laun', diff --git a/Porting/checkAUTHORS.pl b/Porting/checkAUTHORS.pl index fa5f863..fe6350c 100644 --- a/Porting/checkAUTHORS.pl +++ b/Porting/checkAUTHORS.pl @@ -36,6 +36,8 @@ my %map = reverse ( pudge => "pudge\100pobox.com", rgs => "rgarciasuarez\100free.fr", sky => "sky\100nanisky.com", + steveh => "steve.hay\100uk.radan.com", + stevep => "steve\100fisharerojo.org", "abigail\100abigail.nl"=> "abigail\100foad.org", "chromatic\100wgz.org" => "chromatic\100rmci.net", "slaven\100rezic.de" => "slaven.rezic\100berlin.de", @@ -60,7 +62,8 @@ $map{"artur\100contiller.se"} = $map{"arthur\100contiller.se"} = "sky"; $map{"autrijus\100egb.elixus.org"} = $map{"autrijus\100geb.elixus.org"} = "autrijus\100autrijus.org"; $map{"craig.berry\100psinetcs.com"} = $map{"craig.berry\100metamorgs.com"} - = $map{"craig.berry\100signaltreesolutions.com"} = "craigberry\100mac.com"; + = $map{"craig.berry\100signaltreesolutions.com"} + = $map{"craigberry\100mac.com"} = "craigb"; $map{"davem\100fdgroup.co.uk"} = "davem"; $map{"ilya\100math.ohio-state.edu"} = $map{"ilya\100math.berkeley.edu"} = $map{"ilya\100math.berkeley.edu"} = "nospam-abuse\100ilyaz.org"; @@ -70,7 +73,9 @@ $map{"nick\100ccl4.org"} = $map{"nick\100talking.bollo.cx"} = $map{"nick\100bagpuss.unfortu.net"} = "nicholas"; $map{"philip.newton\100gmx.net"} = $map{"philip.newton\100datenrevision.de"} = "pnewton\100gmx.de", -$map{"raphel.garcia-suarez\100hexaflux.com"} = "rgs"; +$map{"rgarciasuarez\100mandrakesoft.com"} + = $map{"rgarciasuarez\100mandriva.com"} + = $map{"raphel.garcia-suarez\100hexaflux.com"} = "rgs"; $map{"simon\100pembro4.pmb.ox.ac.uk"} = $map{"simon\100brecon.co.uk"} = $map{"simon\100othersideofthe.earth.li"} = $map{"simon\100cozens.net"} = $map{"simon\100netthink.co.uk"} = "simon\100simon-cozens.org"; @@ -85,6 +90,8 @@ $map{"japhy\100perlmonk.org"} = $map{"japhy\100cpan.org"} = "japhy\100pobox.com"; $map{"rmbarker\100cpan.org"} = "robin.barker\100npl.co.uk"; +$map{"h.m.brand\100hccnet.nl"} = $map{"merijn\100l1.procura.nl"} = "merijn"; + if (@authors) { my %raw; foreach my $filename (@authors) { @@ -124,12 +131,14 @@ while (<>) { $log = $_; my $prefix = " " x length $1; LOG: while (<>) { + next if /^$/; if (s/^$prefix//) { $log .= $_; } elsif (/^\s+Branch:/) { last LOG; } else { - die "Malformed log end with $_"; + chomp; + die "Malformed log end with '$_'"; } } } diff --git a/Porting/checkcfgvar.pl b/Porting/checkcfgvar.pl new file mode 100644 index 0000000..0a7b24e --- /dev/null +++ b/Porting/checkcfgvar.pl @@ -0,0 +1,101 @@ +#!/usr/bin/perl -w + +# +# Check that the various config.sh-clones have (at least) all the +# same symbols as the top-level config_h.SH so that the (potentially) +# needed symbols are not lagging after how Configure thinks the world +# is laid out. +# +# VMS is not handled here, due to their own rather elaborate DCL scripting. +# + +use strict; + +my $MASTER_CFG = "config_h.SH"; +my %MASTER_CFG; + +my @CFG = ( + # This list contains both 5.8.x and 5.9.x files, + # we check from MANIFEST whether they are expected to be present. + "Cross/config.sh-arm-linux", + "epoc/config.sh", + "NetWare/config.wc", + "symbian/config.sh", + "uconfig.sh", + "plan9/config_sh.sample", + "vos/config.alpha.def", + "vos/config.ga.def", + "win32/config.bc", + "win32/config.gc", + "win32/config.vc", + "win32/config.vc64", + "wince/config.ce", + ); + +sub read_file { + my ($fn, $sub) = @_; + if (open(my $fh, $fn)) { + local $_; + while (<$fh>) { + &$sub; + } + } else { + die "$0: Failed to open '$fn' for reading: $!\n"; + } +} + +sub config_h_SH_reader { + my $cfg = shift; + return sub { + return if 1../^echo \"Extracting \$CONFIG_H/; + while (/[^\\]\$(\w+)/g) { + my $v = $1; + next if $v =~ /^(CONFIG_H|CONFIG_SH)$/; + $cfg->{$v}++; + } + } +} + +read_file($MASTER_CFG, + config_h_SH_reader(\%MASTER_CFG)); + +my %MANIFEST; + +read_file("MANIFEST", + sub { + $MANIFEST{$1}++ if /^(.+?)\t/; + }); + +my @MASTER_CFG = sort keys %MASTER_CFG; + +sub check_cfg { + my ($fn, $cfg) = @_; + for my $v (@MASTER_CFG) { + print "$fn: missing '$v'\n" unless exists $cfg->{$v}; + } +} + +for my $cfg (@CFG) { + unless (exists $MANIFEST{$cfg}) { + print "[skipping not-expected '$cfg']\n"; + next; + } + my %cfg; + read_file($cfg, + sub { + return if /^\#/ || /^\s*$/; + # foo='bar' + # foo=bar + # $foo='bar' # VOS 5.8.x specialty + # $foo=bar # VOS 5.8.x specialty + if (/^\$?(\w+)='(.*)'$/) { + $cfg{$1}++; + } + elsif (/^\$?(\w+)=(.*)$/) { + $cfg{$1}++; + } else { + warn "$cfg:$.:$_"; + } + }); + check_cfg($cfg, \%cfg); +} -- 1.8.3.1