OLD | NEW |
1 # Copyright (c) 2012 Google Inc. All rights reserved. | 1 # Copyright (c) 2012 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 filecmp | 5 import filecmp |
6 import gyp.common | 6 import gyp.common |
7 import gyp.xcodeproj_file | 7 import gyp.xcodeproj_file |
8 import gyp.xcode_ninja | 8 import gyp.xcode_ninja |
9 import errno | 9 import errno |
10 import os | 10 import os |
(...skipping 572 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
583 ninja_wrapper = params.get('flavor') == 'ninja' | 583 ninja_wrapper = params.get('flavor') == 'ninja' |
584 if ninja_wrapper: | 584 if ninja_wrapper: |
585 (target_list, target_dicts, data) = \ | 585 (target_list, target_dicts, data) = \ |
586 gyp.xcode_ninja.CreateWrapper(target_list, target_dicts, data, params) | 586 gyp.xcode_ninja.CreateWrapper(target_list, target_dicts, data, params) |
587 | 587 |
588 options = params['options'] | 588 options = params['options'] |
589 generator_flags = params.get('generator_flags', {}) | 589 generator_flags = params.get('generator_flags', {}) |
590 parallel_builds = generator_flags.get('xcode_parallel_builds', True) | 590 parallel_builds = generator_flags.get('xcode_parallel_builds', True) |
591 serialize_all_tests = \ | 591 serialize_all_tests = \ |
592 generator_flags.get('xcode_serialize_all_test_runs', True) | 592 generator_flags.get('xcode_serialize_all_test_runs', True) |
593 project_version = generator_flags.get('xcode_project_version', None) | |
594 skip_excluded_files = \ | 593 skip_excluded_files = \ |
595 not generator_flags.get('xcode_list_excluded_files', True) | 594 not generator_flags.get('xcode_list_excluded_files', True) |
596 xcode_projects = {} | 595 xcode_projects = {} |
597 for build_file, build_file_dict in data.iteritems(): | 596 for build_file, build_file_dict in data.iteritems(): |
598 (build_file_root, build_file_ext) = os.path.splitext(build_file) | 597 (build_file_root, build_file_ext) = os.path.splitext(build_file) |
599 if build_file_ext != '.gyp': | 598 if build_file_ext != '.gyp': |
600 continue | 599 continue |
601 xcodeproj_path = build_file_root + options.suffix + '.xcodeproj' | 600 xcodeproj_path = build_file_root + options.suffix + '.xcodeproj' |
602 if options.generator_output: | 601 if options.generator_output: |
603 xcodeproj_path = os.path.join(options.generator_output, xcodeproj_path) | 602 xcodeproj_path = os.path.join(options.generator_output, xcodeproj_path) |
604 xcp = XcodeProject(build_file, xcodeproj_path, build_file_dict) | 603 xcp = XcodeProject(build_file, xcodeproj_path, build_file_dict) |
605 xcode_projects[build_file] = xcp | 604 xcode_projects[build_file] = xcp |
606 pbxp = xcp.project | 605 pbxp = xcp.project |
607 | 606 |
608 if parallel_builds: | 607 if parallel_builds: |
609 pbxp.SetProperty('attributes', | 608 pbxp.SetProperty('attributes', |
610 {'BuildIndependentTargetsInParallel': 'YES'}) | 609 {'BuildIndependentTargetsInParallel': 'YES'}) |
611 if project_version: | |
612 xcp.project_file.SetXcodeVersion(project_version) | |
613 | 610 |
614 # Add gyp/gypi files to project | 611 # Add gyp/gypi files to project |
615 if not generator_flags.get('standalone'): | 612 if not generator_flags.get('standalone'): |
616 main_group = pbxp.GetProperty('mainGroup') | 613 main_group = pbxp.GetProperty('mainGroup') |
617 build_group = gyp.xcodeproj_file.PBXGroup({'name': 'Build'}) | 614 build_group = gyp.xcodeproj_file.PBXGroup({'name': 'Build'}) |
618 main_group.AppendChild(build_group) | 615 main_group.AppendChild(build_group) |
619 for included_file in build_file_dict['included_files']: | 616 for included_file in build_file_dict['included_files']: |
620 build_group.AddOrGetFileByPath(included_file, False) | 617 build_group.AddOrGetFileByPath(included_file, False) |
621 | 618 |
622 xcode_targets = {} | 619 xcode_targets = {} |
(...skipping 629 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1252 | 1249 |
1253 for build_file in build_files: | 1250 for build_file in build_files: |
1254 xcode_projects[build_file].Finalize1(xcode_targets, serialize_all_tests) | 1251 xcode_projects[build_file].Finalize1(xcode_targets, serialize_all_tests) |
1255 | 1252 |
1256 for build_file in build_files: | 1253 for build_file in build_files: |
1257 xcode_projects[build_file].Finalize2(xcode_targets, | 1254 xcode_projects[build_file].Finalize2(xcode_targets, |
1258 xcode_target_to_target_dict) | 1255 xcode_target_to_target_dict) |
1259 | 1256 |
1260 for build_file in build_files: | 1257 for build_file in build_files: |
1261 xcode_projects[build_file].Write() | 1258 xcode_projects[build_file].Write() |
OLD | NEW |