]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Provide/embed RADIUSD_VERSION_RELEASE
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 29 Sep 2017 11:13:56 +0000 (19:13 +0800)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 29 Sep 2017 11:14:33 +0000 (19:14 +0800)
configure
configure.ac
redhat/freeradius.spec
src/include/autoconf.h.in
src/include/version.h

index fdf6d2d144b44b53041e6b1eadd7e9a0eab24675..88d114d6feb5381be2737f95aeb880c0a0b3018b 100755 (executable)
--- a/configure
+++ b/configure
@@ -2496,13 +2496,21 @@ ac_config_headers="$ac_config_headers src/include/autoconf.h"
 
 
 
-RADIUSD_MAJOR_VERSION=`cat VERSION | cut -f1 -d.`
-RADIUSD_MINOR_VERSION=`cat VERSION | cut -f2 -d.`
-RADIUSD_INCRM_VERSION=`cat VERSION | cut -f3 -d. | sed 's/[\.-].*$//'`
-
-RADIUSD_VERSION=`printf "%02i%02i%02i" $RADIUSD_MAJOR_VERSION $RADIUSD_MINOR_VERSION $RADIUSD_INCRM_VERSION`
-
+RADIUSD_VERSION_MAJOR=`cat VERSION | cut -f1 -d.`
+RADIUSD_VERSION_MINOR=`cat VERSION | cut -f2 -d.`
+RADIUSD_VERSION_INCRM=`cat VERSION | cut -f3 -d. | sed 's/[\.-].*$//'`
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build version" >&5
+$as_echo_n "checking build version... " >&6; }
+RADIUSD_VERSION=`printf "%02i%02i%02i" $RADIUSD_VERSION_MAJOR $RADIUSD_VERSION_MINOR $RADIUSD_VERSION_INCRM`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $RADIUSD_VERSION" >&5
+$as_echo "$RADIUSD_VERSION" >&6; }
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build version string" >&5
+$as_echo_n "checking build version string... " >&6; }
 RADIUSD_VERSION_STRING=`cat VERSION`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $RADIUSD_VERSION_STRING" >&5
+$as_echo "$RADIUSD_VERSION_STRING" >&6; }
 
 
 
@@ -2571,11 +2579,44 @@ fi
 
 
 if test "x$GIT" = "xyes" && git status 2>&1 > /dev/null; then
+  if test "x$RADIUSD_VERSION_RELEASE" = "x"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking build release" >&5
+$as_echo_n "checking build release... " >&6; }
+    RADIUSD_VERSION_RELEASE=`git describe | sed -e 's/^.*-\([0-9]*\)-g[0-9a-f]*/\1/'`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RADIUSD_VERSION_RELEASE" >&5
+$as_echo "$RADIUSD_VERSION_RELEASE" >&6; }
+  fi
+
+  if test "x$RADIUSD_VERSION_COMMIT" = "x"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking build commit" >&5
+$as_echo_n "checking build commit... " >&6; }
+    RADIUSD_VERSION_COMMIT=`git log --pretty=format:'%h' -n 1`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RADIUSD_VERSION_COMMIT" >&5
+$as_echo "$RADIUSD_VERSION_COMMIT" >&6; }
+  fi
+
   if test "x$developer" != "xno"; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: in git repository, enabling developer build implicitly, disable with --disable-developer" >&5
 $as_echo "$as_me: in git repository, enabling developer build implicitly, disable with --disable-developer" >&6;}
     developer="yes"
   fi
+
+fi
+
+if test "x$RADIUSD_VERSION_RELEASE" != "x"; then
+
+cat >>confdefs.h <<_ACEOF
+#define RADIUSD_VERSION_RELEASE ${RADIUSD_VERSION_RELEASE}
+_ACEOF
+
+fi
+
+if test "x$RADIUSD_VERSION_COMMIT" != "x"; then
+
+cat >>confdefs.h <<_ACEOF
+#define RADIUSD_VERSION_COMMIT ${RADIUSD_VERSION_COMMIT}
+_ACEOF
+
 fi
 
 if test "x$developer" = "xyes"; then
 
 export EXPERIMENTAL
 
-if test "x$GIT" = "xyes" && git status 2>&1 > /dev/null; then
-  RADIUSD_VERSION_COMMIT=`git log --pretty=format:'%h' -n 1`
-
-cat >>confdefs.h <<_ACEOF
-#define RADIUSD_VERSION_COMMIT ${RADIUSD_VERSION_COMMIT}
-_ACEOF
-
-fi
-
 
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _Thread_local support in compiler" >&5
 $as_echo_n "checking for _Thread_local support in compiler... " >&6; }
index a93684f44aaf3713a86927e61f0b5f916f05c130..916bab051dfd50df7a711de289174ea2345bd583 100644 (file)
@@ -36,16 +36,20 @@ dnl #  Custom hackery to discover version at configure time
 dnl #
 dnl #############################################################
 
-RADIUSD_MAJOR_VERSION=`cat VERSION | cut -f1 -d.`
-RADIUSD_MINOR_VERSION=`cat VERSION | cut -f2 -d.`
-RADIUSD_INCRM_VERSION=`cat VERSION | cut -f3 -d. | sed 's/[[\.-]].*$//'`
+RADIUSD_VERSION_MAJOR=`cat VERSION | cut -f1 -d.`
+RADIUSD_VERSION_MINOR=`cat VERSION | cut -f2 -d.`
+RADIUSD_VERSION_INCRM=`cat VERSION | cut -f3 -d. | sed 's/[[\.-]].*$//'`
 
-RADIUSD_VERSION=`printf "%02i%02i%02i" $RADIUSD_MAJOR_VERSION $RADIUSD_MINOR_VERSION $RADIUSD_INCRM_VERSION`
+AC_MSG_CHECKING([build version])
+RADIUSD_VERSION=`printf "%02i%02i%02i" $RADIUSD_VERSION_MAJOR $RADIUSD_VERSION_MINOR $RADIUSD_VERSION_INCRM`
+AC_MSG_RESULT($RADIUSD_VERSION)
 
 dnl #
 dnl #  Still useful for custom builds
 dnl #
+AC_MSG_CHECKING([build version string])
 RADIUSD_VERSION_STRING=`cat VERSION`
+AC_MSG_RESULT($RADIUSD_VERSION_STRING)
 
 dnl #
 dnl #  Add definitions to Make.inc as it's used by various build targets
@@ -91,10 +95,31 @@ dnl #
 dnl #  Turn on the developer flag when taken from a git checkout (not a release)
 dnl #
 if test "x$GIT" = "xyes" && git status 2>&1 > /dev/null; then
+  if test "x$RADIUSD_VERSION_RELEASE" = "x"; then
+    AC_MSG_CHECKING([build release])
+    RADIUSD_VERSION_RELEASE=`git describe | sed -e 's/^.*-\([[0-9]]*\)-g[[0-9a-f]]*/\1/'`
+    AC_MSG_RESULT($RADIUSD_VERSION_RELEASE)
+  fi 
+  
+  if test "x$RADIUSD_VERSION_COMMIT" = "x"; then
+    AC_MSG_CHECKING([build commit])
+    RADIUSD_VERSION_COMMIT=`git log --pretty=format:'%h' -n 1`
+    AC_MSG_RESULT($RADIUSD_VERSION_COMMIT)
+  fi
+
   if test "x$developer" != "xno"; then
     AC_MSG_NOTICE([in git repository, enabling developer build implicitly, disable with --disable-developer])
     developer="yes"
   fi
+
+fi
+
+if test "x$RADIUSD_VERSION_RELEASE" != "x"; then
+  AC_DEFINE_UNQUOTED([RADIUSD_VERSION_RELEASE],[${RADIUSD_VERSION_RELEASE}],[Version release number at time of configuring])
+fi
+
+if test "x$RADIUSD_VERSION_COMMIT" != "x"; then
+  AC_DEFINE_UNQUOTED([RADIUSD_VERSION_COMMIT],[${RADIUSD_VERSION_COMMIT}],[Commit HEAD at time of configuring])
 fi
 
 dnl #
@@ -1611,14 +1636,6 @@ fi
 
 export EXPERIMENTAL
 
-dnl #
-dnl #  append the current git hash onto the version string
-dnl #
-if test "x$GIT" = "xyes" && git status 2>&1 > /dev/null; then
-  RADIUSD_VERSION_COMMIT=`git log --pretty=format:'%h' -n 1`
-  AC_DEFINE_UNQUOTED([RADIUSD_VERSION_COMMIT],[${RADIUSD_VERSION_COMMIT}],[Commit HEAD at time of configuring])
-fi
-
 dnl #
 dnl #  check for some compiler features
 dnl #
index b37b5315f4af9dc8af469bbef37809c8f526ed53..9808e42632801fd3507d118222c722645916157c 100644 (file)
@@ -401,6 +401,11 @@ export CXXFLAGS="$CFLAGS"
 # which ships with RHEL 6 has basic C11 support, gcc doesn't.
 export LDFLAGS="-Wl,--build-id"
 
+# Pass in the release number, which was passed to us by whatever called rpmbuild
+%if %{?_release:1}%{!?_release:0}
+export RADIUSD_VERSION_RELEASE="%{release}"
+%endif
+
 %configure \
         --libdir=%{_libdir}/freeradius \
         --disable-ltdl-install \
index 5694650029add282e38902ae5210e18a83182a00..5268e8e9e42422b5387f903a4d2e9763df74b636 100644 (file)
 /* Commit HEAD at time of configuring */
 #undef RADIUSD_VERSION_COMMIT
 
+/* Version release number at time of configuring */
+#undef RADIUSD_VERSION_RELEASE
+
 /* Raw version string from VERSION file */
 #undef RADIUSD_VERSION_STRING
 
index 9cc22ffc675570184299bed017a41c36e51c4c27..3ae5525d721abdc42abdf6d9fac3ffde3195fb2e 100644 (file)
@@ -33,6 +33,12 @@ RCSIDH(version_h, "$Id$")
 #  define RADIUSD_VERSION_DEVELOPER ""
 #endif
 
+#ifdef RADIUSD_VERSION_RELEASE
+#  define RADIUSD_VERSION_RELEASE_STRING "-" STRINGIFY(RADIUSD_VERSION_RELEASE)
+#else
+#  define RADIUSD_VERSION_RELEASE_STRING ""
+#endif
+
 #ifdef RADIUSD_VERSION_COMMIT
 #  define RADIUSD_VERSION_COMMIT_STRING " (git #" STRINGIFY(RADIUSD_VERSION_COMMIT) ")"
 #else
@@ -47,6 +53,7 @@ RCSIDH(version_h, "$Id$")
        RADIUSD_VERSION_DEVELOPER \
        _x " version " \
        RADIUSD_VERSION_STRING \
+       RADIUSD_VERSION_RELEASE_STRING \
        RADIUSD_VERSION_COMMIT_STRING \
        ", for host " HOSTINFO ", built on " __DATE__ " at " __TIME__