From b6f506b96fb69cc7c023576ac0164b85962e269f Mon Sep 17 00:00:00 2001 From: Kevin May Date: Wed, 20 Jul 2022 12:17:36 +0100 Subject: IVGCVSW-7113 Fix building nn driver failed in our Android OOBT * Android.bp file gets picked up by older Android versions so rename it to "switch it off" and update guide on how to enable it Signed-off-by: Kevin May Change-Id: I1fc59a0d0dc2e6ce9cdc19f94b0b34d08d414351 --- shim/Android.bp | 97 ------------------------------------ shim/Android.bp.off | 97 ++++++++++++++++++++++++++++++++++++ shim/BuildGuideShimSupportLibrary.md | 7 ++- 3 files changed, 102 insertions(+), 99 deletions(-) delete mode 100644 shim/Android.bp create mode 100644 shim/Android.bp.off diff --git a/shim/Android.bp b/shim/Android.bp deleted file mode 100644 index 7e0d62aeb1..0000000000 --- a/shim/Android.bp +++ /dev/null @@ -1,97 +0,0 @@ -// -// Copyright © 2022 Arm Ltd and Contributors. All rights reserved. -// SPDX-License-Identifier: MIT -// - - -//////////////////////////////////////////// -// // -// shim service // -// // -//////////////////////////////////////////// - -cc_prebuilt_library_shared { - name: "libarmnn_support_library", - check_elf_files: false, - shared_libs: [ - "libbase", - "libcutils", - "liblog", - "libnativewindow", - ], - proprietary: true, - vendor: true, - // libnativewindow versioning trips this check. b/181227567 for fixing - allow_undefined_symbols: true, - target: { - android_x86_64: { - srcs: ["./sl/build/libarmnn_support_library.so"], - }, - android_x86: { - srcs: ["./sl/build/libarmnn_support_library.so"], - }, - android_arm64: { - srcs: ["./sl/build/libarmnn_support_library.so"], - }, - android_arm: { - srcs: ["./sl/build/libarmnn_support_library.so"], - }, - }, - apex_available: ["//apex_available:vendor"], -} - -cc_defaults { - name: "NeuralNetworksShimArmnnDriverAidl_defaults", - defaults: ["neuralnetworks_defaults"], - header_libs: [ - "libneuralnetworks_headers", - ], - cflags: [ - "-DNN_COMPATIBILITY_LIBRARY_BUILD", - ], - static_libs: [ - "android.hardware.common-V2-ndk_platform", - "android.hardware.graphics.common-V2-ndk_platform", - "android.hardware.neuralnetworks-V1-ndk_platform", - "libaidlcommonsupport", - "libarect", - "libcutils", - "libneuralnetworks_shim_static", - "neuralnetworks_supportlibrary_loader", - "neuralnetworks_types", - "libneuralnetworks_common", - "neuralnetworks_utils_hal_aidl", - "neuralnetworks_utils_hal_common", - ], - shared_libs: [ - "android.hidl.allocator@1.0", - "android.hidl.memory@1.0", - "libbase", - "libhidltransport", - "libbinder_ndk", - "libhidlbase", - "libhidlmemory", - "liblog", - "libnativewindow", - "libutils", - "libarmnn_support_library", - ], - -} - -cc_defaults { - name: "NeuralNetworksShimArmnnDriverAidl_server_defaults", - defaults: ["NeuralNetworksShimArmnnDriverAidl_defaults"], - relative_install_path: "hw", - proprietary: true, -} - - -cc_binary { - name: "android.hardware.neuralnetworks-shim-service-armnn", - srcs: ["./shimservice.cpp"], - enabled: false, - defaults: ["NeuralNetworksShimArmnnDriverAidl_server_defaults"], - init_rc: ["./config/android.hardware.neuralnetworks-shim-service-armnn.rc"], - vintf_fragments: ["./config/android.hardware.neuralnetworks-shim-service-armnn.xml"], -} diff --git a/shim/Android.bp.off b/shim/Android.bp.off new file mode 100644 index 0000000000..f3810da463 --- /dev/null +++ b/shim/Android.bp.off @@ -0,0 +1,97 @@ +// +// Copyright © 2022 Arm Ltd and Contributors. All rights reserved. +// SPDX-License-Identifier: MIT +// + + +//////////////////////////////////////////// +// // +// shim service // +// // +//////////////////////////////////////////// + +cc_prebuilt_library_shared { + name: "libarmnn_support_library", + check_elf_files: false, + shared_libs: [ + "libbase", + "libcutils", + "liblog", + "libnativewindow", + ], + proprietary: true, + vendor: true, + // libnativewindow versioning trips this check. b/181227567 for fixing + allow_undefined_symbols: true, + target: { + android_x86_64: { + srcs: ["./sl/build/libarmnn_support_library.so"], + }, + android_x86: { + srcs: ["./sl/build/libarmnn_support_library.so"], + }, + android_arm64: { + srcs: ["./sl/build/libarmnn_support_library.so"], + }, + android_arm: { + srcs: ["./sl/build/libarmnn_support_library.so"], + }, + }, + apex_available: ["//apex_available:vendor"], +} + +cc_defaults { + name: "NeuralNetworksShimArmnnDriverAidl_defaults", + defaults: ["neuralnetworks_defaults"], + header_libs: [ + "libneuralnetworks_headers", + ], + cflags: [ + "-DNN_COMPATIBILITY_LIBRARY_BUILD", + ], + static_libs: [ + "android.hardware.common-V2-ndk_platform", + "android.hardware.graphics.common-V2-ndk_platform", + "android.hardware.neuralnetworks-V1-ndk_platform", + "libaidlcommonsupport", + "libarect", + "libcutils", + "libneuralnetworks_shim_static", + "neuralnetworks_supportlibrary_loader", + "neuralnetworks_types", + "libneuralnetworks_common", + "neuralnetworks_utils_hal_aidl", + "neuralnetworks_utils_hal_common", + ], + shared_libs: [ + "android.hidl.allocator@1.0", + "android.hidl.memory@1.0", + "libbase", + "libhidltransport", + "libbinder_ndk", + "libhidlbase", + "libhidlmemory", + "liblog", + "libnativewindow", + "libutils", + "libarmnn_support_library", + ], + +} + +cc_defaults { + name: "NeuralNetworksShimArmnnDriverAidl_server_defaults", + defaults: ["NeuralNetworksShimArmnnDriverAidl_defaults"], + relative_install_path: "hw", + proprietary: true, +} + + +cc_binary { + name: "android.hardware.neuralnetworks-shim-service-armnn", + srcs: ["./shimservice.cpp"], + enabled: true, + defaults: ["NeuralNetworksShimArmnnDriverAidl_server_defaults"], + init_rc: ["./config/android.hardware.neuralnetworks-shim-service-armnn.rc"], + vintf_fragments: ["./config/android.hardware.neuralnetworks-shim-service-armnn.xml"], +} diff --git a/shim/BuildGuideShimSupportLibrary.md b/shim/BuildGuideShimSupportLibrary.md index dc69f8f77c..c0b0f8570b 100644 --- a/shim/BuildGuideShimSupportLibrary.md +++ b/shim/BuildGuideShimSupportLibrary.md @@ -141,10 +141,13 @@ make ## Build Arm NN Shim -By default the Arm NN shim Android.bp is not enabled. -Enable it by editing armnn/shim/Android.bp and setting `enabled: true` +By default the Arm NN shim Android.bp.off is not enabled. +It is enabled below by renaming it to Android.bp ```bash +cd ${WORKING_DIR}/armnn/shim +mv Android.bp.off Android.bp + cd $AOSP_ROOT source build/envsetup.sh lunch -eng -- cgit v1.2.1