# Copyright 2018 The Chromium OS 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("//common-mk/pkg_config.gni")

group("all") {
  deps = [
    ":bizlink-updater",
  ]
}

pkg_config("target_defaults") {
  pkg_deps = [
    "libbrillo-${libbase_ver}",
    "libchrome-${libbase_ver}",
    "libusb-1.0",
  ]
}

executable("bizlink-updater") {
  configs += [ ":target_defaults" ]
  sources = [
    "bizlink-updater/src/dp_aux_ctrl.cc",
    "bizlink-updater/src/main.cc",
    "bizlink-updater/src/mcdp_chip_ctrl.cc",
    "bizlink-updater/src/puma_fw_ctrl.cc",
  ]
}
