X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=autoconf%2FAutoRegen.sh;h=86a26d925fc40495948a0ddb3219d8dcb4be2c3f;hb=6fba3b9b12e31c51222cf749770cbd9a2f75bdd2;hp=40bd96be5f98504a4c93c7c389474062b51e051a;hpb=2051fe3df52d385daa56ce69765ef172386e5927;p=oota-llvm.git diff --git a/autoconf/AutoRegen.sh b/autoconf/AutoRegen.sh index 40bd96be5f9..86a26d925fc 100755 --- a/autoconf/AutoRegen.sh +++ b/autoconf/AutoRegen.sh @@ -1,21 +1,54 @@ -#!/bin/sh -die () { - echo "$@" 1>&2 - exit 1 +#!/bin/bash + +die() { + echo "$@" 1>&2 + exit 1 } -test -d autoconf && test -f autoconf/configure.ac && cd autoconf -[ -f configure.ac ] || die "Can't find 'autoconf' dir; please cd into it first" -echo "Regenerating aclocal.m4 with aclocal" -aclocal || die "aclocal failed" -autoconf --version | egrep '2\.5[0-9]' > /dev/null -if test $? -ne 0 -then - die "Your autoconf was not detected as being 2.5x" -fi -echo "Note: Warnings about 'AC_CONFIG_SUBDIRS: you should use literals' are ok" -echo "Regenerating configure with autoconf 2.5x" -autoconf -o ../configure configure.ac || die "autoconf failed" + +clean() { + echo $1 | sed -e 's/\\//g' +} + +### NOTE: ############################################################ +### These variables specify the tool versions we want to use. +### Periods should be escaped with backslash for use by grep. +### +### If you update these, please also update docs/GettingStarted.rst +want_autoconf_version='2\.60' +want_autoheader_version=$want_autoconf_version +want_aclocal_version='1\.9\.6' +### END NOTE ######################################################### + +outfile=configure +configfile=configure.ac + +want_autoconf_version_clean=$(clean $want_autoconf_version) +want_autoheader_version_clean=$(clean $want_autoheader_version) +want_aclocal_version_clean=$(clean $want_aclocal_version) + +test -d autoconf && test -f autoconf/$configfile && cd autoconf +test -f $configfile || die "Can't find 'autoconf' dir; please cd into it first" +autoconf --version | grep $want_autoconf_version > /dev/null +test $? -eq 0 || die "Your autoconf was not detected as being $want_autoconf_version_clean" +aclocal --version | grep '^aclocal.*'$want_aclocal_version > /dev/null +test $? -eq 0 || die "Your aclocal was not detected as being $want_aclocal_version_clean" +autoheader --version | grep '^autoheader.*'$want_autoheader_version > /dev/null +test $? -eq 0 || die "Your autoheader was not detected as being $want_autoheader_version_clean" +echo "" +echo "### NOTE: ############################################################" +echo "### If you get *any* warnings from autoconf below you MUST fix the" +echo "### scripts in the m4 directory because there are future forward" +echo "### compatibility or platform support issues at risk. Please do NOT" +echo "### commit any configure script that was generated with warnings" +echo "### present. You should get just three 'Regenerating..' lines." +echo "######################################################################" +echo "" +echo "Regenerating aclocal.m4 with aclocal $want_aclocal_version_clean" +cwd=`pwd` +aclocal --force -I $cwd/m4 || die "aclocal failed" +echo "Regenerating configure with autoconf $want_autoconf_version_clean" +autoconf --force --warnings=all -o ../$outfile $configfile || die "autoconf failed" cd .. -echo "Regenerating config.h.in with autoheader 2.5x" -autoheader -I autoconf autoconf/configure.ac || die "autoheader failed" +echo "Regenerating config.h.in with autoheader $want_autoheader_version_clean" +autoheader --warnings=all -I autoconf -I autoconf/m4 autoconf/$configfile || die "autoheader failed" exit 0