|  | # Copyright 2019 The Fuchsia 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/bind/bind.gni") | 
|  | import("//build/components.gni") | 
|  | import("//build/drivers.gni") | 
|  | import("//build/test.gni") | 
|  |  | 
|  | driver_bind_rules("aml_light_bind") { | 
|  | rules = "meta/aml_light.bind" | 
|  | bind_output = "aml-light.bindbc" | 
|  | tests = "meta/bind_tests.json" | 
|  | deps = [ | 
|  | "//sdk/fidl/fuchsia.hardware.gpio:fuchsia.hardware.gpio_bindlib", | 
|  | "//sdk/fidl/fuchsia.hardware.pwm:fuchsia.hardware.pwm_bindlib", | 
|  | "//src/devices/bind/fuchsia.amlogic.platform", | 
|  | "//src/devices/bind/fuchsia.gpio", | 
|  | "//src/devices/bind/fuchsia.platform", | 
|  | "//src/devices/bind/fuchsia.pwm", | 
|  | ] | 
|  | } | 
|  |  | 
|  | source_set("aml-light-driver-source") { | 
|  | configs += [ | 
|  | "//build/config:all_source", | 
|  | "//build/config/fuchsia:enable_zircon_asserts", | 
|  | ] | 
|  | sources = [ "aml-light.cc" ] | 
|  | deps = [ | 
|  | "//sdk/lib/driver/platform-device/cpp", | 
|  | "//src/devices/lib/driver", | 
|  | "//zircon/system/ulib/zx", | 
|  | ] | 
|  | public_deps = [ | 
|  | "//sdk/fidl/fuchsia.hardware.gpio:fuchsia.hardware.gpio_cpp", | 
|  | "//sdk/fidl/fuchsia.hardware.light:fuchsia.hardware.light_cpp", | 
|  | "//sdk/fidl/fuchsia.hardware.pwm:fuchsia.hardware.pwm_cpp", | 
|  | "//src/devices/lib/amlogic", | 
|  | "//src/lib/ddk", | 
|  | "//src/lib/ddk:ddk-metadata-headers", | 
|  | "//src/lib/ddktl", | 
|  | "//zircon/system/ulib/fbl", | 
|  | ] | 
|  | } | 
|  |  | 
|  | fuchsia_cc_driver("aml-light-driver") { | 
|  | legacy = true | 
|  | output_name = "aml-light" | 
|  | deps = [ | 
|  | ":aml-light-driver-source", | 
|  | ":aml_light_bind", | 
|  | ] | 
|  | } | 
|  |  | 
|  | fuchsia_driver_component("aml-light") { | 
|  | component_name = "aml-light" | 
|  | deps = [ ":aml-light-driver" ] | 
|  | info = "meta/aml-light-info.json" | 
|  | manifest = "meta/aml-light.cml" | 
|  | } | 
|  |  | 
|  | fuchsia_driver_package("package") { | 
|  | package_name = "aml-light" | 
|  | export_to_bazel = true | 
|  | driver_components = [ ":aml-light" ] | 
|  | } | 
|  |  | 
|  | test("aml-light-test") { | 
|  | output_name = "aml-light-test" | 
|  | sources = [ "aml-light-test.cc" ] | 
|  | deps = [ | 
|  | ":aml-light-driver-source", | 
|  | ":aml_light_bind", | 
|  | "//sdk/fidl/fuchsia.hardware.pwm:fuchsia.hardware.pwm_cpp_testing", | 
|  | "//sdk/lib/async-default", | 
|  | "//sdk/lib/async-loop:async-loop-cpp", | 
|  | "//sdk/lib/async-loop:async-loop-default", | 
|  | "//sdk/lib/async_patterns/testing/cpp", | 
|  | "//src/devices/gpio/testing/fake-gpio", | 
|  | "//src/devices/testing/no_ddk", | 
|  | "//zircon/system/ulib/fbl", | 
|  | "//zircon/system/ulib/mock-function", | 
|  | "//zircon/system/ulib/zxtest", | 
|  | ] | 
|  | } | 
|  |  | 
|  | fuchsia_unittest_package("aml-light-test-package") { | 
|  | package_name = "aml-light-test" | 
|  | deps = [ ":aml-light-test" ] | 
|  | } | 
|  |  | 
|  | group("tests") { | 
|  | testonly = true | 
|  | deps = [ | 
|  | ":aml-light-test-package", | 
|  | ":aml_light_bind_test", | 
|  | ] | 
|  | } |