Skip to content

Overlay: add C++ interop libraries #83347

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Aug 7, 2025
Merged

Conversation

compnerd
Copy link
Member

This introduces a build of the C++ interop runtime support to the new runtime library build.

@compnerd
Copy link
Member Author

@swift-ci please smoke test

@compnerd
Copy link
Member Author

@swift-ci please smoke test

@compnerd
Copy link
Member Author

Please test with following PRs:
swiftlang/swift-installer-scripts#445

@swift-ci please build toolchain Windows platform

@compnerd
Copy link
Member Author

@swift-ci please smoke test macOS platform

@compnerd compnerd force-pushed the c++interop branch 2 times, most recently from ab44174 to 61906d0 Compare July 29, 2025 00:22
@compnerd
Copy link
Member Author

@swift-ci please smoke test windows platform

@compnerd
Copy link
Member Author

@swift-ci please smoke test

@compnerd
Copy link
Member Author

Please test with following PRs:
swiftlang/swift-installer-scripts#445

@swift-ci please build toolchain Windows platform

@compnerd
Copy link
Member Author

@swift-ci please smoke test

@compnerd
Copy link
Member Author

compnerd commented Aug 1, 2025

@swift-ci please smoke test macOS platform

@compnerd
Copy link
Member Author

compnerd commented Aug 1, 2025

@swift-ci please smoke test macOS platform

Copy link
Contributor

@edymtt edymtt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is reasonable to start landing the bulk of the logic -- asking for a few changes to not regress the existing Overlay build, and to allow vendors to enable this on their own schedule.

This introduces a build of the C++ interop runtime support to the new
runtime library build.
@compnerd
Copy link
Member Author

compnerd commented Aug 5, 2025

@swift-ci please smoke test

@compnerd
Copy link
Member Author

compnerd commented Aug 6, 2025

@swift-ci please test Windows platform

Copy link
Contributor

@edymtt edymtt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, pending a minor change in how we set the default for SwiftOverlay_ENABLE_CXX_INTEROP

@compnerd
Copy link
Member Author

compnerd commented Aug 6, 2025

@swift-ci please smoke test

@compnerd
Copy link
Member Author

compnerd commented Aug 6, 2025

@swift-ci please smoke test macOS platform

2 similar comments
@compnerd
Copy link
Member Author

compnerd commented Aug 6, 2025

@swift-ci please smoke test macOS platform

@tshortli
Copy link
Contributor

tshortli commented Aug 7, 2025

@swift-ci please smoke test macOS platform

if(NOT APPLE)
add_subdirectory(cxxshim)
endif()
if(LINUX)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually need to target a Linux that does not have a libstdc++, but uses libcxx instead. This assumption is incorrect.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fair enough - I think that we can iterate on that subsequently.

@compnerd compnerd merged commit c040f97 into swiftlang:main Aug 7, 2025
3 checks passed
@compnerd compnerd deleted the c++interop branch August 7, 2025 15:41
Comment on lines +2 to +4
if(NOT APPLE)
add_subdirectory(cxxshim)
endif()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't seem correct: CxxShim headers are used on all of the platforms, including Apple ones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants