https://github.com/ziglang/zig/commit/fe2bd9dda8467b775da4fe3bd535aece9e07ee1b Bug https://bugs.gentoo.org/886569 From fe2bd9dda8467b775da4fe3bd535aece9e07ee1b Mon Sep 17 00:00:00 2001 From: Eric Joldasov Date: Wed, 4 Jan 2023 01:04:48 +0600 Subject: [PATCH] cmake: move 'continue' statement to avoid cmake bug --- cmake/Findllvm.cmake | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/cmake/Findllvm.cmake b/cmake/Findllvm.cmake index 60a52056d8d..d8662034579 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()