Mike Gerwitz

Activist for User Freedom

aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Gerwitz <gerwitzm@lovullo.com>2016-11-17 23:54:50 -0500
committerMike Gerwitz <gerwitzm@lovullo.com>2016-11-17 23:54:50 -0500
commit4c9539a1e0d1b02c837aeeeab228f30e10725e52 (patch)
treecdf6f433a367b1007e710acf6d42e7e3d9a5d3db
parent7508ac0063581d50a32c431abf6c96127a29f66d (diff)
parent63701e453ec03084da0a82e3b0e23bbcbce086fa (diff)
downloadtame-4c9539a1e0d1b02c837aeeeab228f30e10725e52.tar.gz
tame-4c9539a1e0d1b02c837aeeeab228f30e10725e52.tar.bz2
tame-4c9539a1e0d1b02c837aeeeab228f30e10725e52.zip
Version string generation
-rw-r--r--configure.ac6
-rwxr-xr-xtools/vergen44
2 files changed, 49 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index 9dac7e5..c5138bb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -16,7 +16,11 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
##
-AC_INIT([tame], [1.0.0], [dev@lovullo.com])
+# version string is dynamically generated
+m4_define([ver], m4_esyscmd(tools/vergen))
+m4_if(ver, [], [m4_exit(1)])
+
+AC_INIT([tame], [ver], [dev@lovullo.com])
AC_CONFIG_AUX_DIR([tools])
AM_INIT_AUTOMAKE([foreign])
diff --git a/tools/vergen b/tools/vergen
new file mode 100755
index 0000000..440649b
--- /dev/null
+++ b/tools/vergen
@@ -0,0 +1,44 @@
+#!/bin/sh
+# Generates version string
+#
+# Copyright (C) 2012, 2013, 2014 Free Software Foundation, Inc.
+#
+# This file is part of GNU ease.js.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+# This script has been modified slightly by LoVullo Associates to support
+# TAME's versioning scheme (`v'-prefixed).
+##
+
+# for distributions
+if [ -s version ]; then
+ cat version
+ exit
+fi
+
+git rev-parse --show-toplevel >/dev/null 2>&1 || {
+ echo 'fatal: git repository is not available'
+}
+
+version=$(
+ git describe --match='v[0-9]\.*' --abbrev=7 HEAD 2>/dev/null \
+ | sed 's/^v//'
+)
+
+git update-index -q --refresh
+test -z "$( git diff-index --name-only HEAD)" || version="$version-dirty"
+
+echo -n "$version"
+