IVGCVSW-3656 Make the reference backend optional
* Made the build of the reference backend depend on a new ARMCOMPUTEREF
macro
* Made the relevant targets dependent on the ref backend
* Moved Cl and Neon static registry initializers to separate files
* Wrapped some of the unit tests into proper ifdefs where necessary
Change-Id: I7f2c42699682630233a4c4b6aed2f005083de189
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake
index 8dad57a..0063cd1 100644
--- a/cmake/GlobalConfig.cmake
+++ b/cmake/GlobalConfig.cmake
@@ -6,6 +6,7 @@
option(BUILD_FOR_COVERAGE "Use no optimization and output .gcno and .gcda files" OFF)
option(ARMCOMPUTENEON "Build with ARM Compute NEON support" OFF)
option(ARMCOMPUTECL "Build with ARM Compute OpenCL support" OFF)
+option(ARMCOMPUTEREF "Build with ARM Compute reference support" OFF)
option(PROFILING_BACKEND_STREAMLINE "Forward the armNN profiling events to DS-5/Streamline as annotations" OFF)
# options used for heap profiling and leak checking
option(HEAP_PROFILING "Build with heap profiling enabled" OFF)
@@ -289,6 +290,11 @@
include_directories(SYSTEM ${HALF_INCLUDE})
endif()
+# ARM Compute reference backend
+if(ARMCOMPUTEREF)
+ add_definitions(-DARMCOMPUTEREF_ENABLED)
+endif()
+
# Streamline annotate
if(PROFILING_BACKEND_STREAMLINE)
include_directories("${GATOR_ROOT}/annotate")