AC_SPEC_PACKAGE_3VERSION(rpmspecfile)
,
Guido U. Draheim <guidod@gmx.de>
GPLWithACException
This program is free software; you can
redistribute it and/or modify it under the terms of the GNU General Public License
as published by the Free Software Foundation. As a special exception, the respective
Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify
the configure scripts that are the output of Autoconf when processing the Macro. You
need not follow the terms of the
GNU General Public License when using or distributing such scripts
cryp.to ac-archive's Obsoleted (obsoleted)
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.
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
])