blob: 7b14432a7f557ef39470b30c14c6d7cc6f0781bd [file] [log] [blame]
# Copyright 2022 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//components/optimization_guide/features.gni")
source_set("segmentation_platform") {
sources = [
"model_provider_factory_impl.h",
"model_provider_factory_impl.mm",
"otr_web_state_observer.h",
"otr_web_state_observer.mm",
"segmentation_platform_config.h",
"segmentation_platform_config.mm",
"segmentation_platform_service_factory.h",
"segmentation_platform_service_factory.mm",
]
deps = [
"//base",
"//components/keyed_service/core",
"//components/keyed_service/ios",
"//components/leveldb_proto",
"//components/optimization_guide/core",
"//components/optimization_guide/core:features",
"//components/prefs",
"//components/segmentation_platform/embedder/default_model",
"//components/segmentation_platform/internal",
"//components/segmentation_platform/internal/proto",
"//components/segmentation_platform/public",
"//components/segmentation_platform/public/proto",
"//components/variations",
"//ios/chrome/browser:application_context",
"//ios/chrome/browser:chrome_paths",
"//ios/chrome/browser/browser_state",
"//ios/chrome/browser/history",
"//ios/chrome/browser/main:public",
"//ios/chrome/browser/metrics:accessor",
"//ios/chrome/browser/optimization_guide",
"//ios/chrome/browser/web_state_list",
]
if (build_with_tflite_lib) {
deps += [ "//components/segmentation_platform/internal:optimization_guide_segmentation_handler" ]
}
configs += [ "//build/config/compiler:enable_arc" ]
frameworks = [ "Foundation.framework" ]
}
source_set("unit_tests") {
configs += [ "//build/config/compiler:enable_arc" ]
testonly = true
sources = [
"otr_web_state_observer_unittest.mm",
"segmentation_platform_service_factory_unittest.mm",
]
deps = [
":segmentation_platform",
"//base/test:test_support",
"//components/optimization_guide/core",
"//components/optimization_guide/core:features",
"//components/segmentation_platform/internal/proto",
"//components/segmentation_platform/public",
"//components/segmentation_platform/public/proto",
"//ios/chrome/browser/browser_state:test_support",
"//ios/chrome/browser/main:public",
"//ios/chrome/browser/main:test_support",
"//ios/chrome/browser/prefs:browser_prefs",
"//ios/chrome/browser/web_state_list",
"//ios/chrome/test:test_support",
"//ios/web/public/test",
"//ios/web/public/test/fakes",
"//testing/gtest",
]
}