diff options
Diffstat (limited to 'win32')
-rw-r--r-- | win32/FindExt.pm | 16 | ||||
-rw-r--r-- | win32/config_sh.PL | 13 |
2 files changed, 16 insertions, 13 deletions
diff --git a/win32/FindExt.pm b/win32/FindExt.pm index f1957f177e..c7e52aef05 100644 --- a/win32/FindExt.pm +++ b/win32/FindExt.pm @@ -13,6 +13,8 @@ sub apply_config { my ($config) = @_; my @no; + push @no, 'Sys-Syslog' if $^O eq 'MSWin32'; + # duplicates logic from Configure (mostly) push @no, "DB_File" unless $config->{i_db}; push @no, "GDBM_File" unless $config->{i_gdbm}; @@ -46,6 +48,20 @@ sub set_static_extensions { $static{$_} = 1; $ext{$_} = 'static' if $ext{$_} && $ext{$_} eq 'dynamic'; } + + # Encode is a special case. If we are building Encode as a static + # extension, we need to explicitly list its subextensions as well. + # For other nested extensions, this is handled automatically by + # the appropriate Makefile.PL. + if ($ext{Encode} && $ext{Encode} eq 'static') { + foreach my $file (`dir /s /b ..\\cpan\\Encode\\Makefile.PL`) { + if ($file =~ /\b(Encode\\.+)\\Makefile\.PL/) { + (my $xxx = $1) =~ s|\\|/|g; + $static{$xxx} = 1; + $ext{$xxx} = 'static'; + } + } + } } sub scan_ext diff --git a/win32/config_sh.PL b/win32/config_sh.PL index eb9471cf21..d866f7624e 100644 --- a/win32/config_sh.PL +++ b/win32/config_sh.PL @@ -56,19 +56,6 @@ $opt{dynamic_ext} = join(' ',FindExt::dynamic_ext()) || ' '; $opt{extensions} = join(' ',FindExt::extensions()) || ' '; $opt{known_extensions} = join(' ',FindExt::known_extensions()) || ' '; -# Encode is a special case. If we are building Encode as a static -# extension, we need to explicitly list its subextensions as well. -# For other nested extensions, this is handled automatically by -# the appropriate Makefile.PL. -if ($opt{static_ext} =~ /\bEncode\b/) { - foreach my $file (`dir /s /b ..\\cpan\\Encode\\Makefile.PL`) { - if ($file =~ /\b(Encode\\.+)\\Makefile\.PL/) { - (my $xxx = $1) =~ s|\\|/|g; - $opt{static_ext} .= " $xxx"; - } - } -} - my $pl_h = '../patchlevel.h'; if (-e $pl_h) { |