diff options
| author | Eric Joldasov <bratishkaerik@getgoogleoff.me> | 2023-01-04 01:04:48 +0600 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2023-01-05 02:23:17 -0700 |
| commit | fe2bd9dda8467b775da4fe3bd535aece9e07ee1b (patch) | |
| tree | 47d53d8f3eb4a59f56cd4e808d0f412b8bb6eac3 /cmake | |
| parent | e0fb4c29cb618fe912c82fed06bb305db14606d8 (diff) | |
| download | zig-fe2bd9dda8467b775da4fe3bd535aece9e07ee1b.tar.gz zig-fe2bd9dda8467b775da4fe3bd535aece9e07ee1b.zip | |
cmake: move 'continue' statement to avoid cmake bug
Diffstat (limited to 'cmake')
| -rw-r--r-- | cmake/Findllvm.cmake | 32 |
1 files changed, 11 insertions, 21 deletions
diff --git a/cmake/Findllvm.cmake b/cmake/Findllvm.cmake index 60a52056d8..d866203457 100644 --- a/cmake/Findllvm.cmake +++ b/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() |
