# New Ticket Created by  Ron Blaschke 
# Please include the string:  [perl #39846]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=39846 >


Problem
    dynpmc.pl uses interpolated quotes to set up compiler and linker
flags, which may cause problems on Win32.  For example, instead of "-I
C:\usr\local\icu\include" I have "-I C:Srocalicuinclude" during
compilation.  Things currently compile fine, but this interpolation
might cause problems in the future.

Possible Solution
    Attached patch changes all quotes to non-interpolated, which is
hopefully the right thing to do (?)

Changed Files
    config/gen/makefiles/dynpmc_pl.in
Index: config/gen/makefiles/dynpmc_pl.in
===================================================================
--- config/gen/makefiles/dynpmc_pl.in   (revision 13314)
+++ config/gen/makefiles/dynpmc_pl.in   (working copy)
@@ -17,20 +17,20 @@
 
 use File::Copy qw(copy);
 
-# qq[] isn't guaranteed to work, but it's safer than "" as some platforms
-# (eg FreeBSD) have ""s embedded in their substution values. q[] is used in
-# some places as Win32 paths have \'s in, which qq[] treats as escape 
sequences.
+# q[] isn't guaranteed to work, but it's safer than "" as some platforms
+# (eg FreeBSD) have ""s embedded in their substution values. q[] is used
+# as Win32 paths have \'s in, which qq treats as escape sequences.
 # Config stuff
-our $CC = [EMAIL PROTECTED]@ -c];
-our $LD = [EMAIL PROTECTED]@];
-our $LDFLAGS = [EMAIL PROTECTED]@ @[EMAIL PROTECTED];
-our $LD_LOAD_FLAGS = [EMAIL PROTECTED]@];
+our $CC = [EMAIL PROTECTED]@ -c];
+our $LD = [EMAIL PROTECTED]@];
+our $LDFLAGS = [EMAIL PROTECTED]@ @[EMAIL PROTECTED];
+our $LD_LOAD_FLAGS = [EMAIL PROTECTED]@];
 our $PERL = [EMAIL PROTECTED]@];
-our $LOAD_EXT = [EMAIL PROTECTED]@];
-our $O = [EMAIL PROTECTED]@];
-our $CFLAGS = [EMAIL PROTECTED]@ @cc_shared@ @cc_debug@ @ccwarn@ @cc_hasjit@ 
@cg_flag@ @[EMAIL PROTECTED];
+our $LOAD_EXT = [EMAIL PROTECTED]@];
+our $O = [EMAIL PROTECTED]@];
+our $CFLAGS = [EMAIL PROTECTED]@ @cc_shared@ @cc_debug@ @ccwarn@ @cc_hasjit@ 
@cg_flag@ @[EMAIL PROTECTED];
 
-our $LIBPARROT = qq[];
+our $LIBPARROT = q[];
 #CONDITIONED_LINE(parrot_is_shared):$LIBPARROT = [EMAIL PROTECTED]@];
 
 # Here comes some stuff for Win32.
@@ -53,7 +53,7 @@
 
     return
         "$CC $CFLAGS " .
-        "@cc_o_out@" . $target . " " .
+        '@cc_o_out@' . $target . " " .
         "-I" . $PATHQUOTE . '@build_dir@@[EMAIL PROTECTED]' . $PATHQUOTE . " " 
.
         "-I" . $PATHQUOTE . '@build_dir@@[EMAIL PROTECTED]@[EMAIL PROTECTED]' 
. $PATHQUOTE . " " .
         $source;
@@ -79,7 +79,7 @@
 
     return
         "$LD $LDFLAGS $LD_LOAD_FLAGS ".
-        "@ld_out@" . $target . " " .
+        '@ld_out@' . $target . " " .
         join(" ", map {"$PATHQUOTE$_$PATHQUOTE"} @$sources) .
         " $liblist $PATHQUOTE$LIBPARROT$PATHQUOTE";
 }

Reply via email to