| ... | @@ -79,7 +79,11 @@ if(ZIG_USE_LLVM_CONFIG) | ... | @@ -79,7 +79,11 @@ if(ZIG_USE_LLVM_CONFIG) |
| 79 | OUTPUT_VARIABLE LLVM_TARGETS_BUILT_SPACES | 79 | OUTPUT_VARIABLE LLVM_TARGETS_BUILT_SPACES |
| 80 | OUTPUT_STRIP_TRAILING_WHITESPACE) | 80 | OUTPUT_STRIP_TRAILING_WHITESPACE) |
| 81 | string(REPLACE " " ";" LLVM_TARGETS_BUILT "${LLVM_TARGETS_BUILT_SPACES}") | 81 | string(REPLACE " " ";" LLVM_TARGETS_BUILT "${LLVM_TARGETS_BUILT_SPACES}") |
| 82 | function(NEED_TARGET TARGET_NAME) | 82 | |
| | 83 | set(ZIG_LLVM_REQUIRED_TARGETS "AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;Mips;MSP430;NVPTX;PowerPC;RISCV;Sparc;SystemZ;VE;WebAssembly;X86;XCore") |
| | 84 | |
| | 85 | set(ZIG_LLVM_REQUIRED_TARGETS_ENABLED TRUE) |
| | 86 | foreach(TARGET_NAME IN LISTS ZIG_LLVM_REQUIRED_TARGETS) |
| 83 | list (FIND LLVM_TARGETS_BUILT "${TARGET_NAME}" _index) | 87 | list (FIND LLVM_TARGETS_BUILT "${TARGET_NAME}" _index) |
| 84 | if (${_index} EQUAL -1) | 88 | if (${_index} EQUAL -1) |
| 85 | # Save the error message, in case this is the last llvm-config we find | 89 | # Save the error message, in case this is the last llvm-config we find |
| ... | @@ -87,27 +91,13 @@ if(ZIG_USE_LLVM_CONFIG) | ... | @@ -87,27 +91,13 @@ if(ZIG_USE_LLVM_CONFIG) |
| 87 | | 91 | |
| 88 | # Ignore this directory and try the search again | 92 | # Ignore this directory and try the search again |
| 89 | list(APPEND CMAKE_IGNORE_PATH "${LLVM_CONFIG_DIR}") | 93 | list(APPEND CMAKE_IGNORE_PATH "${LLVM_CONFIG_DIR}") |
| 90 | continue() | 94 | set(ZIG_LLVM_REQUIRED_TARGETS_ENABLED FALSE) |
| | 95 | break() |
| 91 | endif() | 96 | endif() |
| 92 | endfunction(NEED_TARGET) | 97 | endforeach() |
| 93 | NEED_TARGET("AArch64") | 98 | if (NOT ZIG_LLVM_REQUIRED_TARGETS_ENABLED) |
| 94 | NEED_TARGET("AMDGPU") | 99 | continue() |
| 95 | NEED_TARGET("ARM") | 100 | endif() |
| 96 | NEED_TARGET("AVR") | | |
| 97 | NEED_TARGET("BPF") | | |
| 98 | NEED_TARGET("Hexagon") | | |
| 99 | NEED_TARGET("Lanai") | | |
| 100 | NEED_TARGET("Mips") | | |
| 101 | NEED_TARGET("MSP430") | | |
| 102 | NEED_TARGET("NVPTX") | | |
| 103 | NEED_TARGET("PowerPC") | | |
| 104 | NEED_TARGET("RISCV") | | |
| 105 | NEED_TARGET("Sparc") | | |
| 106 | NEED_TARGET("SystemZ") | | |
| 107 | NEED_TARGET("VE") | | |
| 108 | NEED_TARGET("WebAssembly") | | |
| 109 | NEED_TARGET("X86") | | |
| 110 | NEED_TARGET("XCore") | | |
| 111 | | 101 | |
| 112 | # Got it! | 102 | # Got it! |
| 113 | break() | 103 | break() |