# Copyright 2018 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/compiled_action.gni") import("//build/config/features.gni") static_library("tools_lib") { sources = [ "filter_tool.cc", "filter_tool.h", "indexing_tool.cc", "indexing_tool.h", ] deps = [ "../core/common", "//base", "//components/url_pattern_index", "//url", ] } source_set("unit_tests") { testonly = true sources = [ "filter_tool_unittest.cc", "indexing_tool_unittest.cc", ] deps = [ ":tools_lib", "../core/common", "../core/common:test_support", "rule_parser:unit_tests", "ruleset_converter:unit_tests", "//base", "//base/test:test_support", "//components/url_pattern_index:test_support", "//testing/gtest", "//third_party/protobuf:protobuf_lite", "//url", ] } if (use_blink) { executable("subresource_filter_tool") { # Production code should not depend on this. testonly = true sources = [ "filter_tool_main.cc" ] deps = [ ":tools_lib", "//base", ] } executable("subresource_indexing_tool") { # Production code should not depend on this. testonly = true sources = [ "indexing_tool_main.cc" ] deps = [ ":tools_lib", "../core/common", "//base", ] } executable("ruleset_converter") { sources = [ "ruleset_converter/main.cc" ] deps = [ "ruleset_converter:support", "//base", "//third_party/protobuf:protobuf_lite", ] } group("subresource_filter_tools") { # Production code should not depend on this. testonly = true deps = [ ":ruleset_converter", ":subresource_filter_tool", ":subresource_indexing_tool", ] } # This action compiles the indexing tool using the host's toolchain, and # generates an indexed ruleset using the existing unindexed ruleset in the # source tree. compiled_action("index_ruleset") { testonly = true tool = ":subresource_indexing_tool" outputs = [ "$target_gen_dir/GeneratedRulesetData", "$target_gen_dir/default_local_state.json", ] inputs = [ "//third_party/subresource-filter-ruleset/data/UnindexedRules" ] deps = [ ":subresource_indexing_tool" ] args = [ rebase_path(inputs[0], root_build_dir), rebase_path(outputs[0], root_build_dir), "--version_output=" + rebase_path(outputs[1], root_build_dir), "--content_version=1000", "--ruleset_id=0", ] } }