CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(hal-backend-sensor-tm1 CXX) INCLUDE(GNUInstallDirs) SET(LIBRARY_NAME "hal-backend-sensor") SET(HAL_LIBDIR ${CMAKE_HAL_LIBDIR_PREFIX}) SET(HAL_LICENSEDIR ${CMAKE_HAL_LICENSEDIR_PREFIX}) SET(DEPENDENTS "dlog hal-api-common hal-api-sensor") SET(ACCEL "ON") SET(PROXIMITY "ON") # Common Options SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -O2 -omit-frame-pointer -std=gnu++0x") SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdata-sections -ffunction-sections") SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--gc-section -Wl,--print-gc-section") MESSAGE("FLAGS: ${CMAKE_CXX_FLAGS}") MESSAGE("FLAGS: ${CMAKE_EXE_LINKER_FLAGS}") # Internal Debugging Options #ADD_DEFINITIONS(-Wall -g -D_DEBUG) INCLUDE(FindPkgConfig) PKG_CHECK_MODULES(HAL_PKGS REQUIRED dlog) FOREACH(flag ${HAL_PKGS_CFLAGS}) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}") ENDFOREACH(flag) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src) FILE(GLOB SRCS src/*.cpp) IF("${ACCEL}" STREQUAL "ON") FILE(GLOB_RECURSE SRCS ${SRCS} src/accel/*.cpp) ADD_DEFINITIONS(-DENABLE_ACCEL) ENDIF() IF("${PROXIMITY}" STREQUAL "ON") FILE(GLOB_RECURSE SRCS ${SRCS} src/proxi/*.cpp) ADD_DEFINITIONS(-DENABLE_PROXIMITY) ENDIF() MESSAGE("Sources: ${SRCS}") ADD_LIBRARY(${LIBRARY_NAME} SHARED ${SRCS}) TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${HAL_PKGS_LDFLAGS}) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.APLv2 DESTINATION ${HAL_LICENSEDIR}/${PROJECT_NAME}) INSTALL(TARGETS ${LIBRARY_NAME} DESTINATION ${HAL_LIBDIR} COMPONENT RuntimeLibraries) ADD_SUBDIRECTORY(testcase)