perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stas Bekman <s...@stason.org>
Subject Re: Fix warning and mod_perl.so build on Win32 and MP_STATIC_EXTS=1
Date Sat, 30 Apr 2005 07:06:27 GMT
Nick *** wrote:
>  >-------- Оригинално писмо --------
>  >От:  Stas Bekman <stas@stason.org>
>  >Относно: Re: Fix warning and mod_perl.so build on Win32 and MP_STATIC_EXTS=1
>  >До: Nick *** <doink123@abv.bg>
>  >Изпратено на: Петък, 2005, Април 29 16:21:03 EEST
>  >----------------------------------
>  >
>  >Nick *** wrote:
>  >> Index: lib/Apache2/Build.pm
>  >> ===================================================================
>  >> --- lib/Apache2/Build.pm	(revision 165278)
>  >> +++ lib/Apache2/Build.pm	(working copy)
>  >> @@ -785,7 +785,7 @@
>  >>  
>  >>      $bpm_mtime = (stat $INC{$bpm})[9] if $INC{$bpm};
>  >>  
>  >> -    if (-e "lib/$bpm" and (stat _)[9] > $bpm_mtime) {
>  >> +    if (-e "lib/$bpm" and $bpm_mtime and (stat _)[9] > $bpm_mtime) {
>  >>          #reload if Makefile.PL has regenerated
>  >>          unshift @INC, 'lib';
>  >>          delete $INC{$bpm};
>  >
>  >> Please take a look at the "warning fix".
>  >> I'm not sure whether it's right, because $INC{$bpm} is set, but the value points
to a wrong file path.
>  >> That's why $bpm_mtime's value becomes undefined and we get a warning. Maybe
we should reload $bpm at this moment?
>  >
>  >Never saw a warning for this case.
> run perl Makefile.PL MP_STATIC_EXTS=1
> when makefile says it's going to create mod_perl.so there is a warning for: undefined
value used in numeric gt
> 
>  >What do you mean a wrong path? You mean 
>  >$INC{$bpm} contains a non-existing path? In which case it probably should 
>  >be coded as:
>  >
>  >   $bpm_mtime = (stat _)[9] if $INC{$bpm} && -e $INC{$bpm};
>  
> Yes. But is it the right solution? I mean it's strange that $INC{$bpm} exists, but the
path is wrong (or the file is missing). 

It is. I've added a warning printing $INC{$bpm}, so at some point it 
gives: ../lib/Apache2/BuildConfig.pm, which it can't find, since chdir's 
to the base dir. So the above patch deals with that.

>  >And the following part of the patch, what is it supposed to fix?
>  >
>  > > @@ -1505,7 +1505,7 @@
>  > >      return $self->dynamic_link_header_default .
>  > >          "\t$defs" .
>  > >          ($symbols ? ' \\' . "\n\t-pdb:$symbols" : '') .
>  > > -        ' -out:$@';
>  > > +        ' -out:$@' . " \n\n";
>  > >  }
>  >
> When you run perl Makefile.PL MP_STATIC_EXTS=1 on win32 the command
> that should create mod_perl.so currently looks like
> [...]-out:mod_perl.soApache_Util_Util[...] The process exist with
> error. The new lines fix that.

Cool, but why do you need a leading space? won't "\n\n" do?

-- 
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Mime
View raw message