summaryrefslogtreecommitdiffstats
path: root/llvm/projects/sample
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2006-04-18 06:27:47 +0000
committerReid Spencer <rspencer@reidspencer.com>2006-04-18 06:27:47 +0000
commitb687ce80cdb5331c468df0fdfd14a4017ca19542 (patch)
treedcb21edb62e43a6da7b71c3a740f0d2e86c38741 /llvm/projects/sample
parentc81081ab5ec86873ba53cd2c2090a37143e56a62 (diff)
downloadbcm5719-llvm-b687ce80cdb5331c468df0fdfd14a4017ca19542.tar.gz
bcm5719-llvm-b687ce80cdb5331c468df0fdfd14a4017ca19542.zip
Have the AutoRegen.sh script prompt the user for the LLVM src and obj
directories if it can't find them. Then, replace those values into the configure.ac script and pass them to the LLVM_CONFIG_PROJECT so that the values become the default for llvm_src and llvm_obj variables. In this way the user is required to input this exactly once, and the scripts take it from there. llvm-svn: 27798
Diffstat (limited to 'llvm/projects/sample')
-rwxr-xr-xllvm/projects/sample/autoconf/AutoRegen.sh26
-rw-r--r--llvm/projects/sample/autoconf/configure.ac7
2 files changed, 29 insertions, 4 deletions
diff --git a/llvm/projects/sample/autoconf/AutoRegen.sh b/llvm/projects/sample/autoconf/AutoRegen.sh
index af6c0a4b288..c9cc905cd09 100755
--- a/llvm/projects/sample/autoconf/AutoRegen.sh
+++ b/llvm/projects/sample/autoconf/AutoRegen.sh
@@ -7,20 +7,42 @@ 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\.5[0-9]' > /dev/null
if test $? -ne 0 ; then
- die "Your autoconf was not detected as being 2.5x"
+ die "Your autoconf was not detected as being 2.5x"
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
- die "Can't find the LLVM autoconf/m4 directory. The project should be checked out to projects directory"
+ while true ; do
+ echo "LLVM source root not found."
+ read -p "Enter full path to LLVM source:"
+ 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):"
+ 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"
diff --git a/llvm/projects/sample/autoconf/configure.ac b/llvm/projects/sample/autoconf/configure.ac
index 43a2e903efd..37c93a8f515 100644
--- a/llvm/projects/sample/autoconf/configure.ac
+++ b/llvm/projects/sample/autoconf/configure.ac
@@ -3,13 +3,16 @@ dnl * Initialize
dnl **************************************************************************
AC_INIT([[[SAMPLE]]],[[[x.xx]]],[bugs@yourdomain])
+dnl Identify where LLVM source tree is
+LLVM_SRC_ROOT="../../"
+LLVM_OBJ_ROOT="../../"
dnl Tell autoconf that the auxilliary files are actually located in
dnl the LLVM autoconf directory, not here.
-AC_CONFIG_AUX_DIR(../../autoconf)
+AC_CONFIG_AUX_DIR($LLVM_SRC_ROOT/autoconf)
dnl Tell autoconf that this is an LLVM project being configured
dnl This provides the --with-llvmsrc and --with-llvmobj options
-LLVM_CONFIG_PROJECT
+LLVM_CONFIG_PROJECT($LLVM_SRC_ROOT,$LLVM_OBJ_ROOT)
dnl Verify that the source directory is valid
AC_CONFIG_SRCDIR(["Makefile.common.in"])
OpenPOWER on IntegriCloud