aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbuild_odin.sh18
1 files changed, 11 insertions, 7 deletions
diff --git a/build_odin.sh b/build_odin.sh
index 7c9ae065f..ad295795e 100755
--- a/build_odin.sh
+++ b/build_odin.sh
@@ -5,7 +5,7 @@ set -eu
: ${CXX=clang++}
: ${CXXFLAGS=}
: ${LDFLAGS=}
-: ${LLVM_CONFIG=llvm-config}
+: ${LLVM_CONFIG=}
CPPFLAGS="$CPPFLAGS -DODIN_VERSION_RAW=\"dev-$(date +"%Y-%m")\""
CXXFLAGS="$CXXFLAGS -std=c++14"
@@ -14,7 +14,12 @@ LDFLAGS="$LDFLAGS -pthread -lm -lstdc++"
OS_ARCH="$(uname -m)"
OS_NAME="$(uname -s)"
-if [ -z "$(command -v llvm-config)" ]; then
+error() {
+ printf "ERROR: %s\n" "$1"
+ exit 1
+}
+
+if [ -z "$LLVM_CONFIG" ]; then
if [ -n "$(command -v llvm-config-17)" ]; then
LLVM_CONFIG="llvm-config-17"
elif [ -n "$(command -v llvm-config-14)" ]; then
@@ -25,6 +30,10 @@ if [ -z "$(command -v llvm-config)" ]; then
LLVM_CONFIG="llvm-config-12"
elif [ -n "$(command -v llvm-config-11)" ]; then
LLVM_CONFIG="llvm-config-11"
+ elif [ -n "$(command -v llvm-config)" ]; then
+ LLVM_CONFIG="llvm-config"
+ else
+ error "No supported llvm-config version found. Set LLVM_CONFIG to proceed."
fi
fi
@@ -33,11 +42,6 @@ LLVM_VERSION_MAJOR="$(echo $LLVM_VERSION | awk -F. '{print $1}')"
LLVM_VERSION_MINOR="$(echo $LLVM_VERSION | awk -F. '{print $2}')"
LLVM_VERSION_PATCH="$(echo $LLVM_VERSION | awk -F. '{print $3}')"
-error() {
- printf "ERROR: %s\n" "$1"
- exit 1
-}
-
if [ -d ".git" ] && [ -n "$(command -v git)" ]; then
GIT_SHA=($(git show --pretty='%h'--no-patch --no-notes HEAD))
CPPFLAGS="$CPPFLAGS -DGIT_SHA=\"$GIT_SHA\""