| # 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("//third_party/openweave-core/config.gni") |
| |
| template("openweave_adaptation_layer") { |
| top_builddir = rebase_path("//third_party/openweave-core") |
| source_set(target_name) { |
| sources = [ |
| "$top_builddir/src/adaptations/device-layer/CASEAuth.cpp", |
| "$top_builddir/src/adaptations/device-layer/DeviceControlServer.cpp", |
| "$top_builddir/src/adaptations/device-layer/DeviceDescriptionServer.cpp", |
| "$top_builddir/src/adaptations/device-layer/DeviceIdentityTraitDataSource.cpp", |
| "$top_builddir/src/adaptations/device-layer/DeviceNetworkInfo.cpp", |
| "$top_builddir/src/adaptations/device-layer/EchoServer.cpp", |
| "$top_builddir/src/adaptations/device-layer/EventLogging.cpp", |
| "$top_builddir/src/adaptations/device-layer/FabricProvisioningServer.cpp", |
| "$top_builddir/src/adaptations/device-layer/GeneralUtils.cpp", |
| "$top_builddir/src/adaptations/device-layer/Globals.cpp", |
| "$top_builddir/src/adaptations/device-layer/NetworkTelemetryManager.cpp", |
| "$top_builddir/src/adaptations/device-layer/PersistedStorage.cpp", |
| "$top_builddir/src/adaptations/device-layer/ServiceDirectoryManager.cpp", |
| "$top_builddir/src/adaptations/device-layer/ServiceProvisioningServer.cpp", |
| "$top_builddir/src/adaptations/device-layer/ServiceTunnelAgent.cpp", |
| "$top_builddir/src/adaptations/device-layer/SystemEventSupport.cpp", |
| "$top_builddir/src/adaptations/device-layer/SystemTimerSupport.cpp", |
| "$top_builddir/src/adaptations/device-layer/TimeSyncManager.cpp", |
| "$top_builddir/src/adaptations/device-layer/TraitManager.cpp", |
| "$top_builddir/src/adaptations/device-layer/trait-support/nest/trait/firmware/SoftwareUpdateTrait.cpp", |
| "$top_builddir/src/adaptations/device-layer/trait-support/nest/trait/network/TelemetryNetworkTrait.cpp", |
| "$top_builddir/src/adaptations/device-layer/trait-support/nest/trait/network/TelemetryNetworkWifiTrait.cpp", |
| "$top_builddir/src/adaptations/device-layer/trait-support/nest/trait/network/TelemetryNetworkWpanTrait.cpp", |
| "$top_builddir/src/adaptations/device-layer/trait-support/weave/common/ProfileSpecificStatusCodeStructSchema.cpp", |
| "$top_builddir/src/adaptations/device-layer/trait-support/weave/trait/description/DeviceIdentityTrait.cpp", |
| "$top_builddir/src/adaptations/device-layer/trait-support/weave/trait/telemetry/tunnel/TelemetryTunnelTrait.cpp", |
| ] |
| public_configs = [ |
| ":" + target_name + "_openweave_config", |
| "//third_party/openweave-core/src/include:public", |
| ] |
| public_deps = [ "//third_party/openweave-core/src/include:common" ] |
| deps = [] |
| # Implementation sources must be defined in order to build. |
| assert(defined(invoker.sources), "Adaptation layer sources must be defined.") |
| sources += invoker.sources |
| # Merge any configs and deps from the invoker. |
| if (defined(invoker.configs)) { |
| configs += invoker.configs |
| } |
| if (defined(invoker.public_configs)) { |
| public_configs += invoker.public_configs |
| } |
| if (defined(invoker.public_deps)) { |
| public_deps += invoker.public_deps |
| } |
| if (defined(invoker.deps)) { |
| deps += invoker.deps |
| } |
| } |
| |
| config(target_name + "_openweave_config") { |
| include_dirs = [ |
| "$top_builddir/src/adaptations/device-layer/include", |
| "$top_builddir/src/adaptations/device-layer/trait-support", |
| ] |
| if (defined(invoker.include_dirs)) { |
| include_dirs += invoker.include_dirs |
| } |
| } |
| } |