| // |
| // Copyright (C) 2021 The Android Open Source Project |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| // |
| |
| package { |
| // See: http://go/android-license-faq |
| // A large-scale-change added 'default_applicable_licenses' to import |
| // all of the 'license_kinds' from "hardware_interfaces_license" |
| // to get the below license kinds: |
| // SPDX-license-identifier-Apache-2.0 |
| default_applicable_licenses: ["hardware_interfaces_license"], |
| } |
| |
| cc_defaults { |
| name: "neuralnetworks_utils_hal_aidl_defaults", |
| defaults: [ |
| "android.hardware.graphics.common-ndk_static", |
| "neuralnetworks_utils_defaults", |
| ], |
| srcs: [ |
| // AIDL utils that a driver may depend on. |
| "src/BufferTracker.cpp", |
| "src/Conversions.cpp", |
| "src/HalUtils.cpp", |
| "src/Utils.cpp", |
| "src/ValidateHal.cpp", |
| ], |
| local_include_dirs: ["include/nnapi/hal/aidl/"], |
| export_include_dirs: ["include"], |
| cflags: ["-Wthread-safety"], |
| static_libs: [ |
| "libaidlcommonsupport", |
| "libarect", |
| "neuralnetworks_types", |
| "neuralnetworks_utils_hal_common", |
| ], |
| shared_libs: [ |
| "libbinder_ndk", |
| ], |
| target: { |
| android: { |
| shared_libs: ["libnativewindow"], |
| }, |
| }, |
| } |
| |
| // Deprecated. Remove once all modules depending on this are migrated away. |
| cc_library_static { |
| name: "neuralnetworks_utils_hal_aidl_v1", |
| defaults: ["neuralnetworks_utils_hal_aidl_defaults"], |
| shared_libs: [ |
| "android.hardware.neuralnetworks-V1-ndk", |
| ], |
| } |
| |
| cc_library_static { |
| name: "neuralnetworks_utils_hal_aidl", |
| defaults: ["neuralnetworks_utils_hal_aidl_defaults"], |
| srcs: [ |
| // Additional AIDL utils for the runtime. |
| "src/Assertions.cpp", |
| "src/Buffer.cpp", |
| "src/Burst.cpp", |
| "src/Callbacks.cpp", |
| "src/Device.cpp", |
| "src/Execution.cpp", |
| "src/InvalidDevice.cpp", |
| "src/PreparedModel.cpp", |
| "src/ProtectCallback.cpp", |
| "src/Service.cpp", |
| ], |
| shared_libs: [ |
| "android.hardware.neuralnetworks-V4-ndk", |
| ], |
| cflags: ["-DNN_AIDL_V4_OR_ABOVE"], |
| } |
| |
| // A cc_defaults that includes the latest non-experimental AIDL utilities and other AIDL libraries |
| // that are commonly used together. Modules that always depend on the latest non-experimental |
| // AIDL features can include this cc_defaults to avoid managing dependency versions explicitly. |
| cc_defaults { |
| name: "neuralnetworks_use_latest_utils_hal_aidl", |
| defaults: ["android.hardware.graphics.common-ndk_static"], |
| static_libs: [ |
| "android.hardware.common-V2-ndk", |
| "android.hardware.neuralnetworks-V4-ndk", |
| "neuralnetworks_utils_hal_aidl", |
| ], |
| cflags: ["-DNN_AIDL_V4_OR_ABOVE"], |
| } |
| |
| cc_test { |
| name: "neuralnetworks_utils_hal_aidl_test", |
| defaults: [ |
| "neuralnetworks_use_latest_utils_hal_aidl", |
| "neuralnetworks_utils_defaults", |
| ], |
| tidy_timeout_srcs: [ |
| "test/DeviceTest.cpp", |
| "test/PreparedModelTest.cpp", |
| ], |
| srcs: [ |
| "test/*.cpp", |
| ], |
| static_libs: [ |
| "libaidlcommonsupport", |
| "libgmock", |
| "neuralnetworks_types", |
| "neuralnetworks_utils_hal_common", |
| ], |
| shared_libs: [ |
| "libbase", |
| "libbinder_ndk", |
| "libcutils", |
| ], |
| target: { |
| android: { |
| shared_libs: ["libnativewindow"], |
| }, |
| }, |
| cflags: [ |
| /* GMOCK defines functions for printing all MOCK_DEVICE arguments and |
| * MockDevice contains a string pointer which triggers a warning in the |
| * base logging library. */ |
| "-Wno-user-defined-warnings", |
| ], |
| test_suites: ["general-tests"], |
| } |