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

executable("gn") {
  sources = [
    "gn_main.cc",
  ]
  deps = [
    ":gn_lib",
  ]
}

test("gn_unittests") {
  sources = [
    "escape_unittest.cc",
    "file_template_unittest.cc",
    "filesystem_utils_unittest.cc",
    "input_conversion_unittest.cc",
    "label_unittest.cc",
    "ninja_helper_unittest.cc",
    "parser_unittest.cc",
    "path_output_unittest.cc",
    "pattern_unittest.cc",
    "source_dir_unittest.cc",
    "string_utils_unittest.cc",
    "target_generator_unittest.cc",
    "target_manager_unittest.cc",
    "tokenizer_unittest.cc",
  ]
  deps = [
    ":gn_lib",
    "//base:run_all_unittests",
    "//base:test_support_base",
    "//testing:gtest",
  ]
}

executable("generate_test_gn_data") {
  sources = [ "generate_test_gn_data.cc" ]
  deps = [ "//base" ]
}