@@ -12,6 +12,16 @@ function(emit_swift_interface target)
12
12
$< $< COMPILE_LANGUAGE:Swift> :-emit-private-module-interface-path$< SEMICOLON> ${CMAKE_CURRENT_BINARY_DIR} /$< TARGET_PROPERTY:${target} ,Swift_MODULE_NAME> .private.swiftinterface>
13
13
$< $< COMPILE_LANGUAGE:Swift> :-library-level$< SEMICOLON> api>
14
14
$< $< COMPILE_LANGUAGE:Swift> :-Xfrontend$< SEMICOLON> -require-explicit-availability=ignore> )
15
+
16
+ # Emit catalyst swiftmodules and interfaces
17
+ if (SwiftCore_VARIANT_MODULE_TRIPLE )
18
+ set (variant_module_tmp_dir "${CMAKE_CURRENT_BINARY_DIR} /${target} -${SwiftCore_VARIANT_MODULE_TRIPLE} " )
19
+ file (MAKE_DIRECTORY "${variant_module_tmp_dir} " )
20
+ target_compile_options (${target} PRIVATE
21
+ "$<$<COMPILE_LANGUAGE:Swift>:SHELL:-emit-variant-module-path ${variant_module_tmp_dir} /${target} .swiftmodule>"
22
+ "$<$<COMPILE_LANGUAGE:Swift>:SHELL:-emit-variant-module-interface-path ${variant_module_tmp_dir} /${target} .swiftinterface>"
23
+ "$<$<COMPILE_LANGUAGE:Swift>:SHELL:-emit-variant-private-module-interface-path ${variant_module_tmp_dir} /${target} .private.swiftinterface>" )
24
+ endif ()
15
25
endif ()
16
26
endfunction ()
17
27
@@ -26,5 +36,18 @@ function(install_swift_interface target)
26
36
install (FILES "${CMAKE_CURRENT_BINARY_DIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.private.swiftinterface"
27
37
RENAME "${SwiftCore_MODULE_TRIPLE} .private.swiftinterface"
28
38
DESTINATION "${SwiftCore_INSTALL_SWIFTMODULEDIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftmodule" )
39
+
40
+ # Install catalyst interface files
41
+ if (SwiftCore_VARIANT_MODULE_TRIPLE )
42
+ install (FILES "${CMAKE_CURRENT_BINARY_DIR} /${target} -${SwiftCore_VARIANT_MODULE_TRIPLE} /${target} .swiftmodule"
43
+ RENAME "${SwiftCore_VARIANT_MODULE_TRIPLE} .swiftmodule"
44
+ DESTINATION "${SwiftCore_INSTALL_SWIFTMODULEDIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftmodule" )
45
+ install (FILES "${CMAKE_CURRENT_BINARY_DIR} /${target} -${SwiftCore_VARIANT_MODULE_TRIPLE} /${target} .swiftinterface"
46
+ RENAME "${SwiftCore_VARIANT_MODULE_TRIPLE} .swiftinterface"
47
+ DESTINATION "${SwiftCore_INSTALL_SWIFTMODULEDIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftmodule" )
48
+ install (FILES "${CMAKE_CURRENT_BINARY_DIR} /${target} -${SwiftCore_VARIANT_MODULE_TRIPLE} /${target} .private.swiftinterface"
49
+ RENAME "${SwiftCore_VARIANT_MODULE_TRIPLE} .private.swiftinterface"
50
+ DESTINATION "${SwiftCore_INSTALL_SWIFTMODULEDIR} /$<TARGET_PROPERTY:${target} ,Swift_MODULE_NAME>.swiftmodule" )
51
+ endif ()
29
52
endif ()
30
53
endfunction ()
0 commit comments