In perl.git, the branch tonyc/findext has been updated <http://perl5.git.perl.org/perl.git/commitdiff/aa87a260e51fae292491424ba1ed69fd2070b71e?hp=c5f0d8890940eecdb6c146c580a7e2141c693e97>
- Log ----------------------------------------------------------------- commit aa87a260e51fae292491424ba1ed69fd2070b71e Author: Tony Cook <t...@develop-help.com> Date: Thu Jan 6 22:42:50 2011 +1100 unbreak the build process using FindExt to build config.sh ----------------------------------------------------------------------- Summary of changes: t/porting/FindExt.t | 1 + win32/FindExt.pm | 37 ++++++++++++++++++++++--------------- 2 files changed, 23 insertions(+), 15 deletions(-) diff --git a/t/porting/FindExt.t b/t/porting/FindExt.t index 95c6cbd..0100cb1 100644 --- a/t/porting/FindExt.t +++ b/t/porting/FindExt.t @@ -28,6 +28,7 @@ unless (defined $Config{usedl}) { plan tests => 10; use FindExt; +FindExt::apply_config(\%Config); FindExt::scan_ext('../cpan'); FindExt::scan_ext('../dist'); FindExt::scan_ext('../ext'); diff --git a/win32/FindExt.pm b/win32/FindExt.pm index 69ecc5f..c500290 100644 --- a/win32/FindExt.pm +++ b/win32/FindExt.pm @@ -4,23 +4,30 @@ our $VERSION = '1.02'; use strict; use warnings; -use Config; - -my @no; -# duplicates logic from Configure (mostly) -push @no, "DB_File" unless $Config{i_db}; -push @no, "GDBM_File" unless $Config{i_gdbm}; -push @no, "I18N-Langinfo" unless $Config{i_langinfo} && $Config{i_nl_langinfo}; -push @no, "IPC-SysV" unless $Config{d_msg} || $Config{d_sem} || $Config{d_shm}; -push @no, "NDBM_File" unless $Config{d_ndbm}; -push @no, "ODBM_File" - unless ($Config{i_dbm} || $Config{i_rpcsvcdbm}) && !$Config{d_cplusplus}; -push @no, "VMS.*" unless $^O eq "VMS"; -push @no, "Win32.*" unless $^O eq "MSWin32" || $^O eq "cygwin"; - -my $no = join('|', @no); + +my $no = join('|', qw(GDBM_File ODBM_File NDBM_File DB_File + VMS VMS-DCLsym VMS-Stdio Sys-Syslog IPC-SysV I18N-Langinfo)); $no = qr/^(?:$no)$/i; +sub apply_config { + my ($config) = @_; + my @no; + + # duplicates logic from Configure (mostly) + push @no, "DB_File" unless $config->{i_db}; + push @no, "GDBM_File" unless $config->{i_gdbm}; + push @no, "I18N-Langinfo" unless $config->{i_langinfo} && $config->{i_nl_langinfo}; + push @no, "IPC-SysV" unless $config->{d_msg} || $config->{d_sem} || $config->{d_shm}; + push @no, "NDBM_File" unless $config->{d_ndbm}; + push @no, "ODBM_File" + unless ($config->{i_dbm} || $config->{i_rpcsvcdbm}) && !$config->{d_cplusplus}; + push @no, "VMS.*" unless $^O eq "VMS"; + push @no, "Win32.*" unless $^O eq "MSWin32" || $^O eq "cygwin"; + + $no = join('|', @no); + $no = qr/^(?:$no)$/i; +} + my %ext; my %static; -- Perl5 Master Repository