- $llvmCore_phase1_objdir
-
- # Test clang
- if [ "$do_clang" = "yes" ]; then
- ########################################################################
- # Phase 2: Build llvmCore with newly built clang from phase 1.
- c_compiler=$llvmCore_phase1_installdir/bin/clang
- cxx_compiler=$llvmCore_phase1_installdir/bin/clang++
- echo "# Phase 2: Building llvmCore"
- configure_llvmCore 2 $Flavor \
- $llvmCore_phase2_objdir $llvmCore_phase2_installdir
- build_llvmCore 2 $Flavor \
- $llvmCore_phase2_objdir
-
- ########################################################################
- # Phase 3: Build llvmCore with newly built clang from phase 2.
- c_compiler=$llvmCore_phase2_installdir/bin/clang
- cxx_compiler=$llvmCore_phase2_installdir/bin/clang++
- echo "# Phase 3: Building llvmCore"
- configure_llvmCore 3 $Flavor \
- $llvmCore_phase3_objdir $llvmCore_phase3_installdir
- build_llvmCore 3 $Flavor \
- $llvmCore_phase3_objdir
-
- ########################################################################
- # Testing: Test phase 3
- echo "# Testing - built with clang"
- test_llvmCore 3 $Flavor $llvmCore_phase3_objdir
-
- ########################################################################
- # Compare .o files between Phase2 and Phase3 and report which ones
- # differ.
- if [ "$do_compare" = "yes" ]; then
- echo
- echo "# Comparing Phase 2 and Phase 3 files"
- for o in `find $llvmCore_phase2_objdir -name '*.o'` ; do
- p3=`echo $o | sed -e 's,Phase2,Phase3,'`
- if ! cmp --ignore-initial=16 $o $p3 > /dev/null 2>&1 ; then
- echo "file `basename $o` differs between phase 2 and phase 3"
- fi
- done
- fi
- fi
-
- # Test dragonegg
- if [ "$do_dragonegg" = "yes" ]; then
- # Build dragonegg using the targeted gcc. This isn't necessary, but
- # helps avoid using broken versions of gcc (which are legion), tests
- # that the targeted gcc is basically sane and is consistent with the
- # later phases in which the targeted gcc + dragonegg are used.
- c_compiler="$gcc_compiler"
- cxx_compiler="$gxx_compiler"
- build_dragonegg 1 $Flavor $llvmCore_phase1_installdir $dragonegg_phase1_objdir
-
- ########################################################################
- # Phase 2: Build llvmCore with newly built dragonegg from phase 1.
- c_compiler="$gcc_compiler -fplugin=$dragonegg_phase1_objdir/dragonegg.so"
- cxx_compiler="$gxx_compiler -fplugin=$dragonegg_phase1_objdir/dragonegg.so"
- echo "# Phase 2: Building llvmCore with dragonegg"
- configure_llvmCore 2 $Flavor \
- $llvmCore_de_phase2_objdir $llvmCore_de_phase2_installdir
- build_llvmCore 2 $Flavor \
- $llvmCore_de_phase2_objdir
- build_dragonegg 2 $Flavor $llvmCore_de_phase2_installdir $dragonegg_phase2_objdir
-
- ########################################################################
- # Phase 3: Build llvmCore with newly built clang from phase 2.
- c_compiler="$gcc_compiler -fplugin=$dragonegg_phase2_objdir/dragonegg.so"
- cxx_compiler="$gxx_compiler -fplugin=$dragonegg_phase2_objdir/dragonegg.so"
- echo "# Phase 3: Building llvmCore with dragonegg"
- configure_llvmCore 3 $Flavor \
- $llvmCore_de_phase3_objdir $llvmCore_de_phase3_installdir
- build_llvmCore 3 $Flavor \
- $llvmCore_de_phase3_objdir
- build_dragonegg 3 $Flavor $llvmCore_de_phase3_installdir $dragonegg_phase3_objdir
-
- ########################################################################
- # Testing: Test phase 3
- c_compiler="$gcc_compiler -fplugin=$dragonegg_phase3_objdir/dragonegg.so"
- cxx_compiler="$gxx_compiler -fplugin=$dragonegg_phase3_objdir/dragonegg.so"
- echo "# Testing - built with dragonegg"
- test_llvmCore 3 $Flavor $llvmCore_de_phase3_objdir
-
- ########################################################################
- # Compare .o files between Phase2 and Phase3 and report which ones differ.
+ $llvmCore_phase1_objdir $llvmCore_phase1_destdir
+ clean_RPATH $llvmCore_phase1_destdir/usr/local
+
+ ########################################################################
+ # Phase 2: Build llvmCore with newly built clang from phase 1.
+ c_compiler=$llvmCore_phase1_destdir/usr/local/bin/clang
+ cxx_compiler=$llvmCore_phase1_destdir/usr/local/bin/clang++
+ echo "# Phase 2: Building llvmCore"
+ configure_llvmCore 2 $Flavor $llvmCore_phase2_objdir
+ build_llvmCore 2 $Flavor \
+ $llvmCore_phase2_objdir $llvmCore_phase2_destdir
+ clean_RPATH $llvmCore_phase2_destdir/usr/local
+
+ ########################################################################
+ # Phase 3: Build llvmCore with newly built clang from phase 2.
+ c_compiler=$llvmCore_phase2_destdir/usr/local/bin/clang
+ cxx_compiler=$llvmCore_phase2_destdir/usr/local/bin/clang++
+ echo "# Phase 3: Building llvmCore"
+ configure_llvmCore 3 $Flavor $llvmCore_phase3_objdir
+ build_llvmCore 3 $Flavor \
+ $llvmCore_phase3_objdir $llvmCore_phase3_destdir
+ clean_RPATH $llvmCore_phase3_destdir/usr/local
+
+ ########################################################################
+ # Testing: Test phase 3
+ echo "# Testing - built with clang"
+ test_llvmCore 3 $Flavor $llvmCore_phase3_objdir
+
+ ########################################################################
+ # Compare .o files between Phase2 and Phase3 and report which ones
+ # differ.
+ if [ "$do_compare" = "yes" ]; then