From ad1b3d7518429e2d16a2695d9b0bbf81b6565ac9 Mon Sep 17 00:00:00 2001 From: Teresa Charlin Date: Tue, 14 Mar 2023 12:10:28 +0000 Subject: IVGCVSW-7555 Restructure Delegate * New folders created: * common is for common code where TfLite API is not used * classic is for existing delegate implementations * opaque is for new opaque delegate implementation, * tests is for shared between existing Delegate and Opaque Delegate which have test utils to work which delegate to use. * Existing delegate is built to libarmnnDelegate.so and opaque delegate is built as libarmnnOpaqueDelegate.so * Opaque structure is introduced but no API is added yet. * CmakeList.txt and delegate/CMakeList.txt have been modified and 2 new CmakeList.txt added * Rename BUILD_ARMNN_TFLITE_DELEGATE as BUILD_CLASSIC_DELEGATE * Rename BUILD_ARMNN_TFLITE_OPAQUE_DELEGATE as BUILD_OPAQUE_DELEGATE Signed-off-by: Teresa Charlin Change-Id: Ib682b9ad0ac8d8acdc4ec6d9099bb0008a9fe8ed --- cmake/ClassicDelegateVersion.cmake | 18 ++++++++++++++++++ cmake/DelegateVersion.cmake | 18 ------------------ cmake/GlobalConfig.cmake | 21 +++++++++++++-------- cmake/OpaqueDelegateVersion.cmake | 18 ++++++++++++++++++ 4 files changed, 49 insertions(+), 26 deletions(-) create mode 100644 cmake/ClassicDelegateVersion.cmake delete mode 100644 cmake/DelegateVersion.cmake create mode 100644 cmake/OpaqueDelegateVersion.cmake (limited to 'cmake') diff --git a/cmake/ClassicDelegateVersion.cmake b/cmake/ClassicDelegateVersion.cmake new file mode 100644 index 0000000000..fa036f1a28 --- /dev/null +++ b/cmake/ClassicDelegateVersion.cmake @@ -0,0 +1,18 @@ +# +# Copyright © 2021,2023 Arm Ltd and Contributors. All rights reserved. +# SPDX-License-Identifier: MIT +# + +# Read the ArmNN Delegate version components from file +file(READ ${CMAKE_CURRENT_LIST_DIR}/../delegate/classic/include/Version.hpp ClassicDelegateVersion) + +# Parse the ArmNN Delegate version components +string(REGEX MATCH "#define DELEGATE_MAJOR_VERSION ([0-9]*)" _ ${ClassicDelegateVersion}) +set(DELEGATE_MAJOR_VERSION ${CMAKE_MATCH_1}) +string(REGEX MATCH "#define DELEGATE_MINOR_VERSION ([0-9]*)" _ ${ClassicDelegateVersion}) +set(DELEGATE_MINOR_VERSION ${CMAKE_MATCH_1}) + +# Define LIB version +set(DELEGATE_LIB_VERSION "${DELEGATE_MAJOR_VERSION}.${DELEGATE_MINOR_VERSION}") +# Define LIB soversion +set(DELEGATE_LIB_SOVERSION "${DELEGATE_MAJOR_VERSION}") \ No newline at end of file diff --git a/cmake/DelegateVersion.cmake b/cmake/DelegateVersion.cmake deleted file mode 100644 index caaede85bc..0000000000 --- a/cmake/DelegateVersion.cmake +++ /dev/null @@ -1,18 +0,0 @@ -# -# Copyright © 2021 Arm Ltd and Contributors. All rights reserved. -# SPDX-License-Identifier: MIT -# - -# Read the ArmNN Delegate version components from file -file(READ ${CMAKE_CURRENT_LIST_DIR}/../delegate/include/Version.hpp delegateVersion) - -# Parse the ArmNN Delegate version components -string(REGEX MATCH "#define DELEGATE_MAJOR_VERSION ([0-9]*)" _ ${delegateVersion}) -set(DELEGATE_MAJOR_VERSION ${CMAKE_MATCH_1}) -string(REGEX MATCH "#define DELEGATE_MINOR_VERSION ([0-9]*)" _ ${delegateVersion}) -set(DELEGATE_MINOR_VERSION ${CMAKE_MATCH_1}) - -# Define LIB version -set(DELEGATE_LIB_VERSION "${DELEGATE_MAJOR_VERSION}.${DELEGATE_MINOR_VERSION}") -# Define LIB soversion -set(DELEGATE_LIB_SOVERSION "${DELEGATE_MAJOR_VERSION}") \ No newline at end of file diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake index 1f24fa537c..3337f41cbf 100644 --- a/cmake/GlobalConfig.cmake +++ b/cmake/GlobalConfig.cmake @@ -36,8 +36,8 @@ option(BUILD_PYTHON_WHL "Build Python wheel package" OFF) option(BUILD_PYTHON_SRC "Build Python source package" OFF) option(BUILD_STATIC_PIPE_LIBS "Build Static PIPE libraries" OFF) option(BUILD_PIPE_ONLY "Build the PIPE libraries only" OFF) -option(BUILD_ARMNN_TFLITE_DELEGATE "Build the Arm NN TfLite delegate" OFF) -option(BUILD_ARMNN_TFLITE_OPAQUE_DELEGATE "Build the Arm NN TfLite Opaque delegate" OFF) +option(BUILD_CLASSIC_DELEGATE "Build the Arm NN TfLite delegate" OFF) +option(BUILD_OPAQUE_DELEGATE "Build the Arm NN TfLite Opaque delegate" OFF) option(BUILD_MEMORY_STRATEGY_BENCHMARK "Build the MemoryBenchmark" OFF) option(BUILD_BARE_METAL "Disable features requiring operating system support" OFF) option(BUILD_SHARED_LIBS "Determines if Armnn will be built statically or dynamically. @@ -51,13 +51,18 @@ option(EXECUTE_NETWORK_STATIC " This is a limited experimental build that is ent ARMNNREF=1/0 ARMCOMPUTECL=0 BUILD_ONNX_PARSER=0 - BUILD_ARMNN_TFLITE_DELEGATE=0 - BUILD_ARMNN_TFLITE_OPAQUE_DELEGATE=0 + BUILD_CLASSIC_DELEGATE=0 + BUILD_OPAQUE_DELEGATE=0 BUILD_TIMELINE_DECODER=0 BUILD_BASE_PIPE_SERVER=0 BUILD_UNIT_TESTS=0 BUILD_GATORD_MOCK=0" OFF) +if(BUILD_ARMNN_TFLITE_DELEGATE) + message(BUILD_ARMNN_TFLITE_DELEGATE option is deprecated, it will be removed in 24.02, please use BUILD_CLASSIC_DELEGATE instead) + set(BUILD_CLASSIC_DELEGATE 1) +endif() + include(SelectLibraryConfigurations) set(COMPILER_IS_GNU_LIKE 0) @@ -180,8 +185,8 @@ if (NOT BUILD_PIPE_ONLY) endif() # JNI_BUILD has DBUILD_SHARED_LIBS set to 0 and not finding libs while building -# hence added NOT BUILD_ARMNN_TFLITE_DELEGATE/BUILD_ARMNN_TFLITE_OPAQUE_DELEGATE condition -if(NOT BUILD_SHARED_LIBS AND NOT BUILD_ARMNN_TFLITE_DELEGATE AND NOT BUILD_ARMNN_TFLITE_OPAQUE_DELEGATE) +# hence added NOT BUILD_CLASSIC_DELEGATE/BUILD_OPAQUE_DELEGATE condition +if(NOT BUILD_SHARED_LIBS AND NOT BUILD_CLASSIC_DELEGATE AND NOT BUILD_OPAQUE_DELEGATE) set(CMAKE_FIND_LIBRARY_SUFFIXES .a .lib) endif() @@ -224,11 +229,11 @@ if(BUILD_ONNX_PARSER) include_directories(SYSTEM "${ONNX_GENERATED_SOURCES}") endif() -if(BUILD_ARMNN_TFLITE_DELEGATE) +if(BUILD_CLASSIC_DELEGATE) add_definitions(-DARMNN_TFLITE_DELEGATE) endif() -if(BUILD_ARMNN_TFLITE_OPAQUE_DELEGATE) +if(BUILD_OPAQUE_DELEGATE) add_definitions(-DARMNN_TFLITE_OPAQUE_DELEGATE) endif() diff --git a/cmake/OpaqueDelegateVersion.cmake b/cmake/OpaqueDelegateVersion.cmake new file mode 100644 index 0000000000..d6ae1ba111 --- /dev/null +++ b/cmake/OpaqueDelegateVersion.cmake @@ -0,0 +1,18 @@ +# +# Copyright © 2023 Arm Ltd and Contributors. All rights reserved. +# SPDX-License-Identifier: MIT +# + +# Read the ArmNN Delegate version components from file +file(READ ${CMAKE_CURRENT_LIST_DIR}/../delegate/opaque/include/Version.hpp opaqueDelegateVersion) + +# Parse the ArmNN Delegate version components +string(REGEX MATCH "#define OPAQUE_DELEGATE_MAJOR_VERSION ([0-9]*)" _ ${opaqueDelegateVersion}) +set(OPAQUE_DELEGATE_MAJOR_VERSION ${CMAKE_MATCH_1}) +string(REGEX MATCH "#define OPAQUE_DELEGATE_MINOR_VERSION ([0-9]*)" _ ${opaqueDelegateVersion}) +set(OPAQUE_DELEGATE_MINOR_VERSION ${CMAKE_MATCH_1}) + +# Define LIB version +set(OPAQUE_DELEGATE_LIB_VERSION "${OPAQUE_DELEGATE_MAJOR_VERSION}.${OPAQUE_DELEGATE_MINOR_VERSION}") +# Define LIB soversion +set(OPAQUE_DELEGATE_LIB_SOVERSION "${OPAQUE_DELEGATE_MINOR_VERSION}") \ No newline at end of file -- cgit v1.2.1