chromium/chromeos/ash/components/scalable_iph/BUILD.gn

# 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/buildflag_header.gni")
import("//build/config/chromeos/ui_mode.gni")
import("//chromeos/ash/components/scalable_iph/scalable_iph.gni")

assert(is_chromeos_ash)

source_set("config") {
  sources = [
    "config.cc",
    "config.h",
  ]
  deps = [
    ":constants",
    ":scalable_iph_delegate",
    "//ash/constants",
    "//base",
    "//components/feature_engagement/public",
  ]
}

source_set("constants") {
  sources = [
    "scalable_iph_constants.cc",
    "scalable_iph_constants.h",
  ]
}

source_set("scalable_iph") {
  sources = [
    "scalable_iph.cc",
    "scalable_iph.h",
  ]

  deps = [
    ":config",
    ":constants",
    ":iph_session",
    ":logger",
    ":scalable_iph_delegate",
    "//ash/constants:constants",
    "//base",
    "//components/feature_engagement/public",
    "//components/keyed_service/core",
  ]
}

source_set("iph_session") {
  sources = [
    "iph_session.cc",
    "iph_session.h",
  ]

  deps = [
    ":constants",
    "//base",
    "//components/feature_engagement/public",
  ]
}

source_set("scalable_iph_delegate") {
  sources = [
    "scalable_iph_delegate.cc",
    "scalable_iph_delegate.h",
  ]

  deps = [
    ":constants",
    ":iph_session",
  ]

  public_deps = [ "//base" ]
}

source_set("logger") {
  sources = [
    "logger.cc",
    "logger.h",
  ]

  deps = [
    "//ash/constants",
    "//base",
  ]
}

buildflag_header("buildflags") {
  header = "buildflags.h"

  flags = [ "ENABLE_CROS_SCALABLE_IPH=$enable_cros_scalable_iph" ]
}