summaryrefslogtreecommitdiff
path: root/win32
diff options
context:
space:
mode:
Diffstat (limited to 'win32')
-rw-r--r--win32/config_sh.PL17
1 files changed, 15 insertions, 2 deletions
diff --git a/win32/config_sh.PL b/win32/config_sh.PL
index 9757e52cac..35bb6e26e3 100644
--- a/win32/config_sh.PL
+++ b/win32/config_sh.PL
@@ -44,8 +44,21 @@ while (@{$optref} && $optref->[0] =~ /^([\w_]+)=(.*)$/) {
shift(@{$optref});
}
-$opt{'dynamic_ext'} = join(' ',FindExt::dynamic_extensions());
-$opt{'nonxs_ext'} = join(' ',FindExt::noxs_extensions());
+my @dynamic = FindExt::dynamic_extensions();
+my @noxs = FindExt::noxs_extensions();
+my @known = sort(@dynamic,split(/\s+/,$opt{'staticext'}),@noxs);
+$opt{'known_extensions'} = join(' ',@known);
+
+if (!$opt{'use5005threads'} || $opt{'use5005threads'} eq 'undef')
+ {
+ @dynamic = grep(!/Thread/,@dynamic);
+ @known = grep(!/Thread/,@dynamic);
+ }
+
+$opt{'dynamic_ext'} = join(' ',@dynamic);
+$opt{'nonxs_ext'} = join(' ',@noxs);
+
+$opt{'extensions'} = join(' ',@known);
my $pl_h = '../patchlevel.h';