Backported automatic svn revision handling from 3.0
authorSakari Bergen <sakari.bergen@beatwaves.net>
Tue, 21 Oct 2008 17:19:03 +0000 (17:19 +0000)
committerSakari Bergen <sakari.bergen@beatwaves.net>
Tue, 21 Oct 2008 17:19:03 +0000 (17:19 +0000)
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3991 d708f5d6-7413-0410-9779-e7cbd77b26cf

SConstruct
gtk2_ardour/about.cc
gtk2_ardour/main.cc
libs/ardour/SConscript
libs/ardour/ardour/svn_revision.h [new file with mode: 0644]
svn_revision.h [deleted file]

index 7bf8d61affd7852690fa4b458f59179f22822a07..6e8b16e41e9237b9c8ffbbedea56bb62a0d53094 100644 (file)
@@ -262,16 +262,16 @@ def create_stored_revision (target = None, source = None, env = None):
     if os.path.exists('.svn'):    
         rev = fetch_svn_revision ('.');
         try:
-            text  = "#ifndef __ardour_svn_revision_h__\n"
-            text += "#define __ardour_svn_revision_h__\n"
-            text += "static const char* ardour_svn_revision = \"" + rev + "\";\n";
-            text += "#endif\n"
-            print '============> writing svn revision info to svn_revision.h\n'
-            o = file ('svn_revision.h', 'w')
+            text  = "#include <ardour/svn_revision.h>\n"
+            text += "namespace ARDOUR {\n";
+            text += "extern const char* svn_revision = \"" + rev + "\";\n";
+            text += "}\n";
+            print '============> writing svn revision info to libs/ardour/svn_revision.cc\n'
+            o = file ('libs/ardour/svn_revision.cc', 'w')
             o.write (text)
             o.close ()
         except IOError:
-            print "Could not open svn_revision.h for writing\n"
+            print "Could not open libs/ardour/svn_revision.cc for writing\n"
             sys.exit (-1)
     else:
         print "You cannot use \"scons revision\" on without using a checked out"
@@ -1372,6 +1372,12 @@ env.Alias ('srctar', srcdist)
 env.AddPreAction (env['DISTTREE'], Action ('rm -rf ' + str (File (env['DISTTREE']))))
 env.AddPostAction (srcdist, Action ('rm -rf ' + str (File (env['DISTTREE']))))
 
+#
+# Update revision info before going into subdirs
+#
+
+create_stored_revision()
+
 #
 # the subdirs
 #
index 44b82882ddf58ed48d339ff6b82dfe35cdbf7df5..a2005e0063673a019ca5c49af7530fb9c70f3fea 100644 (file)
 #include <ctime>
 #include <cstdlib>
 
+#include <ardour/svn_revision.h>
 #include <ardour/ardour.h>
 #include <ardour/version.h>
 
 #include "utils.h"
 #include "version.h"
 
-#include "svn_revision.h"
 #include "about.h"
 #include "rgb_macros.h"
 //#include "ardour_ui.h"
@@ -207,7 +207,7 @@ About::About ()
        set_website_label (_("visit http://www.ardour.org/"));
        set_version ((string_compose(_("%1\n(built from revision %2)"),
                                     VERSIONSTRING, 
-                                    ardour_svn_revision)));
+                                    svn_revision)));
        
 
 #ifdef WITH_PAYMENT_OPTIONS
index c4b9b9a8976fa0e15103ee8545e28c126bf5aa4a..468ad21bd03f872085e39d17bda6e5207e404fbf 100644 (file)
@@ -31,6 +31,7 @@
 
 #include <jack/jack.h>
 
+#include <ardour/svn_revision.h>
 #include <ardour/version.h>
 #include <ardour/ardour.h>
 #include <ardour/audioengine.h>
@@ -39,7 +40,6 @@
 #include <gtkmm2ext/popup.h>
 #include <gtkmm2ext/utils.h>
 
-#include "svn_revision.h"
 #include "version.h"
 #include "ardour_ui.h"
 #include "opts.h"
@@ -292,7 +292,7 @@ int main (int argc, char* argv[])
        cout << _("Ardour/GTK ") 
             << VERSIONSTRING
             << _("\n   (built using ")
-            << ardour_svn_revision
+            << svn_revision
 #ifdef __GNUC__
             << _(" and GCC version ") << __VERSION__ 
 #endif
index 261ed4c69752cd102364c520ba30ccf8e6c33a1a..16101303273c243e4f04da5b5534bf71c0ab9255 100644 (file)
@@ -99,6 +99,7 @@ sndfilesource.cc
 sndfileimportable.cc
 source.cc
 source_factory.cc
+svn_revision.cc
 tempo.cc
 track.cc
 transient_detector.cc
diff --git a/libs/ardour/ardour/svn_revision.h b/libs/ardour/ardour/svn_revision.h
new file mode 100644 (file)
index 0000000..6c11d55
--- /dev/null
@@ -0,0 +1,8 @@
+#ifndef __ardour_svn_revision_h__
+#define __ardour_svn_revision_h__
+
+namespace ARDOUR {
+       extern const char* svn_revision;
+}
+
+#endif
diff --git a/svn_revision.h b/svn_revision.h
deleted file mode 100644 (file)
index 67781c0..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-#ifndef __ardour_svn_revision_h__
-#define __ardour_svn_revision_h__
-static const char* ardour_svn_revision = "3980";
-#endif