build(SdkGenerator): upgrade CppSharp and retarget to net9.0 - #59
Draft
ofmiceandcam98-eng wants to merge 1 commit into
Draft
build(SdkGenerator): upgrade CppSharp and retarget to net9.0#59ofmiceandcam98-eng wants to merge 1 commit into
ofmiceandcam98-eng wants to merge 1 commit into
Conversation
CppSharp 1.1.5.3168 bundles a Clang too old for the MSVC 14.44 STL, so SdkGenerator fails on a current toolchain: error STL1000: Unexpected compiler version, expected Clang 19.0.0 or newer 1.1.84.17100 ships a new enough Clang. It targets net9.0 only, so SdkGenerator moves to net9.0 as well; the SDK and the plugins stay on net8.0. CI already installs the .NET 9 SDK. Only SdkGenerator is affected - it is a build-time code generator, not something shipped to clients.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
SdkGeneratorpinsCppSharp 1.1.5.3168, whose bundled Clang is too old for the MSVC 14.44 STL. On a current toolchain the build fails with:Fix
Upgrade to
CppSharp 1.1.84.17100, which ships a new enough Clang. That package targetsnet9.0only, soSdkGeneratoris retargeted tonet9.0as well.Scope is deliberately narrow: only
SdkGeneratormoves to net9.0. The SDK and plugins stay on net8.0, and CI already installs the .NET 9 SDK, so no workflow change is needed.SdkGeneratoris a build-time code generator, not something shipped to clients.Worth knowing
SdkGenerator/Program.cswrapsMainincatch (Exception e) { Console.WriteLine(e); }, so codegen failures exit 0. The build then proceeds and fails later with confusingnamespace 'Internal' does not existerrors instead of surfacing the real parse error.That cost me a while to track down. Worth a non-zero exit — happy to raise it separately if you'd like.
Related
protobuf-cpppin (also needed for a clean-checkout build)