| static_library("gn_lib") { |
| sources = [ |
| "build_settings.cc", |
| "build_settings.h", |
| "command_desc.cc", |
| "command_gen.cc", |
| "command_help.cc", |
| "commands.cc", |
| "commands.h", |
| "config.cc", |
| "config.h", |
| "config_values.cc", |
| "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", |
| "variables.cc", |
| "variables.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" ] |
| } |