# Copyright 2019 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//ios/build/config.gni") import("//ios/web/public/js_messaging/compile_ts.gni") import("//ios/web/public/js_messaging/optimize_js.gni") source_set("favicon") { deps = [ ":favicon_event_listeners_js", ":favicon_js", "//ios/web/public", "//ios/web/public/js_messaging", "//ios/web/web_state:web_state_impl_header", ] sources = [ "favicon_java_script_feature.h", "favicon_java_script_feature.mm", "favicon_url.cc", "favicon_util.h", "favicon_util.mm", ] } compile_ts("compile_typescript") { sources = [ "//ios/web/public/js_messaging/resources/utils.ts", "resources/favicon.ts", "resources/favicon_event_listeners.ts", "resources/favicon_utils.ts", ] } optimize_js("favicon_js") { visibility = [ ":favicon" ] _script = filter_include(get_target_outputs(":compile_typescript"), [ "*favicon.js" ]) primary_script = _script[0] sources = _script deps = [ ":compile_typescript" ] } optimize_js("favicon_event_listeners_js") { visibility = [ ":favicon" ] _script = filter_include(get_target_outputs(":compile_typescript"), [ "*favicon_event_listeners.js" ]) primary_script = _script[0] sources = _script deps = [ ":compile_typescript" ] } source_set("unittests") { testonly = true deps = [ "//base", "//ios/web/favicon", "//ios/web/public/favicon", "//ios/web/public/test:test_fixture", "//testing/gtest", ] sources = [ "favicon_util_unittest.mm" ] } source_set("inttests") { testonly = true deps = [ "//base", "//base/test:test_support", "//ios/web/public", "//ios/web/public:web_state_observer", "//ios/web/public/test", "//ios/web/public/test:test_fixture", ] sources = [ "favicon_callbacks_inttest.mm" ] }