This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #111798] ExtUtils-CBuilder looks for the manifest file in the wrong place
authorN/K <snaury@gmail.com>
Mon, 28 May 2012 08:33:58 +0000 (09:33 +0100)
committerSteve Hay <steve.m.hay@googlemail.com>
Mon, 28 May 2012 08:43:01 +0000 (09:43 +0100)
commita970290aa9e323780a71583145a944c5b275701e
treeb4c570ce02b9c30597eeebf990b746ebeddbcfb8
parentc2f56b9483cee11d5341b65afa8324d532b98b5e
[perl #111798] ExtUtils-CBuilder looks for the manifest file in the wrong place

Near the start of link(), $output gets set to a blib\arch\auto path.
A little later that gets copied into $spec{output}, but $spec{manifest}
is left unset so it gets set later to a $spec{builddir} path, which is
not what $spec{output} was set to earlier.
The manifest file is always created alongside the DLL, so the correct
fix is simply to append '.manifest' to the DLL path to find the manifest.
(EU-MM does that too.)

Patch taken from [cpan #35943] which reported the same problem. The other
concern raised there, about the VC version being checked to deduce the
existence of the manifest file rather than testing that directly, has
long since been incorporated already and also explains why this problem
has not been seen recently: the faulty attempt to embed the manifest has
not been attempted ever since the existence test was added because it was
also failing and hence no 'mt' command was being run. [cpan #35943] is
thus resolved by this change too.

Bump $VERSION in all ExtUtils::CBuilder files (to 0.280208) to keep them
all in sync as before.
13 files changed:
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Unix.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/VMS.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/aix.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/cygwin.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/darwin.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/dec_osf.pm
dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm