1dnl GEANY_CHECK_REVISION([action-if-found], [action-if-not-found])
2dnl Check for the Git revision and set REVISION to "<revid>"
3dnl or to "-1" if the revision can't be found
4dnl Also AC_DEFINEs REVISION
5AC_DEFUN([GEANY_CHECK_REVISION],
6[
7	REVISION="0"
8
9	AC_MSG_CHECKING([for Git revision])
10	# try Git first
11	GIT=`which git 2>/dev/null`
12	if test -d "$srcdir/.git" -a "x${GIT}" != "x" -a -x "${GIT}"; then
13		REVISION=`cd "$srcdir"; "${GIT}" rev-parse --short --revs-only HEAD 2>/dev/null || echo 0`
14	fi
15
16	if test "x${REVISION}" != "x0"; then
17		AC_MSG_RESULT([$REVISION])
18		GEANY_STATUS_ADD([Compiling Git revision], [$REVISION])
19
20		# call action-if-found
21		$1
22	else
23		REVISION="-1"
24		AC_MSG_RESULT([none])
25
26		# call action-if-not-found
27		$2
28	fi
29
30	AC_DEFINE_UNQUOTED([REVISION], "$REVISION", [git revision hash])
31])
32