develooper Front page | perl.perl5.porters | Postings from May 2012

Re: [perl #112612] [PATCH] Win32 MSVC perlglob expansion in Encode

From:
Reini Urban
Date:
May 6, 2012 08:25
Subject:
Re: [perl #112612] [PATCH] Win32 MSVC perlglob expansion in Encode
Message ID:
CAHiT=DEumdHq64d42jaaQDqrgwFM1bjiHbepf93RaZmeOVLyGg@mail.gmail.com
On Fri, May 4, 2012 at 2:21 AM, Steve Hay via RT
<perlbug-followup@perl.org> wrote:
> On Thu May 03 20:22:11 2012, sprout wrote:
>> On Wed Apr 25 11:30:29 2012, rurban@cpanel.net wrote:
>> >
>> > This is a bug report for perl from rurban@cpanel.net,
>> > generated with the help of perlbug 1.39 running under perl 5.15.9.
>> >
>> > From a5ad7f26363aa02510e89471d9fc277dacafc259 Mon Sep 17 00:00:00 2001
>> > From: Reini Urban <rurban@x-ray.at>
>> > Date: Wed, 25 Apr 2012 13:21:20 -0500
>> > Subject: [PATCH] Win32 MSVC perlglob expansion in Encode
>> >
>> > Win32 needs to expand glob via perlglob. But this needs perl.exe, not
>> > miniperl.exe
>>
>> If, by perlglob, you mean the perlglob.exe built from win32/perlglob.c,
>> then your sentence seems to say the opposite of what I know to be the
> case.
>>
>> miniperl’s glob operator uses perlglob.  The Win32 Makefiles are
>> supposed to make sure that perlglob is in the path before running
>> miniperl.  Is that perhaps not the case?
>>
>> The full perl doesn’t use perlglob.  By forcing the use of perl.exe, you
>> are actually bypassing perlglob and using File::Glob, for the glob
> operator.

Yes. I mixed that up.
miniperl failed to call perlglob.
Using perl would need an already built File::Glob, but this is not the case

perlglob can be called from the shell ok.
So I guess miniperl restricted the path for some perlglob dll.
But I did not use filemon (strace for windows) yet, to check what
exactly failed.

>> By using FULLPERL in Encode’s Makefiles, I think (without testing it)
>> that you are breaking the build on Unix, where Encode (like other XS
>> extensions) is built before perl.  I don’t know what order the build
>> happens on Windows.

Right. Encode is before File::Glob

> The Windows build makes miniperl.exe first, then perlglob.exe, then
> pure-Perl modules, then perl.exe, then XS extensions.
>
> My (almost nightly) VC10 smoker builds everything fine and most
> definitely does not have perl.exe (or miniperl.exe or perlglob.exe) in
> its PATH to start with. I recently also ran one smoke each with VC6
> through VC9, and they all built fine as well.
>
> Can we see an example of the output from whatever build failure is being
> encountered?

I"m sorry, but I will not come to it for the next two weeks.
I'm getting married.
-- 
Reini Urban
http://cpanel.net/   http://www.perl-compiler.org/



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About