m4/as-version.m4: newer version
authorThomas Vander Stichele <thomas@apestaart.org>
Sat, 1 Apr 2006 09:40:24 +0000 (09:40 +0000)
committerThomas Vander Stichele <thomas@apestaart.org>
Sat, 1 Apr 2006 09:40:24 +0000 (09:40 +0000)
Original commit message from CVS:
2006-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>

* m4/as-version.m4:
newer version
* m4/gst-args.m4:
* m4/gst-doc.m4:
update and add other macros to be shared across projects

ChangeLog
m4/as-version.m4
m4/gst-args.m4
m4/gst-doc.m4

index c19eef4..08efd3e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2006-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>
+
+       * m4/as-version.m4:
+         newer version
+       * m4/gst-args.m4:
+       * m4/gst-doc.m4:
+         update and add other macros to be shared across projects
+
 2006-03-24  Thomas Vander Stichele  <thomas at apestaart dot org>
 
        * gst.supp:
index f99191e..fa60a38 100644 (file)
@@ -1,65 +1,71 @@
-dnl as-version.m4 0.1.0
+dnl as-version.m4 0.2.0
 
 dnl autostars m4 macro for versioning
 
 dnl Thomas Vander Stichele <thomas at apestaart dot org>
 
-dnl $Id: as-version.m4,v 1.14 2005/09/15 05:51:34 ds Exp $
+dnl $Id: as-version.m4,v 1.15 2006/04/01 09:40:24 thomasvs Exp $
 
-dnl AS_VERSION(PACKAGE, PREFIX, MAJOR, MINOR, MICRO, NANO,
-dnl            ACTION-IF-NO-NANO, [ACTION-IF-NANO])
+dnl AS_VERSION
 
 dnl example
-dnl AS_VERSION(gstreamer, GST_VERSION, 0, 3, 2,)
-dnl for a 0.3.2 release version
+dnl AS_VERSION
 
 dnl this macro
-dnl - defines [$PREFIX]_MAJOR, MINOR and MICRO
-dnl - if NANO is empty, then we're in release mode, else in cvs/dev mode
-dnl - defines [$PREFIX], VERSION, and [$PREFIX]_RELEASE
-dnl - executes the relevant action
-dnl - AC_SUBST's PACKAGE, VERSION, [$PREFIX] and [$PREFIX]_RELEASE
-dnl   as well as the little ones
+dnl - AC_SUBST's PACKAGE_VERSION_MAJOR, _MINOR, _MICRO
+dnl - AC_SUBST's PACKAGE_VERSION_RELEASE,
+dnl    which can be used for rpm release fields
 dnl - doesn't call AM_INIT_AUTOMAKE anymore because it prevents
-dnl   maintainer mode from running ok
+dnl   maintainer mode from running correctly
 dnl
-dnl don't forget to put #undef [$2] and [$2]_RELEASE in acconfig.h
+dnl don't forget to put #undef PACKAGE_VERSION_RELEASE in acconfig.h
 dnl if you use acconfig.h
 
 AC_DEFUN([AS_VERSION],
 [
-  PACKAGE=[$1]
-  [$2]_MAJOR=[$3]
-  [$2]_MINOR=[$4]
-  [$2]_MICRO=[$5]
-  NANO=[$6]
-  [$2]_NANO=$NANO
-  if test "x$NANO" = "x" || test "x$NANO" = "x0";
-  then
-      AC_MSG_NOTICE(configuring [$1] for release)
-      VERSION=[$3].[$4].[$5]
-      [$2]_RELEASE=1
-      dnl execute action
-      ifelse([$7], , :, [$7])
-  else
-      AC_MSG_NOTICE(configuring [$1] for development with nano $NANO)
-      VERSION=[$3].[$4].[$5].$NANO
-      [$2]_RELEASE=0.`date +%Y%m%d.%H%M%S`
-      dnl execute action
-      ifelse([$8], , :, [$8])
-  fi
+  PACKAGE_VERSION_MAJOR=$(echo AC_PACKAGE_VERSION | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo AC_PACKAGE_VERSION | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo AC_PACKAGE_VERSION | cut -d'.' -f3)
+
+  AC_SUBST(PACKAGE_VERSION_MAJOR)
+  AC_SUBST(PACKAGE_VERSION_MINOR)
+  AC_SUBST(PACKAGE_VERSION_MICRO)
+])
+
+dnl AS_NANO(ACTION-IF-NO-NANO, [ACTION-IF-NANO])
+
+dnl requires AC_INIT to be called before
+dnl For projects using a fourth or nano number in your versioning to indicate
+dnl development or prerelease snapshots, this macro allows the build to be
+dnl set up differently accordingly.
 
-  [$2]=$VERSION
-  AC_DEFINE_UNQUOTED([$2], "$[$2]", [Define the version])
-  AC_SUBST([$2])
-  AC_SUBST([$2]_RELEASE)
+dnl this macro:
+dnl - parses AC_PACKAGE_VERSION, set by AC_INIT, and extracts the nano number
+dnl - sets the variable PACKAGE_VERSION_NANO
+dnl - sets the variable PACKAGE_VERSION_RELEASE, which can be used
+dnl   for rpm release fields
+dnl - executes ACTION-IF-NO-NANO or ACTION-IF-NANO
+    
+dnl example:
+dnl AS_NANO(RELEASE="yes", RELEASE="no")
 
-  AC_SUBST([$2]_MAJOR)
-  AC_SUBST([$2]_MINOR)
-  AC_SUBST([$2]_MICRO)
-  AC_SUBST([$2]_NANO)
-  AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Define the package name])
-  AC_SUBST(PACKAGE)
-  AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Define the version])
-  AC_SUBST(VERSION)
+AC_DEFUN([AS_NANO],
+[
+  AC_MSG_CHECKING(nano version)
+
+  NANO=$(echo AC_PACKAGE_VERSION | cut -d'.' -f4)
+
+  if test x"$NANO" = x || test "x$NANO" = "x0" ; then
+    AC_MSG_RESULT([0 (release)])
+    NANO=0
+    PACKAGE_VERSION_RELEASE=1
+    ifelse([$1], , :, [$1])
+  else
+    AC_MSG_RESULT($NANO)
+    PACKAGE_VERSION_RELEASE=0.`date +%Y%m%d.%H%M%S`
+    ifelse([$2], , :, [$2])
+  fi
+  PACKAGE_VERSION_NANO=$NANO
+  AC_SUBST(PACKAGE_VERSION_NANO)
+  AC_SUBST(PACKAGE_VERSION_RELEASE)
 ])
index 4b7aacd..6d6ab2d 100644 (file)
@@ -131,13 +131,19 @@ AC_DEFUN([GST_ARG_WITH_PACKAGE_NAME],
       esac
     ], 
     [
+      P=$1
+      if test "x$P" = "x"
+      then
+        P=$PACKAGE_NAME
+      fi
+      
       dnl default value
       if test "x$GST_CVS" = "xyes"
       then
         dnl nano >= 1
-        GST_PACKAGE_NAME="[$1] CVS/prerelease"
+        GST_PACKAGE_NAME="$P CVS/prerelease"
       else
-        GST_PACKAGE_NAME="[$1] source release"
+        GST_PACKAGE_NAME="$P source release"
       fi
     ]
   )
index a1e3442..62c9d24 100644 (file)
@@ -1,7 +1,11 @@
 AC_DEFUN([GST_DOCBOOK_CHECK],
 [
   dnl choose a location to install docbook docs in
-  docdir="\$(datadir)/doc/$PACKAGE-$GST_MAJORMINOR"
+  if test "x$PACKAGE_TARNAME" = "x"
+  then
+    AC_MSG_ERROR([Internal error - PACKAGE_TARNAME not set])
+  fi
+  docdir="\$(datadir)/doc/$PACKAGE_TARNAME-$GST_MAJORMINOR"
 
   dnl enable/disable docbook documentation building
   AC_ARG_ENABLE(docbook,