[glibmm] Made gmmproc work on Windows



commit 5834a1cafbeaee34d806f7d1c218e97c71542840
Author: Armin Burgmeier <armin arbur net>
Date:   Sun May 31 21:54:28 2009 +0200

    Made gmmproc work on Windows
    
    	* tools/pm/Output.pm: Made gmmproc work on Windows, so that it is
    	possible to build glibmm and friends directly from git.
---
 ChangeLog          |    5 +++++
 tools/pm/Output.pm |   11 ++++++++---
 2 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 6f61e2c..039655d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-05-31  Armin Burgmeier  <armin openismus com>
+
+	* tools/pm/Output.pm: Made gmmproc work on Windows, so that it is
+	possible to build glibmm and friends directly from git.
+
 2009-05-26  José Alburquerque  <jaalburqu svn gnome org>
 
 	* glib/src/spawn.ccg:
diff --git a/tools/pm/Output.pm b/tools/pm/Output.pm
index 7d23130..e1c811a 100644
--- a/tools/pm/Output.pm
+++ b/tools/pm/Output.pm
@@ -30,7 +30,7 @@ sub new
   $$self{out} = [];
 
   $$self{source} = "";
-  $$self{tmpdir} = "/tmp";
+  $$self{tmpdir} = File::Spec->tmpdir();
   $$self{destdir} = "";
   $$self{objDefsParser} = undef; # It will be set in set_defsparser()
 
@@ -668,7 +668,7 @@ sub make_g2_from_g1($)
   my ($self) = @_;
 
   # Execute m4 to get *.g2 file:
-  system("$$self{m4path} $$self{m4args} '$$self{tmpdir}/gtkmmproc_$$.g1' > '$$self{tmpdir}/gtkmmproc_$$.g2'");
+  system("$$self{m4path} $$self{m4args} \"$$self{tmpdir}/gtkmmproc_$$.g1\" > \"$$self{tmpdir}/gtkmmproc_$$.g2\"");
   return ($? >> 8);
 }
 
@@ -715,7 +715,12 @@ sub write_sections_to_files()
   foreach($fname_h, $fname_ph, $fname_cc)
   {
     # overwrite the source file only if it has actually changed
-    system("cmp -s '$_.tmp' '$_' || cp '$_.tmp' '$_' ; rm -f '$_.tmp'");
+
+    # Win32 does fail at this, so we do the two steps separately:
+    #system("cmp -s '$_.tmp' '$_' || cp '$_.tmp' '$_'" ; rm -f '$_.tmp');
+
+    system("cmp -s '$_.tmp' '$_' || cp '$_.tmp' '$_'");
+    system("rm -f '$_.tmp'");
   }
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]