diff --git a/build-llvm.sh b/build-llvm.sh index 7e6fe42..6a229bb 100755 --- a/build-llvm.sh +++ b/build-llvm.sh @@ -157,9 +157,18 @@ CMAKEFLAGS="$LLVM_CMAKEFLAGS" if [ -n "$HOST" ]; then ARCH="${HOST%%-*}" - CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_C_COMPILER=$HOST-gcc" - CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_CXX_COMPILER=$HOST-g++" - CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_SYSTEM_PROCESSOR=$ARCH" + + if [ -n "$WITH_CLANG" ]; then + CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_C_COMPILER=clang" + CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_CXX_COMPILER=clang++" + CMAKEFLAGS="$CMAKEFLAGS -DLLVM_USE_LINKER=lld" + CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_C_COMPILER_TARGET=$HOST" + CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_CXX_COMPILER_TARGET=$HOST" + else + CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_C_COMPILER=$HOST-gcc" + CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_CXX_COMPILER=$HOST-g++" + CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_SYSTEM_PROCESSOR=$ARCH" + fi case $HOST in *-mingw32) CMAKEFLAGS="$CMAKEFLAGS -DCMAKE_SYSTEM_NAME=Windows"