You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by go...@apache.org on 2006/10/13 00:58:32 UTC

svn commit: r463493 - in /perl/modperl/trunk: ./ lib/ModPerl/Code.pm

Author: gozer
Date: Thu Oct 12 15:58:31 2006
New Revision: 463493

URL: http://svn.apache.org/viewvc?view=rev&rev=463493
Log:
Fix a bug in ExtUtils::Embed on Cygwin that would generate bogus
entries in modperl_xsinit.c

Submitted-By: Nikolay Ananiev <an...@thegdb.com>


Modified:
    perl/modperl/trunk/   (props changed)
    perl/modperl/trunk/lib/ModPerl/Code.pm

Propchange: perl/modperl/trunk/
------------------------------------------------------------------------------
--- svk:merge (added)
+++ svk:merge Thu Oct 12 15:58:31 2006
@@ -0,0 +1 @@
+a16f8089-5099-4815-b47b-4cc11b3a0a27:/local/apache.org/modperl/2.x:9396

Modified: perl/modperl/trunk/lib/ModPerl/Code.pm
URL: http://svn.apache.org/viewvc/perl/modperl/trunk/lib/ModPerl/Code.pm?view=diff&rev=463493&r1=463492&r2=463493
==============================================================================
--- perl/modperl/trunk/lib/ModPerl/Code.pm (original)
+++ perl/modperl/trunk/lib/ModPerl/Code.pm Thu Oct 12 15:58:31 2006
@@ -778,6 +778,16 @@
     my $xsinit = "$self->{path}/modperl_xsinit.c";
     debug "generating...$xsinit";
 
+    # There's a possibility that $Config{static_ext} may contain spaces
+    # and ExtUtils::Embed::xsinit won't handle the situation right. In
+    # this case we'll get buggy "boot_" statements in modperl_xsinit.c.
+    # Fix this by cleaning the @Extensions array.
+
+    # Loads @Extensions if not loaded
+    ExtUtils::Embed::static_ext(); 
+
+    @ExtUtils::Embed::Extensions = grep{$_} @ExtUtils::Embed::Extensions;
+
     #create bootstrap method for static xs modules
     my $static_xs = [keys %{ $build->{XS} }];
     ExtUtils::Embed::xsinit($xsinit, 1, $static_xs);