Python compatibility fix for r198150
[oota-llvm.git] / autoconf / AutoRegen.sh
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 want_libtool_version='1\.5\.22'
21 ### END NOTE #########################################################
22
23 outfile=configure
24 configfile=configure.ac
25
26 want_autoconf_version_clean=$(clean $want_autoconf_version)
27 want_autoheader_version_clean=$(clean $want_autoheader_version)
28 want_aclocal_version_clean=$(clean $want_aclocal_version)
29 want_libtool_version_clean=$(clean $want_libtool_version)
30
31 test -d autoconf && test -f autoconf/$configfile && cd autoconf
32 test -f $configfile || die "Can't find 'autoconf' dir; please cd into it first"
33 autoconf --version | grep $want_autoconf_version > /dev/null
34 test $? -eq 0 || die "Your autoconf was not detected as being $want_autoconf_version_clean"
35 aclocal --version | grep '^aclocal.*'$want_aclocal_version > /dev/null
36 test $? -eq 0 || die "Your aclocal was not detected as being $want_aclocal_version_clean"
37 autoheader --version | grep '^autoheader.*'$want_autoheader_version > /dev/null
38 test $? -eq 0 || die "Your autoheader was not detected as being $want_autoheader_version_clean"
39 libtool --version | grep $want_libtool_version > /dev/null
40 test $? -eq 0 || die "Your libtool was not detected as being $want_libtool_version_clean"
41 echo ""
42 echo "### NOTE: ############################################################"
43 echo "### If you get *any* warnings from autoconf below you MUST fix the"
44 echo "### scripts in the m4 directory because there are future forward"
45 echo "### compatibility or platform support issues at risk. Please do NOT"
46 echo "### commit any configure script that was generated with warnings"
47 echo "### present. You should get just three 'Regenerating..' lines."
48 echo "######################################################################"
49 echo ""
50 echo "Regenerating aclocal.m4 with aclocal $want_aclocal_version_clean"
51 cwd=`pwd`
52 aclocal --force -I $cwd/m4 || die "aclocal failed"
53 echo "Regenerating configure with autoconf $want_autoconf_version_clean"
54 autoconf --force --warnings=all -o ../$outfile $configfile || die "autoconf failed"
55 cd ..
56 echo "Regenerating config.h.in with autoheader $want_autoheader_version_clean"
57 autoheader --warnings=all -I autoconf -I autoconf/m4 autoconf/$configfile || die "autoheader failed"
58 exit 0