aboutsummaryrefslogtreecommitdiff
path: root/compiler_wrapper
AgeCommit message (Collapse)Author
2019-09-30Android wrapper: Add support for --gomacc-path.Tobias Bosch
This is used by Android. To keep the wrappers in sync, we also support it on ChromeOS. BUG=chromium:773875 TEST=golden tests and comparison against old andorid wrapper. Change-Id: I02d7456ead1c94327eb6810aeef4d106596518ec Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1831789 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-09-30Initial support for the android wrapper.Tobias Bosch
BUG=chromium:773875 TEST=golden tests and comparison against old andorid wrapper. Change-Id: Ic11be4bc1399adcbf9c50134928aceda45e936ca Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1831787 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-09-26Support extra args for llvm next.Tobias Bosch
Also removes the capability of defining the old wrapper path now that we are getting close to landing it. BUG=chromium:773875 TEST=golden tests and comparison against old wrapper. Change-Id: I543ddb1651edf2a269917f8afb5a667129bc3561 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1826986 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-09-17Allow to pass in argv0 from ld.so via an env variable.Tobias Bosch
This is needed for the standalone toolchain that creates wrappers for all dynamically linked binaries that calls the binaries via `ld.so`. As `ld.so` does not support forwarding argv0, we are using this env variable in the wrapper script as workaround. See also https://chromium-review.googlesource.com/c/chromiumos/chromite/+/1790440 BUG=chromium:1003841 TEST=verified manually that the standalone toolchain works with the TEST=new wrapper. Change-Id: I7b4cc056286c2da8a9c34d1cb79720b424fc2f25 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1801198 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-09-16clang wrappers: Use LLD as the default linker.Manoj Gupta
Match the changes to python wrapper in CL:1686078. Also add small fix for echo path, it should be /bin/echo instead of /usr/bin/echo. BUG=chromium:979909 TEST=go test Change-Id: I5e626febd5abab4f9824aba1e158f264bf75be9e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1803778 Tested-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: Tobias Bosch <tbosch@google.com>
2019-09-13Use execve with properly merged env variables.Tobias Bosch
This reverts 478cfee03066d58ca3899753de95a58f35a96835 (Modify hostenv and use execv instead of execve). The original problem was actually that execve doesn't merge updates into the environment variables, in contrast to exec.Command. Now that we have our own merging logic (to e.g. support removal of variables), we can just use that. BUG=chromium:773875 TEST=emerge-kevin sci-libs/tensorflow Change-Id: I4a8412a73f4e79ad7b6d502602f442b2524efb06 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1804354 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-09-13Allow to remove env variables.Tobias Bosch
Previously, we only supported setting env variables to empty, but not to remove it. This lead to the case that we never removed the CCACHE_DISABLE env variable, which kept the ccache disabled, and caused a performance regression compared to the old wrapper as the new wrapper didn't use the ccache in this case. This cl also adds tests for the real exec and run commands to prevent regressions in these cases. BUG=chromium:773875 TEST=new unit tests TEST=performance analysis for TEST=emerge-veyron_jerry --nodeps chromeos-kernel-4_19 Change-Id: I5ca88ba8d7b05c3e12e292465fcd4ff9925b0344 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1802159 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-09-09Modify hostenv and use execv instead of execve.Tobias Bosch
This is needed so that the gentoo sandbox picks up changes to the SANDBOX_WRITE env variable correctly, which we update for ccache. BUG=chromium:773875 TEST=emerge-kevin sci-libs/tensorflow Change-Id: I6377c109f30071182b5af6948f320c7c53df4062 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1792228 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-09-09wrapper: add chmods/umasks to double-build bitsGeorge Burgess IV
counterpart of I8a92edb8ca7641e443564d20ac32fd78963d3254 BUG=chromium:914081 TEST=go test Change-Id: I29e22ebd0767d16c1d66bdf41857bf7c79ea11b0 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1792233 Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Tobias Bosch <tbosch@google.com>
2019-09-06Use libc execve instead of syscall.ExecveTobias Bosch
Also create a dynamically linked binary. BUG=chromium:1000863 TEST=manual test against portage sandbox Change-Id: I36db7eac14466f41fbc1f0a41979039d8eaa1d83 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1789670 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-26Only resolve cmd path against $PATH if path does not contain a folder.Tobias Bosch
BUG=chromium:773875 TEST=unit test Change-Id: I442afcfac00bcdbdfa33b739087af12987c57584 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1772176 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-23Add docs how to update the ChromeOS wrappers.Tobias Bosch
BUG=chromium:773875 TEST=n/a Change-Id: Ie22f86d75799c3307636c11488774c40606281f7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1769478 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-22Capture spaces in arguments to the old shell wrapper.Tobias Bosch
BUG=chromium:773875 TEST=unit test, emerge chromeos-base/chromeos-ec Change-Id: I9287998dedab1a23f7f4ad06aa1cd7dcd75cc04b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1764627 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-22Always use /proc/self/cwd to get current directory.Tobias Bosch
We are not using os.getwd() as this sometimes uses the value of the PWD env variable. This has the following problems: - if PWD=/proc/self/cwd, os.getwd() will return "/proc/self/cwd", and we need to read the link to get the actual wd. However, we can't always do this as we are calculating the path to clang, and following a symlinked cwd first would make this calculation invalid. - the old python wrapper doesn't respect the PWD env variable either, so if we did we would fail the comparison to the old wrapper. BUG=chromium:773875 TEST=emerge-lakitu app-emulation/docker Change-Id: Ifc49ab4eed66121f6710b38cf8457173fb559204 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1764624 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-22Only resolve symlinks for wd for /proc/self/cwdTobias Bosch
This is important as we are calculating the path to clang sometimes relative, and resolving regular symlinked directories makes this calculation invalid. BUG=chromium:773875 TEST=executed the clang wrapper in a symlinked directory Change-Id: I695db983861dea9fd047fb0bdf265a732a184963 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1764505 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-08-21Support \ while capturing stdout / stderr.Tobias Bosch
Also don't store stdout / stderr in old wrapper if we are not mocking commands. BUG=chromium:773875 TEST=emerge app-text/openjade Change-Id: I54e2167f011e14a468aa7800d2d5aae13ecb0c61 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1764497 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-21Support symlinks as value of os.Getwd()Tobias Bosch
Also print the input command when the old and new wrapper differ. This happends when the wrapper is invoked like this: PWD=/proc/self/cwd x86_64-cros-linux-gnu-clang ... BUG=chromium:773875 TEST=emerge sci-libs/tensorflow Change-Id: Ic5441c05241ad07d10f60c90b7dbfaa60e8018dd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1764490 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-08-21Use a fixed tempdir for executing the old wrapper.Tobias Bosch
Needed as sometimes $TMPDIR requires shell invocation. BUG=chromium:773875 TEST=emerge dev-python/pygobject Change-Id: Ia6681b383ef2b026c4009c579190fe8736a7c4ec Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1763252 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-08-21Only tee stdin if a "-" was passed the compiler.Tobias Bosch
This allows to remove the workaround in env.Run, and fixes the bug in the workaround that it didn't return exit code errors correctly. BUG=chromium:773875 TEST=manually tested in the chroot. Change-Id: I486b30b65ba3ad6249aa89e82e292c66378187a2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1762345 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-21Support "gcc", "clang" as compiler namesTobias Bosch
BUG=chromium:773875 TEST=golden tests, emerge-lakitu sys-kernel/linux-headers Change-Id: I205059a9f61484caaf69ed340fd42a47531e00f8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1762344 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-20Fix old wrapper path for goden tests of gcc host config.Tobias Bosch
This reverts an accidental change from https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1760971 which ran the tests without comparing to the old wrapper. BUG=chromium:773875 TEST=ran golden tests while comparing to old wrapper. Change-Id: I735cf6be573b74ea6ca3eac43422ca15108407f8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1762385 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-08-20Match old wrapper for ordering of -mthumb and -fno-stack-protectorTobias Bosch
BUG=chromium:773875 TEST=golden tests and compare to old wrapper Change-Id: Iac9f45390cbe6076d3e3851da85de7d27fe11ed7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1762376 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Luis Lozano <llozano@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-08-20Forward os.Stdin to child processes.Tobias Bosch
BUG=chromium:773875 TEST=unit tests, build glibc with compiler wrapper Change-Id: I0b5c1f5adaee18499b72747cd6042b00a9d52c1d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1760973 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-08-20Correctly parse eabi compiler names.Tobias Bosch
BUG=chromium:773875 TEST=unit tests, compile cross-armv7m-cros-eabi/newlib Change-Id: Ia98442a69b01cff87c52b6ac84dc39c47d5e998e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1760465 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-19Support calling old wrapper with utf8 in stdout/stderr.Tobias Bosch
BUG=chromium:773875 TEST=unit tests, build glibc with compiler wrapper Change-Id: I44df02ed46e72a10f444eb319ed8b51f0c6a3819 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1760972 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-19Store change id as version in the config.Tobias Bosch
This helps in debugging the wrapper. The version can be printed via the -print-config command. BUG=chromium:773875 TEST=unit test Change-Id: Ic6f84b4ccaa4a201473c408022d80c73f6ee7899 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1760971 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-16Allow arguments with spaces when comparing to the old wrapper.Tobias Bosch
BUG=chromium:773875 TEST=unit test Change-Id: Ib284463c7904ab4ac737c401b2b7928bbae98655 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1756215 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-08-16Fix build: Update goldensTobias Bosch
These change were accidentally added in crrev/c/1757222. The local presubmit didn't catch them as I had crrev/c/1754085 ontop in the branch. BUG=chromium:773875 TEST=unit test Change-Id: If8703ea3ff412135a36d76027b3393da044bf504 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1757087 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-08-16Resolve wrapper path against path envTobias Bosch
BUG=chromium:773875 TEST=unit test Change-Id: I150eb18a5d765d43ee7a2341767ff41f6641c6ac Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1757222 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-15Pass the old wrapper path as a linker argumentTobias Bosch
BUG=chromium:773875 TEST=unit test and comparison to old wrapper Change-Id: I97cff81f2b42a01f82ba66668693b17a27c14672 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1754130 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-15Only evaluate one level of links for the linkerTobias Bosch
This matches the behavior of the old wrapper. BUG=chromium:773875 TEST=unit test and comparison to old wrapper Change-Id: Ie9c50a7f72c9a8b33b3b84005f759fba5131b68a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1754129 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-15Properly escape stdout / stderr of nested commandsTobias Bosch
BUG=chromium:773875 TEST=unit test and comparison to old wrapper Change-Id: I47fdac56a7b8d972ccb4015222b533cb5e1e37ba Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1754128 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-15Minor adjustments to bundle.py and build.pyTobias Bosch
Make sure to copy build.py Pass path of bundle.py to git log call, so that bundle.py can be called from any path. Also adds missing copyright header to bundle.README (this is checked when copying the readme into sys-devel/llvm/files) Removes pie from build.py as that doesn't work with gcc as linker. BUG=chromium:773875 TEST=unit test and comparison to old wrapper Change-Id: Iee28ebcb4bed59cc9e91d3bd29eefd04f76b196a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1754127 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-13Allow wrapper to build with cros sdk.Tobias Bosch
Cros sdk uses go version 1.11. BUG=chromium:773875 TEST=unit test Change-Id: Ib76cb21b47f24263e3c0f9fad6321192ad4cf801 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1752535 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-13Add more golden tests for wrapper pathsTobias Bosch
Especially for: - calling the wrapper with absolute path - calling the wrapper in a deep directory - calling a symlinked wrapper BUG=chromium:773875 TEST=unit test Change-Id: Ib01562d6c40d8d2ae0c439081fc04625663dcd07 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1752524 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-13Create a goldenfile for every section.Tobias Bosch
Previously, a golden file contained multiple names sections. This change splits these into separate files, making changes easier to compare. BUG=chromium:773875 TEST=unit test Change-Id: Icffec335601297f504f98c4ff1654238f7838080 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1752523 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-13Use static go build and allow to bundle sources.Tobias Bosch
This allows to copy the bundled sources to a ChromeOS / Android package, including the build script, and then build from there without a dependency on toolchain-utils itself. BUG=chromium:773875 TEST=unit test Change-Id: Ie9fc4bb93d556684db5fa59f4829ce257f86e023 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1709826 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-07-22Support gcc host wrapper.Tobias Bosch
This change adds support for the gcc host wrapper. The implementation is verified via comparing to the old gcc host wrapper in the golden tests. BUG=chromium:773875 TEST=unit test Change-Id: I3af98b81dba6d9299183db01e967003be860972c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1710537 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-07-22Support clang host wrapper.Tobias Bosch
This change adds support for the clang host wrapper. The implementation is verified via comparing to the old clang host wrapper in the golden tests. BUG=chromium:773875 TEST=unit test Change-Id: I48284736014ab4b66bfd7e31e88ffd23956007bb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1708750 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-07-22Sync with recent changes to old wrapper.Tobias Bosch
Old wrapper changes: https://chromium.git.corp.google.com/chromiumos/overlays/chromiumos-overlay/+/bebf19ee4322c26d7cb548c8f4419dfe1c6e3c11 https://chromium.git.corp.google.com/chromiumos/overlays/chromiumos-overlay/+/cc6e225d3894f99b320584b2f41ff6a68f76d6a7 BUG=chromium:773875 TEST=unit test Change-Id: I927bcb6082d1b67ca9efde0001e43e0a0a36c3b4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1710403 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-07-22Add license headers to all go files.Tobias Bosch
Required as of https://chromium.git.corp.google.com/chromiumos/repohooks/+/9732e38a5551e4bbcd222d2bbb89ee0fc5c95dee BUG=chromium:773875 TEST=unit test Change-Id: I8dfed85b0fbd528084ff2e585bbf3624ac358135 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1710404 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-07-18Create golden tests for sysroot wrapper.Tobias Bosch
- Golden files can be updated via the new "-updategolden" test flag. - Golden files contain the wrapper command, commands executed by the wrapper stdout, stderr, exitcode of the wrapper - The commands in the golden files are also compared to the old wrapper to make sure they are correct. We are also mocking less things in the old wrapper now, allowing to compare against differnet wrappers via golden tests in the future (e.g. clang_host_wrapper). - Unit tests are no longer diffing against the old wrapper. BUG=chromium:773875 TEST=unit test Change-Id: I0755bfe11cd499474820c9354412d39a0fa04401 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1702633 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-07-18Fix minor bugsTobias Bosch
These bugs were detected while creating golden tests and comparing them to the old wrapper (see next commit). Also makes flag order in old wrapper deterministic by replacing sets with a SetList class that is based on a list. BUG=chromium:773875 TEST=unit test Change-Id: I8e2680f732577f1f590042f1ccd589dfedadd6ce Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1706791 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-07-18Add json mapping for command and commandResult.Tobias Bosch
Also exports the fields on these structs so that json can read/write them. BUG=chromium:773875 TEST=unit test Change-Id: I0efead41693dd35548738a0b3a3e5c71c97c319c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1706790 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-07-18Remove unused codeTobias Bosch
BUG=chromium:773875 TEST=unit test Change-Id: I83b134aaf559f178834381a1178e287659be2ac1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1702632 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-07-13Add -print-cmdline and -print-configTobias Bosch
BUG=chromium:773875 TEST=unit test Change-Id: Ib25e582257694f3a3457795873a249735e3aaf82 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1697931 Tested-by: Tobias Bosch <tbosch@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-07-12Add support for calling bisect driverTobias Bosch
Also removes forwarding to old wrapper as we now have all functionality in the new wrapper. BUG=chromium:773875 TEST=unit test, ran command for bisect driver manually in terminal. Change-Id: Icea8a20030bc72e46d6802934acd1d657f62d766 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1697929 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Tobias Bosch <tbosch@google.com>
2019-07-11Support resource usage loggingTobias Bosch
BUG=chromium:773875 TEST=unit test Change-Id: Ifc0a7311b439e767dbb83bee350c210abbff54e4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1695802 Reviewed-by: Tobias Bosch <tbosch@google.com> Tested-by: Tobias Bosch <tbosch@google.com>
2019-07-11Unify command error handlingTobias Bosch
BUG=chromium:773875 TEST=unit test Change-Id: Ibe32309c021d72e08cecc7d6830756fa1503e809 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1695801 Reviewed-by: Tobias Bosch <tbosch@google.com> Tested-by: Tobias Bosch <tbosch@google.com>
2019-07-10Support second execution of the compiler with -Wno-errorTobias Bosch
BUG=chromium:773875 TEST=unit test Change-Id: Ib77fd7c166a13acb733a1dbdfd88129141c4227a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1692969 Reviewed-by: Tobias Bosch <tbosch@google.com> Tested-by: Tobias Bosch <tbosch@google.com>