summaryrefslogtreecommitdiff
path: root/src/pal/tools/gen-buildsys-clang.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/pal/tools/gen-buildsys-clang.sh')
-rwxr-xr-xsrc/pal/tools/gen-buildsys-clang.sh30
1 files changed, 22 insertions, 8 deletions
diff --git a/src/pal/tools/gen-buildsys-clang.sh b/src/pal/tools/gen-buildsys-clang.sh
index 723fc1d0e0..ff7c2a9c86 100755
--- a/src/pal/tools/gen-buildsys-clang.sh
+++ b/src/pal/tools/gen-buildsys-clang.sh
@@ -24,15 +24,27 @@ else
buildtype=$2
fi
+OS=`uname`
+
# Locate llvm
# This can be a little complicated, because the common use-case of Ubuntu with
# llvm-3.5 installed uses a rather unusual llvm installation with the version
# number postfixed (i.e. llvm-ar-3.5), so we check for that first.
+# Additionally, OSX doesn't use the llvm- prefix.
+if [ $OS = "Linux" ]; then
+ llvm_prefix="llvm-"
+elif [ $OS = "Darwin" ]; then
+ llvm_prefix=""
+else
+ echo "Unable to determine build platform"
+ exit 1
+fi
+
desired_llvm_version=3.5
locate_llvm_exec() {
- if which $1-$desired_llvm_version > /dev/null 2>&1
+ if which $llvm_prefix$1-$desired_llvm_version > /dev/null 2>&1
then
- echo $(which $1-$desired_llvm_version)
+ echo $(which $llvm_prefix$1-$desired_llvm_version)
elif which $1 > /dev/null 2>&1
then
echo $(which $1)
@@ -40,16 +52,18 @@ locate_llvm_exec() {
exit 1
fi
}
-llvm_ar=$(locate_llvm_exec llvm-ar)
+llvm_ar=$(locate_llvm_exec ar)
[[ $? -eq 0 ]] || { echo "Unable to locate llvm-ar"; exit 1; }
-llvm_link=$(locate_llvm_exec llvm-link)
+llvm_link=$(locate_llvm_exec link)
[[ $? -eq 0 ]] || { echo "Unable to locate llvm-link"; exit 1; }
-llvm_nm=$(locate_llvm_exec llvm-nm)
+llvm_nm=$(locate_llvm_exec nm)
[[ $? -eq 0 ]] || { echo "Unable to locate llvm-nm"; exit 1; }
-llvm_objdump=$(locate_llvm_exec llvm-objdump)
-[[ $? -eq 0 ]] || { echo "Unable to locate llvm-objdump"; exit 1; }
-llvm_ranlib=$(locate_llvm_exec llvm-ranlib)
+llvm_ranlib=$(locate_llvm_exec ranlib)
[[ $? -eq 0 ]] || { echo "Unable to locate llvm-ranlib"; exit 1; }
+if [ $OS = "Linux" ]; then
+ llvm_objdump=$(locate_llvm_exec objdump)
+ [[ $? -eq 0 ]] || { echo "Unable to locate llvm-objdump"; exit 1; }
+fi
cmake -DCMAKE_USER_MAKE_RULES_OVERRIDE=$1/src/pal/tools/clang-compiler-override.txt \
-DCMAKE_AR=$llvm_ar \