mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[cxx-interop] Install CxxShim library for macCatalyst
This is a follow-up after the change that enabled Cxx and CxxStdlib overlays on macCatalyst: https://github.com/swiftlang/swift/pull/74994. The compiler relies on the presence of these shim libraries in the toolchain. rdar://135275773
This commit is contained in:
@@ -9,6 +9,11 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
add_custom_command(OUTPUT ${module_dir_static}
|
||||
COMMAND ${CMAKE_COMMAND} "-E" "make_directory" "${module_dir_static}")
|
||||
endif()
|
||||
if(SWIFT_ENABLE_MACCATALYST AND "${sdk}" STREQUAL "OSX")
|
||||
set(maccatalyst_module_dir "${SWIFTLIB_DIR}/${SWIFT_SDK_MACCATALYST_LIB_SUBDIR}")
|
||||
add_custom_command(OUTPUT ${maccatalyst_module_dir}
|
||||
COMMAND ${CMAKE_COMMAND} "-E" "make_directory" "${maccatalyst_module_dir}")
|
||||
endif()
|
||||
|
||||
set(outputs)
|
||||
foreach(source libcxxshim.modulemap libcxxshim.h libcxxstdlibshim.h)
|
||||
@@ -25,11 +30,21 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
COMMENT "Copying ${source} to ${module_dir_static}")
|
||||
list(APPEND outputs "${module_dir_static}/${source}")
|
||||
endif()
|
||||
if(SWIFT_ENABLE_MACCATALYST AND "${sdk}" STREQUAL "OSX")
|
||||
add_custom_command(OUTPUT ${maccatalyst_module_dir}/${source}
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${source}
|
||||
COMMAND ${CMAKE_COMMAND} "-E" "copy_if_different" "${CMAKE_CURRENT_SOURCE_DIR}/${source}" "${maccatalyst_module_dir}/${source}"
|
||||
COMMENT "Copying ${source} to ${maccatalyst_module_dir}")
|
||||
list(APPEND outputs "${maccatalyst_module_dir}/${source}")
|
||||
endif()
|
||||
endforeach()
|
||||
list(APPEND outputs ${module_dir})
|
||||
if(SWIFT_BUILD_STATIC_STDLIB OR SWIFT_SDK_${sdk}_STATIC_ONLY)
|
||||
list(APPEND outputs ${module_dir_static})
|
||||
endif()
|
||||
if(SWIFT_ENABLE_MACCATALYST AND "${sdk}" STREQUAL "OSX")
|
||||
list(APPEND outputs ${maccatalyst_module_dir})
|
||||
endif()
|
||||
|
||||
add_custom_target(cxxshim-${sdk} ALL
|
||||
DEPENDS ${outputs}
|
||||
@@ -45,6 +60,11 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
DESTINATION "lib/swift_static/${SWIFT_SDK_${sdk}_LIB_SUBDIR}"
|
||||
COMPONENT compiler)
|
||||
endif()
|
||||
if(SWIFT_ENABLE_MACCATALYST AND "${sdk}" STREQUAL "OSX")
|
||||
swift_install_in_component(FILES libcxxshim.modulemap libcxxshim.h libcxxstdlibshim.h
|
||||
DESTINATION "lib/swift/${SWIFT_SDK_MACCATALYST_LIB_SUBDIR}"
|
||||
COMPONENT compiler)
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
add_custom_target(libcxxshim_modulemap DEPENDS ${libcxxshim_modulemap_target_list})
|
||||
|
||||
Reference in New Issue
Block a user