Skip to content

Don't try to link private CYaml in CMake #1345

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 1 commit into from
Jul 25, 2023

Conversation

stephank
Copy link

As of jpsim/Yams#343 and Yams 5.0.0, CYaml is now a private static lib, and we no longer have to link it.

I think we also have to fix this in release/5.9 and main? Do we need separate PRs for those?

As of jpsim/Yams#343 and Yams 5.0.0, CYaml is now a
private static lib, and we no longer have to link it.
@compnerd
Copy link
Member

compnerd commented May 1, 2023

https://github.com/apple/swift/blob/main/utils/update_checkout/update-checkout-config.json#L121 shows that we are on 5.0.1 which seems like it does mean that we shouldn't be linking in CYaml here. Thanks for fixing this @stephank!

@compnerd
Copy link
Member

compnerd commented May 1, 2023

@swift-ci please test

Copy link
Contributor

@artemcm artemcm left a comment

Choose a reason for hiding this comment

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

Thanks @stephank

@artemcm
Copy link
Contributor

artemcm commented May 1, 2023

I think we also have to fix this in release/5.9 and main? Do we need separate PRs for those?

Please open a new PR with a cherry-pick of this commit against the release/5.9 branch.

@artemcm
Copy link
Contributor

artemcm commented May 1, 2023

This repo's CI system does not exercise the CMake build here. So I am running a cross-repo test from swiftlang/swift#60581, just for sanity. Please don't merge until that's green.

@airspeedswift
Copy link
Member

Is there a strong motivator to change this in 5.8, versus just in main and 5.9?

@compnerd
Copy link
Member

compnerd commented May 3, 2023

https://github.com/apple/swift/blob/main/utils/update_checkout/update-checkout-config.json#L251 ... seems to indicate that we should fix it on 5.8 as well. Not sure how this escaped the 5.8 release.

@stephank
Copy link
Author

stephank commented May 3, 2023

I believe there's an argument to be made this is Nixpkgs specific. CYaml is probably still available in the Yams build tree during the normal Swift SDK build process, but in order to leverage existing CMake infra in Nixpkgs, we split up each dependency into its own build, and also perform separate install steps. CYaml is no longer available when you install Yams separately.

On the other hand, CYaml is now a private detail of Yams, and in theory they could pull the rug on you. :) (Though unlikely, I guess, especially as long as the version is pinned.)

@nkcsgexi nkcsgexi merged commit 0edcbe3 into swiftlang:release/5.8 Jul 25, 2023
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