[llvm][Cmake] Expand "all" in LLVM_ENABLE_PROJECTS before other checks

Differential Revision: https://reviews.llvm.org/D132454
This commit is contained in:
Kadir Cetinkaya 2022-08-23 11:04:44 +02:00
parent ea0549d41b
commit 0c9b32e7dd
No known key found for this signature in database
GPG Key ID: E39E36B8D2057ED6

View File

@ -116,8 +116,12 @@ set(LLVM_EXTRA_PROJECTS "flang")
set(LLVM_KNOWN_PROJECTS "${LLVM_ALL_PROJECTS};${LLVM_EXTRA_PROJECTS}")
set(LLVM_ENABLE_PROJECTS "" CACHE STRING
"Semicolon-separated list of projects to build (${LLVM_KNOWN_PROJECTS}), or \"all\".")
# Make sure expansion happens first to not handle "all" in rest of the checks.
if( LLVM_ENABLE_PROJECTS STREQUAL "all" )
set( LLVM_ENABLE_PROJECTS ${LLVM_ALL_PROJECTS})
endif()
foreach(proj ${LLVM_ENABLE_PROJECTS})
if (NOT proj STREQUAL "all" AND NOT proj STREQUAL "llvm" AND NOT "${proj}" IN_LIST LLVM_KNOWN_PROJECTS)
if (NOT proj STREQUAL "llvm" AND NOT "${proj}" IN_LIST LLVM_KNOWN_PROJECTS)
MESSAGE(FATAL_ERROR "${proj} isn't a known project: ${LLVM_KNOWN_PROJECTS}")
endif()
endforeach()
@ -131,10 +135,6 @@ foreach(proj "libcxx" "libcxxabi" "libunwind")
endif()
endforeach()
if( LLVM_ENABLE_PROJECTS STREQUAL "all" )
set( LLVM_ENABLE_PROJECTS ${LLVM_ALL_PROJECTS})
endif()
if ("flang" IN_LIST LLVM_ENABLE_PROJECTS)
if (NOT "mlir" IN_LIST LLVM_ENABLE_PROJECTS)
message(STATUS "Enabling MLIR as a dependency to flang")