408cf8510f667fc6e1e37101e9c41d13f61144f9
[platform/core/ml/nnfw.git] / infra / nnfw / cmake / packages / CpuInfoConfig.cmake
1 function(_CpuInfo_Build)
2   nnas_find_package(CpuInfoSource QUIET)
3
4   # NOTE This line prevents multiple definitions of cpuinfo target
5   if(TARGET cpuinfo)
6     set(CpuInfoSource_DIR ${CpuInfoSource_DIR} PARENT_SCOPE)
7     set(CpuInfo_FOUND TRUE PARENT_SCOPE)
8     return()
9   endif(TARGET cpuinfo)
10
11   if(NOT CpuInfoSource_FOUND)
12     message(STATUS "CPUINFO: Source not found")
13     set(CpuInfo_FOUND FALSE PARENT_SCOPE)
14     return()
15   endif(NOT CpuInfoSource_FOUND)
16
17   set(CPUINFO_BUILD_TOOLS OFF CACHE BOOL "Build command-line tools")
18   set(CPUINFO_BUILD_BENCHMARKS OFF CACHE BOOL "Build cpuinfo unit tests")
19   set(CPUINFO_BUILD_UNIT_TESTS OFF CACHE BOOL "Build cpuinfo mock tests")
20   set(CPUINFO_BUILD_MOCK_TESTS OFF CACHE BOOL "Build cpuinfo micro-benchmarks")
21   add_extdirectory("${CpuInfoSource_DIR}" cpuinfo EXCLUDE_FROM_ALL)
22   set_target_properties(cpuinfo PROPERTIES POSITION_INDEPENDENT_CODE ON)
23   set(CpuInfoSource_DIR ${CpuInfoSource_DIR} PARENT_SCOPE)
24   set(CpuInfo_FOUND TRUE PARENT_SCOPE)
25 endfunction(_CpuInfo_Build)
26
27 if(BUILD_CPUINFO)
28   _CpuInfo_Build()
29 else(BUILD_CPUINFO)
30   set(CpuInfo_FOUND FALSE)
31 endif(BUILD_CPUINFO)