Commit 6bb82dad43

Eric Joldasov <bratishkaerik@getgoogleoff.me>
2023-01-03 20:04:48
cmake: move 'continue' statement to avoid cmake bug
1 parent 86f4dfe
Changed files (1)
cmake/Findllvm.cmake
@@ -79,7 +79,11 @@ if(ZIG_USE_LLVM_CONFIG)
         OUTPUT_VARIABLE LLVM_TARGETS_BUILT_SPACES
       OUTPUT_STRIP_TRAILING_WHITESPACE)
     string(REPLACE " " ";" LLVM_TARGETS_BUILT "${LLVM_TARGETS_BUILT_SPACES}")
-    function(NEED_TARGET TARGET_NAME)
+
+    set(ZIG_LLVM_REQUIRED_TARGETS "AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;Mips;MSP430;NVPTX;PowerPC;RISCV;Sparc;SystemZ;VE;WebAssembly;X86;XCore")
+
+    set(ZIG_LLVM_REQUIRED_TARGETS_ENABLED TRUE)
+    foreach(TARGET_NAME IN LISTS ZIG_LLVM_REQUIRED_TARGETS)
       list (FIND LLVM_TARGETS_BUILT "${TARGET_NAME}" _index)
       if (${_index} EQUAL -1)
         # Save the error message, in case this is the last llvm-config we find
@@ -87,27 +91,13 @@ if(ZIG_USE_LLVM_CONFIG)
 
         # Ignore this directory and try the search again
         list(APPEND CMAKE_IGNORE_PATH "${LLVM_CONFIG_DIR}")
-        continue()
+        set(ZIG_LLVM_REQUIRED_TARGETS_ENABLED FALSE)
+        break()
       endif()
-    endfunction(NEED_TARGET)
-    NEED_TARGET("AArch64")
-    NEED_TARGET("AMDGPU")
-    NEED_TARGET("ARM")
-    NEED_TARGET("AVR")
-    NEED_TARGET("BPF")
-    NEED_TARGET("Hexagon")
-    NEED_TARGET("Lanai")
-    NEED_TARGET("Mips")
-    NEED_TARGET("MSP430")
-    NEED_TARGET("NVPTX")
-    NEED_TARGET("PowerPC")
-    NEED_TARGET("RISCV")
-    NEED_TARGET("Sparc")
-    NEED_TARGET("SystemZ")
-    NEED_TARGET("VE")
-    NEED_TARGET("WebAssembly")
-    NEED_TARGET("X86")
-    NEED_TARGET("XCore")
+    endforeach()
+    if (NOT ZIG_LLVM_REQUIRED_TARGETS_ENABLED)
+      continue()
+    endif()
 
     # Got it!
     break()