'Module::Build' =>
{
'MAINTAINER' => 'kwilliams',
- 'DISTRIBUTION' => 'DAGOLDEN/Module-Build-0.3603.tar.gz',
+ 'DISTRIBUTION' => 'DAGOLDEN/Module-Build-0.3607.tar.gz',
'FILES' => q[cpan/Module-Build],
'EXCLUDED' => [ qw{ t/par.t t/signature.t },
qr!^contrib/!, qr!^devtools! ],
Revision history for Perl extension Module::Build.
+0.3607 - Thu Apr 1 11:27:16 EDT 2010
+
+ Bug fixes:
+
+ - The 'dist' action now always ensures a clean dist directory before
+ creating the tarball [David Golden]
+
+0.36_06 - Thu Apr 1 01:23:58 EDT 2010
+
+ Other:
+
+ - Migrated repository to git and updated META.yml to match
+
+ - Removed bugtracker URL (let search.cpan.org use default)
+
+ - Disabled SIGNATURE generation
+
+0.3605 - Wed Mar 31 12:05:11 EDT 2010
+
+ - No changes from 0.36_04
+
+0.36_04 - Tue Mar 16 21:41:41 EDT 2010
+
+ Bug fixes:
+
+ - Added missing newline to "Changing sharpbang" messages under verbose
+ output (RT#54474) [David Golden]
+
+ - Added 'beos' to list of Unix-like os types (RT#53876) [Nigel Horne]
+
+ - Sets $ENV{HOME} to a temporary directory during testing [David Golden]
+
+ - For VMS: fixed prefix handling plus other test fixes [Craig Berry]
+
+ - Support anonymous array of directories for c_source [Alberto Simões]
+
+ - Small POD formatting fix [James Keenan]
+
0.3603 - Mon Jan 18 22:28:59 EST 2010
(Oops, I released the last one before I realized this should have been
use vars qw($VERSION @ISA);
@ISA = qw(Module::Build::Base);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
# Okay, this is the brute-force method of finding out what kind of
my %OSTYPES = qw(
aix Unix
bsdos Unix
+ beos Unix
dgux Unix
dragonfly Unix
dynixptx Unix
directory will be added to the search path during the compilation and
linking phases of any C or XS files.
+[version 0.3604]
+
+A list of directories can be supplied using an anonymous array
+reference of strings.
+
=item conflicts
[version 0.07]
If you would like to add other useful metadata, C<Module::Build>
supports this with the C<meta_add> and C<meta_merge> arguments to
-L</new>. The authoritative list of supported metadata can be found at
+L</new()>. The authoritative list of supported metadata can be found at
L<http://module-build.sourceforge.net/META-spec-current.html>, but for
convenience - here are a few of the more useful ones:
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
BEGIN { require 5.00503 }
my $p = $self->{properties};
return unless $p->{c_source};
- push @{$p->{include_dirs}}, $p->{c_source};
+ my $files;
+ if (ref($p->{c_source}) eq "ARRAY") {
+ push @{$p->{include_dirs}}, @{$p->{c_source}};
+ for my $path (@{$p->{c_source}}) {
+ push @$files, @{ $self->rscan_dir($path, file_qr('\.c(c|p|pp|xx|\+\+)?$')) };
+ }
+ } else {
+ push @{$p->{include_dirs}}, $p->{c_source};
+ $files = $self->rscan_dir($p->{c_source}, file_qr('\.c(c|p|pp|xx|\+\+)?$'));
+ }
- my $files = $self->rscan_dir($p->{c_source}, file_qr('\.c(c|p|pp|xx|\+\+)?$'));
foreach my $file (@$files) {
- push @{$p->{objects}}, $self->compile_c($file);
+ push @{$p->{objects}}, $self->compile_c($file);
}
}
next unless $cmd =~ /perl/i;
my $interpreter = $self->{properties}{perl};
- $self->log_verbose("Changing sharpbang in $file to $interpreter");
+ $self->log_verbose("Changing sharpbang in $file to $interpreter\n");
my $shb = '';
$shb .= $c->get('sharpbang')."$interpreter $arg\n" if $does_shbang;
sub ACTION_dist {
my ($self) = @_;
- $self->depends_on('distdir');
+ # MUST dispatch() and not depends_ok() so we generate a clean distdir
+ $self->dispatch('distdir');
my $dist_dir = $self->dist_dir;
return $self->find_packages_in_files(\@pm_files, \%dist_files);
}
+# XXX Do not document this function; mst wrote it and now says the API is
+# stupid and needs to be fixed and it shouldn't become a public API until then
sub find_packages_in_files {
my ($self, $file_list, $filename_map) = @_;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
use File::Basename ();
use File::Spec;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Config;
package Module::Build::Cookbook;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
=head1 NAME
package Module::Build::Dumper;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
# This is just a split-out of a wrapper function to do Data::Dumper
# stuff "the right way". See:
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use File::Spec;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Data::Dumper;
use IO::File;
use vars qw($VERSION);
use IO::File;
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
# This code is mostly borrowed from ExtUtils::MM_Unix 6.10_03, with a
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use vars qw(@ISA);
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use Config;
=cut
# Translated from ExtUtils::MM_VMS::prefixify()
+
+sub _catprefix {
+ my($self, $rprefix, $default) = @_;
+
+ my($rvol, $rdirs) = File::Spec->splitpath($rprefix);
+ if( $rvol ) {
+ return File::Spec->catpath($rvol,
+ File::Spec->catdir($rdirs, $default),
+ ''
+ )
+ }
+ else {
+ return File::Spec->catdir($rdirs, $default);
+ }
+}
+
+
sub _prefixify {
my($self, $path, $sprefix, $type) = @_;
my $rprefix = $self->prefix;
+ return '' unless defined $path;
+
$self->log_verbose(" prefixify $path from $sprefix to $rprefix\n");
# Translate $(PERLPREFIX) to a real path.
$self->log_verbose(" rprefix translated to $rprefix\n".
" sprefix translated to $sprefix\n");
- if( length $path == 0 ) {
+ if( length($path) == 0 ) {
$self->log_verbose(" no path to prefixify.\n")
}
elsif( !File::Spec->file_name_is_absolute($path) ) {
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Base;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Config;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Platform::Unix;
use strict;
use vars qw($VERSION);
-$VERSION = '0.360301'; # patched in bleadperl
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Platform::Unix;
}
# Copied from ExtUtils::MM_Cygwin::maybe_command()
-# If our path begins with F</cygdrive/> then we use M::B::Platform::Windows
+# If our path begins with F</cygdrive/> then we use C<ExtUtils::MM_Win32>
# to determine if it may be a command. Otherwise we use the tests
-# from M::B::Platform::Unix.
+# from C<ExtUtils::MM_Unix>.
sub _maybe_command {
my ($self, $file) = @_;
if ($file =~ m{^/cygdrive/}i) {
- require Module::Build::Platform::Windows;
- return Module::Build::Platform::Windows->_maybe_command($file);
+ require Module::Build::Platform::Win32;
+ return Module::Build::Platform::Win32->_maybe_command($file);
}
return $self->SUPER::_maybe_command($file);
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Platform::Unix;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Module::Build::Platform::Unix;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use vars qw(@ISA);
package inc::latest;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use Carp;
package inc::latest::private;
use strict;
use vars qw($VERSION);
-$VERSION = '0.3603';
+$VERSION = '0.3607';
$VERSION = eval $VERSION;
use File::Spec;
-#!/opt/perl/5.10.1/bin/perl
+#!/usr/bin/perl
-eval 'exec /opt/perl/5.10.1/bin/perl -S $0 ${1+"$@"}'
+eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if 0; # not running under some shell
use strict;
#
# Author: Christopher J. Madsen <cjm@pobox.com>
# Created: 08 Nov 1997
-# $Revision: 5841 $ $Date: 2006-03-21 08:27:29 -0500 (Tue, 21 Mar 2006) $
+# $Revision$ $Date$
#
# This program is free software; you can redistribute it and/or modify
# it under the same terms as Perl itself.
(my $libdir2 = $libdir) =~ s/libdir/lbiidr/;
my $libarch2 = File::Spec->catdir($libdir2, 'arch');
+ my $check_base = $libdir2;
+ $check_base =~ s/\]\z// if $^O eq 'VMS'; # trim trailing ] for appending other dirs
SKIP: {
my @cases = (
{
label => "INSTALLDIRS=vendor",
args => [ 'INSTALLDIRS=vendor', "INSTALLVENDORLIB=$libdir2", "INSTALLVENDORARCH=$libarch2"],
- check => qr/\Q$libdir2\E .* Simple\.pm/ix,
+ check => qr/\Q$check_base\E .* Simple\.pm/ix,
},
{
label => "PREFIX=\$libdir2",
args => [ "PREFIX=$libdir2"],
- check => qr/\Q$libdir2\E .* Simple\.pm/ix,
+ check => qr/\Q$check_base\E .* Simple\.pm/ix,
},
{
label => "PREFIX=\$libdir2 LIB=mylib",
args => [ "PREFIX=$libdir2", "LIB=mylib" ],
- check => qr{\Q$libdir2\E[/\\]mylib[/\\]Simple\.pm}ix,
+ check => qr{\Q$check_base\E[/\\\.]mylib[/\\\]]Simple\.pm}ix,
},
);
skip "Needs ExtUtils::Install 1.32 or later", 2 * @cases
if ExtUtils::Install->VERSION < 1.32;
- skip "Needs upstream patch at http://rt.cpan.org/Public/Bug/Display.html?id=55288", 2 * @cases
- if $^O eq 'VMS';
-
for my $c (@cases) {
my @make_args = @{$c->{args}};
- if ($is_vms_mms) { # VMS MMK/MMS macros use different syntax.
- $make_args[0] = '/macro=("' . join('","',@make_args) . '")';
- pop @make_args while scalar(@make_args) > 1;
- }
($output) = stdout_stderr_of(
sub {
$result = $mb->run_perl_script('Makefile.PL', [], \@make_args);
BEGIN {
# Environment variables which might effect our testing
my @delete_env_keys = qw(
+ HOME
DEVEL_COVER_OPTIONS
MODULEBUILDRC
PERL_MB_OPT
return File::Temp::tempdir('MB-XXXXXXXX', CLEANUP => 1, DIR => $dir, @args);
}
+BEGIN {
+ $ENV{HOME} = tmpdir; # don't want .modulebuildrc or other things interfering
+}
+
sub save_handle {
my ($handle, $subr) = @_;
my $outfile = File::Spec->catfile(File::Spec->tmpdir, temp_file_name());