aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Thomas Guyot-Sionnest <dermoth@aei.ca> 2008-11-26 05:42:48 -0500
committerGravatar Thomas Guyot-Sionnest <dermoth@aei.ca> 2008-11-26 05:42:48 -0500
commit9bcfa9cdede27be34d11f42dfae3d8fd60fc92bc (patch)
tree77f11fd6fb26c9ac4d8a410983629927c70d5319
parented9a088b37dcb8ba56d397592f4e8230a6a011e5 (diff)
downloadmonitoring-plugins-9bcfa9cdede27be34d11f42dfae3d8fd60fc92bc.tar.gz
Disable dynamic versionning for releases, and allow generating version out of subversion.
This should be a definitive fix for systems with non-compilant make programs as the version will be taken from $(PACKAGE_VERSION) instead. At the same time I added code for generating svn-based version strings.
-rw-r--r--Makefile.am2
-rwxr-xr-xNP-VERSION-GEN19
-rw-r--r--configure.in3
-rw-r--r--plugins-root/Makefile.am10
-rw-r--r--plugins-scripts/Makefile.am10
-rw-r--r--plugins/Makefile.am10
6 files changed, 32 insertions, 22 deletions
diff --git a/Makefile.am b/Makefile.am
index 3cd939ac..70325781 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -19,7 +19,7 @@ DEFS = -DLOCALEDIR=\"$(localedir)\"
dist-hook:
make THANKS nagios-plugins.spec pkg/fedora/nagios-plugins.spec
- echo ${VERSION} >$(distdir)/version
+ echo ${VERSION} >$(distdir)/release
install-root:
cd plugins-root && $(MAKE) $@
diff --git a/NP-VERSION-GEN b/NP-VERSION-GEN
index 11697107..f963e637 100755
--- a/NP-VERSION-GEN
+++ b/NP-VERSION-GEN
@@ -11,12 +11,8 @@ DEF_VER=1.4.13.git
LF='
'
-# First see if there is a version file (included in release tarballs),
-# then try git-describe, then default.
-if test -f $SRC_ROOT/version
-then
- VN=`cat $SRC_ROOT/version` || VN="$DEF_VER"
-elif test -d $SRC_ROOT/.git -o -f $SRC_ROOT/.git &&
+# First try git-describe, then svn info, then default.
+if test -d $SRC_ROOT/.git -o -f $SRC_ROOT/.git &&
VN=`cd $SRC_ROOT; git describe --abbrev=4 HEAD 2>/dev/null` &&
case "$VN" in
*$LF*) (exit 1) ;;
@@ -27,6 +23,17 @@ elif test -d $SRC_ROOT/.git -o -f $SRC_ROOT/.git &&
esac
then
VN=`echo "$VN" | sed -e 's/^release-//' | sed -e 's/-/./g'`;
+elif test -d $SRC_ROOT/.svn -o -f $SRC_ROOT/.svn &&
+ VN=`cd $SRC_ROOT; svn info 2>/dev/null | grep '^Revision'` &&
+ case "$VN" in
+ *$LF*) (exit 1) ;;
+ Revision:*)
+ VN=`echo $VN | awk '{print $NF}'`
+ test "`svn status 2>/dev/null | grep '^[AMD]' | wc -l`" = 0 ||
+ VN="$VN-dirty" ;;
+ esac
+then
+ VN=`echo "trunk.$VN" | sed -e 's/-/./g'`;
else
VN="$DEF_VER"
fi
diff --git a/configure.in b/configure.in
index 203166e4..8cae5341 100644
--- a/configure.in
+++ b/configure.in
@@ -98,6 +98,9 @@ AC_SUBST(PKG_ARCH)
AC_SUBST(REV_DATESTAMP)
AC_SUBST(REV_TIMESTAMP)
+dnl Check if version file is present
+AM_CONDITIONAL([RELEASE_PRESENT], [test -f release])
+
dnl Checks for programs.
AC_PATH_PROG(PYTHON,python)
AC_PATH_PROG(SH,sh)
diff --git a/plugins-root/Makefile.am b/plugins-root/Makefile.am
index ba2e9a27..3fb62a24 100644
--- a/plugins-root/Makefile.am
+++ b/plugins-root/Makefile.am
@@ -1,13 +1,13 @@
## Process this file with automake to produce Makefile.in
+if RELEASE_PRESENT
+NP_VERSION = $(PACKAGE_VERSION)
+else
NP-VERSION-FILE: .FORCE-NP-VERSION-FILE
@$(SHELL_PATH) $(top_srcdir)/NP-VERSION-GEN
.FORCE-NP-VERSION-FILE:
-
-## This is undocumented and could possibly break in future versions of
-## automake. See:
-## http://article.gmane.org/gmane.comp.sysutils.automake.general/10036
-@am__include@ @am__quote@NP-VERSION-FILE@am__quote@
+-include NP-VERSION-FILE
+endif
AM_CFLAGS = -DNP_VERSION='"$(NP_VERSION)"'
diff --git a/plugins-scripts/Makefile.am b/plugins-scripts/Makefile.am
index 19702739..5c073ca4 100644
--- a/plugins-scripts/Makefile.am
+++ b/plugins-scripts/Makefile.am
@@ -1,13 +1,13 @@
## Process this file with automake to produce Makefile.in
+if RELEASE_PRESENT
+NP_VERSION = $(PACKAGE_VERSION)
+else
NP-VERSION-FILE: .FORCE-NP-VERSION-FILE
@$(SHELL_PATH) $(top_srcdir)/NP-VERSION-GEN
.FORCE-NP-VERSION-FILE:
-
-## This is undocumented and could possibly break in future versions of
-## automake. See:
-## http://article.gmane.org/gmane.comp.sysutils.automake.general/10036
-@am__include@ @am__quote@NP-VERSION-FILE@am__quote@
+-include NP-VERSION-FILE
+endif
SUFFIXES = .pl .sh
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index fb1924fe..0f6fbb60 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -1,13 +1,13 @@
## Process this file with automake to produce Makefile.in
+if RELEASE_PRESENT
+NP_VERSION = $(PACKAGE_VERSION)
+else
NP-VERSION-FILE: .FORCE-NP-VERSION-FILE
@$(SHELL_PATH) $(top_srcdir)/NP-VERSION-GEN
.FORCE-NP-VERSION-FILE:
-
-## This is undocumented and could possibly break in future versions of
-## automake. See:
-## http://article.gmane.org/gmane.comp.sysutils.automake.general/10036
-@am__include@ @am__quote@NP-VERSION-FILE@am__quote@
+-include NP-VERSION-FILE
+endif
AM_CFLAGS = -DNP_VERSION='"$(NP_VERSION)"'