aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-12-07compiler_wrapper: adds ${sysroot}/usr/lib to linker pathChristopher Di Bella
This change has been in chromiumos-overlay for a while now, but it apparently wasn't ever committed to toolchain-utils. BUG=b:209649372 TEST=This has been in prod for ages. Change-Id: Ied0b519f2f30ef275e921f41e6dbdee9c9442d03 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3321723 Tested-by: Christopher Di Bella <cjdb@google.com> Auto-Submit: Christopher Di Bella <cjdb@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Manoj Gupta <manojgupta@chromium.org>
2021-12-06compiler_wrapper: add missing unused-but-set-varRyan Beltran
This CL adds a Wno-unused-but-set-var flag that was accidentally missing in a clangPostFlags field. THis is already present in the llvm repo, must have been fixed in there without mirroring it. BUG=b:195433889 TEST=None Change-Id: I23fcc91aee7b316cd70652f0119177d5ebdf7bbd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3319338 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Ryan Beltran <ryanbeltran@chromium.org> Tested-by: Ryan Beltran <ryanbeltran@chromium.org>
2021-12-02afdo_metadata: Publish the new kernel profilesManoj Gupta
Update chromeos-kernel-4_4 Update chromeos-kernel-4_14 Update chromeos-kernel-4_19 Update chromeos-kernel-5_4 BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: Ib50ce95a43740d633f4db9601f09d76126bf9abc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3313556 Commit-Queue: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Denis Nikitin <denik@chromium.org> Tested-by: Manoj Gupta <manojgupta@chromium.org> Auto-Submit: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: Denis Nikitin <denik@chromium.org>
2021-11-15llvm_tools: Make skip_dependencies optionalRyan Beltran
This CL makes new skip_denedencies arg in get_upstream patch default to False so that the new behavior introduced in CL:3255665 is disabled by default. This is intended to fix a failure in the nightly revert checker that was preventing cherry_picks. BUG=b:206461485 TEST=Local test of get_upstream_patch.py, and nightly_revert_checker_test.py Change-Id: Ia7586b69f9aefb5ca820a60eed593d45a4b9a5bb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3282951 Reviewed-by: Christopher Di Bella <cjdb@google.com> Commit-Queue: Christopher Di Bella <cjdb@google.com> Tested-by: Christopher Di Bella <cjdb@google.com> Auto-Submit: Ryan Beltran <ryanbeltran@chromium.org>
2021-11-05crosperf: Increase timeout for a crosfleet callDenis Nikitin
Current timeout 2 min may not be sufficiant for `crosfleet dut lease`. Many tests fail with the lock error while lease succeeds. Increase the timeout to 8 minutes. Remove backslashes and fix other minor lints to make upload happy. BUG=b:205325997 TEST=run crosperf locally on veyron Change-Id: Ie3b74a0036cce3daeb58379fc5362797b0e5db03 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3265564 Tested-by: Denis Nikitin <denik@chromium.org> Commit-Queue: Denis Nikitin <denik@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2021-11-04llvm_tools: adds a way to skip dependencies when pulling from PhabChristopher Di Bella
Phabricator has a way to list dependencies, which Arcanist will pull in succession to make sure the patch is correct. This is fine until some of the patches land in main: Arcanist then gets confused and doesn't always correctly apply the patches. This patch makes it possible to skip dependencies by adding a new flag to our upstream patch getter. The current design is only going to permit `--skip_dependencies` when there's exactly one `--differential` patch, since `--skip_dependencies` is a global option. If we're finding this to be a common nuisance, then we can look at redesigning the feature to allow lists of differentials with skipped dependencies. ``` ./get_upstream_patch.py --differential D12345 --skip_dependencies ./get_upstream_patch.py --cl 12345 --differential D45678 --skip_dependencies ./get_upstream_patch.py --cl 12345 --skip-dependencies ./get_upstream_patch.py --differential D12345 \ --differential D45678 \ --skip_dependencies ``` BUG=b:204779256 TEST=Tested locally Change-Id: I89032cba82c17c9f844bfac3cba330d173826ffd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3255665 Commit-Queue: Christopher Di Bella <cjdb@google.com> Tested-by: Christopher Di Bella <cjdb@google.com> Auto-Submit: Christopher Di Bella <cjdb@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-11-04crosperf: Replace non-inclusive languageJordan R Abrahams
Missed a single instance of this, as it's not a violation in go/pi-terms, but is a violation in go/coil. BUG=b:204057159 TEST=Presubmit tests Change-Id: I4bc4997cb42c82c66e4d56281bb16e4452072e01 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3260693 Tested-by: Jordan R Abrahams <ajordanr@google.com> Auto-Submit: Jordan R Abrahams <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-11-03afdo_metadata: Publish the new kernel profilesDenis Nikitin
Update chromeos-kernel-4_4 Update chromeos-kernel-4_14 Update chromeos-kernel-4_19 Update chromeos-kernel-5_4 BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: I59e1e016248a80227b6657236b72bc73168bfa6d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3260685 Tested-by: Denis Nikitin <denik@chromium.org> Auto-Submit: Denis Nikitin <denik@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org>
2021-10-29crosperf: Update default_remotes to new DUTsJordan R Abrahams
DUTs have been moved to different rows and racks. This updates the default_remotes accordingly. These devices are chosen by checking the swarming dimension setting "label-pool=toolchain". Additionally, this removes Lulu machines as they are no longer in the toolchain pool. BUG=b:178744715 TEST=Presubmit hooks Change-Id: Ifefb6cb6d2dae58d3c27b55f3a39bccf2fd27eb4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3252241 Commit-Queue: Jordan R Abrahams <ajordanr@google.com> Tested-by: Jordan R Abrahams <ajordanr@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2021-10-28Replace non-inclusive languageJordan R Abrahams
Wherever possible, this commit removes non-inclusive languages as per COIL policy. Some of this language exists in dead code, so this commit also removes confirmed dead code. Also some minor lint fixes to get the code past the lint checks. BUG=b:204057159 TEST=Presubmit tests Change-Id: I299bfbe5dfcbe761efc5dcb29caea2337abe3f30 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3243940 Tested-by: Jordan R Abrahams <ajordanr@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-10-27llvm_tools: fix yapf warningsRyan Beltran
This CL applies fixes automatically generated by yapf during presubmit hook as well as a few manual fixes: * Removing erroneous `verbose` argument from call to RunTryJobs * Replacing / with parenthsis for long lines * Shortened some variable names to fix lines that were too long BUG=None TEST=rerean unit tests Change-Id: Ic6ed4bb74f067dd5c67991481caf75d8829bf86e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3248930 Tested-by: Ryan Beltran <ryanbeltran@chromium.org> Auto-Submit: Ryan Beltran <ryanbeltran@chromium.org> Commit-Queue: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2021-10-27llvm_tools: Add lldb_server to updated_packagesRyan Beltran
This CL adds dev-util/lldb-server to the list of packages updated by various tools. Additionally, it updates the default packages in update_chromeos_llvm_hash.py so that we don't have to manually supply them anymore, and refactors other scripts to use that list instead of maintaining their own. BUG=b:196602751 TEST=`python3 -m unittest discover -s . -p '*_unittest.py'` Change-Id: I0856c8f854dc2cbd0f2f21b71db96d3ef000caa8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3248929 Tested-by: Ryan Beltran <ryanbeltran@chromium.org> Auto-Submit: Ryan Beltran <ryanbeltran@chromium.org> Commit-Queue: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2021-10-20compiler_wrapper: ignore unused_but_set_variableRyan Beltran
This CL adds -Wno-unused-but-set-variable to clang post flags to prevent these warnings from blocking the LLVM uprev. BUG=b:195433889 TEST=cq Change-Id: I5195412183e2684aecd20b6ff2c3345f8b8b9dfb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3235575 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Ryan Beltran <ryanbeltran@chromium.org> Tested-by: Ryan Beltran <ryanbeltran@chromium.org>
2021-10-20Add crosperf_autolock.py wrapperJordan R Abrahams
This crosperf wrapper allows the user to lock devices by board type. It will query the swarm using the crosfleet API to find and lock an appropriate board. The remaining arguments are passed to crosperf, so the command will act like crosperf otherwise, once the remote has been set. One limitation is that this wrapper does not conduct any SSH port forwarding (which would be required for flashing devices from a cloudtop, for example). BUG=b:187535367 TEST=crosperf_autolock.py --board chell chell_exp.exp Change-Id: If8dc4630c42be63d6427716654e7dd7fa4132df5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3221950 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Commit-Queue: Jordan R Abrahams <ajordanr@google.com> Tested-by: Jordan R Abrahams <ajordanr@google.com>
2021-10-18afdo_metadata: Publish the new kernel profilesManoj Gupta
Update chromeos-kernel-4_4 Update chromeos-kernel-4_14 Update chromeos-kernel-4_19 Update chromeos-kernel-5_4 BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: Ia538fab15c409b67bfe21de04db3dc3a1e4ab544 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3228899 Tested-by: Manoj Gupta <manojgupta@chromium.org> Auto-Submit: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Denis Nikitin <denik@chromium.org> Reviewed-by: Denis Nikitin <denik@chromium.org>
2021-10-11Auto-format the crosperf filesJordan R Abrahams
Currently, these crosperf files do not abide by the pep8 standard that CrOS requires. This applies the necessary formatting to get past the commit hook. BUG=None TEST=CQ (formatting) Change-Id: I501fd37f8a1d20fd0b987587eb52eb582f18c1a1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3215085 Tested-by: Jordan R Abrahams <ajordanr@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Jordan R Abrahams <ajordanr@google.com>
2021-10-11Add 'no_lock' crosperf settingJordan R Abrahams
This global experiment setting prevents crosperf from attempting to lock the associated devices. This is important if the devices were locked previously before by crosfleet. BUG=b:187535367 TEST=CQ TEST=Lease board from crosfleet. Forward SSH port. Run crosperf on forwarded port. Change-Id: I0f5341e07e325a613c6316778c0f096f6d8088a2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3210525 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Jordan R Abrahams <ajordanr@google.com> Commit-Queue: Jordan R Abrahams <ajordanr@google.com>
2021-10-08afdo_metadata: Publish the new kernel profilesDenis Nikitin
Update chromeos-kernel-4_4 Update chromeos-kernel-4_14 Update chromeos-kernel-4_19 Update chromeos-kernel-5_4 BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: Ie0f2728c1a4800dbfe1f8f98ec98c73a6d8a33a6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3214700 Reviewed-by: Bob Haarman <inglorion@chromium.org> Commit-Queue: Denis Nikitin <denik@chromium.org> Tested-by: Denis Nikitin <denik@chromium.org>
2021-10-08compiler_wrapper: move llvmnext flag to post flagsRyan Beltran
This CL moves flags added for LLVM Next that disabled variable_unused_but_set warnings to PostFlags in order to make sure it gets added after Wall and Wextra. BUG=b:195433889 TEST=reran package tests Change-Id: Icdd2cbe3ced7b8427257c87f9e527b0d0e8da57d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3214640 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Ryan Beltran <ryanbeltran@chromium.org> Tested-by: Ryan Beltran <ryanbeltran@chromium.org>
2021-10-05compiler_wrapper: android clang-tidy warnings on used secondsChih-Hung Hsieh
Give a warning if clang-tidy used more than TIDY_TIMEOUT/2 seconds. Users can fix it before it gets worse and times out. BUG=b:199451930 TEST=Use a fake Android clang-tidy.real binary, TEST=to dump passed environment variables and run for required time. Change-Id: I8df7e4e3bb621cbf40094c7b97494e5978d7c6a2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3200220 Reviewed-by: Chih-Hung Hsieh <chh@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org>
2021-10-05rust_uprev: fetch distfiles from local mirrorBob Haarman
This adds a few extra steps to rust_uprev where rust sources and rust-bootstrap prebuilts are fetched from the local mirror. This ensures that these files exist and are readable, and that the local versions (that will be used to compute the digests for the manifest) match the ones on the mirror. BUG=None TEST=Ran the script with existing and non-existing rust versions Change-Id: I9868b027356cf14fc10d9e56665c74ad26555345 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3182632 Tested-by: Bob Haarman <inglorion@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Commit-Queue: Bob Haarman <inglorion@chromium.org>
2021-10-01update_kernel_afdo: Skip 95 branchDenis Nikitin
Add a list of skipped chromium branches and adjust canary branch number calculation. BUG=None TEST=`./update_kernel_afdo` shows 96 as canary. Change-Id: If96711f5a0d52c128d4829e338b9b950001c6e75 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3199488 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Denis Nikitin <denik@chromium.org> Commit-Queue: Denis Nikitin <denik@chromium.org>
2021-10-01afdo_metadata: Publish the new kernel profilesDenis Nikitin
Update chromeos-kernel-4_4 Update chromeos-kernel-4_14 Update chromeos-kernel-4_19 Update chromeos-kernel-5_4 BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: Ibb3548142490b8a8277bd09eb2b53365c43507e7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3200213 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Denis Nikitin <denik@chromium.org> Tested-by: Denis Nikitin <denik@chromium.org>
2021-09-27afdo_metadata: Publish the new kernel profilesDenis Nikitin
Update chromeos-kernel-4_4 Update chromeos-kernel-4_14 Update chromeos-kernel-4_19 Update chromeos-kernel-5_4 BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: I0990d136a0307c14242b95a0b7e7e158c7318d91 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3183335 Tested-by: Denis Nikitin <denik@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Denis Nikitin <denik@chromium.org>
2021-09-25rust_uprev_test: mock equery w commandsBob Haarman
rust_uprev uses `equery w` to find the ebuild file for a package. This depends on filesystem state and so should not affect the test. This change mocks these calls so that they return specified values instead of actually running commands and accessing the filesystem. BUG=None TEST=Ran the tests outside the chroot, where equery does not exist Change-Id: Id48a0e063f9bf112888d378d549420f008fdcb4f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3182629 Tested-by: Bob Haarman <inglorion@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Michael Benfield <mbenfield@google.com> Commit-Queue: Bob Haarman <inglorion@chromium.org>
2021-09-23afdo_metadata: Publish the new kernel profilesRyan Beltran
Update chromeos-kernel-3_18 Update chromeos-kernel-4_4 Update chromeos-kernel-4_14 Update chromeos-kernel-4_19 Update chromeos-kernel-5_4 BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: I2762c38bcc24070660de24a349f5829a7436a3b9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3171121 Reviewed-by: Denis Nikitin <denik@chromium.org> Commit-Queue: Ryan Beltran <ryanbeltran@chromium.org> Tested-by: Ryan Beltran <ryanbeltran@chromium.org>
2021-09-21update_kernel_afdo: Remove 3.18Denis Nikitin
Remove 3.18 from the kernel AFDO update. BUG=b:199787442 TEST=./update_kernel_afdo Change-Id: I343d2048fb6bbd9c3c9f37bdfe64526a91c68220 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3162669 Tested-by: Denis Nikitin <denik@chromium.org> Reviewed-by: Bob Haarman <inglorion@chromium.org> Commit-Queue: Denis Nikitin <denik@chromium.org>
2021-09-20Clean up cros-logging-import pylint attributesJaques Clapauch
BUG=b:200542097 TEST=None Change-Id: I82f4011d499b323a4eceda2949e103dc1559299f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3171413 Commit-Queue: Jaques Clapauch <jaquesc@google.com> Commit-Queue: Chris McDonald <cjmcdonald@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: Jaques Clapauch <jaquesc@google.com> Auto-Submit: Jaques Clapauch <jaquesc@google.com> Reviewed-by: Chris McDonald <cjmcdonald@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-09-16Add mass_seccomp_editor.py for seccomp editingJordan R Abrahams
This tool lets you work with large swaths of seccomp files quickly, determining which have missing syscalls, and allowing fast editing for all of them. BUG=None TEST=cd mass_seccomp_editor; python3 -m unittest TEST=Ran many times for glibc noexec patch Change-Id: I7dbad6eff431d41e23d31465a444b209520e953a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3101468 Tested-by: Jordan R Abrahams <ajordanr@google.com> Auto-Submit: Jordan R Abrahams <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-09-16run_tests_for: recognize `test_`/`unittest_` prefixes as testsGeorge Burgess IV
Apparently some upstream conventions use `test_${x}.py` instead of this repo's standard of `${x}_(test|unittest).py`. Either seems fine, and supporting both seems simple. This includes some formatting updates from yapf. BUG=None TEST=`./run_tests_for.py llvm_tools/*.py` TEST=Made a new test_foo.py script; saw that it was picked up. Change-Id: I533a9395227d8342411cacfbd1bb6d5c63b8ec2a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3163797 Reviewed-by: Jordan R Abrahams <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2021-09-16rust_uprev: changes for rust-1.55ChromeOS Developer
Updating to rust-1.55.0 required a few changes to rust_uprev: - patches for rust-bootstrap no longer need to be renamed and removed. - the version sequence is now RUST_RAW_FULL_BOOTSTRAP_SEQUENCE BUG=None TEST=created uprev for rust-1.55 Change-Id: I56a64d5fd7902e01ee2ca3c13dcfc3eee52d6fc6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3162670 Tested-by: Bob Haarman <inglorion@chromium.org> Commit-Queue: Bob Haarman <inglorion@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-09-15compiler_wrapper: Handle TIDY_TIMEOUT for Android clang-tidyChih-Hung Hsieh
* To check in upstream chromeos tools. * In Android mode, for clang-tidy, call runAndroidClangTidy to handle TIDY_TIMEOUT * Add runWithTimeout to env.go and runCmdWithTimeouit to command.go. BUG=b:199451930 TEST=Use a fake Android clang-tidy.real binary, TEST=to dump passed environment variables and run for required time. Change-Id: I629ae372251c034595011ef70559f8b12ed8568c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3162668 Reviewed-by: Chih-Hung Hsieh <chh@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org>
2021-09-15compiler_wrapper: fix use-llvm-next testGeorge Burgess IV
The history of this test looks weird. We've had it intermittently enabled/disabled depending on whether we're passing flags specifically to llvm-next versions of clang. At the moment, it's failing due to a lack of `-Wl,-z,nostart-stop-gc`, which was removed in a previous CL. BUG=None TEST=go test Change-Id: I4b1ab9e5d39ba0e5575f89f51e4e83afba24a025 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3162667 Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2021-09-15compiler_wrapper: update golden filesGeorge Burgess IV
Tests are failing at HEAD; looks like prior changes forgot to update these. BUG=None TEST=go test Change-Id: Ia88b182ba0a922807f0857d8dc3df96de4528aa7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3162666 Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2021-09-15Excise cros_logging moduleChris McDonald
The cros_logging module is deprecated and all usages are being removed. The lint referred to by the comment removed in this CL is no longer a thing, so remove this mention of the deprecated module from the tree. BUG=b:191490453 TEST=None Change-Id: Ifcd4cb18e87fdbd3a92747b0fdbac434d51fd055 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3161649 Tested-by: Chris McDonald <cjmcdonald@chromium.org> Auto-Submit: Chris McDonald <cjmcdonald@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-09-09compiler_wrapper: disable unused-but-set warningsRyan Beltran
This CL disables no-unused-but-set-variable warnings globally in the compiler wrapper. A seperate CL will specifically reenable this warning for platform2. This prevents breakage do to unised variables in third_party. BUG=None TEST=None Change-Id: I2ea44b6249715d3b036843b13d668d50b9b7669d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3150656 Tested-by: Ryan Beltran <ryanbeltran@chromium.org> Auto-Submit: Ryan Beltran <ryanbeltran@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Manoj Gupta <manojgupta@chromium.org>
2021-09-07OWNERS.toolchain: clean upGeorge Burgess IV
The CrOS toolchain team has seen changes over the last ~year and a half. This CL updates this file to match the current toolchain team. BUG=None TEST=None Change-Id: I65e08922bb91fd5634e30c1e717fe28e62c68ce6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3133551 Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Reviewed-by: Christopher Di Bella <cjdb@google.com> Reviewed-by: Jordan R Abrahams <ajordanr@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: Michael Benfield <mbenfield@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2021-09-02users of mail-sheriff: s/sheriff/detectiveGeorge Burgess IV
Starting tonight, an alias for the mail-sheriff program will be mail-detective. Swap to that. This includes forced auto-style-fixing from yapf. BUG=b:198446837 TEST=None Change-Id: I8f7375347c17095a7d53408617f8e46078f3db54 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3137913 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2021-09-02email_sender: s/sheriff/detectiveGeorge Burgess IV
Now that our backend for this supports detective as an alternate spelling of sheriff, we can migrate this. This includes forced auto-style-fixing from yapf. BUG=b:198446837 TEST=Unittests Change-Id: Ib371911a006d40149dfbf91cc5daf834066a451c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3137202 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2021-08-25compiler_wrapper: support -W[no-]unused-set-variableJian Cai
BUG=b:194845241 TEST=emerge-atlas harfbuzz Change-Id: I262883ee20ed0fc69fcc3bf119d3068f4cf7729b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3061363 Tested-by: Jian Cai <jiancai@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-08-12Add upstream-workon.bash scriptJordan R Abrahams
upstream-workon is a script which aids toolchain developers by keeping the local, fully patched source in some non-ephemeral local directory inside the chroot. At the moment, it's still in a prototype phase (the end goal would be to make it quite a bit safer, and also move it out of bash). This is the first commit for the script, meant to act as a base for future work. BUG=b:186803200 TEST=mkdir ~/llvm; upstream_workon.bash init sys-devel/llvm ~/llvm TEST=upstream_workon.bash build sys-devel/llvm TEST=upstream_workon.bash install sys-devel/llvm TEST=upstream_workon.bash link sys-devel/llvm ~/llvm_src_tree Change-Id: Ifa1b1520d621cbe8b435d4ebb1ae71dc28548fcf Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3068075 Commit-Queue: Jordan R Abrahams <ajordanr@google.com> Tested-by: Jordan R Abrahams <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2021-08-11llvm_tools: update llvm major in non-llvm ebuildsRyan Beltran
This CL implements updating the llvm major version in non-llvm ebuilds. An example of the current behavior (which uprevs the major version only for the LLVM ebuild) can be seen here: https://crrev.com/c/3080644/2 BUG=b:196193631 TEST=./update_chromeos_llvm_hash_unittest.py Change-Id: Icf82f0a8a4a01b255d0eeb242fe139aaa6957920 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3088319 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: Ryan Beltran <ryanbeltran@chromium.org> Tested-by: Ryan Beltran <ryanbeltran@chromium.org>
2021-08-11style.yapf: force indentation to 2George Burgess IV
We recently had to swap from a base style of Chromium to Pep8, since the former has been removed from yapf. Apparently this wasn't a complete nop. Keep the existing indent width. The other changes implied by the pep => yapf transition can probably be fixed up incrementally. BUG=None TEST=yapf'ed a random file Change-Id: I736b61c413720870870f62cedfddeb9f81b934c4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3089512 Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2021-08-09llvm_tools: more informative message when checking out llvm-project-copyBob Haarman
We keep a clone of the LLVM repository, which we create if it did not already exist. This takes a while, so we inform the user. However, the message did not specify where we are cloning to or why. This change makes the message take the form: Checking out LLVM to '<path>' so that we can map between commit hashes and revision numbers. This may take a while, but only has to be done once. BUG=b:192699914 TEST=ran llvm_tools/get_llvm_hash.py with a few parameters Change-Id: I86d83f03ab293c5cfb3014e80175c674740a2818 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3078689 Tested-by: Bob Haarman <inglorion@chromium.org> Reviewed-by: Jordan R Abrahams <ajordanr@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2021-08-07compiler_wrapper: Update install scriptManoj Gupta
Update wrapper installation script now that we have separate clang and gcc wrappers. BUG=b:186803617 TEST=run install_compiler_wrapper.sh Change-Id: I14ee2ffc6f74adb9699066a54dbead98e2f2e220 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3078693 Commit-Queue: Manoj Gupta <manojgupta@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: Manoj Gupta <manojgupta@chromium.org> Auto-Submit: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Jian Cai <jiancai@google.com>
2021-08-05afdo_metadata: Publish the new kernel profilesManoj Gupta
Update chromeos-kernel-3_18 Update chromeos-kernel-4_4 Update chromeos-kernel-4_14 Update chromeos-kernel-4_19 Update chromeos-kernel-5_4 BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: Ia1b921900388cfa7bb21c30813356d7e367e8e0b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3076780 Tested-by: Manoj Gupta <manojgupta@chromium.org> Auto-Submit: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: Jian Cai <jiancai@google.com> Commit-Queue: Jian Cai <jiancai@google.com>
2021-08-04llvm_tools: use upstream revert_checkerGeorge Burgess IV
Sourcing this properly from LLVM is awkward, since at the least, we'd need to keep an LLVM git repo around. On top of that, we'd need to come up with some way to pin this at a specific version (since the evolution of LLVM ideally shouldn't impact the functionality of bits here). Rather than dealing with all of that, let's just copy this from the repo and declare victory. Changes should be super rare anyway. :) BUG=chromium:194731505 TEST=./nightly_revert_checker_test.py Change-Id: I6179cae57d01bee7cae7883c93f71cb9c2f1f3d1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3068861 Reviewed-by: Bob Haarman <inglorion@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2021-08-04crosperf: reuse perf reportsJian Cai
This reuses existing perf reports to identify idle samples instead of regenerating them. BUG=b:194737325 TEST=Ran crosperf with cwp benchmarks. Change-Id: Ib024addbcfb278815fa55dcab20c6d7db90b287a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3062781 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Jian Cai <jiancai@google.com>
2021-08-04compiler_wrapper: Fix static libgcc handlingManoj Gupta
Do not add static-libgcc to compiler command line if user is passing {shared|static}-libgcc. BUG=b:187794119 TEST=CQ Change-Id: Iecd969dd11632837013bea71df9547bd08bbf30c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3064572 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Auto-Submit: Manoj Gupta <manojgupta@chromium.org>
2021-08-03llvm_tools: add newline at the end of PATCHES.jsonJian Cai
This appeases the "file needs a trailing newline" lint warning when running `repo upload` with local changes created by get_upstream_patch.py. BUG=b:194873857 TEST=`repo upload` passed. Change-Id: Icc4bf60009182290f2d0beb10f5ee7fefe14e044 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/3068076 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Jian Cai <jiancai@google.com>