1 #!/bin/bash 2 3 die() { 4 echo "$@" 1>&2 5 exit 1 6 } 7 8 clean() { 9 echo $1 | sed -e 's/\\//g' 10 } 11 12 ### NOTE: ############################################################ 13 ### These variables specify the tool versions we want to use. 14 ### Periods should be escaped with backslash for use by grep. 15 ### 16 ### If you update these, please also update docs/GettingStarted.rst 17 want_autoconf_version='2\.60' 18 want_autoheader_version=$want_autoconf_version 19 want_aclocal_version='1\.9\.6' 20 ### END NOTE ######################################################### 21 22 outfile=configure 23 configfile=configure.ac 24 25 want_autoconf_version_clean=$(clean $want_autoconf_version) 26 want_autoheader_version_clean=$(clean $want_autoheader_version) 27 want_aclocal_version_clean=$(clean $want_aclocal_version) 28 29 test -d autoconf && test -f autoconf/$configfile && cd autoconf 30 test -f $configfile || die "Can't find 'autoconf' dir; please cd into it first" 31 autoconf --version | grep $want_autoconf_version > /dev/null 32 test $? -eq 0 || die "Your autoconf was not detected as being $want_autoconf_version_clean" 33 aclocal --version | grep '^aclocal.*'$want_aclocal_version > /dev/null 34 test $? -eq 0 || die "Your aclocal was not detected as being $want_aclocal_version_clean" 35 autoheader --version | grep '^autoheader.*'$want_autoheader_version > /dev/null 36 test $? -eq 0 || die "Your autoheader was not detected as being $want_autoheader_version_clean" 37 echo "" 38 echo "### NOTE: ############################################################" 39 echo "### If you get *any* warnings from autoconf below you MUST fix the" 40 echo "### scripts in the m4 directory because there are future forward" 41 echo "### compatibility or platform support issues at risk. Please do NOT" 42 echo "### commit any configure script that was generated with warnings" 43 echo "### present. You should get just three 'Regenerating..' lines." 44 echo "######################################################################" 45 echo "" 46 echo "Regenerating aclocal.m4 with aclocal $want_aclocal_version_clean" 47 cwd=`pwd` 48 aclocal --force -I $cwd/m4 || die "aclocal failed" 49 echo "Regenerating configure with autoconf $want_autoconf_version_clean" 50 autoconf --force --warnings=all -o ../$outfile $configfile || die "autoconf failed" 51 cd .. 52 echo "Regenerating config.h.in with autoheader $want_autoheader_version_clean" 53 autoheader --warnings=all -I autoconf -I autoconf/m4 autoconf/$configfile || die "autoheader failed" 54 exit 0 55