Patch to build llvm with srcdir != objdir from
authorDuncan Sands <baldrick@free.fr>
Fri, 23 Jan 2009 08:42:38 +0000 (08:42 +0000)
committerDuncan Sands <baldrick@free.fr>
Fri, 23 Jan 2009 08:42:38 +0000 (08:42 +0000)
llvm-top.  By Michael Schuerig, with some small
tweaks to make the "don't configure if already
configured" logic work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62842 91177308-0d34-0410-b5e6-96231b3b80d8

ModuleInfo.txt
build-for-llvm-top.sh

index ec9da652cb8f03285cb4c9d8c87913f5e1291e6a..5a1d8b85ad0b503db865bb13a83d2ff8f62fd52d 100644 (file)
@@ -1,4 +1,4 @@
 DepModule: 
 BuildCmd: ./build-for-llvm-top.sh
-CleanCmd: make clean
-InstallCmd: make install
+CleanCmd: make clean -C ../build.llvm
+InstallCmd: make install -C ../build.llvm
index 2a68c79965b8408748bf33f0d2a5077adb6c31cb..78e3ed87f092fdb4f2fce49cd9c3e45f72a0dfa9 100755 (executable)
@@ -9,9 +9,16 @@
 # variables. 
 process_arguments "$@"
 
+# First, see if the build directory is there. If not, create it.
+build_dir="$LLVM_TOP/build.llvm"
+if test ! -d "$build_dir" ; then
+  mkdir -p "$build_dir"
+fi
+
 # See if we have previously been configured by sensing the presence
 # of the config.status scripts
-if test ! -x "config.status" ; then
+config_status="$build_dir/config.status"
+if test ! -f "$config_status" -o "$config_status" -ot "$0" ; then
   # We must configure so build a list of configure options
   config_options="--prefix=$PREFIX --with-llvmgccdir=$PREFIX"
   if test "$OPTIMIZED" -eq 1 ; then
@@ -45,12 +52,15 @@ if test ! -x "config.status" ; then
     config_options="$config_options --disable-threads"
   fi
   config_options="$config_options $OPTIONS_DASH $OPTIONS_DASH_DASH"
+  src_dir=`pwd`
+  cd "$build_dir"
   msg 0 Configuring $module with:
-  msg 0 "  ./configure" $config_options
-  $LLVM_TOP/llvm/configure $config_options || \
-    die $? "Configuring llvm module failed"
+  msg 0 "  $src_dir/configure" $config_options
+  $src_dir/configure $config_options || \
+    die $? "Configuring $module module failed"
 else
   msg 0 Module $module already configured, ignoring configure options.
+  cd "$build_dir"
 fi
 
 msg 0 Building $module with: