changeset 873:a331ce9bc749

fix unnecessary revisions.h regeneration and mars.c recompilation
author elrood
date Mon, 05 Jan 2009 21:11:47 +0100
parents aa953cc960b6
children 2ddee23bd70e
files revisions.pl.in
diffstat 1 files changed, 10 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/revisions.pl.in	Sun Jan 04 15:49:28 2009 +0100
+++ b/revisions.pl.in	Mon Jan 05 21:11:47 2009 +0100
@@ -6,7 +6,6 @@
 use Time::localtime;
 
 my $llvm_src = `perl @LLVM_CONFIG@ --src-root`;
-#my $llvm_src = "k:/sources/llvm";
 
 my $llvm_rev = `svnversion $llvm_src`;
 
@@ -21,9 +20,7 @@
 
 my $ldc_rev = `hg -R@PROJECT_SOURCE_DIR@ tip --template {rev}`;
 
-open my $revh, ">", "revisions.h" or die "cannot create revisions.h";
-
-print $revh qq!#ifndef LDC_VERSIONS_H
+my $out = qq!#ifndef LDC_VERSIONS_H
 #define LDC_VERSIONS_H
 
 $llvm_rev
@@ -31,4 +28,12 @@
 
 #endif // LDC_VERSIONS_H\n!;
 
-close $revh;
+my $revh;
+my $old = "";
+open $revh, "revisions.h" and $old = join "", <$revh>;
+
+if ($old ne $out) {
+	open $revh, ">revisions.h" or die "cannot create revisions.h: $!";
+	print $revh $out;
+	close $revh;
+}