Add 'GEMMLowp' as an external module (#184)
author박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 <jh1302.park@samsung.com>
Wed, 2 May 2018 01:11:26 +0000 (10:11 +0900)
committerGitHub Enterprise <noreply-CODE@samsung.com>
Wed, 2 May 2018 01:11:26 +0000 (10:11 +0900)
This commit adds 'GEMMLowp' library module (which provide a header-only
gemmlowp libary target using GEMMLowpSource) which is necessary to build
tensorflow lite.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
cmake/packages/GEMMLowpConfig.cmake [new file with mode: 0644]

diff --git a/cmake/packages/GEMMLowpConfig.cmake b/cmake/packages/GEMMLowpConfig.cmake
new file mode 100644 (file)
index 0000000..f469a0a
--- /dev/null
@@ -0,0 +1,20 @@
+function(_GEMMLowp_import)
+  nncc_find_package(GEMMLowpSource QUIET)
+
+  if(NOT GEMMLowpSource_FOUND)
+    set(GEMMLowp_FOUND FALSE PARENT_SCOPE)
+    return()
+  endif(NOT GEMMLowpSource_FOUND)
+
+  if(NOT TARGET gemmlowp)
+    find_package(Threads REQUIRED)
+
+    add_library(gemmlowp INTERFACE)
+    target_include_directories(gemmlowp INTERFACE ${GEMMLowpSource_DIR})
+    target_link_libraries(gemmlowp INTERFACE Threads::Threads)
+  endif(NOT TARGET gemmlowp)
+
+  set(GEMMLowp_FOUND TRUE PARENT_SCOPE)
+endfunction(_GEMMLowp_import)
+
+_GEMMLowp_import()