aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2019-09-29 22:37:44 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2019-10-01 22:02:51 +0300
commit5a52983f16309b86d7be1a327e2f240be2bcaaea (patch)
tree0ad3ffb5c15ee2f55314f1f30dd83b1633419bdf
parent7d9e58f12568de16625c6f063e1e8c50920a012e (diff)
downloadmeson-5a52983f16309b86d7be1a327e2f240be2bcaaea.zip
meson-5a52983f16309b86d7be1a327e2f240be2bcaaea.tar.gz
meson-5a52983f16309b86d7be1a327e2f240be2bcaaea.tar.bz2
Refactor clang tool generation to its own function.
-rw-r--r--mesonbuild/backend/ninjabackend.py20
1 files changed, 12 insertions, 8 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index c960727..1f3fb77 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -2656,23 +2656,27 @@ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47485'''))
# Alias that runs the target defined above
self.create_target_alias('meson-scan-build')
- def generate_clangformat(self):
- target_name = 'clang-format'
- if not environment.detect_clangformat():
+ def generate_clangtool(self, name):
+ import shutil
+ target_name = 'clang-' + name
+ if not os.path.exists(os.path.join(self.environment.source_dir, '.clang-' + name)) and \
+ not os.path.exists(os.path.join(self.environment.source_dir, '_clang-' + name)):
return
- if not os.path.exists(os.path.join(self.environment.source_dir, '.clang-format')) and \
- not os.path.exists(os.path.join(self.environment.source_dir, '_clang-format')):
- return
- if 'target_name' in self.all_outputs:
+ if target_name in self.all_outputs:
return
cmd = self.environment.get_build_command() + \
- ['--internal', 'clangformat', self.environment.source_dir, self.environment.build_dir]
+ ['--internal', 'clang' + name, self.environment.source_dir, self.environment.build_dir]
elem = NinjaBuildElement(self.all_outputs, 'meson-' + target_name, 'CUSTOM_COMMAND', 'PHONY')
elem.add_item('COMMAND', cmd)
elem.add_item('pool', 'console')
self.add_build(elem)
self.create_target_alias('meson-' + target_name)
+ def generate_clangformat(self):
+ if not environment.detect_clangformat():
+ return
+ self.generate_clangtool('format')
+
# For things like scan-build and other helper tools we might have.
def generate_utils(self):
self.generate_scanbuild()