Don't try to link private CYaml in CMake#1345
Conversation
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.
|
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! |
|
@swift-ci please test |
Please open a new PR with a cherry-pick of this commit against the |
|
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. |
|
Is there a strong motivator to change this in 5.8, versus just in main and 5.9? |
|
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. |
|
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.) |
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.9andmain? Do we need separate PRs for those?