diff options
Diffstat (limited to 'build/get-version.sh')
-rwxr-xr-x | build/get-version.sh | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/build/get-version.sh b/build/get-version.sh index f85b29798..c29bceb01 100755 --- a/build/get-version.sh +++ b/build/get-version.sh @@ -2,31 +2,36 @@ # # extract version numbers from a header file # -# USAGE: get-version.sh CMD VERSION_HEADER +# USAGE: get-version.sh CMD VERSION_HEADER PREFIX # where CMD is one of: all, major, libtool +# where PREFIX is the prefix to {MAJOR|MINOR|PATCH}_VERSION defines # # get-version.sh all returns a dotted version number # get-version.sh major returns just the major version number # get-version.sh libtool returns a version "libtool -version-info" format # -if test $# != 2; then - echo "USAGE: $0 CMD INCLUDEDIR" +if test $# != 3; then + echo "USAGE: $0 CMD INCLUDEDIR PREFIX" echo " where CMD is one of: all, major" exit 1 fi -major="`sed -n '/#define.*APR_MAJOR_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p' $2`" -minor="`sed -n '/#define.*APR_MINOR_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p' $2`" -patch="`sed -n '/#define.*APR_PATCH_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p' $2`" +major_sed="/#define.*$3_MAJOR_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p" +minor_sed="/#define.*$3_MINOR_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p" +patch_sed="/#define.*$3_PATCH_VERSION/s/^.*\([0-9][0-9]*\).*$/\1/p" +major="`sed -n $major_sed $2`" +minor="`sed -n $minor_sed $2`" +patch="`sed -n $patch_sed $2`" if test "$1" = "all"; then echo ${major}.${minor}.${patch} elif test "$1" = "major"; then echo ${major} elif test "$1" = "libtool"; then + # Yes, ${minor}:${patch}:${minor} is correct due to libtool idiocy. echo ${minor}:${patch}:${minor} else - echo "ERROR: unknown version CMD" + echo "ERROR: unknown version CMD ($1)" exit 1 fi |