diff options
author | Florian Schmaus <flo@geekplace.eu> | 2020-11-16 12:51:49 +0100 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2020-11-17 17:51:07 +0200 |
commit | eb2c26b2c2f3662f489d403ef038944efdd77a85 (patch) | |
tree | e5ba6b871f7fea3fb2a117eaf42d76f6d9f4b34d | |
parent | 8bc656cccb2df30ab463699ebb8ad0a5c759ad17 (diff) | |
download | meson-eb2c26b2c2f3662f489d403ef038944efdd77a85.zip meson-eb2c26b2c2f3662f489d403ef038944efdd77a85.tar.gz meson-eb2c26b2c2f3662f489d403ef038944efdd77a85.tar.bz2 |
Collect and return clang-format's return code
There is no reason why meson should swallow any non-zero exit(/return)
code of clang-format.
-rw-r--r-- | mesonbuild/scripts/clangformat.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/mesonbuild/scripts/clangformat.py b/mesonbuild/scripts/clangformat.py index e7a3ff8..062cb43 100644 --- a/mesonbuild/scripts/clangformat.py +++ b/mesonbuild/scripts/clangformat.py @@ -25,6 +25,7 @@ def clangformat(exelist: T.List[str], srcdir_name: str, builddir_name: str) -> i suffixes = set(lang_suffixes['c']).union(set(lang_suffixes['cpp'])) suffixes.add('h') futures = [] + returncode = 0 with ThreadPoolExecutor() as e: for f in (x for suff in suffixes for x in srcdir.glob('**/*.' + suff)): if f.is_dir(): @@ -32,9 +33,9 @@ def clangformat(exelist: T.List[str], srcdir_name: str, builddir_name: str) -> i strf = str(f) if strf.startswith(builddir_name): continue - futures.append(e.submit(subprocess.check_call, exelist + ['-style=file', '-i', strf])) - [x.result() for x in futures] - return 0 + futures.append(e.submit(subprocess.run, exelist + ['-style=file', '-i', strf])) + returncode = max([x.result().returncode for x in futures]) + return returncode def run(args: T.List[str]) -> int: srcdir_name = args[0] |