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