aboutsummaryrefslogtreecommitdiff
path: root/binary_search_tool/compiler_wrapper.py
AgeCommit message (Collapse)Author
2016-08-09binary search tool: Fix edge cases in compiler wrapperCassidy Burden
Fix compiler wrapper edge cases that exist with the NDK and ChromeOS build systems. For ChromeOS we support the -MMD flag when caching dependency files. For NDK we support calls to compiler that give no output file (these calls are meant to check compiler capabilities). TEST=NDK bisection and ChromeOS population Change-Id: Ic23bc7876e9844eacb106d49082e0509ea1ee31b Reviewed-on: https://chrome-internal-review.googlesource.com/273985 Commit-Ready: Cassidy Burden <cburden@google.com> Tested-by: Cassidy Burden <cburden@google.com> Reviewed-by: Caroline Tice <cmtice@google.com>
2016-08-05binary search tool: Add option to always run compilerCassidy Burden
Similar to sysroot_wrapper, add option that will always call compiler during triage stage. This option is safer, but much slower. TEST=Test with NDK app with missing side effects Change-Id: I242d7267c52e50989bcc5968f132956ba1cd3105 Reviewed-on: https://chrome-internal-review.googlesource.com/273457 Commit-Ready: Cassidy Burden <cburden@google.com> Tested-by: Cassidy Burden <cburden@google.com> Reviewed-by: Caroline Tice <cmtice@google.com>
2016-08-04binary search tool: Support @file compiler argumentsCassidy Burden
Gradle passes arguments to gcc/clang by using the @file argument. Implement expansion of this argument so that bisect_driver can analyze all arguments being sent to the compiler. TEST=Tested with NDK sample app Change-Id: I1e1dae001a062c118b6d5c36e367612c9e4116b7 Reviewed-on: https://chrome-internal-review.googlesource.com/272935 Commit-Ready: Cassidy Burden <cburden@google.com> Tested-by: Cassidy Burden <cburden@google.com> Reviewed-by: Caroline Tice <cmtice@google.com>
2016-07-29binary search tool: Add compiler wrapper for Android bisectionCassidy Burden
Add compiler wrapper similar to ChromeOS object bisector's compiler wrapper. bisect_driver.py is a modified version of bisect.py from the ChromeOS sysroot_wrapper. compiler_wrapper.py is a simple skeleton script used to invoke bisect_driver, and it is meant to be replaced by a more robust compiler wrapper. TEST=Populated android objects and triaged CQ-DEPEND=CL:*270730 Change-Id: I4dfc676f6b659c2da8dbd01fd858c477ffbdeb9f Reviewed-on: https://chrome-internal-review.googlesource.com/270783 Commit-Ready: Cassidy Burden <cburden@google.com> Tested-by: Cassidy Burden <cburden@google.com> Reviewed-by: Luis Lozano <llozano@chromium.org>