Revision: 6001 http://geany.svn.sourceforge.net/geany/?rev=6001&view=rev Author: colombanw Date: 2011-10-06 00:43:09 +0000 (Thu, 06 Oct 2011) Log Message: ----------- Move configure logic that checks for SVN revision to its own file
Modified Paths: -------------- trunk/ChangeLog trunk/autogen.sh trunk/configure.ac
Added Paths: ----------- trunk/m4/geany-revision.m4
Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2011-10-06 00:42:48 UTC (rev 6000) +++ trunk/ChangeLog 2011-10-06 00:43:09 UTC (rev 6001) @@ -2,6 +2,9 @@
* autogen.sh, configure.ac: Modernize configure.ac a bit. + * configure.ac, m4/geany-revision.m4: + Extract some configure logic to a separate file for better + readability.
2011-10-05 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
Modified: trunk/autogen.sh =================================================================== --- trunk/autogen.sh 2011-10-06 00:42:48 UTC (rev 6000) +++ trunk/autogen.sh 2011-10-06 00:43:09 UTC (rev 6001) @@ -87,7 +87,7 @@ echo "no" | glib-gettextize --force --copy intltoolize --copy --force --automake libtoolize --copy --force || glibtoolize --copy --force -aclocal +aclocal -I m4 autoheader automake --add-missing --copy --gnu autoconf
Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2011-10-06 00:42:48 UTC (rev 6000) +++ trunk/configure.ac 2011-10-06 00:43:09 UTC (rev 6001) @@ -50,44 +50,10 @@
# check for SVN revision -REVISION="r0" +GEANY_CHECK_REVISION([dnl force debug mode for a SVN working copy + CFLAGS="-g -DGEANY_DEBUG $CFLAGS"])
-AC_MSG_CHECKING([for SVN revision]) -# try Git first -GIT=`which git 2>/dev/null` -if test -d ".git" -a "x${GIT}" != "x" -a -x "${GIT}" -then - # check for git-svn repo first - find-rev (v1.5.4.1) doesn't always fail with git-only repo - git svn info &>/dev/null - if test "x$?" == "x0"; then - REVISION=r`git svn find-rev origin/trunk 2>/dev/null || - git svn find-rev trunk 2>/dev/null || - git svn find-rev HEAD 2>/dev/null || - git svn find-rev master 2>/dev/null || - echo 0` - fi -fi -# then check for SVN -if test "x${REVISION}" = "xr0" -then - SVN=`which svn 2>/dev/null` - if test -d ".svn" -a "x${SVN}" != "x" -a -x "${SVN}" - then - REVISION=r`$SVN info|grep 'Last Changed Rev'|cut -d' ' -f4` - fi -fi -if test "x${REVISION}" != "xr0" -then - # force debug mode for a SVN working copy - CFLAGS="-g -DGEANY_DEBUG $CFLAGS" - AC_MSG_RESULT([$REVISION]) -else - REVISION="-1" - AC_MSG_RESULT([none]) -fi -AC_DEFINE_UNQUOTED([REVISION], "$REVISION", [subversion revision number])
- # Check for binary relocation support # taken from Inkscape (Hongli Lai h.lai@chello.nl) AC_ARG_ENABLE([binreloc],
Added: trunk/m4/geany-revision.m4 =================================================================== --- trunk/m4/geany-revision.m4 (rev 0) +++ trunk/m4/geany-revision.m4 2011-10-06 00:43:09 UTC (rev 6001) @@ -0,0 +1,45 @@ +dnl GEANY_CHECK_REVISION([action-if-found], [action-if-not-found]) +dnl Check for the Git-SVN or SVN revision and set REVISION to +dnl "r<revnum>" or to "-1" if the revision can't be found +dnl Also AC_DEFINEs REVISION +AC_DEFUN([GEANY_CHECK_REVISION], +[ + REVISION="r0" + + AC_MSG_CHECKING([for SVN revision]) + # try Git first + GIT=`which git 2>/dev/null` + if test -d ".git" -a "x${GIT}" != "x" -a -x "${GIT}"; then + # check for git-svn repo first - find-rev (v1.5.4.1) doesn't always fail with git-only repo + git svn info &>/dev/null + if test "x$?" == "x0"; then + REVISION=r`git svn find-rev origin/trunk 2>/dev/null || + git svn find-rev trunk 2>/dev/null || + git svn find-rev HEAD 2>/dev/null || + git svn find-rev master 2>/dev/null || + echo 0` + fi + fi + # then check for SVN + if test "x${REVISION}" = "xr0"; then + SVN=`which svn 2>/dev/null` + if test -d ".svn" -a "x${SVN}" != "x" -a -x "${SVN}"; then + REVISION=r`$SVN info|grep 'Last Changed Rev'|cut -d' ' -f4` + fi + fi + + if test "x${REVISION}" != "xr0"; then + AC_MSG_RESULT([$REVISION]) + + # call action-if-found + $1 + else + REVISION="-1" + AC_MSG_RESULT([none]) + + # call action-if-not-found + $2 + fi + + AC_DEFINE_UNQUOTED([REVISION], "$REVISION", [subversion revision number]) +])
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.