Skip to content

Commit 5ac32e7

Browse files
committed
Add dependency edge between dispatch and clang
The dispatch that's built into concurrency on Linux and Windows is built with clang, but there's no dependency edge. Usually this isn't noticed because concurrency and most the things it depends on also depend on clang directly, but occasionally ninja will choose the dispatch build before building other dependencies, which then fails because there's no clang.
1 parent 1cf3b64 commit 5ac32e7

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

cmake/modules/Libdispatch.cmake

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,10 @@ foreach(sdk ${DISPATCH_SDKS})
145145

146146
ExternalProject_Get_Property("${LIBDISPATCH_VARIANT_NAME}" install_dir)
147147

148+
if(NOT SWIFT_BUILT_STANDALONE AND NOT "${CMAKE_C_COMPILER_ID}" MATCHES "Clang")
149+
add_dependencies("${LIBDISPATCH_VARIANT_NAME}" clang)
150+
endif()
151+
148152
# CMake does not like the addition of INTERFACE_INCLUDE_DIRECTORIES without
149153
# the directory existing. Just create the location which will be populated
150154
# during the installation.

0 commit comments

Comments
 (0)