blob: a674b85102f12e0543fd2d506d3d66a74297fba1 [file] [log] [blame]
[email protected]ceb18412013-07-31 19:17:581static_library("gn_lib") {
2 sources = [
3 "build_settings.cc",
4 "build_settings.h",
5 "command_desc.cc",
6 "command_gen.cc",
7 "command_help.cc",
[email protected]93c19fd22013-08-06 19:34:448 "commands.cc",
9 "commands.h",
[email protected]ceb18412013-07-31 19:17:5810 "config.cc",
11 "config.h",
[email protected]93c19fd22013-08-06 19:34:4412 "config_values.cc",
[email protected]ceb18412013-07-31 19:17:5813 "config_values.h",
14 "config_values_extractors.cc",
15 "config_values_extractors.h",
16 "config_values_generator.cc",
17 "config_values_generator.h",
18 "err.cc",
19 "err.h",
20 "escape.cc",
21 "escape.h",
22 "file_template.cc",
23 "file_template.h",
24 "filesystem_utils.cc",
25 "filesystem_utils.h",
26 "functions.cc",
27 "functions.h",
28 "functions_target.cc",
29 "function_exec_script.cc",
30 "function_process_file_template.cc",
31 "function_read_file.cc",
32 "function_set_default_toolchain.cc",
33 "function_template.cc",
34 "function_toolchain.cc",
35 "function_write_file.cc",
36 "import_manager.cc",
37 "import_manager.h",
38 "input_conversion.cc",
39 "input_conversion.h",
40 "input_file.cc",
41 "input_file.h",
42 "input_file_manager.cc",
43 "input_file_manager.h",
44 "item.cc",
45 "item.h",
46 "item_node.cc",
47 "item_node.h",
48 "item_tree.cc",
49 "item_tree.h",
50 "label.cc",
51 "label.h",
52 "location.h",
53 "ninja_build_writer.cc",
54 "ninja_build_writer.h",
55 "ninja_helper.cc",
56 "ninja_helper.h",
57 "ninja_target_writer.cc",
58 "ninja_target_writer.h",
59 "ninja_toolchain_writer.cc",
60 "ninja_toolchain_writer.h",
61 "ninja_writer.cc",
62 "ninja_writer.h",
63 "operators.cc",
64 "operators.h",
65 "output_file.h",
66 "parse_tree.cc",
67 "parse_tree.h",
68 "parser.cc",
69 "parser.h",
70 "path_output.cc",
71 "path_output.h",
72 "pattern.cc",
73 "pattern.h",
74 "scheduler.cc",
75 "scheduler.h",
76 "scope.cc",
77 "scope.h",
78 "scope_per_file_provider.cc",
79 "scope_per_file_provider.h",
80 "settings.cc",
81 "settings.h",
82 "setup.cc",
83 "setup.h",
84 "source_dir.cc",
85 "source_dir.h",
86 "source_file.cc",
87 "source_file.h",
88 "standard_out.cc",
89 "standard_out.h",
90 "string_utils.cc",
91 "string_utils.h",
92 "target.cc",
93 "target.h",
94 "target_generator.cc",
95 "target_generator.h",
96 "target_manager.cc",
97 "target_manager.h",
98 "token.cc",
99 "token.h",
100 "tokenizer.cc",
101 "tokenizer.h",
102 "toolchain.cc",
103 "toolchain.h",
104 "toolchain_manager.cc",
105 "toolchain_manager.h",
106 "value.cc",
107 "value.h",
108 "value_extractors.cc",
109 "value_extractors.h",
110 ]
111 deps = [
112 "//base",
113 "//base/third_party/dynamic_annotations",
114 ]
115}
116
117executable("gn") {
118 sources = [
119 "gn_main.cc",
120 ]
121 deps = [
122 ":gn_lib",
123 ]
124}
125
126test("gn_unittests") {
127 sources = [
128 "escape_unittest.cc",
129 "file_template_unittest.cc",
130 "filesystem_utils_unittest.cc",
131 "input_conversion_unittest.cc",
132 "label_unittest.cc",
133 "ninja_helper_unittest.cc",
134 "parser_unittest.cc",
135 "path_output_unittest.cc",
136 "pattern_unittest.cc",
137 "source_dir_unittest.cc",
138 "string_utils_unittest.cc",
139 "target_generator_unittest.cc",
140 "target_manager_unittest.cc",
141 "tokenizer_unittest.cc",
142 ]
143 deps = [
144 ":gn_lib",
145 "//base:run_all_unittests",
146 "//base:test_support_base",
147 "//testing:gtest",
148 ]
149}
150
151executable("generate_test_gn_data") {
152 sources = [ "generate_test_gn_data.cc" ]
153 deps = [ "//base" ]
154}