summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRenato Golin <renato.golin@linaro.org>2017-05-23 16:10:51 +0100
committerRenato Golin <renato.golin@linaro.org>2017-05-23 17:30:43 +0100
commit3fdc901d16084f3292076c6e75614d0de2272a68 (patch)
treefd48b5ba38c0a116a4bb92a73d907e4af58b717b
parentc8e2f59413c560801f40fb1fdd8c361f3e0f6a3f (diff)
tcwg-llvm-build.sh: Adding --cmakeflags option
Change-Id: I0fd7fe1d0dfdd297c0c0784baaa291211c56103e
-rwxr-xr-xtcwg-llvm-build.sh17
1 files changed, 15 insertions, 2 deletions
diff --git a/tcwg-llvm-build.sh b/tcwg-llvm-build.sh
index 8b4e05a2..97aa097d 100755
--- a/tcwg-llvm-build.sh
+++ b/tcwg-llvm-build.sh
@@ -18,12 +18,13 @@ SYN_ASSERTS="--asserts={True|False} (def. True)"
SYN_BUILDJOBS="--buildjobs=N (def. CPUS)"
SYN_LINKJOBS="--linkjobs=N (def. RAM+1)"
SYN_TOOLCHAIN="--toolchain=http://url/for/tarball"
+SYN_CMAKEFLAGS="--cmakeflags='cmake flags ...'"
SYN_BUILDID="--buildid=<text-to-add-to-tarball>"
SYN_TOOLCHAIN_FILE="--toolchain-file=<file-name> (file name to copy the produced toolchain file name)"
SYN_COMPILER="--compiler=clang|gcc"
SYN_REPOSITORY="--repository=http://url/for/git/repo/"
SYN_BRANCH="--branch=branchname"
-SYNTAX="$0 $SYN_WORKSPACE $SYN_REVISION $SYN_ASSERTS $SYN_LINKJOBS $SYN_BUILDJOBS $SYN_TOOLCHAIN $SYN_BUILDID $SYN_TOOLCHAIN_FILE $SYN_COMPILER $SYN_REPOSITORY $SYN_BRANCH"
+SYNTAX="$0 $SYN_WORKSPACE $SYN_REVISION $SYN_ASSERTS $SYN_LINKJOBS $SYN_BUILDJOBS $SYN_TOOLCHAIN $SYN_BUILDID $SYN_TOOLCHAIN_FILE $SYN_CMAKEFLAGS $SYN_COMPILER $SYN_REPOSITORY $SYN_BRANCH"
# Environment Variables and default values
WORKSPACE=$(pwd)
@@ -36,6 +37,7 @@ INSTDIR=""
BUILDJOBS=$CPUS
TOOLCHAIN=""
TOOLCHAIN_FILE=""
+CMAKEFLAGS=""
BUILDID=""
REPOSITORY="https://git-us.linaro.org/toolchain/llvm"
BRANCH="master"
@@ -43,7 +45,7 @@ BRANCH="master"
# Command line parsing
while [ "$#" -gt 0 ]; do
ARG=$(echo "$1" | cut -d "=" -f 1)
- VAL=$(echo "$1" | cut -d "=" -f 2)
+ VAL=$(echo "$1" | cut -d "=" -f 2-)
case "$ARG" in
--workspace)
if [ -d "$VAL" ]; then
@@ -143,6 +145,15 @@ while [ "$#" -gt 0 ]; do
exit 1
fi
shift ;;
+ --cmakeflags)
+ if [ "$VAL" != "" ]; then
+ CMAKEFLAGS="$VAL"
+ else
+ echo "ERROR: CMake flags '$VAL' not valid"
+ echo "Syntax: $SYN_CMAKEFLAGS"
+ exit 1
+ fi
+ shift ;;
*)
echo "ERROR: Invalid argument '$1'"
echo "Syntax: $SYNTAX"
@@ -192,6 +203,7 @@ echo "LINKJOBS = $LINKJOBS"
echo "TOOLCHAIN = $TOOLCHAIN"
echo "CC = $CC"
echo "CXX = $CXX"
+echo "CMAKEFLAGS = $CMAKEFLAGS"
# Logs
LOGBASE="$WORKSPACE/tcwg-llvm"
@@ -234,6 +246,7 @@ OPTIONS+="-DLLVM_ENABLE_ASSERTIONS='$ASSERTS' "
OPTIONS+="-DLLVM_PARALLEL_COMPILE_JOBS='$BUILDJOBS' "
OPTIONS+="-DLLVM_PARALLEL_LINK_JOBS='$LINKJOBS' "
OPTIONS+="-DCMAKE_INSTALL_PREFIX='$INSTDIR' "
+OPTIONS+="$CMAKEFLAGS "
mkdir -p "$BUILDDIR"
cd "$BUILDDIR" && cmake -G Ninja "$SRCDIR" $OPTIONS -DLLVM_LIT_ARGS="-sv -j$CPUS" |& tee "$LOGBASE-cmake.$LOGEXT"