Blame m4/as-version.m4

Packit Service 1d8f1c
dnl as-version.m4 0.2.0
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl autostars m4 macro for versioning
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl Thomas Vander Stichele <thomas at apestaart dot org>
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl $Id: as-version.m4,v 1.4 2004/06/01 09:40:05 thomasvs Exp $
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl AS_VERSION
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl example
Packit Service 1d8f1c
dnl AS_VERSION
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl this macro
Packit Service 1d8f1c
dnl - AC_SUBST's PACKAGE_VERSION_MAJOR, _MINOR, _MICRO
Packit Service 1d8f1c
dnl - AC_SUBST's PACKAGE_VERSION_RELEASE,
Packit Service 1d8f1c
dnl    which can be used for rpm release fields
Packit Service 1d8f1c
dnl - doesn't call AM_INIT_AUTOMAKE anymore because it prevents
Packit Service 1d8f1c
dnl   maintainer mode from running correctly
Packit Service 1d8f1c
dnl
Packit Service 1d8f1c
dnl don't forget to put #undef PACKAGE_VERSION_RELEASE in acconfig.h
Packit Service 1d8f1c
dnl if you use acconfig.h
Packit Service 1d8f1c
Packit Service 1d8f1c
AC_DEFUN([AS_VERSION],
Packit Service 1d8f1c
[
Packit Service 1d8f1c
  PACKAGE_VERSION_MAJOR=$(echo AC_PACKAGE_VERSION | cut -d'.' -f1)
Packit Service 1d8f1c
  PACKAGE_VERSION_MINOR=$(echo AC_PACKAGE_VERSION | cut -d'.' -f2)
Packit Service 1d8f1c
  PACKAGE_VERSION_MICRO=$(echo AC_PACKAGE_VERSION | cut -d'.' -f3)
Packit Service 1d8f1c
Packit Service 1d8f1c
  AC_SUBST(PACKAGE_VERSION_MAJOR)
Packit Service 1d8f1c
  AC_SUBST(PACKAGE_VERSION_MINOR)
Packit Service 1d8f1c
  AC_SUBST(PACKAGE_VERSION_MICRO)
Packit Service 1d8f1c
])
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl AS_NANO(ACTION-IF-NO-NANO, [ACTION-IF-NANO])
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl requires AC_INIT to be called before
Packit Service 1d8f1c
dnl For projects using a fourth or nano number in your versioning to indicate
Packit Service 1d8f1c
dnl development or prerelease snapshots, this macro allows the build to be
Packit Service 1d8f1c
dnl set up differently accordingly.
Packit Service 1d8f1c
Packit Service 1d8f1c
dnl this macro:
Packit Service 1d8f1c
dnl - parses AC_PACKAGE_VERSION, set by AC_INIT, and extracts the nano number
Packit Service 1d8f1c
dnl - sets the variable PACKAGE_VERSION_NANO
Packit Service 1d8f1c
dnl - sets the variable PACKAGE_VERSION_RELEASE, which can be used
Packit Service 1d8f1c
dnl   for rpm release fields
Packit Service 1d8f1c
dnl - executes ACTION-IF-NO-NANO or ACTION-IF-NANO
Packit Service 1d8f1c
    
Packit Service 1d8f1c
dnl example:
Packit Service 1d8f1c
dnl AS_NANO(RELEASE="yes", RELEASE="no")
Packit Service 1d8f1c
Packit Service 1d8f1c
AC_DEFUN([AS_NANO],
Packit Service 1d8f1c
[
Packit Service 1d8f1c
  AC_MSG_CHECKING(nano version)
Packit Service 1d8f1c
Packit Service 1d8f1c
  NANO=$(echo AC_PACKAGE_VERSION | cut -d'.' -f4)
Packit Service 1d8f1c
Packit Service 1d8f1c
  if test x"$NANO" = x || test "x$NANO" = "x0" ; then
Packit Service 1d8f1c
    AC_MSG_RESULT([0 (release)])
Packit Service 1d8f1c
    NANO=0
Packit Service 1d8f1c
    PACKAGE_VERSION_RELEASE=1
Packit Service 1d8f1c
    ifelse([$1], , :, [$1])
Packit Service 1d8f1c
  else
Packit Service 1d8f1c
    AC_MSG_RESULT($NANO)
Packit Service 1d8f1c
    PACKAGE_VERSION_RELEASE=0.`date +%Y%m%d.%H%M%S`
Packit Service 1d8f1c
    ifelse([$2], , :, [$2])
Packit Service 1d8f1c
  fi
Packit Service 1d8f1c
  PACKAGE_VERSION_NANO=$NANO
Packit Service 1d8f1c
  AC_SUBST(PACKAGE_VERSION_NANO)
Packit Service 1d8f1c
  AC_SUBST(PACKAGE_VERSION_RELEASE)
Packit Service 1d8f1c
])