-
Notifications
You must be signed in to change notification settings - Fork 18k
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
cmd/compile: Support make jobserver
for dynamic negotiable concurreny during compilation
#52387
Comments
make jobserver
for dynamic concurreny during compilation
make jobserver
for dynamic concurreny during compilationmake jobserver
for dynamic negotiable concurreny during compilation
Concretely and technically, what does it mean to support the "make jobserver"? Is there a spec or something that explains what this means? Also, my impression is most Go users use "go build" or Bazel. Will addressing this issue help those users? It sounds like it would only help Go users that use GNU make, which I didn't think there were that many. |
Make Jobserver is more concretely defined in:
Sadly, I don't think there is a "spec", but this is unlikely to change in a non-backward compatible way since GNU based on historic data. (There are some subtleties involved, but) Essentially
Please see foreign jobserver support for bazel for more details how this would help even a wider audience who are already using this for their mixed language bazel setup. In a wider context, as stated in the original comment, this would essentially allow much better utilization of the CI for pure As a fringe benefit, this would also allow Sadly, I don't know how the workflows of gophers look like (I'd be a very poor judge), so can't comment more generically. EDIT: |
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Not tested
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
What did you expect to see?
What did you see instead?
Possible solution
Implement support for GNU make jobserver for compilation. This doesn't have to be exposed for 80-90% of users whose primary use-case doesn't involve parallel independent compilation of go packages.
Bonus: Both compilation and testing can benefit from this
Pro:
Con:
The text was updated successfully, but these errors were encountered: