mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-26 04:32:44 +01:00
test-release.sh: Add option for building the OpenMP run-time
This isn't part of the official release process, but provides a convenient way to build binaries for those who want to experiment with it. Hopefully the run- time can be part of the regular build and release process for 3.8. Differential Revision: http://reviews.llvm.org/D11494 llvm-svn: 243531
This commit is contained in:
parent
947bf10c75
commit
4ccdcd6009
@ -33,6 +33,7 @@ do_compare="yes"
|
||||
do_rt="yes"
|
||||
do_libs="yes"
|
||||
do_test_suite="yes"
|
||||
do_openmp="no"
|
||||
BuildDir="`pwd`"
|
||||
use_autoconf="no"
|
||||
ExtraConfigureFlags=""
|
||||
@ -59,6 +60,7 @@ function usage() {
|
||||
echo " -no-rt Disable check-out & build Compiler-RT"
|
||||
echo " -no-libs Disable check-out & build libcxx/libcxxabi/libunwind"
|
||||
echo " -no-test-suite Disable check-out & build test-suite"
|
||||
echo " -openmp Check out and build the OpenMP run-time (experimental)"
|
||||
}
|
||||
|
||||
if [ `uname -s` = "Darwin" ]; then
|
||||
@ -136,6 +138,9 @@ while [ $# -gt 0 ]; do
|
||||
-no-test-suite )
|
||||
do_test_suite="no"
|
||||
;;
|
||||
-openmp )
|
||||
do_openmp="yes"
|
||||
;;
|
||||
-help | --help | -h | --h | -\? )
|
||||
usage
|
||||
exit 0
|
||||
@ -191,6 +196,9 @@ fi
|
||||
if [ $do_test_suite = "yes" ]; then
|
||||
projects="$projects test-suite"
|
||||
fi
|
||||
if [ $do_openmp = "yes" ]; then
|
||||
projects="$projects openmp"
|
||||
fi
|
||||
|
||||
# Go to the build directory (may be different from CWD)
|
||||
BuildDir=$BuildDir/$RC
|
||||
@ -427,6 +435,41 @@ function package_release() {
|
||||
cd $cwd
|
||||
}
|
||||
|
||||
# Build and package the OpenMP run-time. This is still experimental and not
|
||||
# meant for official testing in the release, but as a way for providing
|
||||
# binaries as a convenience to those who want to try it out.
|
||||
function build_OpenMP() {
|
||||
cwd=`pwd`
|
||||
|
||||
rm -rf $BuildDir/Phase3/openmp
|
||||
rm -rf $BuildDir/Phase3/openmp.install
|
||||
mkdir -p $BuildDir/Phase3/openmp
|
||||
cd $BuildDir/Phase3/openmp
|
||||
clang=$BuildDir/Phase3/Release/llvmCore-$Release-$RC.install/usr/local/bin/clang
|
||||
|
||||
echo "#" cmake -DCMAKE_C_COMPILER=${clang} -DCMAKE_CXX_COMPILER=${clang}++ \
|
||||
-DCMAKE_BUILD_TYPE=Release -DLIBOMP_MICRO_TESTS=on \
|
||||
$BuildDir/openmp.src/runtime
|
||||
cmake -DCMAKE_C_COMPILER=${clang} -DCMAKE_CXX_COMPILER=${clang}++ \
|
||||
-DCMAKE_BUILD_TYPE=Release -DLIBOMP_MICRO_TESTS=on \
|
||||
$BuildDir/openmp.src/runtime
|
||||
|
||||
echo "# Building OpenMP run-time"
|
||||
echo "# ${MAKE} -j $NumJobs VERBOSE=1"
|
||||
${MAKE} -j $NumJobs VERBOSE=1
|
||||
echo "# ${MAKE} libomp-micro-tests VERBOSE=1"
|
||||
${MAKE} libomp-micro-tests VERBOSE=1
|
||||
echo "# ${MAKE} install DESTDIR=$BuildDir/Phase3/openmp.install"
|
||||
${MAKE} install DESTDIR=$BuildDir/Phase3/openmp.install
|
||||
|
||||
OpenMPPackage=OpenMP-$Triple
|
||||
mv $BuildDir/Phase3/openmp.install/usr/local $BuildDir/$OpenMPPackage
|
||||
cd $BuildDir
|
||||
tar cvfJ $BuildDir/$OpenMPPackage.tar.xz $OpenMPPackage
|
||||
mv $OpenMPPackage $BuildDir/Phase3/openmp.install/usr/local
|
||||
cd $cwd
|
||||
}
|
||||
|
||||
# Exit if any command fails
|
||||
# Note: pipefail is necessary for running build commands through
|
||||
# a pipe (i.e. it changes the output of ``false | tee /dev/null ; echo $?``)
|
||||
@ -459,7 +502,6 @@ for Flavor in $Flavors ; do
|
||||
|
||||
c_compiler="$CC"
|
||||
cxx_compiler="$CXX"
|
||||
|
||||
llvmCore_phase1_objdir=$BuildDir/Phase1/$Flavor/llvmCore-$Release-$RC.obj
|
||||
llvmCore_phase1_destdir=$BuildDir/Phase1/$Flavor/llvmCore-$Release-$RC.install
|
||||
|
||||
@ -538,6 +580,11 @@ for Flavor in $Flavors ; do
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $do_openmp = "yes" ]; then
|
||||
build_OpenMP
|
||||
fi
|
||||
|
||||
) 2>&1 | tee $LogDir/testing.$Release-$RC.log
|
||||
|
||||
package_release
|
||||
|
Loading…
Reference in New Issue
Block a user