diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2013-06-15 02:10:47 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2013-06-15 02:10:47 +0300 |
commit | e967e5eb4bf2a46bb0d7f920fd4e8ffaa6f970fe (patch) | |
tree | 7c0ea51055f1997965b7bc4be27202e9b85097ab /backends.py | |
parent | cbd4f58302825a64435a5af70de52439b0fba601 (diff) | |
download | meson-e967e5eb4bf2a46bb0d7f920fd4e8ffaa6f970fe.zip meson-e967e5eb4bf2a46bb0d7f920fd4e8ffaa6f970fe.tar.gz meson-e967e5eb4bf2a46bb0d7f920fd4e8ffaa6f970fe.tar.bz2 |
At last! MSVC precompiles headers and can use them.
Diffstat (limited to 'backends.py')
-rwxr-xr-x | backends.py | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/backends.py b/backends.py index 1f4c1dd..5adca9c 100755 --- a/backends.py +++ b/backends.py @@ -182,8 +182,8 @@ class Backend(): if len(p) == 0: continue if compiler.can_compile(p[-1]): - args.append('-include') - args.append(os.path.split(p[0])[-1]) + header = p[0] + args += compiler.get_pch_use_args(pchpath, header) if len(args) > 0: args = [includearg] + args return args @@ -633,10 +633,8 @@ class NinjaBackend(Backend): pch_dep = [] else: arr = [] - for pch in pchlist: - i = os.path.join(self.get_target_private_dir(target), - os.path.split(pch)[-1] + '.' + compiler.get_pch_suffix()) - arr.append(i) + i = os.path.join(self.get_target_private_dir(target), compiler.get_pch_name(pchlist[0])) + arr.append(i) pch_dep = arr for i in target.get_include_dirs(): basedir = i.get_curdir() @@ -666,9 +664,7 @@ class NinjaBackend(Backend): raise RuntimeError('MSVC requires one header and one source to produce precompiled headers.') header = pch[0] source = pch[1] - chopped = os.path.split(header)[-1].split('.')[:-1] - chopped.append(compiler.get_pch_suffix()) - pchname = '.'.join(chopped) + pchname = compiler.get_pch_name(header) dst = os.path.join(self.get_target_private_dir(target), pchname) commands = [] |