-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Update osx toolchain to match C/C++ part of latest upstream toolchain #7761
Conversation
@drake-jenkins-bot mac-highsierra-clang-bazel-experimental please |
@drake-jenkins-bot mac-highsierra-clang-bazel-experimental please |
+@soonho-tri for feature review. Please test locally. Every combination of CI job that we have for Mac has passed. |
Reviewed 2 of 3 files at r1. tools/cc_toolchain/osx_ar_wrapper.sh, line 5 at r1 (raw file):
Could you add a note to this line (i.e. why we need this?) Comments from Reviewable |
Local tests passed. I couldn't checked the changes in Reviewed 1 of 3 files at r1. Comments from Reviewable |
Review status: 2 of 3 files reviewed at latest revision, 1 unresolved discussion. tools/cc_toolchain/osx_ar_wrapper.sh, line 5 at r1 (raw file): Previously, soonho-tri (Soonho Kong) wrote…
Done. Comments from Reviewable |
+@sammy-tri for platform review. |
Reviewed 1 of 1 files at r2. Comments from Reviewable |
I don't really know how to review the CROSSTOOL changes. I think I could probably update it using the provided instructions if I absolutely had to, so maybe that's enough? since it doesn't seem to be any less reproducible (and is if anything better documented) than the old builds and CI seems happy. Reviewed 1 of 3 files at r1, 1 of 1 files at r2. Comments from Reviewable |
Relates in part to RobotLocomotion/drake-external-examples#78. Also significantly improves #5183.
The amount of code in the new
CROSSTOOL
really does illustrate the difficulty of using a custom toolchain while they update the format of theCROSSTOOL
file in upstream bazel. Basically, the current situation is that some of the build settings use the legacy format and some use the new feature/action-based format. Bazel does attempt to generate various parts of the new format from the old, but it is not perfect on macOS. Hence, our macOS toolchain was both out-of-date and internally inconsistent.This change is