From a9fa0e953167fb7e07dfa8f9c893b1fe3934594e Mon Sep 17 00:00:00 2001 From: =?utf8?q?=EC=98=A4=ED=98=95=EC=84=9D/On-Device=20Lab=28SR=29/Staff?= =?utf8?q?=20Engineer/=EC=82=BC=EC=84=B1=EC=A0=84=EC=9E=90?= Date: Mon, 1 Apr 2019 14:31:19 +0900 Subject: [PATCH] Platform specific cmake option setting (#4898) Make platform specific cmake option setting files Platform specific setting have higher priority than common setting Signed-off-by: Hyeongseok Oh --- cmake/CfgOptionFlags.cmake | 23 +++++++---------------- cmake/options/options_aarch64-linux.cmake | 8 ++++++++ cmake/options/options_aarch64-tizen.cmake | 8 ++++++++ cmake/options/options_arm64-android.cmake | 8 ++++++++ cmake/options/options_armv7l-linux.cmake | 8 ++++++++ cmake/options/options_armv7l-tizen.cmake | 8 ++++++++ cmake/options/options_x86_64-linux.cmake | 8 ++++++++ 7 files changed, 55 insertions(+), 16 deletions(-) create mode 100644 cmake/options/options_aarch64-linux.cmake create mode 100644 cmake/options/options_aarch64-tizen.cmake create mode 100644 cmake/options/options_arm64-android.cmake create mode 100644 cmake/options/options_armv7l-linux.cmake create mode 100644 cmake/options/options_armv7l-tizen.cmake create mode 100644 cmake/options/options_x86_64-linux.cmake diff --git a/cmake/CfgOptionFlags.cmake b/cmake/CfgOptionFlags.cmake index 8c31e3f..02997b6 100644 --- a/cmake/CfgOptionFlags.cmake +++ b/cmake/CfgOptionFlags.cmake @@ -1,15 +1,16 @@ include(CMakeDependentOption) # +# Platfor specific configuration +# note: this should be placed before platform common setting for option setting priority +# (platform specific setting have higher priority) +# +include("cmake/options/options_${TARGET_PLATFORM}.cmake") + +# # Build configuration for project # option(BUILD_EXT_MULTITHREAD "Build external build using multi thread" ON) -CMAKE_DEPENDENT_OPTION(BUILD_PURE_ARM_COMPUTE "Build pure_arm_compute runtime" - # Enable PURE ARMCompute runtime build if the target architecture is aarch - # - # TODO Enable build if ARMCompute library is available - ON "TARGET_IS_ARMARCH" - OFF) option(BUILD_NEURUN "Build neurun" OFF) #if implementation is done, it would replace nn runtime. option(BUILD_LOGGING "Build logging runtime" ON) CMAKE_DEPENDENT_OPTION(BUILD_RUNTIME_NNAPI_TEST "Build Runtime NN API Generated Test" @@ -22,11 +23,6 @@ option(BUILD_TFLITE_RUN "Build tflite-run" ON) option(BUILD_TFLITE_BENCHMARK_MODEL "Build tflite benchmark model" OFF) option(BUILD_NNAPI_QUICKCHECK "Build NN API Quickcheck tools" OFF) option(BUILD_TOOLS "Bulid nnfw projects under tools/" ON) -CMAKE_DEPENDENT_OPTION(BUILD_ANDROID_TFLITE "Enable android support for TensorFlow Lite" - # Enable android support for android build - ON "${TARGET_OS} STREQUAL android" - # Disable android support otherwise - OFF) # # Build configuration for contrib # @@ -48,11 +44,6 @@ option(DOWNLOAD_NEON2SSE "Download NEON2SSE library source" ON) option(DOWNLOAD_FLATBUFFERS "Download FlatBuffers source" ON) option(BUILD_TENSORFLOW_LITE "Build TensorFlow Lite from the downloaded source" ON) option(DOWNLOAD_ARMCOMPUTE "Download ARM Compute source" ON) -CMAKE_DEPENDENT_OPTION(BUILD_ARMCOMPUTE "Build ARM Compute from the downloaded source" - # Enable ARMCompute build if the target architecture is aarch - ON "TARGET_IS_ARMARCH" - # Disable ARMCompute build otherwise - OFF) option(DOWNLOAD_NONIUS "Download nonius source" ON) option(DOWNLOAD_BOOST "Download boost source" OFF) option(BUILD_BOOST "Build boost source" OFF) diff --git a/cmake/options/options_aarch64-linux.cmake b/cmake/options/options_aarch64-linux.cmake new file mode 100644 index 0000000..caabe48 --- /dev/null +++ b/cmake/options/options_aarch64-linux.cmake @@ -0,0 +1,8 @@ +# +# aarch64 linux cmake options +# +option(BUILD_PURE_ARM_COMPUTE "Build pure_arm_compute runtime" ON) +option(BUILD_ARMCOMPUTE "Build ARM Compute from the downloaded source" ON) +option(BUILD_ANDROID_TFLITE "Enable android support for TensorFlow Lite" OFF) +option(DOWNLOAD_ARMCOMPUTE "Download ARM Compute source" ON) +option(DOWNLOAD_NEON2SSE "Download NEON2SSE library source" OFF) diff --git a/cmake/options/options_aarch64-tizen.cmake b/cmake/options/options_aarch64-tizen.cmake new file mode 100644 index 0000000..e285c6d --- /dev/null +++ b/cmake/options/options_aarch64-tizen.cmake @@ -0,0 +1,8 @@ +# +# aarch64 tizen cmake options +# +option(BUILD_PURE_ARM_COMPUTE "Build pure_arm_compute runtime" ON) +option(BUILD_ARMCOMPUTE "Build ARM Compute from the downloaded source" ON) +option(BUILD_ANDROID_TFLITE "Enable android support for TensorFlow Lite" OFF) +option(DOWNLOAD_ARMCOMPUTE "Download ARM Compute source" ON) +option(DOWNLOAD_NEON2SSE "Download NEON2SSE library source" OFF) diff --git a/cmake/options/options_arm64-android.cmake b/cmake/options/options_arm64-android.cmake new file mode 100644 index 0000000..431970c --- /dev/null +++ b/cmake/options/options_arm64-android.cmake @@ -0,0 +1,8 @@ +# arm64 android cmake options +# +option(BUILD_PURE_ARM_COMPUTE "Build pure_arm_compute runtime" ON) +option(BUILD_ARMCOMPUTE "Build ARM Compute from the downloaded source" ON) +option(BUILD_ANDROID_TFLITE "Enable android support for TensorFlow Lite" ON) +option(DOWNLOAD_ARMCOMPUTE "Download ARM Compute source" ON) +option(DOWNLOAD_NEON2SSE "Download NEON2SSE library source" OFF) + diff --git a/cmake/options/options_armv7l-linux.cmake b/cmake/options/options_armv7l-linux.cmake new file mode 100644 index 0000000..2e2c989 --- /dev/null +++ b/cmake/options/options_armv7l-linux.cmake @@ -0,0 +1,8 @@ +# +# armv7l linux cmake options +# +option(BUILD_PURE_ARM_COMPUTE "Build pure_arm_compute runtime" ON) +option(BUILD_ARMCOMPUTE "Build ARM Compute from the downloaded source" ON) +option(BUILD_ANDROID_TFLITE "Enable android support for TensorFlow Lite" OFF) +option(DOWNLOAD_ARMCOMPUTE "Download ARM Compute source" ON) +option(DOWNLOAD_NEON2SSE "Download NEON2SSE library source" OFF) diff --git a/cmake/options/options_armv7l-tizen.cmake b/cmake/options/options_armv7l-tizen.cmake new file mode 100644 index 0000000..defdfba --- /dev/null +++ b/cmake/options/options_armv7l-tizen.cmake @@ -0,0 +1,8 @@ +# +# armv7l tizen cmake options +# +option(BUILD_PURE_ARM_COMPUTE "Build pure_arm_compute runtime" ON) +option(BUILD_ARMCOMPUTE "Build ARM Compute from the downloaded source" ON) +option(BUILD_ANDROID_TFLITE "Enable android support for TensorFlow Lite" OFF) +option(DOWNLOAD_ARMCOMPUTE "Download ARM Compute source" ON) +option(DOWNLOAD_NEON2SSE "Download NEON2SSE library source" OFF) diff --git a/cmake/options/options_x86_64-linux.cmake b/cmake/options/options_x86_64-linux.cmake new file mode 100644 index 0000000..7812857 --- /dev/null +++ b/cmake/options/options_x86_64-linux.cmake @@ -0,0 +1,8 @@ +# +# x86_64 linux cmake options +# +option(BUILD_PURE_ARM_COMPUTE "Build pure_arm_compute runtime" OFF) +option(BUILD_ARMCOMPUTE "Build ARM Compute from the downloaded source" OFF) +option(BUILD_ANDROID_TFLITE "Enable android support for TensorFlow Lite" OFF) +option(DOWNLOAD_ARMCOMPUTE "Download ARM Compute source" OFF) +option(DOWNLOAD_NEON2SSE "Download NEON2SSE library source" ON) -- 2.7.4