Subject: | Don't call link_executable() on Windows |
ExtUtils::CBuilder is still skipping all tests for link_executable() on
Windows because it doesn't have a platformer/compiler specific
implementation for it yet.
The naive implementation in ExtUtils::CBuilder::Base is good enough most
of the time for the Module::Build test, but does fail for the 64-bit
Windows 2003 Platform SDK compiler.
Module::Build doesn't even use link_executable; it only calls it to
determine if the tmp directory is executable, if I understand this
correctly. This isn't applicable to Windows, so I suggest that the call
to link_executable() should simply be skipped on Windows.
Subject: | link_exe.patch |
--- a/t/lib/MBTest.pm~ 2009-12-21 11:45:39.000000000 -0800
+++ b/t/lib/MBTest.pm 2010-01-08 17:23:12.249843100 -0800
@@ -201,6 +201,8 @@
my $have_c_compiler;
stderr_of( sub {$have_c_compiler = $mb->have_c_compiler} );
+ # XXX link_executable() is not yet implemented for Windows
+ return ($have_c_compiler, 1) if $^O eq "MSWin32";
# check noexec tmpdir
my $tmp_exec;