Require an up-to-date Win32::API version because older ones are not thread-safe and cause random segfaults. #2517

This commit is contained in:
Alessandro Ranellucci 2015-01-18 16:52:55 +01:00
parent 90afbc8bd9
commit 3648bbd6d4

View File

@ -26,8 +26,6 @@ my %prereqs = qw(
); );
my %recommends = qw( my %recommends = qw(
Class::XSAccessor 0 Class::XSAccessor 0
LWP::UserAgent 0
Net::Bonjour 0
XML::SAX::ExpatXS 0 XML::SAX::ExpatXS 0
Test::Harness 0 Test::Harness 0
); );
@ -39,12 +37,19 @@ if ($gui) {
%prereqs = qw( %prereqs = qw(
Class::Accessor 0 Class::Accessor 0
Wx 0.9918 Wx 0.9918
Socket 2.016
); );
%recommends = qw( %recommends = qw(
Growl::GNTP 0.15 Growl::GNTP 0.15
Wx::GLCanvas 0 Wx::GLCanvas 0
OpenGL 0 OpenGL 0
LWP::UserAgent 0
Net::Bonjour 0
); );
if ($^O eq 'MSWin32') {
# we need an up-to-date Win32::API because older aren't thread-safe (GH #2517)
$prereqs{'Win32::API'} = 0.79;
}
} elsif ($xs_only) { } elsif ($xs_only) {
%prereqs = %recommends = (); %prereqs = %recommends = ();
} }
@ -111,7 +116,7 @@ EOF
foreach my $module (sort keys %modules) { foreach my $module (sort keys %modules) {
my $version = $modules{$module}; my $version = $modules{$module};
my @cmd = ($cpanm, @cpanm_args); my @cmd = ($cpanm, @cpanm_args);
push @cmd, '-f', if $module eq 'OpenGL'; # temporary workaround for upstream bug in test push @cmd, '--notest', if $module eq 'OpenGL'; # temporary workaround for upstream bug in test
push @cmd, "$module~$version"; push @cmd, "$module~$version";
if ($module eq 'XML::SAX::ExpatXS' && $^O eq 'MSWin32') { if ($module eq 'XML::SAX::ExpatXS' && $^O eq 'MSWin32') {
my $mingw = 'C:\dev\CitrusPerl\mingw64'; my $mingw = 'C:\dev\CitrusPerl\mingw64';