PLM Proximity issue fix
[platform/framework/native/uix.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 SET (this_target osp-uix)
4
5 SET(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/cmake_build_tmp/output)
6
7 INCLUDE_DIRECTORIES(
8         inc
9         src
10         src/inc
11         /usr/include/sensor
12         /usr/include/system
13         /usr/include/osp
14         /usr/include/osp/app
15         /usr/include/osp/base
16         )
17
18 SET (${this_target}_SOURCE_FILES
19         src/FUixSensorMotion.cpp
20         src/FUixSensor_MotionImpl.cpp
21         src/FUixSensorSensorData.cpp
22         src/FUixSensorAccelerationSensorData.cpp
23         src/FUixSensorMagneticSensorData.cpp
24         src/FUixSensorProximitySensorData.cpp
25         src/FUixSensorTiltSensorData.cpp
26         src/FUixSensorGyroSensorData.cpp
27         src/FUixSensorLightSensorData.cpp
28         src/FUixSensorGravitySensorData.cpp
29         src/FUixSensorUserAccelerationSensorData.cpp
30         src/FUixSensorDeviceOrientationSensorData.cpp
31         src/FUixSensorSensorManager.cpp
32         src/FUixSensor_ISensorCore.cpp
33         src/FUixSensor_SensorUtil.cpp
34         src/FUixSensor_SensorEventDeliverer.cpp
35         src/FUixSensor_SensorManagerImpl.cpp
36         )
37
38 SET(EXTRA_CFLAGS  "${EXTRA_CFLAGS} -Wall" )
39
40 ## SET C COMPILER FLAGS
41 SET(CMAKE_C_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
42
43 ## SET CPP COMPILER FLAGS
44 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
45 SET(CMAKE_CXX_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
46
47 ## Create Library
48 ADD_LIBRARY (${this_target} SHARED ${${this_target}_SOURCE_FILES})
49
50 ## SET DEPENDENCY FLAGS
51 ADD_DEPENDENCIES(${this_target} osp-appfw)
52
53 ## SET LINKER FLAGS
54 SET(CMAKE_SHARED_LINKER_FLAGS -Wl,--no-undefined)
55
56 TARGET_LINK_LIBRARIES(${this_target} "-L/usr/lib/osp -losp-appfw" )
57 TARGET_LINK_LIBRARIES(${this_target} "-lsensor" )
58 TARGET_LINK_LIBRARIES(${this_target} "-lcapi-system-sensor" )
59
60 SET_TARGET_PROPERTIES(${this_target} 
61         PROPERTIES 
62         VERSION ${FULLVER}
63         SOVERSION ${MAJORVER}
64         CLEAN_DIRECT_OUTPUT 1
65         )
66
67 ADD_CUSTOM_COMMAND(TARGET ${this_target}
68     POST_BUILD
69                 COMMAND ${CMAKE_COMMAND} -E copy ${LIBRARY_OUTPUT_PATH}/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX} ${LIBRARY_OUTPUT_PATH}/debug/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX}.${FULLVER} 
70                 COMMAND ${CMAKE_COMMAND} -E create_symlink ${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX}.${FULLVER} ${LIBRARY_OUTPUT_PATH}/debug/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX}.${MAJORVER}
71                 COMMAND ${CMAKE_STRIP} --strip-unneeded ${LIBRARY_OUTPUT_PATH}/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX}
72     COMMENT "strip ${this_target}"
73                 )   
74
75 INSTALL(DIRECTORY ${LIBRARY_OUTPUT_PATH}/ DESTINATION lib/osp 
76                                 FILES_MATCHING PATTERN "*.so*" 
77                                 PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ                                          
78                                                                                 GROUP_EXECUTE GROUP_READ
79                                                                                 WORLD_EXECUTE WORLD_READ)
80 INSTALL(DIRECTORY ${LIBRARY_OUTPUT_PATH}/debug/ DESTINATION lib/osp/debug 
81                                 FILES_MATCHING PATTERN "*.so*" 
82                                 PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ                                          
83                                                                                 GROUP_EXECUTE GROUP_READ
84                                                                                 WORLD_EXECUTE WORLD_READ)
85
86 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/inc/ DESTINATION include/osp FILES_MATCHING PATTERN "*.h")
87 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/inc/ DESTINATION include/osp/uix FILES_MATCHING PATTERN "*.h")
88
89 # pkgconfig file
90 CONFIGURE_FILE(${this_target}.pc.in ${CMAKE_SOURCE_DIR}/${this_target}.pc @ONLY)
91 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${this_target}.pc DESTINATION lib/pkgconfig)