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