sound-manager API changed
[apps/core/preloaded/quickpanel.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(quickpanel C)
3
4 AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/test TEST_SRCS)
5
6 SET(SRCS
7         daemon/modules.c
8         daemon/accessibility.c
9         daemon/voice_control.c
10         daemon/media.c
11         daemon/datetime/util-time.c
12         daemon/datetime/datetime.c
13         daemon/sim_controller.c
14         daemon/minictrl/minictrl.c
15         daemon/preference.c
16         daemon/notifications/noti_list_item.c
17         daemon/notifications/animated_image.c
18         daemon/notifications/activenoti.c
19         daemon/notifications/noti_view_listype.c
20         daemon/notifications/noti_view_ongoing.c
21         daemon/notifications/noti_node.c
22         daemon/notifications/noti_section.c
23         daemon/notifications/noti_win.c
24         daemon/notifications/noti_listbox.c
25         daemon/notifications/noti_util.c
26         daemon/notifications/noti_view.c
27         daemon/notifications/noti.c
28         daemon/device/brightness.c
29         daemon/settings/modules/rotate-lock.c
30         daemon/settings/modules/bluetooth.c
31         daemon/settings/modules/gps.c
32         daemon/settings/modules/wifi.c
33         daemon/settings/modules/sound-profile.c
34         daemon/settings/settings_view_all.c
35         daemon/settings/settings_icon_common.c
36         daemon/settings/settings_gridbox.c
37         daemon/settings/settings_view_featured.c
38         daemon/settings/settings_ipc.c
39         daemon/settings/setting_module_api.c
40         daemon/settings/settings.c
41         daemon/settings/setting_utils.c
42         daemon/vi/vi_manager.c
43         daemon/common_uic.c
44         daemon/handler_controller.c
45         daemon/service/animated_icon.c
46         daemon/service/emergency_mode.c
47         daemon/service/uninstall.c
48         daemon/service/reminder.c
49         daemon/service/keyboard.c
50         daemon/service/noti_led.c
51         daemon/page/pager.c
52         daemon/page/page_base.c
53         daemon/page/pager_common.c
54         daemon/page/page_setting_all.c
55         daemon/quickpanel-ui.c
56         daemon/common.c
57         daemon/list_util.c
58         ${EXTRA_SRCS}
59         ${TEST_SRCS}
60 )
61
62 SET(PACKAGE ${PROJECT_NAME})
63 SET(PREFIX "${CMAKE_INSTALL_PREFIX}/apps/${PKGNAME}")
64 SET(BINDIR "${PREFIX}/bin")
65 SET(RESDIR "${PREFIX}/res")
66 SET(LOCALEDIR "${RESDIR}/locale")
67 SET(ICONDIR "${RESDIR}/icons")
68 SET(EDJDIR "${RESDIR}/edje")
69 SET(DATADIR "${PREFIX}/data")
70 SET(DESKTOPDIR "/usr/share/applications")
71 SET(MANIFESTXMLDIR "/usr/share/packages")
72 SET(SHARED_DIR "${PREFIX}/shared/res")
73
74 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
75         SET(CMAKE_BUILD_TYPE "Release")
76 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
77 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
78
79 INCLUDE_DIRECTORIES(
80                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon
81                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon/minictrl
82                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon/notifications
83                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon/service
84                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon/settings
85                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon/settings/modules
86                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon/vi
87                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon/page
88                 ${CMAKE_CURRENT_SOURCE_DIR}/daemon/datetime
89                 ${CMAKE_CURRENT_SOURCE_DIR}/data
90                 ${CMAKE_CURRENT_SOURCE_DIR}/test
91                 )
92
93 INCLUDE(FindPkgConfig)
94 pkg_check_modules(pkgs REQUIRED
95         capi-appfw-application
96         capi-system-runtime-info
97         capi-system-info
98         capi-system-device
99         capi-location-manager
100         capi-network-tethering
101         capi-network-bluetooth
102         capi-network-connection
103         capi-network-wifi
104         capi-media-player
105         capi-media-sound-manager
106         capi-media-metadata-extractor
107         capi-system-system-settings
108         capi-base-utils-i18n
109         capi-ui-efl-util
110         tapi
111         feedback
112         notification
113         badge
114         vconf
115         edbus
116         evas
117         ecore
118         edje
119         ecore-input
120         icu-i18n
121         elementary
122         dlog
123         syspopup-caller
124         minicontrol-viewer
125         minicontrol-monitor
126         capi-appfw-package-manager
127         iniparser
128         alarm-service
129         voice-control-setting
130         tzsh-quickpanel-service 
131 )
132
133 FOREACH(flag ${pkgs_CFLAGS} ${x11_pkgs_CFLAGS})
134         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
135 ENDFOREACH(flag)
136
137 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall -g -O2 -fpie -Werror")
138 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
139 SET(CMAKE_C_FLAGS_RELEASE "-O2")
140
141 FIND_PROGRAM(UNAME NAMES uname)
142 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
143 IF("${ARCH}" STREQUAL "arm")
144         ADD_DEFINITIONS("-DTARGET")
145         MESSAGE("add -DTARGET")
146 ENDIF("${ARCH}" STREQUAL "arm")
147
148 ADD_DEFINITIONS("-DQP_SETTING_ENABLE")
149 ADD_DEFINITIONS("-DQP_BRIGHTNESS_ENABLE")
150 ADD_DEFINITIONS("-DQP_MINICTRL_ENABLE")
151 ADD_DEFINITIONS("-DQP_SCREENREADER_ENABLE")
152 ADD_DEFINITIONS("-DQP_SERVICE_NOTI_LED_ENABLE")
153 ADD_DEFINITIONS("-DQP_ANIMATED_IMAGE_ENABLE")
154 ADD_DEFINITIONS("-DQP_REMINDER_ENABLE")
155 #ADD_DEFINITIONS("-DQP_EMERGENCY_MODE_ENABLE")
156 ADD_DEFINITIONS("-DQP_VOICE_CONTROL_ENABLE")
157
158 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
159 ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
160 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
161 ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"")
162 ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
163 ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"")
164 ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"")
165 ADD_DEFINITIONS("-DDATADIR=\"${DATADIR}\"")
166 ADD_DEFINITIONS("-DSHARED_DIR=\"${SHARED_DIR}\"")
167
168 #ADD_DEFINITIONS("-DFILE_DEBUG")
169 ADD_DEFINITIONS("-D_DLOG_USED")
170 #ADD_DEFINITIONS("-DHAVE_X")
171
172 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
173
174 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
175 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} ${x11_pkgs_LDFLAGS} "-pie")
176
177 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
178 INSTALL(DIRECTORY DESTINATION ${DATADIR})
179 #INSTALL(FILES ${CMAKE_SOURCE_DIR}/icons/quickpanel_icon_default.png DESTINATION ${RESDIR})
180
181 # icons for notification
182 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/images_noti_icons/ DESTINATION ${SHARED_DIR}/noti_icons FILES_MATCHING PATTERN "*.png")
183 INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/images/quickpanel_icon_default.png DESTINATION ${RESDIR})
184
185 # License
186 INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME ${PKGNAME})
187
188 # i18n
189 ADD_SUBDIRECTORY(data)
190 ADD_SUBDIRECTORY(po)