Code

finish ckleanup of rpm spec porcessing
authorKarl DeBisschop <kdebisschop@users.sourceforge.net>
Mon, 16 Sep 2002 00:47:17 +0000 (00:47 +0000)
committerKarl DeBisschop <kdebisschop@users.sourceforge.net>
Mon, 16 Sep 2002 00:47:17 +0000 (00:47 +0000)
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@100 f882894a-f735-0410-b71e-b25c423dba1c

Makefile.am
aclocal.m4
configure.in
nagios-plugins.spec.in

index d1c7a68322b6f9247d43063af11efe06db16d28e..00e59622042f76968cc4326fea4a8f1a24031f2e 100644 (file)
@@ -2,7 +2,10 @@
 
 SUBDIRS = plugins plugins-scripts
 
-EXTRA_DIST = REQUIREMENTS acconfig.h package.def subst.in subst.sh Helper.pm nagios-plugins.spec contrib
+EXTRA_DIST = REQUIREMENTS acconfig.h subst.in subst.sh Helper.pm contrib nagios-plugins.spec.in
+
+dist-hook:
+       sed "s/PACKAGE_VERSION/@PACKAGE_VERSION@/;s/PACKAGE_RELEASE/@PACKAGE_RELEASE@/;" $(srcdir)/nagios-plugins.spec.in > $(distdir)/nagios-plugins.spec
 
 test:
        cd plugins; $(MAKE) test
index b75859d587b12e3347b0bc8dba28cc5904bef97c..c461ff3ab1a1fc724c98e270611017bee20acddc 100644 (file)
@@ -10,6 +10,98 @@ dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 dnl PARTICULAR PURPOSE.
 
+# Do all the work for Automake.  This macro actually does too much --
+# some checks are only needed if your package does certain things.
+# But this isn't really a big deal.
+
+# serial 1
+
+dnl Usage:
+dnl AM_INIT_AUTOMAKE(package,version, [no-define])
+
+AC_DEFUN([AM_INIT_AUTOMAKE],
+[AC_REQUIRE([AC_PROG_INSTALL])
+PACKAGE=[$1]
+AC_SUBST(PACKAGE)
+VERSION=[$2]
+AC_SUBST(VERSION)
+dnl test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
+  AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+fi
+ifelse([$3],,
+AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
+AC_REQUIRE([AM_SANITY_CHECK])
+AC_REQUIRE([AC_ARG_PROGRAM])
+dnl FIXME This is truly gross.
+missing_dir=`cd $ac_aux_dir && pwd`
+AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
+AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
+AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
+AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
+AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
+AC_REQUIRE([AC_PROG_MAKE_SET])])
+
+#
+# Check to make sure that the build environment is sane.
+#
+
+AC_DEFUN([AM_SANITY_CHECK],
+[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftestfile
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments.  Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+   set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
+   if test "[$]*" = "X"; then
+      # -L didn't work.
+      set X `ls -t $srcdir/configure conftestfile`
+   fi
+   if test "[$]*" != "X $srcdir/configure conftestfile" \
+      && test "[$]*" != "X conftestfile $srcdir/configure"; then
+
+      # If neither matched, then we have a broken ls.  This can happen
+      # if, for instance, CONFIG_SHELL is bash and it inherits a
+      # broken ls alias from the environment.  This has actually
+      # happened.  Such a system could not be considered "sane".
+      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
+alias in your environment])
+   fi
+
+   test "[$]2" = conftestfile
+   )
+then
+   # Ok.
+   :
+else
+   AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+rm -f conftest*
+AC_MSG_RESULT(yes)])
+
+dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
+dnl The program must properly implement --version.
+AC_DEFUN([AM_MISSING_PROG],
+[AC_MSG_CHECKING(for working $2)
+# Run test in a subshell; some versions of sh will print an error if
+# an executable is not found, even if stderr is redirected.
+# Redirect stdin to placate older versions of autoconf.  Sigh.
+if ($2 --version) < /dev/null > /dev/null 2>&1; then
+   $1=$2
+   AC_MSG_RESULT(found)
+else
+   $1="$3/missing $2"
+   AC_MSG_RESULT(missing)
+fi
+AC_SUBST($1)])
+
 # Like AC_CONFIG_HEADER, but automatically create stamp file.
 
 AC_DEFUN([AM_CONFIG_HEADER],
index a9ffeb1c5bc9ad4a9a9f0905ae950d5ddaa1e683..2341b25ca921d539b5e1c1ee6bcde1f96c1127d7 100644 (file)
@@ -1,10 +1,12 @@
 dnl Process this file with autoconf to produce a configure script.
 include(`aclocal.m4')
 AC_REVISION ($Revision$)
-AC_INIT(package.def)
-VERSION=`cat $srcdir/package.def|sed -e 's/PACKAGE_RELEASE= *"//;s/"//'`
-PACKAGE=nagios-plugins
-dnl AM_INIT_AUTOMAKE(nagios-plugins,$VERSION)
+AC_INIT(Helper.pm)
+PACKAGE_VERSION="1.3.0"
+AC_SUBST(PACKAGE_VERSION)
+PACKAGE_RELEASE="alpha1"
+AC_SUBST(PACKAGE_RELEASE)
+AM_INIT_AUTOMAKE(nagios-plugins,${PACKAGE_VERSION}-${PACKAGE_RELEASE})
 AM_CONFIG_HEADER(plugins/config.h plugins/common.h plugins/version.h plugins/netutils.h plugins/utils.h plugins/popen.h)
 
 AC_PREFIX_DEFAULT(/usr/local/nagios)
@@ -814,10 +816,6 @@ AC_TRY_COMPILE([#ifdef __STDC__
 AC_SUBST(EXTRAS)
 AC_SUBST(DEPLIBS)
 
-AC_SUBST(PACKAGE)
-AC_SUBST(VERSION)
-AC_DEFINE_UNQUOTED(PACKAGE,"${PACKAGE}")
-AC_DEFINE_UNQUOTED(VERSION,"${VERSION}")
 AC_DEFINE_UNQUOTED(PACKAGE_VERSION,"${VERSION}")
 
 AC_OUTPUT(Makefile subst plugins/Makefile plugins-scripts/Makefile plugins-scripts/subst plugins-scripts/utils.pm plugins-scripts/utils.sh command.cfg test.pl,echo timestamp > plugins/stamp-h1;echo timestamp > plugins/stamp-h2;echo timestamp > plugins/stamp-h3;echo timestamp > plugins/stamp-h4;echo timestamp > plugins/stamp-h5;echo timestamp > plugins/stamp-h6;PATH=.:..:$PATH subst.sh command.cfg)
index d220050ecabe52b50a1d5e87a1fbded7ef7fe69c..62b93d526ea67835e2925505aa5f7ee5f3e687af 100644 (file)
@@ -8,9 +8,9 @@
 %define name %{archive}
 %endif
 
-%define version @PACKAGE_VERSION@
-%define release @PACKAGE_RELEASE@
-%define source http://nagiosplug.sourceforge.net/src/%{archive}-%{version}-%{release}.tar.gz
+%define version PACKAGE_VERSION
+%define release PACKAGE_RELEASE
+%define source %{archive}-%{version}-%{release}.tar.gz
 
 Name: %{name}
 Version: %{version}