aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarat Dukhan <marat@fb.com>2017-10-13 21:07:44 -0400
committerMarat Dukhan <marat@fb.com>2017-10-13 21:07:44 -0400
commitb8a83371eb373a41f7ed56998a9b56f9cb647b5c (patch)
treecc9413927fb4ad027401fb115d3b1e3f9d5e6336
parent9437024f7e60cef9d29527a21582568161ee8f1b (diff)
downloadcpuinfo-b8a83371eb373a41f7ed56998a9b56f9cb647b5c.tar.gz
Build mock library with CMake
-rw-r--r--CMakeLists.txt15
-rw-r--r--include/cpuinfo-mock.h3
2 files changed, 18 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7b1f012..e76e347 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -106,6 +106,21 @@ INSTALL(TARGETS cpuinfo
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+# ---[ cpuinfo mock library
+IF(BUILD_MOCK_TESTS)
+ SET(CPUINFO_MOCK_SRCS "${CPUINFO_SRCS}")
+ IF(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "Android")
+ LIST(APPEND CPUINFO_MOCK_SRCS src/linux/mockfile.c)
+ ENDIF()
+
+ ADD_LIBRARY(cpuinfo_mock ${CPUINFO_MOCK_SRCS})
+ SET_TARGET_PROPERTIES(cpuinfo_mock PROPERTIES VERSION ${PROJECT_VERSION})
+ SET_TARGET_PROPERTIES(cpuinfo_mock PROPERTIES PUBLIC_HEADER include/cpuinfo.h)
+ TARGET_INCLUDE_DIRECTORIES(cpuinfo_mock PRIVATE include)
+ TARGET_INCLUDE_DIRECTORIES(cpuinfo_mock PRIVATE src)
+ TARGET_COMPILE_DEFINITIONS(cpuinfo_mock PRIVATE "-DCPUINFO_MOCK=1")
+ENDIF()
+
# ---[ Helper and debug tools
IF(BUILD_TOOLS)
ADD_EXECUTABLE(isa-info tools/isa-info.c)
diff --git a/include/cpuinfo-mock.h b/include/cpuinfo-mock.h
index a5890f6..152f93f 100644
--- a/include/cpuinfo-mock.h
+++ b/include/cpuinfo-mock.h
@@ -2,6 +2,9 @@
#ifndef CPUINFO_MOCK_H
#define CPUINFO_MOCK_H
+#include <stddef.h>
+#include <stdint.h>
+
#include <cpuinfo.h>
#if defined(__linux__)
#include <sys/types.h>