Hello Lars Volker, Tim Armstrong,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/10788
to look at the new patch set (#3).
Change subject: Patch llvm to fix run-clang-tidy.py output
......................................................................
Patch llvm to fix run-clang-tidy.py output
Clang's run-clang-tidy.py has some behaviors
that make it hard for Impala to get good output.
Specifically:
1. It does not synchronize output to stdout.
Output for different files can be interleaved
with each other and with the script's own output.
2. It does not suppress its own output when the
-quiet argument is specified. This output is hard
to separate from the actual output of clang-tidy.
3. It can silently skips files when clang-tidy
fails with an error code. This does not happen
with the existing set of clang-tidy checks, but
it could cause loss of coverage if a new check
caused clang-tidy to encounter an error.
This adds a patch to llvm that fixes these issues
in run-clang-tidy.py by synchronizing output,
respecting -quiet, and allowing an error from
clang-tidy to abort the run.
Since run-clang-tidy.py is not in the main llvm
source tree (it is in the extra package), our
existing method could not patch it. This changes
llvm to extract all of the archives into the
appropriate places before applying a unified
patch that can touch any of the source files from
any of the archives.
Testing:
- Ran run-clang-tidy.py on normal Impala
checkout without issues.
- Added clang tidy checks that Impala
currently doesn't pass and verified
that the output with -quiet is
sensible.
Change-Id: I9125cb0a908fd7005ee68aafb41f3afe93522632
---
M buildall.sh
M functions.sh
M source/llvm/build-source-tarball.sh
A source/llvm/llvm-5.0.1-patches/0001-PATCH-Fix-run-clang-tidy.py-s-output.patch
4 files changed, 109 insertions(+), 20 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/native-toolchain
refs/changes/88/10788/3
--
To view, visit http://gerrit.cloudera.org:8080/10788
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I9125cb0a908fd7005ee68aafb41f3afe93522632
Gerrit-Change-Number: 10788
Gerrit-PatchSet: 3
Gerrit-Owner: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Lars Volker <[email protected]>
Gerrit-Reviewer: Tim Armstrong <[email protected]>