Author: kwilliams
Date: Wed Apr 16 20:52:27 2008
New Revision: 11098

Modified:
   ExtUtils-CBuilder/trunk/lib/ExtUtils/CBuilder/Platform/Windows.pm

Log:
A different solution for cmd-line thingy?

Modified: ExtUtils-CBuilder/trunk/lib/ExtUtils/CBuilder/Platform/Windows.pm
==============================================================================
--- ExtUtils-CBuilder/trunk/lib/ExtUtils/CBuilder/Platform/Windows.pm   
(original)
+++ ExtUtils-CBuilder/trunk/lib/ExtUtils/CBuilder/Platform/Windows.pm   Wed Apr 
16 20:52:27 2008
@@ -43,6 +43,16 @@
   return ($_);
 }
 
+sub do_system {
+  # See above
+  my $self = shift;
+  my $cmd = join(" ",
+                grep length,
+                map {$a=$_;$a=~s/\t/ /g;$a=~s/^\s+|\s+$//;$a}
+                grep defined, @_);
+  return $self->SUPER::do_system($cmd);
+}
+
 sub arg_defines {
   my ($self, %args) = @_;
   s/"/\\"/g foreach values %args;
@@ -523,17 +533,16 @@
   # split off any -arguments included in cc
   my @cc = split / (?=-)/, $spec{cc};
 
-  return [join(" ",
-       grep {length} map {$a=$_;$a=~s/\t/ /g;$a=~s/^\s*//;$a=~s/\s*$//;$a} 
grep {defined} (
-       @cc, '-c'               ,
-       @{$spec{includes}}      ,
-       @{$spec{cflags}}        ,
-       @{$spec{optimize}}      ,
-       @{$spec{defines}}       ,
-       @{$spec{perlinc}}       ,
-       '-o', $spec{output}     ,
-       $spec{source}           ,
-               ))];
+  return [ grep {defined && length} (
+    @cc, '-c'               ,
+    @{$spec{includes}}      ,
+    @{$spec{cflags}}        ,
+    @{$spec{optimize}}      ,
+    @{$spec{defines}}       ,
+    @{$spec{perlinc}}       ,
+    '-o', $spec{output}     ,
+    $spec{source}           ,
+  ) ];
 }
 
 sub format_linker_cmd {
@@ -610,7 +619,7 @@
     $spec{map_file} ? ('-Map', $spec{map_file}) : ''
   ) ];
   
-  return map {[join(" ",@$_)]} @cmds;
+  return @cmds;
 }
 
 sub write_linker_script {

Reply via email to