disable unsupported menus
[profile/tv/apps/native/settings.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(settings-tv-ref)
3
4 IF (with_wayland)
5         ADD_DEFINITIONS("-DWAYLAND")
6 ENDIF (with_wayland)
7
8 INCLUDE(FindPkgConfig)
9 pkg_check_modules(HOMEPANEL_PKGS REQUIRED
10         application-common
11         capi-appfw-application
12         dlog
13         edje
14         elementary
15         evas
16         glib-2.0
17         eina
18         aul
19         ui-gadget-1
20         json-glib-1.0
21         vconf
22         capi-network-wifi
23         capi-network-connection
24         capi-system-info
25         capi-media-sound-manager
26 )
27
28 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
29
30 IF(NOT DEFINED PACKAGE_NAME)
31         SET(PACKAGE_NAME "org.tizen.${PROJECT_NAME}")
32 ENDIF(NOT DEFINED PACKAGE_NAME)
33 IF(NOT DEFINED BINDIR)
34         SET(BINDIR "${PREFIX}/bin")
35 ENDIF(NOT DEFINED BINDIR)
36 IF(NOT DEFINED RESDIR)
37         SET(RESDIR "${PREFIX}/res")
38 ENDIF(NOT DEFINED RESDIR)
39 IF(NOT DEFINED IMAGEDIR)
40         SET(IMAGEDIR "${PREFIX}/res/images")
41 ENDIF(NOT DEFINED IMAGEDIR)
42 IF(NOT DEFINED EDJEDIR)
43         SET(EDJEDIR "${PREFIX}/res/edje")
44 ENDIF(NOT DEFINED EDJEDIR)
45 IF(NOT DEFINED LOCALEDIR)
46         SET(LOCALEDIR "${PREFIX}/res/locale")
47 ENDIF(NOT DEFINED LOCALEDIR)
48 IF(NOT DEFINED MANIFESTDIR)
49         SET(MANIFESTDIR "${PREFIX}/share/packages")
50 ENDIF(NOT DEFINED MANIFESTDIR)
51 IF(NOT DEFINED DESKTOP_ICONDIR)
52         SET(DESKTOP_ICONDIR "/usr/share/icons/default/small")
53 ENDIF(NOT DEFINED DESKTOP_ICONDIR)
54 IF(NOT DEFINED DESKTOP_ICON)
55         SET(DESKTOP_ICON ${PACKAGE_NAME}.png)
56 ENDIF(NOT DEFINED DESKTOP_ICON)
57 IF(NOT DEFINED JSONDIR)
58         SET(JSONDIR "${PREFIX}/res/json")
59 ENDIF(NOT DEFINED JSONDIR)
60 IF(NOT DEFINED UGLIBDIR)
61         SET(UGLIBDIR "/usr/ug/lib")
62 ENDIF(NOT DEFINED UGLIBDIR)
63
64 SET(EDJ_FILE "org.tizen.settings-tv-ref.edj")
65 SET(EDJ_THEME "org.tizen.settings-tv-ref-theme.edj")
66
67 ADD_DEFINITIONS("-DPROJECTNAME=\"${PROJECT_NAME}\"")
68 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE_NAME}\"")
69 ADD_DEFINITIONS("-DIMAGEDIR=\"${IMAGEDIR}\"")
70 ADD_DEFINITIONS("-DEDJEDIR=\"${EDJEDIR}\"")
71 ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
72 ADD_DEFINITIONS("-DEDJ_FILE=\"${EDJEDIR}/${EDJ_FILE}\"")
73 ADD_DEFINITIONS("-DEDJ_THEME=\"${EDJEDIR}/${EDJ_THEME}\"")
74 ADD_DEFINITIONS("-DJSON_OUTPUT_DIR=\"${JSONOUTPUTDIR}\"")
75 ADD_DEFINITIONS("-DJSON_HELPER_FILE=\"${JSONHELPERFILE}\"")
76
77 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
78
79 ADD_EXECUTABLE(${PROJECT_NAME}
80         src/main.c
81         src/parser.c
82         src/data_wrapper.c
83         src/utils.c
84         src/viewmgr.c
85         src/view_maincatalog.c
86         src/view_uigadget.c
87         src/view_sublist.c
88         src/view_bottomsublist.c
89         src/view_bottomslider.c
90         src/settings_provider.c
91         src/view_pwd_popup.c
92         src/view_device_manager.c
93         src/view_resetpopup.c
94         src/view_upgrade_popup.c
95         src/view_system_clock.c
96         src/view_need_pwd.c
97         src/timeout_handler.c
98 )
99
100 FOREACH (flag ${HOMEPANEL_PKGS_CFLAGS})
101     SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
102 ENDFOREACH(flag)
103 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
104
105 FOREACH (flag ${HOMEPANEL_PKGS_CFLAGS})
106     SET(EXTRA_CXXFLAGS "${EXTRA_CFLAGS} ${flag}")
107 ENDFOREACH(flag)
108 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CXXFLAGS}")
109
110 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${HOMEPANEL_PKGS_LDFLAGS})
111
112 CONFIGURE_FILE(${PACKAGE_NAME}.xml.in ${PACKAGE_NAME}.xml)
113
114 # Install
115 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
116 INSTALL(FILES ${PACKAGE_NAME}.xml DESTINATION ${MANIFESTDIR})
117 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${DESKTOP_ICON} DESTINATION ${DESKTOP_ICONDIR})
118 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${DESKTOP_ICON_4X2} DESTINATION ${DESKTOP_ICONDIR})
119 #INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/images/ DESTINATION ${IMAGEDIR})
120 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/json DESTINATION ${RESDIR})
121 ADD_SUBDIRECTORY(data)
122 #ADD_SUBDIRECTORY(po)
123 #ADD_SUBDIRECTORY(ug/channel)
124 ADD_SUBDIRECTORY(ug/network)
125 ADD_SUBDIRECTORY(ug/proxy)
126 ADD_SUBDIRECTORY(ug/wifi-direct)
127 ADD_SUBDIRECTORY(ug/system/clock)
128 #ADD_SUBDIRECTORY(ug/system/wakeup_timer)