about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
authorMichael Herstine <sp1ff@pobox.com>2024-02-27 18:02:04 -0800
committerMartinNowack <2443641+MartinNowack@users.noreply.github.com>2024-02-28 10:11:23 +0000
commita01f46c09137d521e736042bfb0395321f21e0fc (patch)
tree4e81715ae150b8f2d6044dbc807dadd154ce4cc9
parent399ea405d485474350a58a590d50154732000c2f (diff)
downloadklee-a01f46c09137d521e736042bfb0395321f21e0fc.tar.gz
Compare LLVM_VERSION_SHORT to "140" rather than "14".
In commit 2b07721, support was added to p-libcxx.inc & p-llvm.inc
for LLVM versions 14+ (in which, apparently, certain build flags
were changed). To detect these recent versions, the variable
LLVM_VERSION_SHORT was compared numerically to "14"-- the intent
obviously being to express "LLVM version 14 or later".

However, in both v-clang.inc & v-llvm.inc, LLVM_VERSION_SHORT
is defined as the concatenation of LLVM_VERSION_MAJOR and
LLVM_VERSION_MINOR. Therefore, on a machine with, say, LLVM
13.0 installed, LLVM_VERSION_SHORT will be "130" which compares
as larger than "14".

This patch changes the comparison to be against "140".
-rw-r--r--scripts/build/p-libcxx.inc10
-rw-r--r--scripts/build/p-llvm.inc2
2 files changed, 6 insertions, 6 deletions
diff --git a/scripts/build/p-libcxx.inc b/scripts/build/p-libcxx.inc
index a549c485..006db9ad 100644
--- a/scripts/build/p-libcxx.inc
+++ b/scripts/build/p-libcxx.inc
@@ -38,14 +38,14 @@ build_libcxx() {
    "-DCMAKE_INSTALL_PREFIX=${LIBCXX_INSTALL}"
   )
 
-  # Static ABI libraries are not supported under OS X
-  if [[ "${LLVM_VERSION_SHORT}" -ge "14" ]]; then
+  if [[ "${LLVM_VERSION_SHORT}" -ge "140" ]]; then
     cmake_flags+=("-DLLVM_ENABLE_RUNTIMES=libcxx;libcxxabi")
     cmake_flags+=("-DLLVM_ENABLE_PROJECTS=")
     cmake_flags+=("-DLLVM_ENABLE_PROJECTS_USED:BOOL=ON")
   else
     cmake_flags+=("-DLLVM_ENABLE_PROJECTS=libcxx;libcxxabi")
   fi
+  # Static ABI libraries are not supported under OS X
   if [[ "${OS}" == "osx" ]]; then
     cmake_flags+=("-DLIBCXX_ENABLE_STATIC_ABI_LIBRARY:BOOL=OFF")
   else
@@ -59,7 +59,7 @@ build_libcxx() {
     export LLVM_COMPILER_PATH="$(dirname "${BITCODE_CC}")"
 
     cmake "${cmake_flags[@]}" "${LIBCXX_SRC}/llvm"
-   if [[ "${LLVM_VERSION_SHORT}" -ge "14" ]]; then
+   if [[ "${LLVM_VERSION_SHORT}" -ge "140" ]]; then
      make runtimes "-j$(nproc)" || make runtimes || return 1
    else
      make cxx "-j$(nproc)" || make cxx || return 1
@@ -75,7 +75,7 @@ install_libcxx() {
     export LLVM_COMPILER=clang
     export LLVM_COMPILER_PATH="$(dirname "${BITCODE_CC}")"
 
-    if [[ "${LLVM_VERSION_SHORT}" -ge "14" ]]; then
+    if [[ "${LLVM_VERSION_SHORT}" -ge "140" ]]; then
       cd "${LIBCXX_BUILD}/runtimes" || return 1
       make install || return 1
     else
@@ -128,4 +128,4 @@ get_build_artifacts_libcxx() {
 
 setup_artifact_variables_libcxx() {
   setup_build_variables_libcxx
-}
\ No newline at end of file
+}
diff --git a/scripts/build/p-llvm.inc b/scripts/build/p-llvm.inc
index 462d69f5..107878da 100644
--- a/scripts/build/p-llvm.inc
+++ b/scripts/build/p-llvm.inc
@@ -183,7 +183,7 @@ configure_llvm() {
         "-DLLVM_BUILD_STATIC:BOOL=OFF"
         "-DLIBCLANG_BUILD_STATIC:BOOL=OFF"
     )
-    if [[ "${LLVM_VERSION_SHORT}" -ge "14" ]]; then
+    if [[ "${LLVM_VERSION_SHORT}" -ge "140" ]]; then
       CONFIG+=("-DLLVM_ENABLE_PROJECTS=${ENABLED_LLVM_PROJECTS}")
       CONFIG+=("-DLLVM_ENABLE_RUNTIMES=libcxx;libcxxabi")
     else