OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. 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 #ifndef TOOLS_GN_XCODE_WRITER_H_ | 5 #ifndef TOOLS_GN_XCODE_WRITER_H_ |
6 #define TOOLS_GN_XCODE_WRITER_H_ | 6 #define TOOLS_GN_XCODE_WRITER_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 #include <map> | 9 #include <map> |
10 #include <memory> | 10 #include <memory> |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
53 | 53 |
54 // Filters the list of targets to only return the targets with artifacts | 54 // Filters the list of targets to only return the targets with artifacts |
55 // usable from Xcode (mostly application bundles). On failure populate |err| | 55 // usable from Xcode (mostly application bundles). On failure populate |err| |
56 // and return false. | 56 // and return false. |
57 static bool FilterTargets(const BuildSettings* build_settings, | 57 static bool FilterTargets(const BuildSettings* build_settings, |
58 const std::vector<const Target*>& all_targets, | 58 const std::vector<const Target*>& all_targets, |
59 const std::string& dir_filters_string, | 59 const std::string& dir_filters_string, |
60 std::vector<const Target*>* targets, | 60 std::vector<const Target*>* targets, |
61 Err* err); | 61 Err* err); |
62 | 62 |
| 63 // Filters list of targets to only return ones that are xctest module bundles. |
| 64 static void FilterXCTestModuleTargets( |
| 65 const std::vector<const Target*>& targets, |
| 66 std::vector<const Target*>* xctest_module_targets); |
| 67 |
63 // Generate the "products.xcodeproj" project that reference all products | 68 // Generate the "products.xcodeproj" project that reference all products |
64 // (i.e. targets that have a build artefact usable from Xcode, mostly | 69 // (i.e. targets that have a build artefact usable from Xcode, mostly |
65 // application bundles). | 70 // application bundles). |
66 void CreateProductsProject(const std::vector<const Target*>& targets, | 71 void CreateProductsProject(const std::vector<const Target*>& targets, |
67 const PBXAttributes& attributes, | 72 const PBXAttributes& attributes, |
68 const std::string& source_path, | 73 const std::string& source_path, |
69 const std::string& config_name, | 74 const std::string& config_name, |
70 const std::string& root_target, | 75 const std::string& root_target, |
71 const std::string& ninja_extra_args, | 76 const std::string& ninja_extra_args, |
72 const BuildSettings* build_settings, | 77 const BuildSettings* build_settings, |
(...skipping 17 matching lines...) Expand all Loading... |
90 void WriteWorkspaceContent(std::ostream& out); | 95 void WriteWorkspaceContent(std::ostream& out); |
91 void WriteProjectContent(std::ostream& out, PBXProject* project); | 96 void WriteProjectContent(std::ostream& out, PBXProject* project); |
92 | 97 |
93 std::string name_; | 98 std::string name_; |
94 std::vector<std::unique_ptr<PBXProject>> projects_; | 99 std::vector<std::unique_ptr<PBXProject>> projects_; |
95 | 100 |
96 DISALLOW_COPY_AND_ASSIGN(XcodeWriter); | 101 DISALLOW_COPY_AND_ASSIGN(XcodeWriter); |
97 }; | 102 }; |
98 | 103 |
99 #endif // TOOLS_GN_XCODE_WRITER_H_ | 104 #endif // TOOLS_GN_XCODE_WRITER_H_ |
OLD | NEW |