autoconf: Automatically derive version number from latest git tag

This commit is contained in:
Nikias Bassen
2023-04-30 16:59:56 +02:00
parent 462e238de4
commit 1d20bed9ab
3 changed files with 26 additions and 2 deletions
+5 -1
View File
@@ -3,7 +3,11 @@ ACLOCAL_AMFLAGS = -I m4
SUBDIRS = src include tools udev
EXTRA_DIST = \
README.md
README.md \
git-version-gen
dist-hook:
echo $(VERSION) > $(distdir)/.tarball-version
DISTCHECK_CONFIGURE_FLAGS = \
--with-udevrulesdir=$$dc_install_base/$(udevrulesdir)
+1 -1
View File
@@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.68)
AC_INIT([libirecovery], [1.0.1], [https://github.com/libimobiledevice/libirecovery/issues],, [https://libimobiledevice.org])
AC_INIT([libirecovery], [m4_esyscmd(./git-version-gen $RELEASE_VERSION)], [https://github.com/libimobiledevice/libirecovery/issues], [], [https://libimobiledevice.org])
AM_INIT_AUTOMAKE([dist-bzip2 no-dist-gzip check-news])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
AC_CONFIG_SRCDIR([src/])
+20
View File
@@ -0,0 +1,20 @@
#!/bin/sh
SRCDIR=`dirname $0`
if test -n "$1"; then
VER=$1
else
if test -r "${SRCDIR}/.git" && test -x "`which git`" ; then
git update-index -q --refresh
if ! VER=`git describe --tags --dirty 2>/dev/null`; then
COMMIT=`git rev-parse --short HEAD`
DIRTY=`git diff --quiet HEAD || echo "-dirty"`
VER=`sed -n '1,/RE/s/Version \(.*\)/\1/p' ${SRCDIR}/NEWS`-git-${COMMIT}${DIRTY}
fi
else
if test -f "${SRCDIR}/.tarball-version"; then
VER=`cat "${SRCDIR}/.tarball-version"`
fi
fi
fi
VER=`printf %s "$VER" | head -n1`
printf %s "$VER"