Skip to content

Commit 475f7c1

Browse files
committed
Revert "build: remove SWIFT_NEED_EXPLICIT_LIBDISPATCH (NFC)"
This reverts commit 18570c7 because it breaks building on platforms that do not want or need libdispatch.
1 parent ff80326 commit 475f7c1

File tree

8 files changed

+19
-27
lines changed

8 files changed

+19
-27
lines changed

CMakeLists.txt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -465,7 +465,10 @@ option(SWIFT_BUILD_SOURCEKIT "Build SourceKit" TRUE)
465465
option(SWIFT_ENABLE_SOURCEKIT_TESTS "Enable running SourceKit tests" ${SWIFT_BUILD_SOURCEKIT})
466466

467467
if(SWIFT_BUILD_SYNTAXPARSERLIB OR SWIFT_BUILD_SOURCEKIT)
468-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
468+
if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
469+
set(SWIFT_NEED_EXPLICIT_LIBDISPATCH FALSE)
470+
else()
471+
set(SWIFT_NEED_EXPLICIT_LIBDISPATCH TRUE)
469472
if(NOT EXISTS "${SWIFT_PATH_TO_LIBDISPATCH_SOURCE}")
470473
message(SEND_ERROR "SyntaxParserLib and SourceKit require libdispatch on non-Darwin hosts. Please specify SWIFT_PATH_TO_LIBDISPATCH_SOURCE")
471474
endif()
@@ -951,7 +954,7 @@ if (LLVM_ENABLE_DOXYGEN)
951954
message(STATUS "Doxygen: enabled")
952955
endif()
953956

954-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
957+
if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
955958
if(CMAKE_C_COMPILER_ID STREQUAL Clang AND
956959
CMAKE_C_COMPILER_VERSION VERSION_GREATER 3.8
957960
OR LLVM_USE_SANITIZER)

tools/SourceKit/lib/Support/CMakeLists.txt

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,7 @@ target_link_libraries(SourceKitSupport PRIVATE
1111
swiftSyntax
1212
clangBasic
1313
clangRewrite)
14-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
15-
target_link_libraries(SourceKitSupport INTERFACE
16-
dispatch
17-
BlocksRuntime)
14+
if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
15+
target_link_libraries(SourceKitSupport INTERFACE dispatch BlocksRuntime)
1816
endif()
1917

tools/SourceKit/tools/complete-test/CMakeLists.txt

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@ if(SWIFT_SOURCEKIT_USE_INPROC_LIBRARY)
77
else()
88
target_link_libraries(complete-test PRIVATE sourcekitd)
99
endif()
10-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
11-
target_link_libraries(complete-test PRIVATE
12-
dispatch
13-
BlocksRuntime)
10+
if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
11+
target_link_libraries(complete-test PRIVATE dispatch BlocksRuntime)
1412
endif()
1513

1614
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")

tools/SourceKit/tools/sourcekitd-repl/CMakeLists.txt

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,8 @@ if(HAVE_UNICODE_LIBEDIT)
1212
else()
1313
target_link_libraries(sourcekitd-repl PRIVATE sourcekitd)
1414
endif()
15-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
16-
target_link_libraries(sourcekitd-repl PRIVATE
17-
dispatch
18-
BlocksRuntime)
15+
if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
16+
target_link_libraries(sourcekitd-repl PRIVATE dispatch BlocksRuntime)
1917
endif()
2018

2119
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")

tools/SourceKit/tools/sourcekitd-test/CMakeLists.txt

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,8 @@ if(SWIFT_SOURCEKIT_USE_INPROC_LIBRARY)
1717
else()
1818
target_link_libraries(sourcekitd-test PRIVATE sourcekitd)
1919
endif()
20-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
21-
target_link_libraries(sourcekitd-test PRIVATE
22-
dispatch
23-
BlocksRuntime)
20+
if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
21+
target_link_libraries(sourcekitd-test PRIVATE dispatch BlocksRuntime)
2422
endif()
2523

2624
add_dependencies(sourcekitd-test sourcekitdTestOptionsTableGen)

tools/libSwiftSyntaxParser/CMakeLists.txt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,8 @@ endif()
4545

4646
set_property(TARGET libSwiftSyntaxParser APPEND_STRING PROPERTY
4747
COMPILE_FLAGS " -fblocks")
48-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
49-
target_link_libraries(libSwiftSyntaxParser PRIVATE
50-
BlocksRuntime)
48+
if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
49+
target_link_libraries(libSwiftSyntaxParser PRIVATE BlocksRuntime)
5150
endif()
5251

5352
add_dependencies(parser-lib libSwiftSyntaxParser)

tools/swift-syntax-parser-test/CMakeLists.txt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ endif()
2727

2828
set_property(TARGET swift-syntax-parser-test APPEND_STRING PROPERTY
2929
COMPILE_FLAGS " -fblocks")
30-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
31-
target_link_libraries(swift-syntax-parser-test PRIVATE
32-
BlocksRuntime)
30+
if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
31+
target_link_libraries(swift-syntax-parser-test PRIVATE BlocksRuntime)
3332
endif()

unittests/SyntaxParser/CMakeLists.txt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ endif()
2424

2525
set_property(TARGET SwiftSyntaxParserTests APPEND_STRING PROPERTY
2626
COMPILE_FLAGS " -fblocks")
27-
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
28-
target_link_libraries(SwiftSyntaxParserTests PRIVATE
29-
BlocksRuntime)
27+
if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
28+
target_link_libraries(SwiftSyntaxParserTests PRIVATE BlocksRuntime)
3029
endif()

0 commit comments

Comments
 (0)