autoconf: Scrape the version from configs/default
authorDan Nicholson <dbn.lists@gmail.com>
Wed, 30 Apr 2008 22:06:00 +0000 (15:06 -0700)
committerDan Nicholson <dbn.lists@gmail.com>
Mon, 5 May 2008 21:21:28 +0000 (14:21 -0700)
Added the make script version.mk to print the various version numbers
from configs/default. This is used to substitute the version in autoconf
rather than duplicating it in both places.

bin/version.mk [new file with mode: 0755]
configs/default
configure.ac
docs/devinfo.html

diff --git a/bin/version.mk b/bin/version.mk
new file mode 100755 (executable)
index 0000000..ab20d79
--- /dev/null
@@ -0,0 +1,17 @@
+#!/usr/bin/make -sf
+# Print the various Mesa version fields. This is mostly used to add the
+# version to configure.
+
+# This reflects that this script is usually called from the toplevel
+TOP = .
+
+include $(TOP)/configs/default
+
+version:
+       @echo $(MESA_VERSION)
+major:
+       @echo $(MESA_MAJOR)
+minor:
+       @echo $(MESA_MINOR)
+tiny:
+       @echo $(MESA_TINY)
index cbdb3b2..d658478 100644 (file)
@@ -11,6 +11,7 @@ CONFIG_NAME = default
 MESA_MAJOR=7
 MESA_MINOR=1
 MESA_TINY=0
+MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
 
 # external projects.  This should be useless now that we use libdrm.
 DRM_SOURCE_PATH=$(TOP)/../drm
index 1e9a798..fc8c346 100644 (file)
@@ -2,11 +2,17 @@ dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.59)
 
-dnl Versioning
-dnl Make version number available to autoconf and configure
-m4_define([mesa_version],[7.1.0])
+dnl Versioning - scrape the version from configs/default
+m4_define([mesa_version],
+    [m4_esyscmd([${MAKE-make} -s -f bin/version.mk version | tr -d '\n'])])
+m4_ifval(mesa_version,[],[
+    m4_errprint([Error: Failed to get the Mesa version from the output of
+       running `make -f bin/version.mk version'
+])
+    m4_exit([1])
+])
 
-AC_INIT([Mesa],[mesa_version()],
+AC_INIT([Mesa],[mesa_version],
     [https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa])
 AC_CONFIG_AUX_DIR(bin)
 AC_CANONICAL_HOST
index 1f54a92..3cebf5f 100644 (file)
@@ -136,11 +136,11 @@ Update the docs/VERSIONS file too.
 
 <p>
 Edit the MESA_MAJOR, MESA_MINOR and MESA_TINY version numbers in
-configs/default and configure.ac.
+configs/default.
 </p>
 
 <p>
-Make sure the values in src/mesa/main/version.h is correct.
+Make sure the values in src/mesa/main/version.h are correct.
 </p>
 
 <p>