@@ -18,17 +18,14 @@ target_include_directories(DispatchStubs PRIVATE
18
18
set_target_properties (DispatchStubs PROPERTIES
19
19
POSITION_INDEPENDENT_CODE YES )
20
20
21
-
22
21
if (CMAKE_SYSTEM_NAME STREQUAL Darwin)
23
- add_custom_command (OUTPUT ${PROJECT_SOURCE_DIR} /dispatch/module.modulemap
24
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${PROJECT_SOURCE_DIR} /dispatch/darwin/module.modulemap ${PROJECT_SOURCE_DIR} /dispatch/module.modulemap)
22
+ set (DISPATCH_MODULE_MAP ${PROJECT_SOURCE_DIR} /dispatch/darwin/module.modulemap)
25
23
else ()
26
- add_custom_command (OUTPUT ${PROJECT_SOURCE_DIR} /dispatch/module.modulemap
27
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${PROJECT_SOURCE_DIR} /dispatch/generic/module.modulemap ${PROJECT_SOURCE_DIR} /dispatch/module.modulemap)
24
+ set (DISPATCH_MODULE_MAP ${PROJECT_SOURCE_DIR} /dispatch/generic/module.modulemap)
28
25
endif ()
29
- add_custom_target (module-map ALL
30
- DEPENDS ${PROJECT_SOURCE_DIR } /dispatch/module.modulemap)
31
-
26
+ configure_file (dispatch-vfs.yaml.in
27
+ ${CMAKE_CURRENT_BINARY_DIR } /dispatch-vfs-overlay.yaml
28
+ @ONLY)
32
29
33
30
add_library (swiftDispatch
34
31
Block.swift
@@ -44,7 +41,8 @@ target_compile_options(swiftDispatch PRIVATE
44
41
"SHELL:-Xcc -fblocks"
45
42
"SHELL:-Xcc -fmodule-map-file=${PROJECT_SOURCE_DIR} /dispatch/module.modulemap"
46
43
"SHELL:-Xcc -I${PROJECT_SOURCE_DIR} "
47
- "SHELL:-Xcc -I${PROJECT_SOURCE_DIR} /src/swift/shims" )
44
+ "SHELL:-Xcc -I${PROJECT_SOURCE_DIR} /src/swift/shims"
45
+ "SHELL:-vfsoverlay ${CMAKE_CURRENT_BINARY_DIR} /dispatch-vfs-overlay.yaml" )
48
46
set_target_properties (swiftDispatch PROPERTIES
49
47
Swift_MODULE_NAME Dispatch
50
48
Swift_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} /swift
0 commit comments