9199d9
diff --git a/Changes b/Changes
9199d9
index 27f3bc3..aaebade 100644
9199d9
--- a/Changes
9199d9
+++ b/Changes
9199d9
@@ -1,6 +1,12 @@
9199d9
 Revision history for Perl extension ExtUtils::CBuilder.
9199d9
 
9199d9
-0.282224 - 2015-10-09
9199d9
+0.280225 - 2016-01-04
9199d9
+
9199d9
+  Fixed:
9199d9
+
9199d9
+  - New location of libperl on Win32 when building core (RT #126632)
9199d9
+
9199d9
+0.280224 - 2015-10-09
9199d9
 
9199d9
   Enhncements:
9199d9
 
9199d9
diff --git a/Makefile.PL b/Makefile.PL
9199d9
index 820b294..44cb33a 100644
9199d9
--- a/Makefile.PL
9199d9
+++ b/Makefile.PL
9199d9
@@ -29,7 +29,7 @@ my %WriteMakefileArgs = (
9199d9
   "TEST_REQUIRES" => {
9199d9
     "Test::More" => "0.47"
9199d9
   },
9199d9
-  "VERSION" => "0.280224",
9199d9
+  "VERSION" => "0.280225",
9199d9
   "test" => {
9199d9
     "TESTS" => "t/*.t"
9199d9
   }
9199d9
diff --git a/lib/ExtUtils/CBuilder.pm b/lib/ExtUtils/CBuilder.pm
9199d9
index abe976e..6ce0c68 100644
9199d9
--- a/lib/ExtUtils/CBuilder.pm
9199d9
+++ b/lib/ExtUtils/CBuilder.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder;
9199d9
-$ExtUtils::CBuilder::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::VERSION = '0.280225';
9199d9
 use File::Spec ();
9199d9
 use File::Path ();
9199d9
 use File::Basename ();
9199d9
diff --git a/lib/ExtUtils/CBuilder/Base.pm b/lib/ExtUtils/CBuilder/Base.pm
9199d9
index eb4c175..60b2f43 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Base.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Base.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Base;
9199d9
-$ExtUtils::CBuilder::Base::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Base::VERSION = '0.280225';
9199d9
 use strict;
9199d9
 use warnings;
9199d9
 use File::Spec;
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/Unix.pm b/lib/ExtUtils/CBuilder/Platform/Unix.pm
9199d9
index d6c1768..399e254 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/Unix.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/Unix.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::Unix;
9199d9
-$ExtUtils::CBuilder::Platform::Unix::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::Unix::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 use ExtUtils::CBuilder::Base;
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/VMS.pm b/lib/ExtUtils/CBuilder/Platform/VMS.pm
9199d9
index 194d888..e9d9f6f 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/VMS.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/VMS.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::VMS;
9199d9
-$ExtUtils::CBuilder::Platform::VMS::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::VMS::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 use ExtUtils::CBuilder::Base;
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/Windows.pm b/lib/ExtUtils/CBuilder/Platform/Windows.pm
9199d9
index b95592d..80b8f29 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/Windows.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/Windows.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::Windows;
9199d9
-$ExtUtils::CBuilder::Platform::Windows::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::Windows::VERSION = '0.280225';
9199d9
 use strict;
9199d9
 use warnings;
9199d9
 
9199d9
@@ -151,7 +151,7 @@ sub link {
9199d9
   # if running in perl source tree, look for libs there, not installed
9199d9
   my $lddlflags = $cf->{lddlflags};
9199d9
   my $perl_src = $self->perl_src();
9199d9
-  $lddlflags =~ s/\Q$cf->{archlibexp}\E[\\\/]CORE/$perl_src/ if $perl_src;
9199d9
+  $lddlflags =~ s/\Q$cf->{archlibexp}\E[\\\/]CORE/$perl_src\/lib\/CORE/ if $perl_src;
9199d9
 
9199d9
   my %spec = (
9199d9
     srcdir        => $to,
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm b/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm
9199d9
index cd93b72..513c4ac 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::Windows::BCC;
9199d9
-$ExtUtils::CBuilder::Platform::Windows::BCC::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::Windows::BCC::VERSION = '0.280225';
9199d9
 use strict;
9199d9
 use warnings;
9199d9
 
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm b/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm
9199d9
index 5f219f2..19851df 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::Windows::GCC;
9199d9
-$ExtUtils::CBuilder::Platform::Windows::GCC::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::Windows::GCC::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm b/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm
9199d9
index f14988e..c8d675f 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::Windows::MSVC;
9199d9
-$ExtUtils::CBuilder::Platform::Windows::MSVC::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::Windows::MSVC::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/aix.pm b/lib/ExtUtils/CBuilder/Platform/aix.pm
9199d9
index 949ef53..488d3e6 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/aix.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/aix.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::aix;
9199d9
-$ExtUtils::CBuilder::Platform::aix::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::aix::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 use ExtUtils::CBuilder::Platform::Unix;
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/android.pm b/lib/ExtUtils/CBuilder/Platform/android.pm
9199d9
index 5940922..b9e6af3 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/android.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/android.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::android;
9199d9
-$ExtUtils::CBuilder::Platform::android::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::android::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 use File::Spec;
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/cygwin.pm b/lib/ExtUtils/CBuilder/Platform/cygwin.pm
9199d9
index c020e44..339840f 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/cygwin.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/cygwin.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::cygwin;
9199d9
-$ExtUtils::CBuilder::Platform::cygwin::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::cygwin::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 use File::Spec;
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/darwin.pm b/lib/ExtUtils/CBuilder/Platform/darwin.pm
9199d9
index 324c268..04a87da 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/darwin.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/darwin.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::darwin;
9199d9
-$ExtUtils::CBuilder::Platform::darwin::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::darwin::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 use ExtUtils::CBuilder::Platform::Unix;
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/dec_osf.pm b/lib/ExtUtils/CBuilder/Platform/dec_osf.pm
9199d9
index 0eb098f..d503e86 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/dec_osf.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/dec_osf.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::dec_osf;
9199d9
-$ExtUtils::CBuilder::Platform::dec_osf::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::dec_osf::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 use ExtUtils::CBuilder::Platform::Unix;
9199d9
diff --git a/lib/ExtUtils/CBuilder/Platform/os2.pm b/lib/ExtUtils/CBuilder/Platform/os2.pm
9199d9
index 19047b9..8d0e3eb 100644
9199d9
--- a/lib/ExtUtils/CBuilder/Platform/os2.pm
9199d9
+++ b/lib/ExtUtils/CBuilder/Platform/os2.pm
9199d9
@@ -1,5 +1,5 @@
9199d9
 package ExtUtils::CBuilder::Platform::os2;
9199d9
-$ExtUtils::CBuilder::Platform::os2::VERSION = '0.280224';
9199d9
+$ExtUtils::CBuilder::Platform::os2::VERSION = '0.280225';
9199d9
 use warnings;
9199d9
 use strict;
9199d9
 use ExtUtils::CBuilder::Platform::Unix;
9199d9
diff --git a/t/00-have-compiler.t b/t/00-have-compiler.t
9199d9
index 1661812..1073277 100644
9199d9
--- a/t/00-have-compiler.t
9199d9
+++ b/t/00-have-compiler.t
9199d9
@@ -26,14 +26,34 @@ ok( $b, "got CBuilder object" ) or diag $@;
9199d9
 
9199d9
 # test missing compiler
9199d9
 {
9199d9
-my $b1 = ExtUtils::CBuilder->new(quiet => 1);
9199d9
-configure_fake_missing_compilers($b1);
9199d9
-is( $b1->have_compiler, 0, "have_compiler: fake missing cc" );
9199d9
+
9199d9
+    my $b1 = ExtUtils::CBuilder->new(quiet => 1);
9199d9
+
9199d9
+    configure_fake_missing_compilers($b1);
9199d9
+
9199d9
+    # This will fork a child that will print
9199d9
+    #    'Can't exec "djaadjfkadjkfajdf"'
9199d9
+    # or similar on STDERR; so make sure fd2 is temporarily closed before
9199d9
+    # the fork
9199d9
+    open(my $orig_err, ">&", \*STDERR) or die "Can't dup STDERR: $!";
9199d9
+    close(STDERR);
9199d9
+    my $res = $b1->have_compiler;
9199d9
+    open(STDERR, ">&", $orig_err) or die "Can't dup \$orig_err $!";
9199d9
+    close($orig_err);
9199d9
+
9199d9
+    is($res, 0, "have_compiler: fake missing cc" );
9199d9
 }
9199d9
 {
9199d9
-my $b2 = ExtUtils::CBuilder->new(quiet => 1);
9199d9
-configure_fake_missing_compilers($b2);
9199d9
-is( $b2->have_cplusplus, 0, "have_cplusplus: fake missing c++" );
9199d9
+    my $b2 = ExtUtils::CBuilder->new(quiet => 1);
9199d9
+    configure_fake_missing_compilers($b2);
9199d9
+
9199d9
+    open(my $orig_err, ">&", \*STDERR) or die "Can't dup STDERR: $!";
9199d9
+    close(STDERR);
9199d9
+    my $res = $b2->have_cplusplus;
9199d9
+    open(STDERR, ">&", $orig_err) or die "Can't dup \$orig_err $!";
9199d9
+    close($orig_err);
9199d9
+
9199d9
+    is($res, 0, "have_cplusplus: fake missing c++" );
9199d9
 }
9199d9
 
9199d9
 # test found compiler
9199d9
diff --git a/t/02-link.t b/t/02-link.t
9199d9
index 31ee918..0c64619 100644
9199d9
--- a/t/02-link.t
9199d9
+++ b/t/02-link.t
9199d9
@@ -19,8 +19,8 @@ my ($source_file, $object_file, $exe_file);
9199d9
 my $b = ExtUtils::CBuilder->new(quiet => $quiet);
9199d9
 
9199d9
 # test plan
9199d9
-if ($^O eq 'MSWin32') {
9199d9
-  plan skip_all => "link_executable() is not implemented yet on Win32";
9199d9
+if ($^O =~ / ^ ( MSWin32 | os390 ) $ /xi) {
9199d9
+  plan skip_all => "link_executable() is not implemented yet on $^O";
9199d9
 }
9199d9
 elsif ( ! $b->have_compiler ) {
9199d9
   plan skip_all => "no compiler available for testing";