# HG changeset patch # User Peter Rosin # Date 1356738307 -3600 # Node ID 179b150e52569031b4154c2ef10fce1ed7bc6da0 # Parent 3b0b0f3b01a6c4dc9519b811e612d1b78fb1a0b4 git-version-gen: add --fallback option to use if git is not present When building in a git checkout, but from a system lacking git, it is useful to fall back to the version determined when the git checkout was last used from a system sporting git. * build-aux/git-version-gen: Add support for the new option --fallback, which comes into play when there is no $tarball_version_file and git is not working. (scriptversion): Update. Copyright-paperwork-exempt: yes Signed-off-by: Peter Rosin diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2012-12-31 Peter Rosin (tiny change) + git-version-gen: add --fallback option to use if git is not present + * build-aux/git-version-gen: Add support for the new option --fallback, + which comes into play when there is no $tarball_version_file and + git is not working. + (scriptversion): Update. + maint.mk: handle missing git with more grace * top/maint.mk (no-submodule-changes, public-submodule-commit): Quietly proceed if git is not present. diff --git a/build-aux/git-version-gen b/build-aux/git-version-gen --- a/build-aux/git-version-gen +++ b/build-aux/git-version-gen @@ -1,6 +1,6 @@ #!/bin/sh # Print a version string. -scriptversion=2012-03-18.17; # UTC +scriptversion=2012-12-31.22; # UTC # Copyright (C) 2007-2012 Free Software Foundation, Inc. # @@ -86,6 +86,7 @@ Options: --prefix prefix of git tags (default 'v') + --fallback fallback version to use if \"git --version\" fails --help display this help and exit --version output version information and exit @@ -93,12 +94,14 @@ Running without arguments will suffice in most cases." prefix=v +fallback= while test $# -gt 0; do case $1 in --help) echo "$usage"; exit 0;; --version) echo "$version"; exit 0;; --prefix) shift; prefix="$1";; + --fallback) shift; fallback="$1";; -*) echo "$0: Unknown option '$1'." >&2 echo "$0: Try '--help' for more information." >&2 @@ -184,8 +187,10 @@ # Remove the "g" in git describe's output string, to save a byte. v=`echo "$v" | sed 's/-/./;s/\(.*\)-g/\1-/'`; v_from_git=1 +elif test -z "$fallback" || git --version >/dev/null 2>&1; then + v=UNKNOWN else - v=UNKNOWN + v=$fallback fi v=`echo "$v" |sed "s/^$prefix//"`