Merge branch 'devel/tizen' into tizen
[platform/core/api/sensor.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(capi-system-sensor)
3 INCLUDE(GNUInstallDirs)
4
5 SET(DEPENDENTS "dlog sensor capi-base-common")
6 SET(DEPENDENTS "${DEPENDENTS} context-sensor-recorder-client")
7
8 SET(VERSION ${FULLVER})
9 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
10
11 SET(PC_NAME ${PROJECT_NAME})
12 SET(PC_DESCRIPTION "Sensor C-API library")
13 SET(PC_INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/sensor")
14 SET(PC_DEPENDENTS "${DEPENDENTS}")
15 SET(PC_LIBDIR "${CMAKE_INSTALL_LIBDIR}")
16 SET(PC_LDFLAGS "-l${PROJECT_NAME}")
17
18 INCLUDE_DIRECTORIES(include ${CMAKE_CURRENT_SOURCE_DIR})
19
20 # Build options
21 INCLUDE(FindPkgConfig)
22 PKG_CHECK_MODULES(${PROJECT_NAME} REQUIRED ${DEPENDENTS})
23
24 FOREACH(flag ${${PROJECT_NAME}_CFLAGS})
25     SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
26 ENDFOREACH(flag)
27
28 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fPIC -Wall -Werror -g -fdump-rtl-expand")
29 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -std=c++0x")
30 SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
31 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl, --rpath=${LIB_INSTALL_DIR}")
32
33 # Internal Logging Option
34 #ADD_DEFINITIONS("-DTIZEN_DEBUG")
35
36 # Compile Source files
37 SET(SOURCES src/sensor.cpp
38                         src/sensor_recorder.cpp
39                         src/sensor_provider.cpp
40                         src/geomagnetic_field.c
41                         src/fusion_util.c)
42
43 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SOURCES})
44
45 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${${PROJECT_NAME}_LDFLAGS})
46 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${FULLVER} SOVERSION ${MAJORVER} CLEAN_DIRECT_OUTPUT 1)
47 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc @ONLY)
48 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
49 INSTALL(FILES include/sensor.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/sensor)
50 INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})