module-build-checkins Mailing List for Module::Build (Page 3)
Status: Beta
Brought to you by:
kwilliams
You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(82) |
Dec
(58) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(49) |
Feb
(57) |
Mar
(49) |
Apr
(49) |
May
(2) |
Jun
(147) |
Jul
(60) |
Aug
(55) |
Sep
(51) |
Oct
(68) |
Nov
(61) |
Dec
(44) |
2006 |
Jan
(27) |
Feb
(38) |
Mar
(89) |
Apr
(31) |
May
(17) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Ken W. <kwi...@us...> - 2006-03-29 04:51:19
|
Update of /cvsroot/module-build/Module-Build/lib/Module In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11945/lib/Module Modified Files: Build.pm Log Message: Version bump Index: Build.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build.pm,v retrieving revision 1.215 retrieving revision 1.216 diff -u -d -r1.215 -r1.216 --- Build.pm 21 Mar 2006 04:51:34 -0000 1.215 +++ Build.pm 29 Mar 2006 04:51:02 -0000 1.216 @@ -15,7 +15,7 @@ use vars qw($VERSION @ISA); @ISA = qw(Module::Build::Base); -$VERSION = '0.27_09'; +$VERSION = '0.27_10'; $VERSION = eval $VERSION; # Okay, this is the brute-force method of finding out what kind of |
From: Ken W. <kwi...@us...> - 2006-03-29 04:51:17
|
Update of /cvsroot/module-build/Module-Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11945 Modified Files: Changes Log Message: Version bump Index: Changes =================================================================== RCS file: /cvsroot/module-build/Module-Build/Changes,v retrieving revision 1.445 retrieving revision 1.446 diff -u -d -r1.445 -r1.446 --- Changes 24 Mar 2006 23:26:40 -0000 1.445 +++ Changes 29 Mar 2006 04:51:00 -0000 1.446 @@ -1,6 +1,6 @@ Revision history for Perl extension Module::Build. -0.27_11 +0.27_11 Tue Mar 28 22:50:50 CST 2006 - Added the create_packlist property, default true, which controls whether packlist files will be written during installation. This |
From: Randy W. S. <si...@us...> - 2006-03-28 11:06:49
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7957/lib/Module/Build Modified Files: Base.pm Log Message: The 'distclean' operation on Windows was failing because it runs 'distcheck' which dies when it finds extra or missing files. This didn't give the 'Build.bat' script a chance to delete itself. Now it warns if the 'distcheck' actions is invoked as a dependency of another action; otherwise, it dies as before. Also, added 'Build.bat' to our MANIFEST.SKIP as well as the default generated MANIFEST.SKIP. Index: Base.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.567 retrieving revision 1.568 diff -u -d -r1.567 -r1.568 --- Base.pm 28 Mar 2006 04:28:23 -0000 1.567 +++ Base.pm 28 Mar 2006 11:06:07 -0000 1.568 @@ -2717,12 +2717,19 @@ sub ACTION_distcheck { my ($self) = @_; - + require ExtUtils::Manifest; local $^W; # ExtUtils::Manifest is not warnings clean. my ($missing, $extra) = ExtUtils::Manifest::fullcheck(); - die "MANIFEST appears to be out of sync with the distribution\n" - if @$missing || @$extra; + + return unless @$missing || @$extra; + + my $msg = "MANIFEST appears to be out of sync with the distribution\n"; + if ( $self->invoked_action eq 'distcheck' ) { + die $msg; + } else { + warn $msg; + } } sub _add_to_manifest { @@ -2955,6 +2962,7 @@ # Avoid Module::Build generated and utility files. \bBuild$ +\bBuild.bat$ \b_build # Avoid Devel::Cover generated files |
From: Randy W. S. <si...@us...> - 2006-03-28 11:06:48
|
Update of /cvsroot/module-build/Module-Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7957 Modified Files: MANIFEST.SKIP Log Message: The 'distclean' operation on Windows was failing because it runs 'distcheck' which dies when it finds extra or missing files. This didn't give the 'Build.bat' script a chance to delete itself. Now it warns if the 'distcheck' actions is invoked as a dependency of another action; otherwise, it dies as before. Also, added 'Build.bat' to our MANIFEST.SKIP as well as the default generated MANIFEST.SKIP. Index: MANIFEST.SKIP =================================================================== RCS file: /cvsroot/module-build/Module-Build/MANIFEST.SKIP,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- MANIFEST.SKIP 12 Jan 2006 23:45:17 -0000 1.22 +++ MANIFEST.SKIP 28 Mar 2006 11:06:06 -0000 1.23 @@ -4,6 +4,7 @@ (^|/)blib CVS ^Build$ +^Build.bat$ ~$ ^configs ^testbed |
From: Ken W. <kwi...@us...> - 2006-03-28 04:28:26
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20605/lib/Module/Build Modified Files: Base.pm Log Message: Use backticks() method a couple more places Index: Base.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.566 retrieving revision 1.567 diff -u -d -r1.566 -r1.567 --- Base.pm 25 Mar 2006 04:50:16 -0000 1.566 +++ Base.pm 28 Mar 2006 04:28:23 -0000 1.567 @@ -1267,7 +1267,7 @@ my $perl = ref($self) ? $self->perl : $self->find_perl_interpreter; - my @inc = `$perl -le "print for \@INC"`; + my @inc = $self->_backticks($perl, '-le', 'print for @INC'); chomp @inc; return @default_inc = @inc; @@ -3673,17 +3673,17 @@ if (defined $lib_typemap and -e $lib_typemap) { push @typemaps, 'typemap'; } - my $typemaps = join ' ', map qq{-typemap "$_"}, @typemaps; + @typemaps = map {+'-typemap', $_} @typemaps; my $cf = $self->config; my $perl = $self->{properties}{perl}; - my $command = (qq{$perl "-I$cf->{installarchlib}" "-I$cf->{installprivlib}" "$xsubpp" -noprototypes } . - qq{$typemaps "$file"}); + my @command = ($perl, "-I$cf->{installarchlib}", "-I$cf->{installprivlib}", $xsubpp, '-noprototypes', + @typemaps, $file); - $self->log_info("$command\n"); + $self->log_info("@command\n"); my $fh = IO::File->new("> $args{outfile}") or die "Couldn't write $args{outfile}: $!"; - print $fh `$command`; + print {$fh} $self->_backticks(@command); close $fh; } } |
From: Ken W. <kwi...@us...> - 2006-03-25 19:37:27
|
Update of /cvsroot/module-build/ExtUtils-CBuilder/lib/ExtUtils In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30543/lib/ExtUtils Modified Files: CBuilder.pm Log Message: Version bump Index: CBuilder.pm =================================================================== RCS file: /cvsroot/module-build/ExtUtils-CBuilder/lib/ExtUtils/CBuilder.pm,v retrieving revision 1.34 retrieving revision 1.35 diff -u -d -r1.34 -r1.35 --- CBuilder.pm 16 Mar 2006 04:46:26 -0000 1.34 +++ CBuilder.pm 25 Mar 2006 19:37:19 -0000 1.35 @@ -5,7 +5,7 @@ use File::Basename (); use vars qw($VERSION @ISA); -$VERSION = '0.17'; +$VERSION = '0.18'; $VERSION = eval $VERSION; # Okay, this is the brute-force method of finding out what kind of |
From: Ken W. <kwi...@us...> - 2006-03-25 19:37:23
|
Update of /cvsroot/module-build/ExtUtils-CBuilder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30543 Modified Files: Changes Log Message: Version bump Index: Changes =================================================================== RCS file: /cvsroot/module-build/ExtUtils-CBuilder/Changes,v retrieving revision 1.53 retrieving revision 1.54 diff -u -d -r1.53 -r1.54 --- Changes 25 Mar 2006 04:23:53 -0000 1.53 +++ Changes 25 Mar 2006 19:37:19 -0000 1.54 @@ -1,6 +1,6 @@ Revision history for Perl extension ExtUtils::CBuilder. -0.18 +0.18 Sat Mar 25 13:35:47 CST 2006 - Yet more fixes for arg_defines() on VMS. [Craig A. Berry and John E. Malmberg] |
From: Ken W. <kwi...@us...> - 2006-03-25 04:50:26
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16465/lib/Module/Build Modified Files: Base.pm Log Message: Perl's support for multi-arg open with pipes is spotty, so use a flag for it Index: Base.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.565 retrieving revision 1.566 diff -u -d -r1.565 -r1.566 --- Base.pm 24 Mar 2006 23:26:41 -0000 1.565 +++ Base.pm 25 Mar 2006 04:50:16 -0000 1.566 @@ -342,7 +342,7 @@ # don't have to worry about shell args. my ($self, @cmd) = @_; - if ($] >= 5.008) { + if ($self->have_multiarg_pipeopen) { local *FH; open FH, "-|", @cmd or die "Can't run @cmd: $!"; return wantarray ? <FH> : join '', <FH>; @@ -352,6 +352,7 @@ } } +sub have_multiarg_pipeopen { $] >= 5.008 } # Determine whether a given binary is the same as the perl # (configuration) that started this process. |
From: Ken W. <kwi...@us...> - 2006-03-25 04:50:26
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build/Platform In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16465/lib/Module/Build/Platform Modified Files: MacOS.pm VMS.pm Windows.pm os2.pm Log Message: Perl's support for multi-arg open with pipes is spotty, so use a flag for it Index: Windows.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Platform/Windows.pm,v retrieving revision 1.32 retrieving revision 1.33 diff -u -d -r1.32 -r1.33 --- Windows.pm 4 Mar 2006 00:42:45 -0000 1.32 +++ Windows.pm 25 Mar 2006 04:50:16 -0000 1.33 @@ -17,6 +17,8 @@ return '.'; } +sub have_multiarg_pipeopen { 0 } + sub ACTION_realclean { my ($self) = @_; Index: os2.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Platform/os2.pm,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- os2.pm 3 Dec 2005 03:08:14 -0000 1.6 +++ os2.pm 25 Mar 2006 04:50:16 -0000 1.7 @@ -8,6 +8,8 @@ sub manpage_separator { '.' } +sub have_multiarg_pipeopen { 0 } + 1; __END__ Index: MacOS.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Platform/MacOS.pm,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- MacOS.pm 2 Dec 2005 12:12:21 -0000 1.10 +++ MacOS.pm 25 Mar 2006 04:50:16 -0000 1.11 @@ -6,6 +6,8 @@ use ExtUtils::Install; +sub have_multiarg_pipeopen { 0 } + sub new { my $class = shift; my $self = $class->SUPER::new(@_); Index: VMS.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Platform/VMS.pm,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- VMS.pm 24 Mar 2006 23:26:43 -0000 1.11 +++ VMS.pm 25 Mar 2006 04:50:16 -0000 1.12 @@ -131,6 +131,8 @@ return $return_args; } +sub have_multiarg_pipeopen { 0 } + =back =head1 AUTHOR |
From: Ken W. <kwi...@us...> - 2006-03-25 04:23:59
|
Update of /cvsroot/module-build/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2866/lib/ExtUtils/CBuilder/Platform Modified Files: VMS.pm Log Message: More arg_defines() fixes for VMS Index: VMS.pm =================================================================== RCS file: /cvsroot/module-build/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/VMS.pm,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- VMS.pm 15 Mar 2006 22:51:33 -0000 1.12 +++ VMS.pm 25 Mar 2006 04:23:53 -0000 1.13 @@ -14,18 +14,18 @@ s/"/""/g foreach values %args; - my $config_defines; + my @config_defines; # VMS can only have one define qualifier; add the one from config, if any. - if ($self->{config}{ccflags} =~ s{/def[^=]+(?:=)+(?:\()?([^\/\)]*)} {}i) { - $config_defines = $1; + if ($self->{config}{ccflags} =~ s{/ def[^=]+ =+ \(? ([^\/\)]*) } {}ix) { + push @config_defines, $1; } - return unless (scalar keys %args) || $config_defines; + return '' unless keys(%args) || @config_defines; return ('/define=(' - . (defined $config_defines ? "$config_defines," : '') . join(',', + @config_defines, map "\"$_" . ( length($args{$_}) ? "=$args{$_}" : '') . "\"", keys %args) . ')'); |
From: Ken W. <kwi...@us...> - 2006-03-25 04:23:59
|
Update of /cvsroot/module-build/ExtUtils-CBuilder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2866 Modified Files: Changes Log Message: More arg_defines() fixes for VMS Index: Changes =================================================================== RCS file: /cvsroot/module-build/ExtUtils-CBuilder/Changes,v retrieving revision 1.52 retrieving revision 1.53 diff -u -d -r1.52 -r1.53 --- Changes 16 Mar 2006 04:46:26 -0000 1.52 +++ Changes 25 Mar 2006 04:23:53 -0000 1.53 @@ -1,5 +1,10 @@ Revision history for Perl extension ExtUtils::CBuilder. +0.18 + + - Yet more fixes for arg_defines() on VMS. [Craig A. Berry and John + E. Malmberg] + 0.17 Wed Mar 15 22:46:15 CST 2006 - When we're being run from an uninstalled perl distribution |
From: Ken W. <kwi...@us...> - 2006-03-24 23:26:50
|
Update of /cvsroot/module-build/Module-Build/t/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27541/t/lib Modified Files: DistGen.pm Log Message: Fix some VMS quoting issues and add _backticks() and _quote_args() methods Index: DistGen.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/t/lib/DistGen.pm,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- DistGen.pm 25 Feb 2006 15:27:27 -0000 1.17 +++ DistGen.pm 24 Mar 2006 23:26:44 -0000 1.18 @@ -16,6 +16,14 @@ use IO::File (); use Tie::CPHash; +BEGIN { + if( $^O eq 'VMS' ) { + # For things like vmsify() + require VMS::Filespec; + VMS::Filespec->import; + } +} + sub new { my $package = shift; my %options = @_; @@ -309,7 +317,11 @@ File::Find::finddepth( sub { my $name = File::Spec->canonpath( $File::Find::name ); - $name =~ s/\.\z// if $^O eq 'VMS'; + if ($^O eq 'VMS') { + $name =~ s/\.\z//; + $name = vmspath($name) if -d $name; + $name = File::Spec->rel2abs($name) if $name eq File::Spec->curdir(); + } if ( not exists $names{$name} ) { print "Removing '$name'\n" if $VERBOSE; @@ -322,7 +334,7 @@ sub remove { my $self = shift; - File::Path::rmtree( $self->dirname ); + File::Path::rmtree( File::Spec->canonpath($self->dirname) ); } sub revert { |
From: Ken W. <kwi...@us...> - 2006-03-24 23:26:49
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build/Platform In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27541/lib/Module/Build/Platform Modified Files: VMS.pm Log Message: Fix some VMS quoting issues and add _backticks() and _quote_args() methods Index: VMS.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Platform/VMS.pm,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- VMS.pm 3 Dec 2005 03:08:14 -0000 1.10 +++ VMS.pm 24 Mar 2006 23:26:43 -0000 1.11 @@ -119,6 +119,18 @@ } +sub _quote_args { + # Returns a string that can become [part of] a command line with + # proper quoting so that the subprocess sees this same list of args. + my ($self, @args) = @_; + + my $return_args = ''; + for (@args) { + $return_args .= q( ").$_.q(") if !/^\"/ && length($_) > 0; + } + return $return_args; +} + =back =head1 AUTHOR |
From: Ken W. <kwi...@us...> - 2006-03-24 23:26:48
|
Update of /cvsroot/module-build/Module-Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27541 Modified Files: Changes Log Message: Fix some VMS quoting issues and add _backticks() and _quote_args() methods Index: Changes =================================================================== RCS file: /cvsroot/module-build/Module-Build/Changes,v retrieving revision 1.444 retrieving revision 1.445 diff -u -d -r1.444 -r1.445 --- Changes 21 Mar 2006 04:51:33 -0000 1.444 +++ Changes 24 Mar 2006 23:26:40 -0000 1.445 @@ -19,6 +19,11 @@ YAML is installed, because the YAML API and dependency chain have been changing in unfavorable ways lately. [Stephen Adkins] + - Fixed some shell-argument-quoting issues on VMS. In the process, + we have added some support for avoiding tripping over + shell-argument-quoting issues on other platforms too. [Initial + patch by Craig A. Berry] + 0.27_09 Sat Mar 11 22:48:54 EST 2006 - Fixed find_perl_interpreter() so we can find the perl executable |
From: Ken W. <kwi...@us...> - 2006-03-24 23:26:48
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27541/lib/Module/Build Modified Files: Base.pm Log Message: Fix some VMS quoting issues and add _backticks() and _quote_args() methods Index: Base.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.564 retrieving revision 1.565 diff -u -d -r1.564 -r1.565 --- Base.pm 21 Mar 2006 05:03:52 -0000 1.564 +++ Base.pm 24 Mar 2006 23:26:41 -0000 1.565 @@ -314,23 +314,64 @@ return Cwd::cwd(); } +sub _quote_args { + # Returns a string that can become [part of] a command line with + # proper quoting so that the subprocess sees this same list of args. + my ($self, @args) = @_; + + my $return_args = ''; + my @quoted; + + for (@args) { + if ( /^[^\s*?!$<>;\\|'"\[\]\{\}]+$/ ) { + # Looks pretty safe + push @quoted, $_; + } else { + # XXX this will obviously have to improve - is there already a + # core module lying around that does proper quoting? + s/"/"'"'"/g; + push @quoted, qq("$_"); + } + } + + return join " ", @quoted; +} + +sub _backticks { + # Tries to avoid using true backticks, when possible, so that we + # don't have to worry about shell args. + + my ($self, @cmd) = @_; + if ($] >= 5.008) { + local *FH; + open FH, "-|", @cmd or die "Can't run @cmd: $!"; + return wantarray ? <FH> : join '', <FH>; + } else { + my $cmd = $self->_quote_args(@cmd); + return `$cmd`; + } +} + + # Determine whether a given binary is the same as the perl # (configuration) that started this process. sub _perl_is_same { my ($self, $perl) = @_; + my @cmd = ($perl); + # When run from the perl core, @INC will include the directories # where perl is yet to be installed. We need to reference the # absolute path within the source distribution where it can find # it's Config.pm This also prevents us from picking up a Config.pm # from a different configuration that happens to be already # installed in @INC. - my $INC = ''; if ($ENV{PERL_CORE}) { - $INC = '-I' . File::Spec->catdir(File::Basename::dirname($perl), 'lib'); + push @cmd, '-I' . File::Spec->catdir(File::Basename::dirname($perl), 'lib'); } - return `$perl $INC -MConfig=myconfig -e print -e myconfig` eq Config->myconfig; + push @cmd, qw(-MConfig=myconfig -e print -e myconfig); + return $self->_backticks(@cmd) eq Config->myconfig; } # Returns the absolute path of the perl interperter used to invoke @@ -2080,7 +2121,7 @@ foreach my $file (keys %$files) { my $result = $self->copy_if_modified($file, $script_dir, 'flatten') or next; - $self->fix_shebang_line($result); + $self->fix_shebang_line($result) unless $self->os_type eq 'VMS'; $self->make_executable($result); } } @@ -2167,6 +2208,7 @@ sub localize_file_path { my ($self, $path) = @_; + $path =~ s/\.\z// if $self->os_type eq 'VMS'; return File::Spec->catfile( split m{/}, $path ); } @@ -3669,6 +3711,7 @@ # this before documenting. my ($self, $args) = @_; $args = [ $self->split_like_shell($args) ] unless ref($args); + $args = [ split(/\s+/, $self->_quote_args($args)) ] if $self->os_type eq 'VMS'; my $perl = ref($self) ? $self->perl : $self->find_perl_interpreter; # Make sure our local additions to @INC are propagated to the subprocess |
From: Ken W. <kwi...@us...> - 2006-03-21 13:27:37
|
Update of /cvsroot/module-build/Module-Build/t/bundled/Tie In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9318/t/bundled/Tie Modified Files: CPHash.pm Log Message: Update to version 1.02 Index: CPHash.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/t/bundled/Tie/CPHash.pm,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- CPHash.pm 25 Feb 2006 15:27:27 -0000 1.1 +++ CPHash.pm 21 Mar 2006 13:27:29 -0000 1.2 @@ -3,9 +3,9 @@ # # Copyright 1997 Christopher J. Madsen # -# Author: Christopher J. Madsen <chr...@ge...> +# Author: Christopher J. Madsen <cj...@po...> # Created: 08 Nov 1997 -# Version: 1.001 (25-Oct-1998) +# $Revision$ $Date$ # # This program is free software; you can redistribute it and/or modify # it under the same terms as Perl itself. @@ -27,11 +27,7 @@ #===================================================================== # Package Global Variables: -BEGIN -{ - # Convert RCS revision number to d.ddd format: - $VERSION = sprintf('%d.%03d', '1.001 ' =~ /(\d+)\.(\d+)/); -} # end BEGIN +$VERSION = '1.02'; #===================================================================== # Tied Methods: @@ -85,6 +81,15 @@ } # end NEXTKEY #--------------------------------------------------------------------- +# SCALAR this +# Return bucket usage information for the hash (0 if empty). + +sub SCALAR +{ + scalar %{$_[0]}; +} # end SCALAR + +#--------------------------------------------------------------------- # EXISTS this, key # Verify that *key* exists with the tied hash *this*. @@ -147,8 +152,8 @@ =head1 DESCRIPTION -The B<Tie::CPHash> provides a hash table that is case preserving but -case insensitive. This means that +The B<Tie::CPHash> module provides a hash table that is case +preserving but case insensitive. This means that $cphash{KEY} $cphash{key} $cphash{Key} $cphash{keY} @@ -180,7 +185,7 @@ =head1 AUTHOR -Christopher J. Madsen E<lt>F<chr...@ge...>E<gt> +Christopher J. Madsen E<lt>F<cj...@po...>E<gt> =cut |
From: Ken W. <kwi...@us...> - 2006-03-21 05:03:57
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26695/lib/Module/Build Modified Files: Base.pm Log Message: Add a little helper sub for adding YAML nodes Index: Base.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.563 retrieving revision 1.564 diff -u -d -r1.563 -r1.564 --- Base.pm 21 Mar 2006 04:57:06 -0000 1.563 +++ Base.pm 21 Mar 2006 05:03:52 -0000 1.564 @@ -3103,13 +3103,16 @@ my ($self, $node, $keys) = @_; my $p = $self->{properties}; - # If we aren't being asked for key order, just fake it - $keys ||= []; + # A little helper sub + my $add_node = sub { + my ($name, $val) = @_; + $node->{$name} = $val; + push @$keys, $name if $keys; + }; foreach (qw(dist_name dist_version dist_author dist_abstract license)) { (my $name = $_) =~ s/^dist_//; - $node->{$name} = $self->$_(); - push(@$keys, $name); + $add_node->($name, $self->$_()); die "ERROR: Missing required field '$_' for META.yml\n" unless defined($node->{$name}) && length($node->{$name}); } @@ -3121,14 +3124,12 @@ foreach ( @{$self->prereq_action_types} ) { if (exists $p->{$_} and keys %{ $p->{$_} }) { - $node->{$_} = $p->{$_}; - push(@$keys, $_); + $add_node->($_, $p->{$_}); } } if (exists $p->{dynamic_config}) { - $node->{dynamic_config} = $p->{dynamic_config}; - push(@$keys, "dynamic_config"); + $add_node->('dynamic_config', $p->{dynamic_config}); } my $pkgs = eval { $self->find_dist_packages }; if ($@) { @@ -3139,23 +3140,18 @@ } ; if (exists $p->{no_index}) { - $node->{no_index} = $p->{no_index}; - push(@$keys, "no_index"); + $add_node->('no_index', $p->{no_index}); } - $node->{generated_by} = "Module::Build version $Module::Build::VERSION"; - push(@$keys, "generated_by") if ($keys); - - $node->{'meta-spec'} = { - version => '1.2', - url => 'http://module-build.sourceforge.net/META-spec-v1.2.html', - }; - push(@$keys, "meta-spec"); + $add_node->('generated_by', "Module::Build version $Module::Build::VERSION"); + $add_node->('meta-spec', + {version => '1.2', + url => 'http://module-build.sourceforge.net/META-spec-v1.2.html', + }); while (my($k, $v) = each %{$self->meta_add}) { - $node->{$k} = $v; - push(@$keys, $k); + $add_node->($k, $v); } while (my($k, $v) = each %{$self->meta_merge}) { |
From: Ken W. <kwi...@us...> - 2006-03-21 04:57:11
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23910/lib/Module/Build Modified Files: Base.pm Log Message: Make a little code simplification Index: Base.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.562 retrieving revision 1.563 diff -u -d -r1.562 -r1.563 --- Base.pm 21 Mar 2006 04:51:34 -0000 1.562 +++ Base.pm 21 Mar 2006 04:57:06 -0000 1.563 @@ -3103,10 +3103,13 @@ my ($self, $node, $keys) = @_; my $p = $self->{properties}; + # If we aren't being asked for key order, just fake it + $keys ||= []; + foreach (qw(dist_name dist_version dist_author dist_abstract license)) { (my $name = $_) =~ s/^dist_//; $node->{$name} = $self->$_(); - push(@$keys, $name) if ($keys); + push(@$keys, $name); die "ERROR: Missing required field '$_' for META.yml\n" unless defined($node->{$name}) && length($node->{$name}); } @@ -3119,13 +3122,13 @@ foreach ( @{$self->prereq_action_types} ) { if (exists $p->{$_} and keys %{ $p->{$_} }) { $node->{$_} = $p->{$_}; - push(@$keys, $_) if ($keys); + push(@$keys, $_); } } if (exists $p->{dynamic_config}) { $node->{dynamic_config} = $p->{dynamic_config}; - push(@$keys, "dynamic_config") if ($keys); + push(@$keys, "dynamic_config"); } my $pkgs = eval { $self->find_dist_packages }; if ($@) { @@ -3137,7 +3140,7 @@ ; if (exists $p->{no_index}) { $node->{no_index} = $p->{no_index}; - push(@$keys, "no_index") if ($keys); + push(@$keys, "no_index"); } $node->{generated_by} = "Module::Build version $Module::Build::VERSION"; @@ -3147,12 +3150,12 @@ version => '1.2', url => 'http://module-build.sourceforge.net/META-spec-v1.2.html', }; - push(@$keys, "meta-spec") if ($keys); + push(@$keys, "meta-spec"); while (my($k, $v) = each %{$self->meta_add}) { $node->{$k} = $v; - push(@$keys, $k) if ($keys); + push(@$keys, $k); } while (my($k, $v) = each %{$self->meta_merge}) { |
From: Ken W. <kwi...@us...> - 2006-03-21 04:51:45
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21878/lib/Module/Build Modified Files: Base.pm Added Files: YAML.pm Log Message: Include our own YAML work-alike Index: Base.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.561 retrieving revision 1.562 diff -u -d -r1.561 -r1.562 --- Base.pm 18 Mar 2006 02:35:32 -0000 1.561 +++ Base.pm 21 Mar 2006 04:51:34 -0000 1.562 @@ -3034,44 +3034,6 @@ } } -sub _yaml_quote_string { - # XXX doesn't handle embedded newlines - - my ($self, $string) = @_; - if ($string !~ /\"/) { - $string =~ s{\\}{\\\\}g; - return qq{"$string"}; - } else { - $string =~ s{([\\'])}{\\$1}g; - return qq{'$string'}; - } -} - -sub _write_minimal_metadata { - my $self = shift; - my $p = $self->{properties}; - - my $file = $self->metafile; - my $fh = IO::File->new("> $file") - or die "Can't open $file: $!"; - - my @author = map $self->_yaml_quote_string($_), @{$self->dist_author}; - my $abstract = $self->_yaml_quote_string($self->dist_abstract); - - # XXX Add the meta_add & meta_merge stuff - - print $fh <<"EOF"; ---- #YAML:1.0 -name: $p->{dist_name} -version: $p->{dist_version} -author: -@{[ join "\n", map " - $_", @author ]} -abstract: $abstract -license: $p->{license} -generated_by: Module::Build version $Module::Build::VERSION, without YAML.pm -EOF -} - sub ACTION_distmeta { my ($self) = @_; @@ -3126,26 +3088,25 @@ $self->{wrote_metadata} = $yaml_sub->($metafile, $node ); } else { - $self->log_warn(<<EOF); - -Couldn't load YAML.pm, generating a minimal META.yml without it. -Please check and edit the generated metadata, or consider installing YAML.pm. - -EOF - - $self->_write_minimal_metadata; + require Module::Build::YAML; + my (%node, @order_keys); + $self->prepare_metadata(\%node, \@order_keys); + $node{_order} = \@order_keys; + &Module::Build::YAML::DumpFile($metafile, \%node); + $self->{wrote_metadata} = 1; } $self->_add_to_manifest('MANIFEST', $metafile); } sub prepare_metadata { - my ($self, $node) = @_; + my ($self, $node, $keys) = @_; my $p = $self->{properties}; foreach (qw(dist_name dist_version dist_author dist_abstract license)) { (my $name = $_) =~ s/^dist_//; $node->{$name} = $self->$_(); + push(@$keys, $name) if ($keys); die "ERROR: Missing required field '$_' for META.yml\n" unless defined($node->{$name}) && length($node->{$name}); } @@ -3156,10 +3117,16 @@ } foreach ( @{$self->prereq_action_types} ) { - $node->{$_} = $p->{$_} if exists $p->{$_} and keys %{ $p->{$_} }; + if (exists $p->{$_} and keys %{ $p->{$_} }) { + $node->{$_} = $p->{$_}; + push(@$keys, $_) if ($keys); + } } - $node->{dynamic_config} = $p->{dynamic_config} if exists $p->{dynamic_config}; + if (exists $p->{dynamic_config}) { + $node->{dynamic_config} = $p->{dynamic_config}; + push(@$keys, "dynamic_config") if ($keys); + } my $pkgs = eval { $self->find_dist_packages }; if ($@) { $self->log_warn("WARNING: Possible missing or corrupt 'MANIFEST' file.\n" . @@ -3168,18 +3135,24 @@ $node->{provides} = $pkgs if %$pkgs; } ; - $node->{no_index} = $p->{no_index} if exists $p->{no_index}; + if (exists $p->{no_index}) { + $node->{no_index} = $p->{no_index}; + push(@$keys, "no_index") if ($keys); + } $node->{generated_by} = "Module::Build version $Module::Build::VERSION"; + push(@$keys, "generated_by") if ($keys); $node->{'meta-spec'} = { version => '1.2', url => 'http://module-build.sourceforge.net/META-spec-v1.2.html', }; + push(@$keys, "meta-spec") if ($keys); while (my($k, $v) = each %{$self->meta_add}) { $node->{$k} = $v; + push(@$keys, $k) if ($keys); } while (my($k, $v) = each %{$self->meta_merge}) { --- NEW FILE: YAML.pm --- package Module::Build::YAML; use strict; use warnings; our $VERSION = "0.50"; our @EXPORT = (); our @EXPORT_OK = qw(Dump Load DumpFile LoadFile); sub new { my $this = shift; my $class = ref($this) || $this; my $self = {}; bless $self, $class; return($self); } sub Dump { shift if ($_[0] eq __PACKAGE__ || ref($_[0]) eq __PACKAGE__); my $yaml = ""; foreach my $item (@_) { $yaml .= "---\n"; $yaml .= &_yaml_chunk("", $item); } return $yaml; } sub Load { shift if ($_[0] eq __PACKAGE__ || ref($_[0]) eq __PACKAGE__); die "not yet implemented"; } # This is basically copied out of YAML.pm and simplified a little. sub DumpFile { shift if ($_[0] eq __PACKAGE__ || ref($_[0]) eq __PACKAGE__); my $filename = shift; local $/ = "\n"; # reset special to "sane" my $mode = '>'; if ($filename =~ /^\s*(>{1,2})\s*(.*)$/) { ($mode, $filename) = ($1, $2); } open my $OUT, $mode, $filename or die "Can't open $filename for writing: $!"; print $OUT Dump(@_); close $OUT; } # This is basically copied out of YAML.pm and simplified a little. sub LoadFile { shift if ($_[0] eq __PACKAGE__ || ref($_[0]) eq __PACKAGE__); my $filename = shift; open my $IN, $filename or die "Can't open $filename for reading: $!"; return Load(do { local $/; <$IN> }); close $IN; } sub _yaml_chunk { my ($indent, $values) = @_; my $yaml_chunk = ""; my $ref = ref($values); my ($value, @allkeys, %keyseen); if (!$ref) { # a scalar $yaml_chunk .= &_yaml_value($values) . "\n"; } elsif ($ref eq "ARRAY") { foreach $value (@$values) { $yaml_chunk .= "$indent-"; $ref = ref($value); if (!$ref) { $yaml_chunk .= " " . &_yaml_value($value) . "\n"; } else { $yaml_chunk .= "\n"; $yaml_chunk .= &_yaml_chunk("$indent ", $value); } } } else { # assume "HASH" if ($values->{_order} && ref($values->{_order}) eq "ARRAY") { @allkeys = @{$values->{_order}}; $values = { %$values }; delete $values->{_order}; } push(@allkeys, sort keys %$values); foreach my $key (@allkeys) { next if (!defined $key || $key eq "" || $keyseen{$key}); $keyseen{$key} = 1; $yaml_chunk .= "$indent$key:"; $value = $values->{$key}; $ref = ref($value); if (!$ref) { $yaml_chunk .= " " . &_yaml_value($value) . "\n"; } else { $yaml_chunk .= "\n"; $yaml_chunk .= &_yaml_chunk("$indent ", $value); } } } return($yaml_chunk); } sub _yaml_value { # XXX doesn't handle embedded newlines my ($value) = @_; # undefs and empty strings will become empty strings if (! defined $value || $value eq "") { return('""'); } # allow simple scalars (without embedded quote chars) to be unquoted elsif ($value !~ /["'\\]/) { return($value); } # strings without double-quotes get double-quoted elsif ($value !~ /\"/) { $value =~ s{\\}{\\\\}g; return qq{"$value"}; } # other strings get single-quoted else { $value =~ s{([\\'])}{\\$1}g; return qq{'$value'}; } } 1; __END__ =head1 NAME Module::Build::YAML - Provides just enough YAML support so that Module::Build works even if YAML.pm is not installed =head1 SYNOPSIS use Module::Build::YAML; ... =head1 DESCRIPTION Provides just enough YAML support so that Module::Build works even if YAML.pm is not installed. Currently, this amounts to the ability to write META.yml files when "perl Build distmeta" is executed via the Dump() and DumpFile() functions/methods. =head1 AUTHOR Stephen Adkins <spa...@gm...> =head1 COPYRIGHT Copyright (c) 2006. Stephen Adkins. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See L<http://www.perl.com/perl/misc/Artistic.html> =cut |
From: Ken W. <kwi...@us...> - 2006-03-21 04:51:45
|
Update of /cvsroot/module-build/Module-Build/t In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21878/t Modified Files: metadata.t Added Files: mbyaml.t Log Message: Include our own YAML work-alike --- NEW FILE: mbyaml.t --- #!/usr/local/bin/perl -w use Test::More qw(no_plan); use lib "lib"; use lib "../lib"; my ($dir); $dir = "."; $dir = "t" if (-d "t"); { use_ok("Module::Build::YAML"); my ($expected, $got, $var); $var = { 'resources' => { 'license' => 'http://opensource.org/licenses/artistic-license.php' }, 'meta-spec' => { 'version' => '1.2', 'url' => 'http://module-build.sourceforge.net/META-spec-v1.2.html' }, 'generated_by' => 'Module::Build version 0.2709', 'version' => '0.13', 'name' => 'js-app', 'dynamic_config' => '1', 'author' => [ '"Stephen Adkins" <spa...@gm...>' ], 'license' => 'lgpl', 'build_requires' => { 'App::Build' => '0', 'File::Spec' => '0', 'Module::Build' => '0' }, 'provides' => { 'JavaScript::App' => { 'version' => '0', 'file' => 'lib/JavaScript/App.pm' } }, 'requires' => { 'App::Options' => '0' }, 'abstract' => 'A framework for building dynamic widgets or full applications in Javascript' }; $expected = <<EOF; --- abstract: A framework for building dynamic widgets or full applications in Javascript author: - '"Stephen Adkins" <spadkins\@gmail.com>' build_requires: App::Build: 0 File::Spec: 0 Module::Build: 0 dynamic_config: 1 generated_by: Module::Build version 0.2709 license: lgpl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.2.html version: 1.2 name: js-app provides: JavaScript::App: file: lib/JavaScript/App.pm version: 0 requires: App::Options: 0 resources: license: http://opensource.org/licenses/artistic-license.php version: 0.13 EOF $got = &Module::Build::YAML::Dump($var); is($got, $expected, "Dump(): single deep hash"); $expected = <<EOF; --- name: js-app version: 0.13 author: - '"Stephen Adkins" <spadkins\@gmail.com>' abstract: A framework for building dynamic widgets or full applications in Javascript license: lgpl resources: license: http://opensource.org/licenses/artistic-license.php requires: App::Options: 0 build_requires: App::Build: 0 File::Spec: 0 Module::Build: 0 dynamic_config: 1 provides: JavaScript::App: file: lib/JavaScript/App.pm version: 0 generated_by: Module::Build version 0.2709 meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.2.html version: 1.2 EOF $var->{_order} = [qw(name version author abstract license resources requires build_requires dynamic_config provides)]; $got = &Module::Build::YAML::Dump($var); is($got, $expected, "Dump(): single deep hash, ordered"); $var = [ "e", 2.71828, [ "pi", "is", 3.1416 ], { fun => "under_sun", 6 => undef, "more", undef }, ]; $expected = <<EOF; --- e --- 2.71828 --- - pi - is - 3.1416 --- 6: "" fun: under_sun more: "" EOF $got = &Module::Build::YAML::Dump(@$var); is($got, $expected, "Dump(): multiple, various"); $expected = <<EOF; --- - e - 2.71828 - - pi - is - 3.1416 - 6: "" fun: under_sun more: "" EOF $got = &Module::Build::YAML::Dump($var); is($got, $expected, "Dump(): single array of various"); my $y = Module::Build::YAML->new(); $got = $y->Dump($var); is($got, $expected, "Dump(): single array of various (OO)"); } Index: metadata.t =================================================================== RCS file: /cvsroot/module-build/Module-Build/t/metadata.t,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- metadata.t 20 Jan 2006 14:29:14 -0000 1.14 +++ metadata.t 21 Mar 2006 04:51:35 -0000 1.15 @@ -2,7 +2,7 @@ use strict; use lib $ENV{PERL_CORE} ? '../lib/Module/Build/t/lib' : 't/lib'; -use MBTest tests => 46; +use MBTest tests => 43; use Cwd (); my $cwd = Cwd::cwd; @@ -556,15 +556,6 @@ $mb = new_build(); is_deeply($mb->find_dist_packages, {}); - -{ - # Put our YAML escaper through a few tests. This isn't part of the M::B API. - my $yq = sub {Module::Build->_yaml_quote_string(@_)}; - like $yq->(''), qr{^ (['"]) \1 $}x; - is $yq->('Foo "bar" baz'), q{'Foo "bar" baz'}; - is $yq->("Foo 'bar' baz"), q{"Foo 'bar' baz"}; -} - ############################################################ # cleanup chdir( $cwd ) or die "Can't chdir to '$cwd': $!"; |
From: Ken W. <kwi...@us...> - 2006-03-21 04:51:42
|
Update of /cvsroot/module-build/Module-Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21878 Modified Files: Changes MANIFEST Log Message: Include our own YAML work-alike Index: Changes =================================================================== RCS file: /cvsroot/module-build/Module-Build/Changes,v retrieving revision 1.443 retrieving revision 1.444 diff -u -d -r1.443 -r1.444 --- Changes 18 Mar 2006 02:35:32 -0000 1.443 +++ Changes 21 Mar 2006 04:51:33 -0000 1.444 @@ -7,12 +7,17 @@ was already part of Module::Build 0.2609, but for some reason we've forgotten it in the 0.27_xx series. [Spotted by Steve Kirkup] - - Document the versions of Module::Build where each feature, action, - constructor argument, and method was first publicly documented. + - Document the versions of Module::Build where each feature, action, + constructor argument, and method was first publicly documented. - - More fixes for find_perl_interpreter() to work with BSD flavored - UNIX: Ensure we always return absolute paths; throw an exception - upon failure to find correct interperter; document everything. + - More fixes for find_perl_interpreter() to work with BSD flavored + UNIX: Ensure we always return absolute paths; throw an exception + upon failure to find correct interperter; document everything. + + - We now include our own YAML.pm work-alike that we can use when the + real YAML isn't installed. We might soon even start using it when + YAML is installed, because the YAML API and dependency chain have + been changing in unfavorable ways lately. [Stephen Adkins] 0.27_09 Sat Mar 11 22:48:54 EST 2006 Index: MANIFEST =================================================================== RCS file: /cvsroot/module-build/Module-Build/MANIFEST,v retrieving revision 1.52 retrieving revision 1.53 diff -u -d -r1.52 -r1.53 --- MANIFEST 25 Feb 2006 15:27:26 -0000 1.52 +++ MANIFEST 21 Mar 2006 04:51:34 -0000 1.53 @@ -8,6 +8,7 @@ lib/Module/Build/Cookbook.pm lib/Module/Build/ModuleInfo.pm lib/Module/Build/Notes.pm +lib/Module/Build/YAML.pm lib/Module/Build/Platform/aix.pm lib/Module/Build/Platform/Amiga.pm lib/Module/Build/Platform/cygwin.pm @@ -43,6 +44,7 @@ t/lib/DistGen.pm t/lib/MBTest.pm t/manifypods.t +t/mbyaml.t t/metadata.t t/metadata2.t t/moduleinfo.t |
From: Ken W. <kwi...@us...> - 2006-03-21 04:51:42
|
Update of /cvsroot/module-build/Module-Build/lib/Module In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21878/lib/Module Modified Files: Build.pm Log Message: Include our own YAML work-alike Index: Build.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build.pm,v retrieving revision 1.214 retrieving revision 1.215 diff -u -d -r1.214 -r1.215 --- Build.pm 16 Mar 2006 09:37:58 -0000 1.214 +++ Build.pm 21 Mar 2006 04:51:34 -0000 1.215 @@ -321,8 +321,12 @@ F<META.yml> is a file containing various bits of "metadata" about the distribution. The metadata includes the distribution name, version, abstract, prerequisites, license, and various other data about the -distribution. This file is created as F<META.yml> in YAML format, so -the C<YAML> module must be installed in order to create it. The +distribution. This file is created as F<META.yml> in YAML format. +It is recommended that the C<YAML> module be installed to create it. +If the C<YAML> module is not installed, an internal module supplied +with Module::Build will be used to write the META.yml file, and this +will most likely be fine. + F<META.yml> file must also be listed in F<MANIFEST> - if it's not, a warning will be issued. |
From: Ken W. <kwi...@us...> - 2006-03-18 02:35:36
|
Update of /cvsroot/module-build/Module-Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv662 Modified Files: Changes Log Message: Add create_packlist property Index: Changes =================================================================== RCS file: /cvsroot/module-build/Module-Build/Changes,v retrieving revision 1.442 retrieving revision 1.443 diff -u -d -r1.442 -r1.443 --- Changes 16 Mar 2006 09:39:53 -0000 1.442 +++ Changes 18 Mar 2006 02:35:32 -0000 1.443 @@ -1,6 +1,11 @@ Revision history for Perl extension Module::Build. -0.27_10 +0.27_11 + + - Added the create_packlist property, default true, which controls + whether packlist files will be written during installation. This + was already part of Module::Build 0.2609, but for some reason we've + forgotten it in the 0.27_xx series. [Spotted by Steve Kirkup] - Document the versions of Module::Build where each feature, action, constructor argument, and method was first publicly documented. |
From: Ken W. <kwi...@us...> - 2006-03-18 02:35:36
|
Update of /cvsroot/module-build/Module-Build/lib/Module/Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv662/lib/Module/Build Modified Files: Authoring.pod Base.pm Log Message: Add create_packlist property Index: Base.pm =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Base.pm,v retrieving revision 1.560 retrieving revision 1.561 diff -u -d -r1.560 -r1.561 --- Base.pm 15 Mar 2006 02:52:36 -0000 1.560 +++ Base.pm 18 Mar 2006 02:35:32 -0000 1.561 @@ -685,6 +685,7 @@ __PACKAGE__->add_property(metafile => 'META.yml'); __PACKAGE__->add_property(recurse_into => []); __PACKAGE__->add_property(use_rcfile => 1); +__PACKAGE__->add_property(create_packlist => 1); { my $Is_ActivePerl = eval {require ActivePerl::DocTools}; @@ -3500,7 +3501,7 @@ ) if @skipping; # Write the packlist into the same place as ExtUtils::MakeMaker. - if (my $module_name = $self->module_name) { + if ($self->create_packlist and my $module_name = $self->module_name) { my $archdir = $self->install_destination('arch'); my @ext = split /::/, $module_name; $map{write} = File::Spec->catdir($archdir, 'auto', @ext, '.packlist'); Index: Authoring.pod =================================================================== RCS file: /cvsroot/module-build/Module-Build/lib/Module/Build/Authoring.pod,v retrieving revision 1.33 retrieving revision 1.34 diff -u -d -r1.33 -r1.34 --- Authoring.pod 16 Mar 2006 09:37:59 -0000 1.33 +++ Authoring.pod 18 Mar 2006 02:35:32 -0000 1.34 @@ -193,6 +193,18 @@ See the documentation for L<"PREREQUISITES"> for the details of how requirements can be specified. +=item create_packlist + +If true, this parameter tells Module::Build to create a F<.packlist> +file during the C<install> action, just like ExtUtils::MakeMaker does. +The file is created in a subdirectory of the C<arch> installation +location. It is used by some other tools (CPAN, CPANPLUS, etc.) for +determining what files are part of an install. + +The default value is true. This parameter was introduced in +Module::Build version 0.2609; previously no packlists were ever +created by Module::Build. + =item c_source [version 0.04] |
From: Randy W. S. <si...@us...> - 2006-03-16 09:40:01
|
Update of /cvsroot/module-build/Module-Build In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25696 Modified Files: Changes Log Message: Changes Index: Changes =================================================================== RCS file: /cvsroot/module-build/Module-Build/Changes,v retrieving revision 1.441 retrieving revision 1.442 diff -u -d -r1.441 -r1.442 --- Changes 16 Mar 2006 09:37:58 -0000 1.441 +++ Changes 16 Mar 2006 09:39:53 -0000 1.442 @@ -2,6 +2,9 @@ 0.27_10 + - Document the versions of Module::Build where each feature, action, + constructor argument, and method was first publicly documented. + - More fixes for find_perl_interpreter() to work with BSD flavored UNIX: Ensure we always return absolute paths; throw an exception upon failure to find correct interperter; document everything. |