diff options
author | Werner Koch <wk@gnupg.org> | 2003-12-08 20:38:42 +0000 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2003-12-08 20:38:42 +0000 |
commit | 70b2139fb160a6d39c840d16a8f03f65fe898b57 (patch) | |
tree | f9a368b3d1ab4d1b858bdb548f1db5d6e85e22f1 /autogen.sh | |
parent | 302007749109a4ee452c266c1acbd967591fa1cd (diff) | |
download | libgpg-error-70b2139fb160a6d39c840d16a8f03f65fe898b57.tar.gz |
* README.CVS: Enhanced.
* autogen.sh: New.
* Makefile.am (EXTRA_DIST): Added autogen.sh.
Diffstat (limited to 'autogen.sh')
-rwxr-xr-x | autogen.sh | 98 |
1 files changed, 56 insertions, 42 deletions
@@ -1,5 +1,5 @@ #! /bin/sh -# Run this to generate all the initial makefiles, etc. +# Run this to generate all the initial makefiles, etc. # # Copyright (C) 2003 g10 Code GmbH # @@ -11,64 +11,78 @@ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -PGM=libgpg-error - -# Required version of autoconf. Keep it in sync with the AC_PREREQ -# macro at the top of configure.ac. -autoconf_vers=2.57 - -# Required version of automake. -automake_vers=1.7.6 - -# Required version of gettext. Keep it in sync with the -# AM_GNU_GETTEXT_VERSION macro in configure.ac. -gettext_vers=0.12.1 - - -ACLOCAL=${ACLOCAL:-aclocal} -AUTOCONF=${AUTOCONF:-autoconf} -AUTOMAKE=${AUTOMAKE:-automake} -AUTOHEADER=${AUTOHEADER:-autoheader} -GETTEXT=${GETTEXT:-gettext} -MSGMERGE=${MSGMERGE:-gettext} -DIE=no +configure_ac="configure.ac" cvtver () { - awk 'NR==1 {split($NF,A,".");X=1000000*A[1]+1000*A[2]+A[3];print X;exit 0}' -} - -chkver () { - expr `("$1" --version || echo "0") | cvtver` '>=' `echo "$2" | cvtver` \ - >/dev/null + awk 'NR==1 {split($NF,A,".");X=1000000*A[1]+1000*A[2]+A[3];print X;exit 0}' } check_version () { - if ! chkver $1 $2 ; then - echo "**Error**: "\`$1\'" not installed or too old." >&2 - echo ' Version '$2' or newer is required.' >&2 - [ -n "$3" ] && echo ' Note that this is part of '\`$3\''.' >&2 - DIE="yes" - return 1 - else + if [ $(( `("$1" --version || echo "0") | cvtver` >= $2 )) == 1 ]; then return 0 fi + echo "**Error**: "\`$1\'" not installed or too old." >&2 + echo ' Version '$3' or newer is required.' >&2 + [ -n "$4" ] && echo ' Note that this is part of '\`$4\''.' >&2 + DIE="yes" + return 1 } -check_version $AUTOCONF $autoconf_vers -if check_version $AUTOMAKE $automake_vers ; then - check_version $ACLOCAL $automake_vers automake +# Grep the required versions from configure.ac +autoconf_vers=`sed -n '/^AC_PREREQ(/ { +s/^.*(\(.*\))/\1/p +q +}' ${configure_ac}` +autoconf_vers_num=`echo "$autoconf_vers" | cvtver` + +automake_vers=`sed -n '/^min_automake_version=/ { +s/^.*="\(.*\)"/\1/p +q +}' ${configure_ac}` +automake_vers_num=`echo "$automake_vers" | cvtver` + +gettext_vers=`sed -n '/^min_gettext_version=/ { +s/^.*="\(.*\)"/\1/p +q +}' ${configure_ac}` +gettext_vers_num=`echo "$gettext_vers" | cvtver` + + +if [ -z "$autoconf_vers" -o -z "$automake_vers" -o -z "$gettext_vers" ] +then + echo "**Error**: version information not found in "\`${configure_ac}\'"." >&2 + exit 1 +fi + +# Allow to override the default tool names +AUTOCONF=${AUTOCONF_PREFIX}${AUTOCONF:-autoconf}${AUTOCONF_SUFFIX} +AUTOHEADER=${AUTOCONF_PREFIX}${AUTOHEADER:-autoheader}${AUTOCONF_SUFFIX} + +AUTOMAKE=${AUTOMAKE_PREFIX}${AUTOMAKE:-automake}${AUTOMAKE_SUFFIX} +ACLOCAL=${AUTOMAKE_PREFIX}${ACLOCAL:-aclocal}${AUTOMAKE_SUFFIX} + +GETTEXT=${GETTEXT_PREFIX}${GETTEXT:-gettext}${GETTEXT_SUFFIX} +MSGMERGE=${GETTEXT_PREFIX}${MSGMERGE:-msgmerge}${GETTEXT_SUFFIX} + +DIE=no + + +if check_version $AUTOCONF $autoconf_vers_num $autoconf_vers ; then + check_version $AUTOHEADER $autoconf_vers_num $autoconf_vers autoconf +fi +if check_version $AUTOMAKE $automake_vers_num $automake_vers; then + check_version $ACLOCAL $automake_vers_num $autoconf_vers automake fi -if check_version $GETTEXT $gettext_vers ; then - check_version $MSGMERGE $gettext_vers gettext +if check_version $GETTEXT $gettext_vers_num $gettext_vers; then + check_version $MSGMERGE $gettext_vers_num $gettext_vers gettext fi if test "$DIE" = "yes"; then cat <<EOF Note that you may use alternative versions of the tools by setting -the corresponding environment variable to that version; e.g.: - AUTOMAKE=automake-1.6 ACLOCAL=aclocal-1.6 ./autogen.sh +the corresponding environment variables; see README.CVS for details. EOF exit 1 |