Skip to content
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

x/build: add a Linux LUCI builder with a recent Clang toolchain #64563

Closed
bcmills opened this issue Dec 5, 2023 · 4 comments
Closed

x/build: add a Linux LUCI builder with a recent Clang toolchain #64563

bcmills opened this issue Dec 5, 2023 · 4 comments
Assignees
Labels
Builders x/build issues (builders, bots, dashboards) FeatureRequest NeedsFix The path to resolution is known, but the work has not been done. new-builder OS-Linux
Milestone

Comments

@bcmills
Copy link
Contributor

bcmills commented Dec 5, 2023

As noted in #64423 (comment), there is a cmd/go test that currently fails with Clang 14.0.6, but passes on the linux-amd64-clang post-commit builder (https://build.golang.org/log/f99f0dad3b4c5e7ad8da042b9f541a02313edc02), presumably because the clang version installed on that builder is very old (7.0.1, released December 2018) and reports its version differently.

It appears that the most recent Clang release is 17.0.6, released Nov. 28, 2023.

We expect Go users to upgrade to the latest supported release within ~one year. We should at least test against our own dependencies with the same promptness, which would imply a builder with at least least Clang 15.

@gopherbot gopherbot added the Builders x/build issues (builders, bots, dashboards) label Dec 5, 2023
@gopherbot gopherbot added this to the Unreleased milestone Dec 5, 2023
@qiulaidongfeng
Copy link
Member

See #64400 , cmd/cgo/internal/testtls if the failure is not Windows-specific, the new builder may see the same failure. But I haven't tried to test it on linux.

@cagedmantis cagedmantis added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Dec 6, 2023
@gopherbot
Copy link

Change https://go.dev/cl/559255 mentions this issue: main.star: add clang16 builder type

@mknyszek
Copy link
Contributor

mknyszek commented Jan 29, 2024

Assuming that all works well with this attempt to add a clang builder to LUCI, I've also sent out a CL on documentation on how to add new builders for new clang versions and how to update clang minor versions. It should be easy after this to just add as many clang builders as we want, for whatever version we want to test.

gopherbot pushed a commit to golang/build that referenced this issue Jan 29, 2024
This change adds the clang16 builder type so we have at least one
builder where the C toolchain is clang. This is to help align the LUCI
builders with the old infrastructure.

For golang/go#61101.
For golang/go#64563.

Change-Id: I8b0ef5d02c8fec8eeea6664d2abde5d676d09634
Reviewed-on: https://go-review.googlesource.com/c/build/+/559255
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
TryBot-Bypass: Michael Knyszek <mknyszek@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
@dmitshur dmitshur added NeedsFix The path to resolution is known, but the work has not been done. and removed NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. labels Mar 26, 2024
@dmitshur
Copy link
Contributor

which would imply a builder with at least least Clang 15

There's a LUCI builder with clang 15 (e.g., gotip-linux-amd64-clang15) and it's been working okay for a while, so I think we can close this out. (There were some additional issues uncovered initially, and I believe they're resolved by now. A separate issue #65356 tracks more work for future clang 16+ builders.)

Thanks @mknyszek.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Builders x/build issues (builders, bots, dashboards) FeatureRequest NeedsFix The path to resolution is known, but the work has not been done. new-builder OS-Linux
Projects
Status: Done
Development

No branches or pull requests

6 participants