diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2014-10-18 14:01:27 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2014-10-18 14:08:13 +0300 |
commit | 0abc1b1badde962a99b924b3eec0a3398aa91697 (patch) | |
tree | f506b531573654c9fe4b81639572ee5c593c87ec /environment.py | |
parent | 28ceaa650cc0944c04dc3cf9d7753671154b42dd (diff) | |
download | meson-0abc1b1badde962a99b924b3eec0a3398aa91697.zip meson-0abc1b1badde962a99b924b3eec0a3398aa91697.tar.gz meson-0abc1b1badde962a99b924b3eec0a3398aa91697.tar.bz2 |
Workaround for Clang pch include bug with help from Masashi Fujita.
Diffstat (limited to 'environment.py')
-rw-r--r-- | environment.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/environment.py b/environment.py index 1cf26ca..86bd4ef 100644 --- a/environment.py +++ b/environment.py @@ -1099,6 +1099,13 @@ class ClangCCompiler(CCompiler): def can_compile(self, filename): return super().can_compile(filename) or filename.split('.')[-1] == 's' # Clang can do asm, too. + def get_pch_use_args(self, pch_dir, header): + # Workaround for Clang bug http://llvm.org/bugs/show_bug.cgi?id=15136 + # This flag is internal to Clang (or at least not documented on the man page) + # so it might change semantics at any time. + return ['-include-pch', os.path.join (pch_dir, self.get_pch_name (header))] + + class GnuCPPCompiler(CPPCompiler): std_warn_args = ['-Wall', '-Winvalid-pch'] # may need to separate the latter to extra_debug_args or something @@ -1149,6 +1156,12 @@ class ClangCPPCompiler(CPPCompiler): def get_pch_suffix(self): return 'pch' + def get_pch_use_args(self, pch_dir, header): + # Workaround for Clang bug http://llvm.org/bugs/show_bug.cgi?id=15136 + # This flag is internal to Clang (or at least not documented on the man page) + # so it might change semantics at any time. + return ['-include-pch', os.path.join (pch_dir, self.get_pch_name (header))] + class FortranCompiler(): std_warn_args = ['-Wall'] |