138fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencer#!/bin/sh
238fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerdie () {
338fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencer	echo "$@" 1>&2
438fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencer	exit 1
538fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencer}
638fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencertest -d autoconf && test -f autoconf/configure.ac && cd autoconf
738fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencertest -f configure.ac || die "Can't find 'autoconf' dir; please cd into it first"
8c9ebae3389f79f857798ddc888b12f349f7f9e82Dan Gohmanautoconf --version | egrep '2\.[56][0-9]' > /dev/null
938fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerif test $? -ne 0 ; then
10c9ebae3389f79f857798ddc888b12f349f7f9e82Dan Gohman  die "Your autoconf was not detected as being 2.5x or 2.6x"
1138fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerfi
1238fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencercwd=`pwd`
1338fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerif test -d ../../../autoconf/m4 ; then
1438fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencer  cd ../../../autoconf/m4
151fbf5a492e73549ff546ec34497fc1c185755af6Peter Collingbourne  llvm_src_root=../..
161fbf5a492e73549ff546ec34497fc1c185755af6Peter Collingbourne  llvm_obj_root=../..
1738fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencer  cd $cwd
1838fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerelif test -d ../../llvm/autoconf/m4 ; then
1938fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencer  cd ../../llvm/autoconf/m4
202532fa21a963edf53183357edfc79a9361b44435Daniel Dunbar  llvm_src_root=../..
212532fa21a963edf53183357edfc79a9361b44435Daniel Dunbar  llvm_obj_root=../..
2238fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencer  cd $cwd
2338fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerelse
2430ea4787ea98754898ba321295e3deb23514caa4Reid Spencer  while true ; do
2530ea4787ea98754898ba321295e3deb23514caa4Reid Spencer    echo "LLVM source root not found." 
269f16bcb59f72b95398ff8990a55e8a2f8d5b4bfcDan Gohman    read -p "Enter full path to LLVM source:" REPLY
2730ea4787ea98754898ba321295e3deb23514caa4Reid Spencer    if test -d "$REPLY/autoconf/m4" ; then
2830ea4787ea98754898ba321295e3deb23514caa4Reid Spencer      llvm_src_root="$REPLY"
299f16bcb59f72b95398ff8990a55e8a2f8d5b4bfcDan Gohman      read -p "Enter full path to LLVM objects (empty for same as source):" REPLY
3030ea4787ea98754898ba321295e3deb23514caa4Reid Spencer      if test -d "$REPLY" ; then
3130ea4787ea98754898ba321295e3deb23514caa4Reid Spencer        llvm_obj_root="$REPLY"
3230ea4787ea98754898ba321295e3deb23514caa4Reid Spencer      else
3330ea4787ea98754898ba321295e3deb23514caa4Reid Spencer        llvm_obj_root="$llvm_src_root"
3430ea4787ea98754898ba321295e3deb23514caa4Reid Spencer      fi
3530ea4787ea98754898ba321295e3deb23514caa4Reid Spencer      break
3630ea4787ea98754898ba321295e3deb23514caa4Reid Spencer    fi
3730ea4787ea98754898ba321295e3deb23514caa4Reid Spencer  done
3838fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerfi
3938fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerecho "Regenerating aclocal.m4 with aclocal"
4038fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerrm -f aclocal.m4
412532fa21a963edf53183357edfc79a9361b44435Daniel Dunbaraclocal -I $cwd/m4 || die "aclocal failed"
42c9ebae3389f79f857798ddc888b12f349f7f9e82Dan Gohmanecho "Regenerating configure with autoconf"
43f20856db3508126ebe921957fef121e0c41fe74dReid Spencerautoconf --warnings=all -o ../configure configure.ac || die "autoconf failed"
4438fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencercd ..
4538fd88a820154f3d3229e4b42c58e9938e9161e5Reid Spencerexit 0
46