OLD | NEW |
1 # Copyright (c) 2013 Google Inc. All rights reserved. | 1 # Copyright (c) 2013 Google Inc. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import copy | 5 import copy |
6 import hashlib | 6 import hashlib |
| 7 import json |
7 import multiprocessing | 8 import multiprocessing |
8 import os.path | 9 import os.path |
9 import re | 10 import re |
10 import signal | 11 import signal |
11 import subprocess | 12 import subprocess |
12 import sys | 13 import sys |
13 import gyp | 14 import gyp |
14 import gyp.common | 15 import gyp.common |
15 import gyp.msvs_emulation | 16 import gyp.msvs_emulation |
16 import gyp.MSVSUtil as MSVSUtil | 17 import gyp.MSVSUtil as MSVSUtil |
(...skipping 746 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
763 os.path.basename(info_plist)) | 764 os.path.basename(info_plist)) |
764 defines = ' '.join([Define(d, self.flavor) for d in defines]) | 765 defines = ' '.join([Define(d, self.flavor) for d in defines]) |
765 info_plist = self.ninja.build( | 766 info_plist = self.ninja.build( |
766 intermediate_plist, 'preprocess_infoplist', info_plist, | 767 intermediate_plist, 'preprocess_infoplist', info_plist, |
767 variables=[('defines',defines)]) | 768 variables=[('defines',defines)]) |
768 | 769 |
769 env = self.GetSortedXcodeEnv(additional_settings=extra_env) | 770 env = self.GetSortedXcodeEnv(additional_settings=extra_env) |
770 env = self.ComputeExportEnvString(env) | 771 env = self.ComputeExportEnvString(env) |
771 | 772 |
772 keys = self.xcode_settings.GetExtraPlistItems(self.config_name) | 773 keys = self.xcode_settings.GetExtraPlistItems(self.config_name) |
773 keys = [QuoteShellArgument(v, self.flavor) for v in sum(keys.items(), ())] | 774 keys = QuoteShellArgument(json.dumps(keys), self.flavor) |
774 self.ninja.build(out, 'copy_infoplist', info_plist, | 775 self.ninja.build(out, 'copy_infoplist', info_plist, |
775 variables=[('env', env), ('keys', keys)]) | 776 variables=[('env', env), ('keys', keys)]) |
776 bundle_depends.append(out) | 777 bundle_depends.append(out) |
777 | 778 |
778 def WriteSources(self, ninja_file, config_name, config, sources, predepends, | 779 def WriteSources(self, ninja_file, config_name, config, sources, predepends, |
779 precompiled_header, spec): | 780 precompiled_header, spec): |
780 """Write build rules to compile all of |sources|.""" | 781 """Write build rules to compile all of |sources|.""" |
781 if self.toolset == 'host': | 782 if self.toolset == 'host': |
782 self.ninja.variable('ar', '$ar_host') | 783 self.ninja.variable('ar', '$ar_host') |
783 self.ninja.variable('cc', '$cc_host') | 784 self.ninja.variable('cc', '$cc_host') |
(...skipping 1340 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2124 arglists.append( | 2125 arglists.append( |
2125 (target_list, target_dicts, data, params, config_name)) | 2126 (target_list, target_dicts, data, params, config_name)) |
2126 pool.map(CallGenerateOutputForConfig, arglists) | 2127 pool.map(CallGenerateOutputForConfig, arglists) |
2127 except KeyboardInterrupt, e: | 2128 except KeyboardInterrupt, e: |
2128 pool.terminate() | 2129 pool.terminate() |
2129 raise e | 2130 raise e |
2130 else: | 2131 else: |
2131 for config_name in config_names: | 2132 for config_name in config_names: |
2132 GenerateOutputForConfig(target_list, target_dicts, data, params, | 2133 GenerateOutputForConfig(target_list, target_dicts, data, params, |
2133 config_name) | 2134 config_name) |
OLD | NEW |