diff --git a/CMakeLists.txt b/CMakeLists.txt index 74b958b6acbb3..ac3a7515957c4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1282,7 +1282,7 @@ else() # Some tools (e.g. swift-reflection-dump) rely on a host swiftRemoteInspection, # so ensure we build that when building tools. - if(SWIFT_INCLUDE_TOOLS) + if(SWIFT_INCLUDE_TOOLS OR SWIFT_BUILD_STDLIB_CXX_MODULE) add_subdirectory(stdlib/public/SwiftShims/swift/shims) endif() diff --git a/stdlib/public/Cxx/CMakeLists.txt b/stdlib/public/Cxx/CMakeLists.txt index 87026aadc4e78..2ebf6d1d302b9 100644 --- a/stdlib/public/Cxx/CMakeLists.txt +++ b/stdlib/public/Cxx/CMakeLists.txt @@ -1,8 +1,16 @@ +list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}/../../cmake/modules) +include(StdlibOptions) + set(SWIFT_CXX_LIBRARY_KIND STATIC) if("${SWIFT_HOST_VARIANT_SDK}" STREQUAL "WINDOWS") set(SWIFT_CXX_LIBRARY_KIND SHARED) endif() +set(SWIFT_CXX_DEPS symlink_clang_headers) +if(SWIFT_STDLIB_SUPPORT_BACK_DEPLOYMENT) + list(APPEND SWIFT_CXX_DEPS copy-legacy-layouts) +endif() + add_swift_target_library(swiftCxx ${SWIFT_CXX_LIBRARY_KIND} NO_LINK_NAME IS_STDLIB IS_SWIFT_ONLY CxxConvertibleToCollection.swift CxxDictionary.swift @@ -20,6 +28,7 @@ add_swift_target_library(swiftCxx ${SWIFT_CXX_LIBRARY_KIND} NO_LINK_NAME IS_STDL -Xcc -nostdinc++ LINK_FLAGS "${SWIFT_RUNTIME_SWIFT_LINK_FLAGS}" + DEPENDS ${SWIFT_CXX_DEPS} INSTALL_IN_COMPONENT compiler INSTALL_WITH_SHARED)