diff options
author | Renato Grottesi <otaner@google.com> | 2023-07-13 15:37:39 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2023-07-13 15:37:39 +0000 |
commit | 5981fb8c82e67fd3b39af0f5fa661b1777eb4aef (patch) | |
tree | 6fd69f1ccfe17fc12f05419b5ef10dbbc0c436bc | |
parent | 396558887c43c6c3a11649ba98f01e25badb18e3 (diff) | |
parent | debd7acb258a81995caed1aa7de7dfae72cfa27b (diff) | |
download | android-nn-driver-5981fb8c82e67fd3b39af0f5fa661b1777eb4aef.tar.gz |
Merge "Revert^4 "Compile ArmNN shim over the support library"" into main
-rw-r--r-- | Android.bp | 41 | ||||
-rw-r--r-- | Android.mk | 1170 | ||||
-rw-r--r-- | OWNERS | 1 | ||||
-rw-r--r-- | test/Android.mk | 535 |
4 files changed, 1 insertions, 1746 deletions
diff --git a/Android.bp b/Android.bp deleted file mode 100644 index 931f4d7..0000000 --- a/Android.bp +++ /dev/null @@ -1,41 +0,0 @@ -// -// Copyright © 2017 ARM Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// - -package { - default_applicable_licenses: ["external_android-nn-driver_license"], -} - -// This Android.bp was used in upstream to build libflatbuffer. -// Instead, we'll use the one from external. - -// Added automatically by a large-scale-change that took the approach of -// 'apply every license found to every target'. While this makes sure we respect -// every license restriction, it may not be entirely correct. -// -// e.g. GPL in an MIT project might only apply to the contrib/ directory. -// -// Please consider splitting the single license below into multiple licenses, -// taking care not to lose any license_kind information, and overriding the -// default license using the 'licenses: [...]' property on targets as needed. -// -// For unused files, consider creating a 'fileGroup' with "//visibility:private" -// to attach the license to, and including a comment whether the files may be -// used in the current project. -// See: http://go/android-license-faq -license { - name: "external_android-nn-driver_license", - visibility: [":__subpackages__"], - license_kinds: [ - "SPDX-license-identifier-Apache-2.0", - "SPDX-license-identifier-MIT", - ], - license_text: [ - "LICENSE", - ], -} - -subdirs = [ - "armnn", -] diff --git a/Android.mk b/Android.mk deleted file mode 100644 index ab2bfcd..0000000 --- a/Android.mk +++ /dev/null @@ -1,1170 +0,0 @@ -# -# Copyright © 2022 ARM Ltd. and Contributors. All rights reserved. -# SPDX-License-Identifier: MIT -# - -ANDROID_NN_DRIVER_LOCAL_PATH := $(call my-dir) -LOCAL_PATH := $(ANDROID_NN_DRIVER_LOCAL_PATH) - -P_OR_LATER := 0 -Q_OR_LATER := 0 -R_OR_LATER := 0 -S_OR_LATER := 0 -ANDROID_R := 0 -ANDROID_S := 0 - -ifeq ($(PLATFORM_VERSION),9) -P_OR_LATER := 1 -endif # PLATFORM_VERSION == 9 -ifeq ($(PLATFORM_VERSION),P) -P_OR_LATER := 1 -endif # PLATFORM_VERSION == P - -ifeq ($(PLATFORM_VERSION),10) -P_OR_LATER := 1 -Q_OR_LATER := 1 -endif # PLATFORM_VERSION == 10 -ifeq ($(PLATFORM_VERSION),Q) -P_OR_LATER := 1 -Q_OR_LATER := 1 -endif # PLATFORM_VERSION == Q - -ifeq ($(PLATFORM_VERSION),R) -P_OR_LATER := 1 -Q_OR_LATER := 1 -R_OR_LATER := 1 -ANDROID_R := 1 -endif # PLATFORM_VERSION == R - -ifeq ($(PLATFORM_VERSION),11) -P_OR_LATER := 1 -Q_OR_LATER := 1 -R_OR_LATER := 1 -ANDROID_R := 1 -endif # PLATFORM_VERSION == 11 - -ifeq ($(PLATFORM_VERSION),S) -P_OR_LATER := 1 -Q_OR_LATER := 1 -R_OR_LATER := 1 -S_OR_LATER := 1 -ANDROID_R := 0 -ANDROID_S := 1 -endif # PLATFORM_VERSION == S - -ifeq ($(PLATFORM_VERSION),12) -P_OR_LATER := 1 -Q_OR_LATER := 1 -R_OR_LATER := 1 -S_OR_LATER := 1 -ANDROID_R := 0 -ANDROID_S := 1 -endif # PLATFORM_VERSION == 12 - -ifeq ($(PLATFORM_VERSION),T) -P_OR_LATER := 1 -Q_OR_LATER := 1 -R_OR_LATER := 1 -S_OR_LATER := 1 -ANDROID_R := 0 -ANDROID_S := 1 -endif # PLATFORM_VERSION == S - -ifeq ($(PLATFORM_VERSION),13) -P_OR_LATER := 1 -Q_OR_LATER := 1 -R_OR_LATER := 1 -S_OR_LATER := 1 -ANDROID_R := 0 -ANDROID_S := 1 -endif # PLATFORM_VERSION == 13 - -# Override the flags to force Android S even though we are at U. -P_OR_LATER := 1 -Q_OR_LATER := 1 -R_OR_LATER := 1 -S_OR_LATER := 1 -ANDROID_R := 0 -ANDROID_S := 1 - -CPP_VERSION := c++14 - -ifeq ($(Q_OR_LATER),1) -CPP_VERSION := c++17 -endif - -# Configure these paths if you move the source or Khronos headers -ARMNN_GENERATED_HEADER_PATH := $(LOCAL_PATH)/../armnn/generated -ARMNN_PROFILING_HEADER_PATH := $(LOCAL_PATH)/../armnn/profiling -ARMNN_COMMON_PROFILING_HEADER_PATH := $(LOCAL_PATH)/../armnn/profiling/common/include -ARMNN_CLIENT_PROFILING_HEADER_PATH := $(LOCAL_PATH)/../armnn/profiling/client/include -ARMNN_HEADER_PATH := $(LOCAL_PATH)/../armnn/include -ARMNN_BACKEND_MAKEFILE_LOCAL_PATHS := $(wildcard $(LOCAL_PATH)/../armnn/src/backends/*/backend.mk) -ARMNN_BACKEND_MAKEFILE_PATHS := $(subst $(LOCAL_PATH),,$(ARMNN_BACKEND_MAKEFILE_LOCAL_PATHS)) -ARMNN_BACKEND_MAKEFILE_DIRS := $(subst /backend.mk,,$(ARMNN_BACKEND_MAKEFILE_PATHS)) -ARMNN_THIRD_PARTY_PATH := $(LOCAL_PATH)/../armnn/third-party -ARMNN_UTILS_HEADER_PATH := $(LOCAL_PATH)/../armnn/src/armnnUtils -OPENCL_HEADER_PATH := $(LOCAL_PATH)/clframework/include -NN_HEADER_PATH := $(LOCAL_PATH)/../../../frameworks/ml/nn/runtime/include -ifeq ($(S_OR_LATER),1) -NN_HEADER_PATH := $(LOCAL_PATH)/../../packages/modules/NeuralNetworks/runtime/include -endif - -# Variables to control CL/NEON/reference backend support -# Set them to '0' to disable support for a specific backend -ARMNN_COMPUTE_CL_ENABLED := 0 -ARMNN_COMPUTE_NEON_ENABLED := 0 -ARMNN_REF_ENABLED := 1 -ARMNN_ETHOSN_ENABLED := 0 - -ifeq ($(ARMNN_COMPUTE_CL_ENABLE),1) -ARMNN_COMPUTE_CL_ENABLED := 1 -endif - -ifeq ($(ARMNN_COMPUTE_NEON_ENABLE),1) -ARMNN_COMPUTE_NEON_ENABLED := 1 -endif - -ifeq ($(ARMNN_REF_ENABLE),0) -ARMNN_REF_ENABLED := 0 -endif - -ifeq ($(ARMNN_ETHOSN_ENABLE),1) -ARMNN_ETHOSN_ENABLED := 1 -endif - -# Variable to control inclusion of libOpenCL shared library -ARMNN_INCLUDE_LIBOPENCL := $(ARMNN_COMPUTE_CL_ENABLED) -ifeq ($(ARMNN_LIBOPENCL),0) -ARMNN_INCLUDE_LIBOPENCL := 0 -endif - -# Variable to control retire rate of priority queue -RETIRE_RATE := 3 - -# Placeholder to hold all backend link files. -ARMNN_BACKEND_STATIC_LIBRARIES := -ARMNN_BACKEND_SHARED_LIBRARIES := - -ifeq ($(TARGET_ARCH),arm) -ARMNN_BACKEND_STATIC_LIBRARIES += arm_compute_library -endif -ifeq ($(TARGET_ARCH),arm64) -ARMNN_BACKEND_STATIC_LIBRARIES += arm_compute_library -endif - -# Iterate through the Arm NN backends and specific include paths, include them into the -# current makefile and append the linkfiles held by -# the optional BACKEND_STATIC_LIBRARIES and optional BACKEND_SHARED_LIBRARIES variable -# (included from the given makefile) to -# the ARMNN_BACKEND_STATIC_LIBRARIES and ARMNN_BACKEND_SHARED_LIBRARIES lists - -$(foreach mkPath,$(ARMNN_BACKEND_MAKEFILE_DIRS),\ - $(eval include $(LOCAL_PATH)/$(mkPath)/backend.mk)\ - $(eval ARMNN_BACKEND_STATIC_LIBRARIES += $(BACKEND_STATIC_LIBRARIES))) - -$(foreach mkPath,$(ARMNN_BACKEND_MAKEFILE_DIRS),\ - $(eval include $(LOCAL_PATH)/$(mkPath)/backend.mk)\ - $(eval ARMNN_BACKEND_SHARED_LIBRARIES += $(BACKEND_SHARED_LIBRARIES))) - -####################### -# libarmnn-driver@1.0 # -####################### -include $(CLEAR_VARS) - -LOCAL_MODULE := libarmnn-driver@1.0 -LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/LICENSE -ifeq ($(Q_OR_LATER),1) -# "eng" is deprecated in Android Q -LOCAL_MODULE_TAGS := optional -else -LOCAL_MODULE_TAGS := eng optional -endif -LOCAL_ARM_MODE := arm -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(ARMNN_GENERATED_HEADER_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_PROFILING_HEADER_PATH) \ - $(ARMNN_COMMON_PROFILING_HEADER_PATH) \ - $(ARMNN_CLIENT_PROFILING_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(ARMNN_UTILS_HEADER_PATH) \ - $(OPENCL_HEADER_PATH) \ - $(NN_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -Werror \ - -Wno-format-security - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -ifeq ($(ARMNN_DRIVER_DEBUG),1) -LOCAL_CFLAGS+= \ - -UNDEBUG -LOCAL_LDFLAGS += \ - -Wl,-Map=libarmnndriver10MapFile.map -endif # ARMNN_DRIVER_DEBUG == 1 - -ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTECL_ENABLED -endif # ARMNN_COMPUTE_CL_ENABLED == 1 - -ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTENEON_ENABLED -endif # ARMNN_COMPUTE_NEON_ENABLED == 1 - -ifeq ($(ARMNN_REF_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNREF_ENABLED -endif # ARMNN_REF_ENABLED == 1 - -ifeq ($(ARMNN_ETHOSN_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNETHOSN_ENABLED -endif # ARMNN_ETHOSN_ENABLED == 1 - -LOCAL_SRC_FILES := \ - 1.0/ArmnnDriverImpl.cpp \ - 1.0/HalPolicy.cpp \ - ArmnnDriverImpl.cpp \ - DriverOptions.cpp \ - ArmnnDevice.cpp \ - ArmnnPreparedModel.cpp \ - ModelToINetworkConverter.cpp \ - RequestThread.cpp \ - Utils.cpp \ - ConversionUtils.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := libarmnn - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - liblog \ - libutils \ - android.hardware.neuralnetworks@1.0 \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 - -ifeq ($(P_OR_LATER),1) -# Required to build the 1.0 version of the NN Driver on Android P and later versions, -# as the 1.0 version of the NN API needs the 1.1 HAL headers to be included regardless. -LOCAL_SHARED_LIBRARIES+= \ - android.hardware.neuralnetworks@1.1 -endif # PLATFORM_VERSION == 9 - -ifeq ($(Q_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hardware.neuralnetworks@1.2 -endif # Q or later - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # R or later - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -ifeq (,$(realpath $(TOPDIR)vendor/arm/mali/valhall/Android.bp)) - LOCAL_SHARED_LIBRARIES += libGLES_mali -else - LOCAL_SHARED_LIBRARIES += libOpenCL -endif -endif - -include $(BUILD_STATIC_LIBRARY) - -ifeq ($(P_OR_LATER),1) -# The following target is available starting from Android P - -####################### -# libarmnn-driver@1.1 # -####################### -include $(CLEAR_VARS) - -LOCAL_MODULE := libarmnn-driver@1.1 -LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/LICENSE -ifeq ($(Q_OR_LATER),1) -# "eng" is deprecated in Android Q -LOCAL_MODULE_TAGS := optional -else -LOCAL_MODULE_TAGS := eng optional -endif -#PRODUCT_PACKAGES_ENG := libarmnn-driver@1.1 -LOCAL_ARM_MODE := arm -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(ARMNN_GENERATED_HEADER_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_PROFILING_HEADER_PATH) \ - $(ARMNN_COMMON_PROFILING_HEADER_PATH) \ - $(ARMNN_CLIENT_PROFILING_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(ARMNN_UTILS_HEADER_PATH) \ - $(OPENCL_HEADER_PATH) \ - $(NN_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -Werror \ - -Wall \ - -Wextra \ - -Wno-unused-function \ - -Wno-format-security \ - -DARMNN_ANDROID_NN_V1_1 - -ifeq ($(ARMNN_DRIVER_DEBUG),1) -LOCAL_CFLAGS+= \ - -UNDEBUG -LOCAL_LDFLAGS += \ - -Wl,-Map=libarmnnDriver11MapFile.map -endif # ARMNN_DRIVER_DEBUG == 1 - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTECL_ENABLED -endif # ARMNN_COMPUTE_CL_ENABLED == 1 - -ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTENEON_ENABLED -endif # ARMNN_COMPUTE_NEON_ENABLED == 1 - -ifeq ($(ARMNN_REF_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNREF_ENABLED -endif # ARMNN_REF_ENABLED == 1 - -ifeq ($(ARMNN_ETHOSN_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNETHOSN_ENABLED -endif # ARMNN_ETHOSN_ENABLED == 1 - -LOCAL_SRC_FILES := \ - 1.0/ArmnnDriverImpl.cpp \ - 1.0/HalPolicy.cpp \ - 1.1/ArmnnDriverImpl.cpp \ - 1.1/HalPolicy.cpp \ - ArmnnDriverImpl.cpp \ - DriverOptions.cpp \ - ArmnnDevice.cpp \ - ArmnnPreparedModel.cpp \ - ModelToINetworkConverter.cpp \ - RequestThread.cpp \ - Utils.cpp \ - ConversionUtils.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := libarmnn - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - liblog \ - libutils \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 - -ifeq ($(Q_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hardware.neuralnetworks@1.2 -endif # PLATFORM_VERSION == Q - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # R or later - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -ifeq (,$(realpath $(TOPDIR)vendor/arm/mali/valhall/Android.bp)) - LOCAL_SHARED_LIBRARIES += libGLES_mali -else - LOCAL_SHARED_LIBRARIES += libOpenCL -endif -endif - -include $(BUILD_STATIC_LIBRARY) - -endif # PLATFORM_VERSION == 9 - -ifeq ($(Q_OR_LATER),1) -# The following target is available starting from Android Q - -####################### -# libarmnn-driver@1.2 # -####################### -include $(CLEAR_VARS) - -LOCAL_MODULE := libarmnn-driver@1.2 -LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/LICENSE -LOCAL_MODULE_TAGS := optional -LOCAL_ARM_MODE := arm -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(ARMNN_GENERATED_HEADER_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_PROFILING_HEADER_PATH) \ - $(ARMNN_COMMON_PROFILING_HEADER_PATH) \ - $(ARMNN_CLIENT_PROFILING_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(ARMNN_UTILS_HEADER_PATH) \ - $(OPENCL_HEADER_PATH) \ - $(NN_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -Werror \ - -Wall \ - -Wextra \ - -Wno-unused-function \ - -Wno-format-security \ - -DARMNN_ANDROID_NN_V1_2 - -ifeq ($(ARMNN_DRIVER_DEBUG),1) -LOCAL_CFLAGS+= \ - -UNDEBUG -LOCAL_LDFLAGS += \ - -Wl,-Map=libarmnnDriver12MapFile.map -endif # ARMNN_DRIVER_DEBUG == 1 - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTECL_ENABLED -endif # ARMNN_COMPUTE_CL_ENABLED == 1 - -ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTENEON_ENABLED -endif # ARMNN_COMPUTE_NEON_ENABLED == 1 - -ifeq ($(ARMNN_REF_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNREF_ENABLED -endif # ARMNN_REF_ENABLED == 1 - -ifeq ($(ARMNN_ETHOSN_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNETHOSN_ENABLED -endif # ARMNN_ETHOSN_ENABLED == 1 - -LOCAL_SRC_FILES := \ - 1.0/ArmnnDriverImpl.cpp \ - 1.0/HalPolicy.cpp \ - 1.1/ArmnnDriverImpl.cpp \ - 1.1/HalPolicy.cpp \ - 1.2/ArmnnDriverImpl.cpp \ - 1.2/HalPolicy.cpp \ - ArmnnDevice.cpp \ - ArmnnDriverImpl.cpp \ - ArmnnPreparedModel.cpp \ - ArmnnPreparedModel_1_2.cpp \ - CacheDataHandler.cpp \ - ConversionUtils.cpp \ - DriverOptions.cpp \ - ModelToINetworkConverter.cpp \ - RequestThread.cpp \ - Utils.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := libarmnn - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - liblog \ - libutils \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hardware.neuralnetworks@1.2 - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # R or later - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -ifeq (,$(realpath $(TOPDIR)vendor/arm/mali/valhall/Android.bp)) - LOCAL_SHARED_LIBRARIES += libGLES_mali -else - LOCAL_SHARED_LIBRARIES += libOpenCL -endif -endif - -include $(BUILD_STATIC_LIBRARY) - -endif # PLATFORM_VERSION == Q - -ifeq ($(R_OR_LATER),1) -# The following target is available starting from Android R - -####################### -# libarmnn-driver@1.3 # -####################### -include $(CLEAR_VARS) - -LOCAL_MODULE := libarmnn-driver@1.3 -LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/LICENSE -LOCAL_MODULE_TAGS := optional -LOCAL_ARM_MODE := arm -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(ARMNN_GENERATED_HEADER_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_PROFILING_HEADER_PATH) \ - $(ARMNN_COMMON_PROFILING_HEADER_PATH) \ - $(ARMNN_CLIENT_PROFILING_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(ARMNN_UTILS_HEADER_PATH) \ - $(OPENCL_HEADER_PATH) \ - $(NN_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -Werror \ - -Wall \ - -Wextra \ - -Wno-unused-function \ - -Wno-format-security \ - -DARMNN_ANDROID_NN_V1_3 \ - -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -ifeq ($(ARMNN_DRIVER_DEBUG),1) -LOCAL_CFLAGS+= \ - -UNDEBUG -LOCAL_LDFLAGS += \ - -Wl,-Map=libarmnnDriver13MapFile.map -endif # ARMNN_DRIVER_DEBUG == 1 - -ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTECL_ENABLED -endif # ARMNN_COMPUTE_CL_ENABLED == 1 - -ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTENEON_ENABLED -endif # ARMNN_COMPUTE_NEON_ENABLED == 1 - -ifeq ($(ARMNN_REF_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNREF_ENABLED -endif # ARMNN_REF_ENABLED == 1 - -ifeq ($(ARMNN_ETHOSN_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNETHOSN_ENABLED -endif # ARMNN_ETHOSN_ENABLED == 1 - -LOCAL_CFLAGS += \ - -DRETIRE_RATE=$(RETIRE_RATE) - -LOCAL_SRC_FILES := \ - 1.0/ArmnnDriverImpl.cpp \ - 1.0/HalPolicy.cpp \ - 1.1/ArmnnDriverImpl.cpp \ - 1.1/HalPolicy.cpp \ - 1.2/ArmnnDriverImpl.cpp \ - 1.2/HalPolicy.cpp \ - 1.3/ArmnnDriverImpl.cpp \ - 1.3/HalPolicy.cpp \ - ArmnnDevice.cpp \ - ArmnnDriverImpl.cpp \ - ArmnnPreparedModel.cpp \ - ArmnnPreparedModel_1_2.cpp \ - ArmnnPreparedModel_1_3.cpp \ - CacheDataHandler.cpp \ - ConversionUtils.cpp \ - DriverOptions.cpp \ - ModelToINetworkConverter.cpp \ - RequestThread.cpp \ - RequestThread_1_3.cpp \ - Utils.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := libarmnn - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - liblog \ - libutils \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 \ - libsync \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hardware.neuralnetworks@1.2 \ - android.hardware.neuralnetworks@1.3 - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -ifeq (,$(realpath $(TOPDIR)vendor/arm/mali/valhall/Android.bp)) - LOCAL_SHARED_LIBRARIES += libGLES_mali -else - LOCAL_SHARED_LIBRARIES += libOpenCL -endif -endif - -include $(BUILD_STATIC_LIBRARY) - -endif # PLATFORM_VERSION == R - -##################################################### -# android.hardware.neuralnetworks@1.0-service-armnn # -##################################################### -include $(CLEAR_VARS) - -LOCAL_MODULE := android.hardware.neuralnetworks@1.0-service-armnn -LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/LICENSE -LOCAL_INIT_RC := android.hardware.neuralnetworks@1.0-service-armnn.rc -ifeq ($(Q_OR_LATER),1) -# "eng" is deprecated in Android Q -LOCAL_MODULE_TAGS := optional -else -LOCAL_MODULE_TAGS := eng optional -endif -LOCAL_ARM_MODE := arm -LOCAL_MODULE_RELATIVE_PATH := hw -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(ARMNN_GENERATED_HEADER_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_PROFILING_HEADER_PATH) \ - $(ARMNN_COMMON_PROFILING_HEADER_PATH) \ - $(ARMNN_CLIENT_PROFILING_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(NN_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions - -ifeq ($(ARMNN_DRIVER_DEBUG),1) -LOCAL_CFLAGS += \ - -UNDEBUG -LOCAL_LDFLAGS += \ - -Wl,-Map=neuralNetworks10MapFile.map -endif # ARMNN_DRIVER_DEBUG == 1 - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -LOCAL_SRC_FILES := \ - service.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := \ - libarmnn-driver@1.0 - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - libdl \ - libhardware \ - liblog \ - libtextclassifier_hash \ - libutils \ - android.hardware.neuralnetworks@1.0 \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 \ - $(ARMNN_BACKEND_SHARED_LIBRARIES) - -ifeq ($(P_OR_LATER),1) -# Required to build the 1.0 version of the NN Driver on Android P and later versions, -# as the 1.0 version of the NN API needs the 1.1 HAL headers to be included regardless. -LOCAL_SHARED_LIBRARIES+= \ - android.hardware.neuralnetworks@1.1 -endif # PLATFORM_VERSION == 9 - -ifeq ($(Q_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hardware.neuralnetworks@1.2 -endif # PLATFORM_VERSION == Q -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= android.hardware.neuralnetworks@1.3 -endif # PLATFORM_VERSION == R - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # R or later - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -ifeq (,$(realpath $(TOPDIR)vendor/arm/mali/valhall/Android.bp)) - LOCAL_SHARED_LIBRARIES += libGLES_mali -else - LOCAL_SHARED_LIBRARIES += libOpenCL -endif -endif - -include $(BUILD_EXECUTABLE) - -ifeq ($(P_OR_LATER),1) -# The following target is available starting from Android P - -##################################################### -# android.hardware.neuralnetworks@1.1-service-armnn # -##################################################### -include $(CLEAR_VARS) - -LOCAL_MODULE := android.hardware.neuralnetworks@1.1-service-armnn -LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/LICENSE -LOCAL_INIT_RC := android.hardware.neuralnetworks@1.1-service-armnn.rc -ifeq ($(Q_OR_LATER),1) -# "eng" is deprecated in Android Q -LOCAL_MODULE_TAGS := optional -else -LOCAL_MODULE_TAGS := eng optional -endif -LOCAL_ARM_MODE := arm -LOCAL_MODULE_RELATIVE_PATH := hw -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(ARMNN_GENERATED_HEADER_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_PROFILING_HEADER_PATH) \ - $(ARMNN_COMMON_PROFILING_HEADER_PATH) \ - $(ARMNN_CLIENT_PROFILING_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(NN_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -DARMNN_ANDROID_NN_V1_1 - -ifeq ($(ARMNN_DRIVER_DEBUG),1) -LOCAL_CFLAGS += \ - -UNDEBUG -LOCAL_LDFLAGS += \ - -Wl,-Map=neuralNetworks11MapFile.map -endif # ARMNN_DRIVER_DEBUG == 1 - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -LOCAL_SRC_FILES := \ - service.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := \ - libarmnn-driver@1.1 - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - libdl \ - libhardware \ - liblog \ - libtextclassifier_hash \ - libutils \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 \ - $(ARMNN_BACKEND_SHARED_LIBRARIES) - -ifeq ($(Q_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hardware.neuralnetworks@1.2 -endif # PLATFORM_VERSION == Q - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # PLATFORM_VERSION == R - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -ifeq (,$(realpath $(TOPDIR)vendor/arm/mali/valhall/Android.bp)) - LOCAL_SHARED_LIBRARIES += libGLES_mali -else - LOCAL_SHARED_LIBRARIES += libOpenCL -endif -endif - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= android.hardware.neuralnetworks@1.3 -endif # PLATFORM_VERSION == R - -include $(BUILD_EXECUTABLE) - -endif # PLATFORM_VERSION == 9 - -ifeq ($(Q_OR_LATER),1) -# The following target is available starting from Android Q - -##################################################### -# android.hardware.neuralnetworks@1.2-service-armnn # -##################################################### -include $(CLEAR_VARS) - -LOCAL_MODULE := android.hardware.neuralnetworks@1.2-service-armnn -LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/LICENSE -LOCAL_INIT_RC := android.hardware.neuralnetworks@1.2-service-armnn.rc -LOCAL_MODULE_TAGS := optional -LOCAL_ARM_MODE := arm -LOCAL_MODULE_RELATIVE_PATH := hw -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(ARMNN_GENERATED_HEADER_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_PROFILING_HEADER_PATH) \ - $(ARMNN_COMMON_PROFILING_HEADER_PATH) \ - $(ARMNN_CLIENT_PROFILING_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(NN_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -DARMNN_ANDROID_NN_V1_2 \ - -Wno-unused-variable \ - -Wno-unneeded-internal-declaration \ - -Wno-unused-function \ - -Wno-unused-local-typedef - -ifeq ($(ARMNN_DRIVER_DEBUG),1) -LOCAL_CFLAGS += \ - -UNDEBUG -LOCAL_LDFLAGS += \ - -Wl,-Map=neuralNetworks12MapFile.map -endif # ARMNN_DRIVER_DEBUG == 1 - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -LOCAL_SRC_FILES := \ - service.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := \ - libarmnn-driver@1.2 - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - libdl \ - libhardware \ - liblog \ - libtextclassifier_hash \ - libutils \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hardware.neuralnetworks@1.2 \ - $(ARMNN_BACKEND_SHARED_LIBRARIES) - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # R or later - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -ifeq (,$(realpath $(TOPDIR)vendor/arm/mali/valhall/Android.bp)) - LOCAL_SHARED_LIBRARIES += libGLES_mali -else - LOCAL_SHARED_LIBRARIES += libOpenCL -endif - - -LOCAL_LDFLAGS_32 := -Wl,-rpath,/vendor/lib/egl -LOCAL_LDFLAGS_64 := -Wl,-rpath,/vendor/lib64/egl -endif - -include $(BUILD_EXECUTABLE) - -endif # PLATFORM_VERSION == Q - -ifeq ($(R_OR_LATER),1) -# The following target is available starting from Android R - -##################################################### -# android.hardware.neuralnetworks@1.3-service-armnn # -##################################################### -include $(CLEAR_VARS) - -LOCAL_MODULE := android.hardware.neuralnetworks@1.3-service-armnn -LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/LICENSE -LOCAL_INIT_RC := android.hardware.neuralnetworks@1.3-service-armnn.rc -LOCAL_MODULE_TAGS := optional -LOCAL_ARM_MODE := arm -LOCAL_MODULE_RELATIVE_PATH := hw -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(ARMNN_GENERATED_HEADER_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_PROFILING_HEADER_PATH) \ - $(ARMNN_COMMON_PROFILING_HEADER_PATH) \ - $(ARMNN_CLIENT_PROFILING_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(NN_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -DARMNN_ANDROID_NN_V1_3 \ - -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -ifeq ($(ARMNN_DRIVER_DEBUG),1) -LOCAL_CFLAGS += \ - -UNDEBUG -LOCAL_LDFLAGS += \ - -Wl,-Map=neuralNetworks13MapFile.map -endif # ARMNN_DRIVER_DEBUG == 1 - -LOCAL_SRC_FILES := \ - service.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := \ - libarmnn-driver@1.3 - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - libdl \ - libhardware \ - liblog \ - libtextclassifier_hash \ - libutils \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - libsync \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hardware.neuralnetworks@1.2 \ - android.hardware.neuralnetworks@1.3 \ - $(ARMNN_BACKEND_SHARED_LIBRARIES) - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -ifeq (,$(realpath $(TOPDIR)vendor/arm/mali/valhall/Android.bp)) - LOCAL_SHARED_LIBRARIES += libGLES_mali -else - LOCAL_SHARED_LIBRARIES += libOpenCL -endif -LOCAL_LDFLAGS_32 := -Wl,-rpath,/vendor/lib/egl -LOCAL_LDFLAGS_64 := -Wl,-rpath,/vendor/lib64/egl -endif - -include $(BUILD_EXECUTABLE) - -endif # PLATFORM_VERSION == R - -########################## -# armnn module and tests # -########################## -# Note we use ANDROID_NN_DRIVER_LOCAL_PATH rather than LOCAL_PATH because LOCAL_PATH will be overwritten -# when including other .mk files that set it. -#include $(ANDROID_NN_DRIVER_LOCAL_PATH)/armnn/Android.mk -#include $(ANDROID_NN_DRIVER_LOCAL_PATH)/test/Android.mk @@ -2,3 +2,4 @@ jessehall@google.com kevindubois@google.com linjoey@google.com spyffe@google.com +otaner@google.com diff --git a/test/Android.mk b/test/Android.mk deleted file mode 100644 index f3e753a..0000000 --- a/test/Android.mk +++ /dev/null @@ -1,535 +0,0 @@ -# -# Copyright © 2017, 2022 ARM Ltd. All rights reserved. -# SPDX-License-Identifier: MIT -# - -LOCAL_PATH := $(call my-dir) - -# Configure these paths if you move the source or Khronos headers -# -OPENCL_HEADER_PATH := $(LOCAL_PATH)/../../mali/product/khronos/original -ARMNN_HEADER_PATH := $(LOCAL_PATH)/../armnn/include -ARMNN_PROFILING_PATH := $(LOCAL_PATH)/../armnn/profiling -ARMNN_THIRD_PARTY_PATH := $(LOCAL_PATH)/../armnn/third-party -ARMNN_UTILS_HEADER_PATH := $(LOCAL_PATH)/../armnn/src/armnnUtils -ARMNN_DRIVER_HEADER_PATH := $(LOCAL_PATH)/.. - -NN_HEADER_PATH := $(LOCAL_PATH)/../../../../frameworks/ml/nn/runtime/include -ifeq ($(S_OR_LATER),1) -NN_HEADER_PATH := $(LOCAL_PATH)/../../../../packages/modules/NeuralNetworks/runtime/include -endif - -########################## -# armnn-driver-tests@1.0 # -########################## -include $(CLEAR_VARS) - -LOCAL_MODULE := armnn-driver-tests@1.0 -LOCAL_LICENSE_KINDS := SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/../LICENSE -ifeq ($(Q_OR_LATER),1) -# "eng" is deprecated in Android Q -LOCAL_MODULE_TAGS := optional -else -LOCAL_MODULE_TAGS := eng optional -endif -LOCAL_ARM_MODE := arm -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(OPENCL_HEADER_PATH) \ - $(NN_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(ARMNN_PROFILING_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_UTILS_HEADER_PATH) \ - $(ARMNN_DRIVER_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -Werror \ - -O0 \ - -UNDEBUG - -# The variable to enable/disable the CL backend (ARMNN_COMPUTE_CL_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTECL_ENABLED -endif # ARMNN_COMPUTE_CL_ENABLED == 1 -# The variable to enable/disable the NEON backend (ARMNN_COMPUTE_NEON_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTENEON_ENABLED -endif # ARMNN_COMPUTE_NEON_ENABLED == 1 -# The variable to enable/disable the REFERENCE backend (ARMNN_REF_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_REF_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNREF_ENABLED -endif # ARMNN_REF_ENABLED == 1 - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif # R or later - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif # S or later - -LOCAL_SRC_FILES := \ - 1.0/Convolution2D.cpp \ - 1.0/FullyConnectedReshape.cpp \ - 1.0/Lstm.cpp \ - Tests.cpp \ - UtilsTests.cpp \ - Concurrent.cpp \ - FullyConnected.cpp \ - GenericLayerTests.cpp \ - DriverTestHelpers.cpp \ - SystemProperties.cpp \ - Concat.cpp \ - TestTensor.cpp \ - TestHalfTensor.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - arm_compute_library \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := \ - libarmnn-driver@1.0 - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - liblog \ - libtextclassifier_hash \ - libutils \ - android.hardware.neuralnetworks@1.0 \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 - -ifeq ($(P_OR_LATER),1) -# Required to build the 1.0 version of the NN Driver on Android P and later versions, -# as the 1.0 version of the NN API needs the 1.1 HAL headers to be included regardless. -LOCAL_SHARED_LIBRARIES+= \ - android.hardware.neuralnetworks@1.1 -endif # PLATFORM_VERSION == 9 - -ifeq ($(Q_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hardware.neuralnetworks@1.2 -endif # PLATFORM_VERSION == Q - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # R or later - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -LOCAL_SHARED_LIBRARIES+= \ - libGLES_mali -endif - -include $(BUILD_EXECUTABLE) - -ifeq ($(P_OR_LATER),1) -# The following target is available starting from Android P - -########################## -# armnn-driver-tests@1.1 # -########################## -include $(CLEAR_VARS) - -LOCAL_MODULE := armnn-driver-tests@1.1 -LOCAL_LICENSE_KINDS := SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/../LICENSE -ifeq ($(Q_OR_LATER),1) -# "eng" is deprecated in Android Q -LOCAL_MODULE_TAGS := optional -else -LOCAL_MODULE_TAGS := eng optional -endif -#PRODUCT_PACKAGES_ENG := libarmnn -LOCAL_ARM_MODE := arm -LOCAL_PROPRIETARY_MODULE := true -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(OPENCL_HEADER_PATH) \ - $(NN_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(ARMNN_PROFILING_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_UTILS_HEADER_PATH) \ - $(ARMNN_DRIVER_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -Werror \ - -O0 \ - -UNDEBUG \ - -DARMNN_ANDROID_NN_V1_1 - -# The variable to enable/disable the CL backend (ARMNN_COMPUTE_CL_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTECL_ENABLED -endif # ARMNN_COMPUTE_CL_ENABLED == 1 -# The variable to enable/disable the NEON backend (ARMNN_COMPUTE_NEON_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTENEON_ENABLED -endif # ARMNN_COMPUTE_NEON_ENABLED == 1 -# The variable to enable/disable the REFERENCE backend (ARMNN_REF_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_REF_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNREF_ENABLED -endif # ARMNN_REF_ENABLED == 1 - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif # R or later - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif # S or later - -LOCAL_SRC_FILES := \ - 1.0/Convolution2D.cpp \ - 1.1/Convolution2D.cpp \ - 1.1/Mean.cpp \ - 1.1/Transpose.cpp \ - 1.0/Lstm.cpp \ - 1.1/Lstm.cpp \ - Tests.cpp \ - UtilsTests.cpp \ - Concurrent.cpp \ - FullyConnected.cpp \ - GenericLayerTests.cpp \ - DriverTestHelpers.cpp \ - SystemProperties.cpp \ - Concat.cpp \ - TestTensor.cpp \ - TestHalfTensor.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - arm_compute_library \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := \ - libarmnn-driver@1.1 - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - liblog \ - libtextclassifier_hash \ - libutils \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 - -ifeq ($(Q_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libnativewindow \ - libui \ - libfmq \ - libcutils \ - android.hardware.neuralnetworks@1.2 -endif # PLATFORM_VERSION == Q - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # R or later - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -LOCAL_SHARED_LIBRARIES+= \ - libGLES_mali -endif - -include $(BUILD_EXECUTABLE) - -endif # PLATFORM_VERSION == 9 - -ifeq ($(Q_OR_LATER),1) -# The following target is available starting from Android Q - -########################## -# armnn-driver-tests@1.2 # -########################## -include $(CLEAR_VARS) - -LOCAL_MODULE := armnn-driver-tests@1.2 -LOCAL_LICENSE_KINDS := SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/../LICENSE -LOCAL_MODULE_TAGS := optional - -LOCAL_ARM_MODE := arm -LOCAL_PROPRIETARY_MODULE := true - -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(OPENCL_HEADER_PATH) \ - $(NN_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(ARMNN_PROFILING_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_UTILS_HEADER_PATH) \ - $(ARMNN_DRIVER_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -Werror \ - -O0 \ - -UNDEBUG \ - -DARMNN_ANDROID_NN_V1_2 - -# The variable to enable/disable the CL backend (ARMNN_COMPUTE_CL_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTECL_ENABLED -endif # ARMNN_COMPUTE_CL_ENABLED == 1 -# The variable to enable/disable the NEON backend (ARMNN_COMPUTE_NEON_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTENEON_ENABLED -endif # ARMNN_COMPUTE_NEON_ENABLED == 1 -# The variable to enable/disable the REFERENCE backend (ARMNN_REF_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_REF_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNREF_ENABLED -endif # ARMNN_REF_ENABLED == 1 - -# Required to build with the changes made to the Android ML framework specific to Android R -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif # R or later - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif # S or later - -LOCAL_SRC_FILES := \ - 1.0/Convolution2D.cpp \ - 1.1/Convolution2D.cpp \ - 1.1/Mean.cpp \ - 1.1/Transpose.cpp \ - 1.2/Dilation.cpp \ - 1.2/Capabilities.cpp \ - 1.2/Mean.cpp \ - 1.0/Lstm.cpp \ - 1.1/Lstm.cpp \ - 1.2/Lstm.cpp \ - 1.2/UnidirectionalSequenceLstm.cpp \ - Tests.cpp \ - UtilsTests.cpp \ - Concurrent.cpp \ - FullyConnected.cpp \ - GenericLayerTests.cpp \ - DriverTestHelpers.cpp \ - SystemProperties.cpp \ - Concat.cpp \ - TestTensor.cpp \ - TestHalfTensor.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - arm_compute_library \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := \ - libarmnn-driver@1.2 - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libcutils \ - libfmq \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - liblog \ - libnativewindow \ - libtextclassifier_hash \ - libui \ - libutils \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hardware.neuralnetworks@1.2 \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 - -ifeq ($(R_OR_LATER),1) -LOCAL_SHARED_LIBRARIES+= \ - libsync \ - android.hardware.neuralnetworks@1.3 -endif # R or later - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -LOCAL_SHARED_LIBRARIES+= \ - libGLES_mali -endif - -include $(BUILD_EXECUTABLE) - -endif # PLATFORM_VERSION == Q - -ifeq ($(R_OR_LATER),1) -# The following target is available starting from Android R - -########################## -# armnn-driver-tests@1.3 # -########################## -include $(CLEAR_VARS) - -LOCAL_MODULE := armnn-driver-tests@1.3 -LOCAL_LICENSE_KINDS := SPDX-license-identifier-MIT -LOCAL_LICENSE_CONDITIONS := notice -LOCAL_NOTICE_FILE := $(LOCAL_PATH)/../LICENSE -LOCAL_MODULE_TAGS := optional - -LOCAL_ARM_MODE := arm -LOCAL_PROPRIETARY_MODULE := true - -# Mark source files as dependent on Android.mk -LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk - -LOCAL_C_INCLUDES := \ - $(OPENCL_HEADER_PATH) \ - $(NN_HEADER_PATH) \ - $(ARMNN_HEADER_PATH) \ - $(ARMNN_PROFILING_PATH) \ - $(ARMNN_THIRD_PARTY_PATH) \ - $(ARMNN_UTILS_HEADER_PATH) \ - $(ARMNN_DRIVER_HEADER_PATH) - -LOCAL_CFLAGS := \ - -std=$(CPP_VERSION) \ - -fexceptions \ - -Werror \ - -O0 \ - -UNDEBUG \ - -DARMNN_ANDROID_NN_V1_3 - -# The variable to enable/disable the CL backend (ARMNN_COMPUTE_CL_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTECL_ENABLED -endif # ARMNN_COMPUTE_CL_ENABLED == 1 -# The variable to enable/disable the NEON backend (ARMNN_COMPUTE_NEON_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMCOMPUTENEON_ENABLED -endif # ARMNN_COMPUTE_NEON_ENABLED == 1 -# The variable to enable/disable the REFERENCE backend (ARMNN_REF_ENABLED) is declared in android-nn-driver/Android.mk -ifeq ($(ARMNN_REF_ENABLED),1) -LOCAL_CFLAGS += \ - -DARMNNREF_ENABLED -endif # ARMNN_REF_ENABLED == 1 - -ifeq ($(ANDROID_R),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_R -endif - -ifeq ($(ANDROID_S),1) -LOCAL_CFLAGS+= \ - -DARMNN_ANDROID_S -endif - -LOCAL_SRC_FILES := \ - 1.0/Convolution2D.cpp \ - 1.1/Convolution2D.cpp \ - 1.1/Mean.cpp \ - 1.1/Transpose.cpp \ - 1.2/Dilation.cpp \ - 1.2/Capabilities.cpp \ - 1.2/Mean.cpp \ - 1.0/Lstm.cpp \ - 1.1/Lstm.cpp \ - 1.2/Lstm.cpp \ - 1.2/UnidirectionalSequenceLstm.cpp \ - 1.3/QLstm.cpp \ - 1.3/QosTests.cpp \ - Tests.cpp \ - UtilsTests.cpp \ - Concurrent.cpp \ - FullyConnected.cpp \ - GenericLayerTests.cpp \ - DriverTestHelpers.cpp \ - SystemProperties.cpp \ - Concat.cpp \ - TestTensor.cpp \ - TestHalfTensor.cpp - -LOCAL_STATIC_LIBRARIES := \ - libneuralnetworks_common \ - libflatbuffers-cpp \ - arm_compute_library \ - $(ARMNN_BACKEND_STATIC_LIBRARIES) - -LOCAL_WHOLE_STATIC_LIBRARIES := \ - libarmnn-driver@1.3 - -LOCAL_SHARED_LIBRARIES := \ - libbase \ - libcutils \ - libfmq \ - libhidlbase \ - libhidltransport \ - libhidlmemory \ - liblog \ - libnativewindow \ - libtextclassifier_hash \ - libui \ - libutils \ - libsync \ - android.hardware.neuralnetworks@1.0 \ - android.hardware.neuralnetworks@1.1 \ - android.hardware.neuralnetworks@1.2 \ - android.hardware.neuralnetworks@1.3 \ - android.hidl.allocator@1.0 \ - android.hidl.memory@1.0 - -ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1) -LOCAL_SHARED_LIBRARIES+= \ - libGLES_mali -endif - -include $(BUILD_EXECUTABLE) - -endif # PLATFORM_VERSION == R |