From 3da1efaaa280c4b32aee257b609b5f4698cedbc3 Mon Sep 17 00:00:00 2001 From: "James E. Keenan" Date: Sat, 10 Apr 2010 10:24:00 -0400 Subject: [PATCH] Was able to move $Packid into $self. Note that I got build failures when I attempted to pull $Package into $self. The distributions below because during various 'eval EXPR' statements, I got a 'Global variable $Package ...' error. cut -d '/' -f 7,8,9,10,11 research/problematic.builds.20100410.txt D/DB/DBURDICK/BoostGraph/Boost-Graph-1.4.tar.gz D/DE/DEEMON/Crypt-OpenSSL-SMIME-0.02.tar.gz D/DL/DLOWE/Text-Tmpl-0.33.tar.gz D/DM/DMAKI/Data-Valve-0.00010.tar.gz D/DO/DORMANDO/Perlbal-XS-HTTPHeaders-0.20.tar.gz E/ED/EDPRATOMO/Algorithm-Permute-0.12.tar.gz J/JH/JHI/String-Approx-3.26.tar.gz K/KA/KARMAN/Search-Tools-0.45.tar.gz K/KI/KILINRAX/HTML-Strip-1.06.tar.gz L/LA/LAIRDM/Algorithm-SVM-0.13.tar.gz M/MA/MARKSMITH/HTTP-HeaderParser-XS-0.20.tar.gz M/MC/MCEGLOWS/Search-ContextGraph-0.15.tar.gz M/MH/MHX/Convert-Binary-C-0.74.tar.gz M/MH/MHX/Tie-Hash-Indexed-0.05.tar.gz M/MI/MIKEWONG/Table-ParentChild-0.05.tar.gz M/MS/MSERGEANT/CDB_File-0.96.tar.gz M/MS/MSERGEANT/IO-KQueue-0.34.tar.gz P/PA/PAJAS/XML-LibXML-1.70.tar.gz P/PM/PMQS/Filter-1.37.tar.gz S/SA/SALVA/Compress-PPMd-0.11.tar.gz S/SA/SAPER/Net-Pcap-0.16.tar.gz S/SA/SAPER/Net-RawIP-0.25.tar.gz S/SG/SGOELDNER/MonetDB-CLI-MapiXS-0.03.tar.gz S/SM/SMUELLER/Math-SymbolicX-FastEvaluator-0.01.tar.gz S/SM/SMUELLER/Parse-ExuberantCTags-1.01.tar.gz S/SP/SPIDB/Net-ext-1.011.tar.gz T/TJ/TJMATHER/Crypt-OpenSSL-DSA-0.13.tar.gz --- dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm index c283155..d65051e 100644 --- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm +++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm @@ -37,7 +37,7 @@ $VERSION = eval $VERSION if $VERSION =~ /_/; # them into $self led to build problems. In most cases, strings being # 'eval'-ed contain the variables' names hard-coded. our ( - $FH, $Package, $func_name, $Full_func_name, $Packid, $pname, $ALIAS, + $FH, $Package, $func_name, $Full_func_name, $pname, $ALIAS, ); our $self = {}; @@ -350,7 +350,7 @@ EOM ($pname = $func_name) =~ s/^($self->{Prefix})?/$self->{Packprefix}/; my $clean_func_name; ($clean_func_name = $func_name) =~ s/^$self->{Prefix}//; - $Full_func_name = "${Packid}_$clean_func_name"; + $Full_func_name = "$self->{Packid}_$clean_func_name"; if ($Is_VMS) { $Full_func_name = $SymSet->addsym($Full_func_name); } @@ -872,8 +872,8 @@ EOF if ($self->{Overload}) { # make it findable with fetchmethod print Q(<<"EOF"); -#XS(XS_${Packid}_nil); /* prototype to pass -Wmissing-prototypes */ -#XS(XS_${Packid}_nil) +#XS(XS_$self->{Packid}_nil); /* prototype to pass -Wmissing-prototypes */ +#XS(XS_$self->{Packid}_nil) #{ # dXSARGS; # XSRETURN_EMPTY; @@ -884,7 +884,7 @@ EOF /* Making a sub named "${Package}::()" allows the package */ /* to be findable via fetchmethod(), and causes */ /* overload::Overloaded("${Package}") to return true. */ - (void)$self->{newXS}("${Package}::()", XS_${Packid}_nil, file$self->{proto}); + (void)$self->{newXS}("${Package}::()", XS_$self->{Packid}_nil, file$self->{proto}); MAKE_FETCHMETHOD_WORK } @@ -1572,7 +1572,6 @@ sub check_cpp { } } - sub Q { my($text) = @_; $text =~ s/^#//gm; @@ -1597,7 +1596,7 @@ sub fetch_para { $self->{Prefix} = defined($3) ? $3 : ''; # keep -w happy $self->{Prefix} = quotemeta $self->{Prefix}; ($self->{Module_cname} = $Module) =~ s/\W/_/g; - ($Packid = $Package) =~ tr/:/_/; + ($self->{Packid} = $Package) =~ tr/:/_/; $self->{Packprefix} = $Package; $self->{Packprefix} .= "::" if $self->{Packprefix} ne ""; $self->{lastline} = ""; -- 2.7.4