1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(external-sensor-plugins-rpi3 CXX)
3 INCLUDE(GNUInstallDirs)
4 SET(fw_name "external-sensor-plugins-rpi3")
6 SET(ACCELEROMETER "ON")
11 SET(HRM_LED_IR_RED "ON")
12 SET(GEOMAGNETIC "OFF")
15 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -O2 -omit-frame-pointer -std=gnu++0x")
16 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdata-sections -ffunction-sections")
17 SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--gc-section -Wl,--print-gc-section")
18 MESSAGE("FLAGS: ${CMAKE_CXX_FLAGS}")
19 MESSAGE("FLAGS: ${CMAKE_EXE_LINKER_FLAGS}")
21 INCLUDE(FindPkgConfig)
22 PKG_CHECK_MODULES(HAL_PKGS REQUIRED dlog glib-2.0 capi-system-peripheral-io)
23 PKG_CHECK_MODULES(pkgs REQUIRED capi-system-peripheral-io)
25 #LINK_LIBRARIES("capi-system-peripheral-io")
27 FOREACH(flag ${HAL_PKGS_CFLAGS})
28 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
31 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
33 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src)
34 FILE(GLOB SRCS src/*.cpp)
36 IF("${ACCELEROMETER}" STREQUAL "ON")
37 FILE(GLOB_RECURSE SRCS ${SRCS} src/accelerometer/*.cpp)
38 ADD_DEFINITIONS(-DENABLE_ACCELEROMETER)
41 IF("${GYROSCOPE}" STREQUAL "ON")
42 FILE(GLOB_RECURSE SRCS ${SRCS} src/gyroscope/*.cpp)
43 ADD_DEFINITIONS(-DENABLE_GYROSCOPE)
46 IF("${PROXIMITY}" STREQUAL "ON")
47 FILE(GLOB_RECURSE SRCS ${SRCS} src/proximity/*.cpp)
48 ADD_DEFINITIONS(-DENABLE_PROXIMITY)
51 IF("${LIGHT}" STREQUAL "ON")
52 FILE(GLOB_RECURSE SRCS ${SRCS} src/light/*.cpp)
53 ADD_DEFINITIONS(-DENABLE_LIGHT)
56 IF("${PRESSURE}" STREQUAL "ON")
57 FILE(GLOB_RECURSE SRCS ${SRCS} src/pressure/*.cpp)
58 ADD_DEFINITIONS(-DENABLE_PRESSURE)
61 IF("${HRM_LED_IR_RED}" STREQUAL "ON")
62 FILE(GLOB_RECURSE SRCS ${SRCS} src/hrm_led_ir_red/*.cpp)
63 ADD_DEFINITIONS(-DENABLE_HRM_LED_IR_RED)
66 IF("${GEOMAGNETIC}" STREQUAL "ON")
67 FILE(GLOB_RECURSE SRCS ${SRCS} src/geomagetic/*.cpp)
68 ADD_DEFINITIONS(-DENABLE_GEOMAGNETIC)
71 MESSAGE("Sources: ${SRCS}")
72 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
73 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${HAL_PKGS_LDFLAGS})
75 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR}/sensor)
77 ADD_SUBDIRECTORY(test)