# Copyright 2016 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("//build/util/branding.gni")
import("//build/config/mac/rules.gni")

mac_app_bundle("alert_notification_xpc_service") {
  output_name = "AlertNotificationService"
  package_type = "xpc"

  info_plist = "xpc-Info.plist"
  extra_substitutions = [ "CHROME_BUNDLE_ID=$chrome_mac_bundle_id" ]

  sources = [
    "alert_notification_service.h",
    "alert_notification_service.mm",
    "notification_service_delegate.h",
    "notification_service_delegate.mm",
    "xpc_service_main.mm",
    "xpc_transaction_handler.h",
    "xpc_transaction_handler.mm",
  ]

  deps = [
    ":common",
    "//base:base",
  ]

  libs = [
    "AppKit.framework",
    "Foundation.framework",
  ]

  ldflags = []
  if (is_component_build) {
    ldflags += [
      # The XPC service is in Chromium.app/Contents/Versions/X/Chromium \
      # Framework.framework/XPCServices/AlertNotificationService.xpc/\
      # Contents/MacOS/ so set rpath up to the base.
      "-rpath",
      "@loader_path/../../../../../../../../../",
    ]
  }
}

static_library("common") {
  sources = [
    "notification_builder_mac.h",
    "notification_builder_mac.mm",
    "notification_constants_mac.h",
    "notification_constants_mac.mm",
    "notification_delivery.h",
    "notification_response_builder_mac.h",
    "notification_response_builder_mac.mm",
  ]

  deps = [
    "//base:base",
  ]
}
