Skip to content

Commit d1ba150

Browse files
committed
build: simplify the default calculation for SwiftSyntax
`CMAKE_SYSTEM_NAME` is **always** available - it is a CMake intrinsic variable, the precondition is meaningless. SwiftSyntax and SwiftSyntaxParser only require clang and libdispatch. Merge the condition checks to just that.
1 parent 61c5064 commit d1ba150

File tree

1 file changed

+4
-21
lines changed

1 file changed

+4
-21
lines changed

CMakeLists.txt

Lines changed: 4 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -409,30 +409,13 @@ if(MSVC OR "${CMAKE_SIMULATE_ID}" STREQUAL MSVC)
409409
include(ClangClCompileRules)
410410
endif()
411411

412-
precondition(CMAKE_SYSTEM_NAME)
413-
if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
412+
if(CMAKE_SYSTEM_NAME STREQUAL Darwin OR
413+
EXISTS ${SWIFT_PATH_TO_LIBDISPATCH_SOURCE})
414414
set(SWIFT_BUILD_SYNTAXPARSERLIB_default TRUE)
415415
set(SWIFT_BUILD_SOURCEKIT_default TRUE)
416-
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
417-
if(EXISTS ${SWIFT_PATH_TO_LIBDISPATCH_SOURCE})
418-
set(SWIFT_BUILD_SYNTAXPARSERLIB_default TRUE)
419-
set(SWIFT_BUILD_SOURCEKIT_default TRUE)
420-
else()
421-
set(SWIFT_BUILD_SYNTAXPARSERLIB_default FALSE)
422-
set(SWIFT_BUILD_SOURCEKIT_default FALSE)
423-
endif()
424-
elseif(CMAKE_SYSTEM_NAME STREQUAL Windows)
425-
if(EXISTS ${SWIFT_PATH_TO_LIBDISPATCH_SOURCE} AND
426-
CMAKE_CXX_COMPILER_ID STREQUAL Clang)
427-
set(SWIFT_BUILD_SYNTAXPARSERLIB_default TRUE)
428-
set(SWIFT_BUILD_SOURCEKIT_default TRUE)
429-
else()
430-
set(SWIFT_BUILD_SYNTAXPARSERLIB_default FALSE)
431-
set(SWIFT_BUILD_SOURCEKIT_default FALSE)
432-
endif()
433416
else()
434-
set(SWIFT_BUILD_SYNTAXPARSERLIB_default FALSE)
435-
set(SWIFT_BUILD_SOURCEKIT_default FALSE)
417+
set(SWIFT_BUILD_SYNTAXPARSERLIB_default FALSE)
418+
set(SWIFT_BUILD_SOURCEKIT_default FALSE)
436419
endif()
437420
option(SWIFT_BUILD_SYNTAXPARSERLIB
438421
"Build the Swift Syntax Parser library"

0 commit comments

Comments
 (0)