#!/bin/sh die () { echo "$@" 1>&2 exit 1 } test -d autoconf && test -f autoconf/configure.ac && cd autoconf test -f configure.ac || die "Can't find 'autoconf' dir; please cd into it first" autoconf --version | egrep '2\.[56][0-9]' > /dev/null if test $? -ne 0 ; then die "Your autoconf was not detected as being 2.5x or 2.6x" fi cwd=`pwd` if test -d ../../../autoconf/m4 ; then cd ../../../autoconf/m4 llvm_m4=`pwd` llvm_src_root=../.. llvm_obj_root=../.. cd $cwd elif test -d ../../llvm/autoconf/m4 ; then cd ../../llvm/autoconf/m4 llvm_m4=`pwd` llvm_src_root=.. llvm_obj_root=.. cd $cwd else while true ; do echo "LLVM source root not found." read -p "Enter full path to LLVM source:" REPLY if test -d "$REPLY/autoconf/m4" ; then llvm_src_root="$REPLY" llvm_m4="$REPLY/autoconf/m4" read -p "Enter full path to LLVM objects (empty for same as source):" REPLY if test -d "$REPLY" ; then llvm_obj_root="$REPLY" else llvm_obj_root="$llvm_src_root" fi break fi done fi # Patch the LLVM_ROOT in configure.ac, if it needs it cp configure.ac configure.bak sed -e "s#^LLVM_SRC_ROOT=.*#LLVM_SRC_ROOT=\"$llvm_src_root\"#" \ -e "s#^LLVM_OBJ_ROOT=.*#LLVM_OBJ_ROOT=\"$llvm_obj_root\"#" configure.bak > configure.ac echo "Regenerating aclocal.m4 with aclocal" rm -f aclocal.m4 aclocal -I $llvm_m4 -I "$llvm_m4/.." || die "aclocal failed" echo "Regenerating configure with autoconf" autoconf --warnings=all -o ../configure configure.ac || die "autoconf failed" cd .. exit 0