| # Copyright 2023 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/rust/rust_static_library.gni") |
| |
| source_set("utils") { |
| sources = [ |
| "first_run_util.h", |
| "first_run_util.mm", |
| "mime_type_util.h", |
| "mime_type_util.mm", |
| "notification_observer_bridge.h", |
| "notification_observer_bridge.mm", |
| "observable_boolean.h", |
| "observable_string.h", |
| "rust_unzipper.h", |
| "rust_unzipper.mm", |
| ] |
| |
| deps = [ |
| ":zip_ffi_glue", |
| "//base", |
| "//ios/chrome/browser/first_run/model", |
| "//ios/chrome/browser/shared/public/features:system_flags", |
| ] |
| |
| frameworks = [ "WebKit.framework" ] |
| } |
| |
| source_set("test_support") { |
| testonly = true |
| sources = [ |
| "fake_observable_boolean.h", |
| "fake_observable_boolean.mm", |
| "fake_observable_string.h", |
| "fake_observable_string.mm", |
| "first_run_test_util.h", |
| "first_run_test_util.mm", |
| ] |
| deps = [ |
| ":utils", |
| "//base", |
| "//ios/chrome/browser/first_run/model", |
| ] |
| } |
| |
| rust_static_library("zip_ffi_glue") { |
| allow_unsafe = true |
| crate_root = "zip_ffi_glue.rs" |
| sources = [ "zip_ffi_glue.rs" ] |
| cxx_bindings = [ "zip_ffi_glue.rs" ] |
| visibility = [ ":utils" ] |
| deps = [ |
| "//third_party/rust/anyhow/v1:lib", |
| "//third_party/rust/zip/v6:lib", |
| ] |
| } |