Skip to content

[ci] Add clang-cl workflow and fix clang-cl compilation #8007

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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

Gold856
Copy link
Contributor

@Gold856 Gold856 commented Jun 4, 2025

Since we've been thinking about using clang-cl for Windows to improve compilation times, this PR adds a clang-cl workflow to ensure it builds.

@Gold856 Gold856 requested review from PeterJohnson and a team as code owners June 4, 2025 20:25
@github-actions github-actions bot added component: cscore CameraServer library component: wpiutil WPI utility library component: datalogtool DataLog Tool component: wpinet WPI networking library component: teamnumbersetter roboRIO Team Number Setter labels Jun 4, 2025
@Gold856 Gold856 force-pushed the clang-cl branch 3 times, most recently from c3eedce to ba75de3 Compare June 5, 2025 05:21
@github-actions github-actions bot removed the component: teamnumbersetter roboRIO Team Number Setter label Jun 5, 2025
@PeterJohnson
Copy link
Member

I don't think we have been considering using clang-cl. It's not quite 100% ABI compatible with MSVC at the C++ level, so we wouldn't want to distribute binaries built with it unless we also switched all users to clang-cl as well (https://clang.llvm.org/docs/MSVCCompatibility.html).

@Gold856
Copy link
Contributor Author

Gold856 commented Jun 5, 2025

Yeah, I meant considering switching us and teams as well. Hypothetically, in the future, we could have some Bazel setup that uses clang-cl for C++ users so they have faster compile times, if we want to go down that path. I think it would be good to at least build for it in CI so that if we want to switch, we have the option to do so easily.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: cscore CameraServer library component: datalogtool DataLog Tool component: wpinet WPI networking library component: wpiutil WPI utility library
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants