Change function name
[platform/core/system/feedbackd.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(feedbackd C)
3
4
5 ########################################################
6 # Deviced CMakeLists.txt
7 ########################################################
8 SET(VERSION 0.1.0)
9
10 SET(SRCS
11         src/haptic/main.c
12         src/core/common.c
13         src/core/config-parser.c
14         src/core/device-idler.c
15         src/core/log.c
16         src/haptic/haptic.c
17 )
18
19 IF(DRIVER STREQUAL external)
20         SET(SRCS ${SRCS} src/haptic/external.c)
21 ELSEIF(DRIVER STREQUAL emulator)
22         SET(SRCS ${SRCS} src/haptic/emulator.c)
23 ELSEIF(DRIVER STREQUAL gpio)
24         SET(SRCS ${SRCS} src/haptic/gpio_haptic.c)
25 ELSEIF(DRIVER STREQUAL standard)
26         SET(SRCS ${SRCS} src/haptic/standard.c)
27 ELSEIF(DRIVER STREQUAL circle)
28         SET(SRCS ${SRCS} src/haptic/circle.c)
29 ENDIF()
30
31 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/src)
32
33 SET(PKG_MODULES
34         vconf
35         dlog
36         capi-base-common
37         glib-2.0
38         gio-2.0
39         gio-unix-2.0
40         capi-system-info
41         libsyscommon
42         libsystemd
43         capi-system-device
44 )
45
46 IF(DRIVER STREQUAL gpio)
47         SET(PKG_MODULES ${PKG_MODULES} capi-system-peripheral-io)
48 ENDIF()
49
50 INCLUDE(FindPkgConfig)
51 pkg_check_modules(pkgs2 REQUIRED ${PKG_MODULES})
52
53 FOREACH(flag ${pkgs2_CFLAGS})
54         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
55 ENDFOREACH(flag)
56
57 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -Werror")
58 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -fno-omit-frame-pointer -finstrument-functions")
59 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -lrt -fPIE")
60 SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie")
61
62 ADD_DEFINITIONS("-DDEBUG")
63
64 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
65 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs2_LDFLAGS} "-ldl" "-lm")
66 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
67
68 INSTALL(FILES ${CMAKE_SOURCE_DIR}/scripts/feedbackd.conf DESTINATION /etc/dbus-1/system.d)
69 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/systemd/ DESTINATION lib/systemd/system
70         FILES_MATCHING
71         PATTERN "feedbackd.service")
72 INSTALL(FILES ${CMAKE_SOURCE_DIR}/systemd/org.tizen.system.vibrator.service DESTINATION /usr/share/dbus-1/system-services)
73 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/haptic/conf/haptic-level3.conf DESTINATION /etc/feedbackd)
74 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/haptic/conf/haptic-level6.conf DESTINATION /etc/feedbackd)
75
76 ADD_SUBDIRECTORY(src/auto-test)