Download M4 Source Macro Index Page

ac_spec_package_3version

Obsolete Macro

Use AX_SPEC_PACKAGE_VERSION.

Synopsis

AC_SPEC_PACKAGE_3VERSION(rpmspecfile)

Description

set PACKAGE and VERSION from the defines in the given specfile default to basename and currentdate if rpmspecfile is not found if the VERSION-number from the spec-file is shorter than 3 digits then additional numbers are taken from the current date using entries from `date` as %y and %W%w since libtool version numbers can be as max only be 3 digits. The year counts from 1900.

spec example:

    Name: testprog
    Version: 2

result: (on 1. April 2002, being monday of 13th week)

    VERSION="2.102.131"
    PACKAGE="testprog"

See also AC_SET_RELEASEINFO_VERSIONINFO for the use of a 3VERSION.

Author

Guido Draheim <guidod@gmx.de>

Last Modified

2005-01-25

M4 Source Code

AC_DEFUN([AC_SPEC_PACKAGE_3VERSION],[dnl
  pushdef([specfile], ac_spec_package_version_file)
  specfile=`basename $1`
  AC_MSG_CHECKING( $specfile package version)
  if test -z "$1"; then
    AC_MSG_ERROR( no rpm spec file given )
  else
    # find specfile
    for i in $1 $srcdir/$1 $srcdir/../$1 ; do
      if test -f "$i" ; then
        specfile="$i"
        break
      fi
    done
    if test ! -f $specfile ; then
      k="w/o spec"
    else
      if test -z "$PACKAGE" ; then
        i=`grep -i '^name:' $specfile | head -1 | sed -e 's/.*://'`
        PACKAGE=`echo $i | sed -e 's/ /-/'`
      fi
      if test -z "$VERSION" ; then
        i=`grep -i '^version:' $specfile | head -1 | sed -e 's/.*://'`
        VERSION=`echo $i | sed -e 's/ /-/'`
      fi
    fi
    if test -z "$PACKAGE" ; then
      PACKAGE=`basename $specfile .spec`
    fi
    if test -z "$VERSION" ; then
      VERSION=`date +0.1%y.%W%w`
    fi
    case "$VERSION" in
    *.*.*) ;;
    *.*) VERSION="$VERSION."`date +1%y%W%w` ;;
    *) VERSION="$VERSION."`date +1%y.%W%w` ;;
    esac
    VERSION=`echo $VERSION | sed -e 's/[[.]]0/./g'`
    AC_MSG_RESULT( $PACKAGE $VERSION $k )
  fi
])