Tizen 2.0 Release
[apps/home/settings.git] / src / CMakeLists.txt
1
2 INCLUDE(FindPkgConfig)
3 pkg_check_modules(pkgs_main REQUIRED
4                                           glib-2.0 gthread-2.0 elementary
5                                           appcore-common appcore-efl
6                                           tapi
7                                           utilX
8                                           dlog json-glib-1.0
9                                           ui-gadget-1
10                                           capi-appfw-application aul
11                                           ecore-imf ecore-x eina capi-system-sensor
12                                           ecore ecore-file ecore-input
13                                           sysman icu-i18n icu-io icu-le icu-lx icu-uc
14                                           appsvc libxml-2.0
15                                           capi-system-system-settings
16                                           capi-network-wifi
17                                           capi-network-tethering
18                                           capi-network-bluetooth
19                                           capi-network-nfc
20                                           dbus-glib-1 ewebkit2
21                                           ##setting-service
22                                   )
23
24 FOREACH(flag ${pkgs_main_CFLAGS})
25         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
26 ENDFOREACH(flag)
27
28 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
29 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
30 SET(BUILD_ARCH "${ARCH}")
31
32 IF("${BUILD_ARCH}" STREQUAL "arm")
33         ADD_DEFINITIONS("-DTARGET")
34         MESSAGE("********************** add -DTARGET")
35 ENDIF("${BUILD_ARCH}" STREQUAL "arm")
36
37 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
38 ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"")
39 ADD_DEFINITIONS("-DDATADIR=\"${DATADIR}\"")
40 ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
41 ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"")
42 ADD_DEFINITIONS("-DEDJEDIR=\"${EDJEDIR}\"")
43 ADD_DEFINITIONS("-DSLP_DEBUG")
44
45 ADD_DEFINITIONS("-fpie")
46
47 ADD_DEFINITIONS("-DXP_UNIX")
48
49
50 ADD_EXECUTABLE(${PROJECT_NAME}
51         ./setting.c
52         ./setting-main.c
53         ./setting-more-menu.c
54         ./setting-plugin.c
55         )
56
57 ####FOR TEST>>>>########
58 ADD_DEFINITIONS("-DPLUGIN")
59 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/plugin-resource/plugin-cfg DESTINATION /opt/data/setting FILES_MATCHING PATTERN "*.cfg")
60 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/plugin-resource/plugin-xml DESTINATION /opt/data/setting FILES_MATCHING PATTERN "*.xml")
61 ####FOR TEST>>>>########
62
63 # conf_tool
64 SET(SETTING_CONFUTIL setting_conf_util)
65 ADD_EXECUTABLE(${SETTING_CONFUTIL}
66         ./conf_util/setting_confutil.c
67         )
68 TARGET_LINK_LIBRARIES(${SETTING_CONFUTIL} -L${CMAKE_BINARY_DIR}/${SETTING_COMMON} -lsetting-common)
69 TARGET_LINK_LIBRARIES(${SETTING_CONFUTIL} ${pkgs_main_LDFLAGS} "-pie")
70 INSTALL(TARGETS ${SETTING_CONFUTIL} DESTINATION /usr/apps/${SETTING_PKG_NAME}/bin)
71
72 ####FOR TEST>>>>########
73 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -L${CMAKE_BINARY_DIR}/${SETTING_COMMON} -lsetting-common)
74 #TARGET_LINK_LIBRARIES(${PROJECT_NAME} -L/usr/apps/${SETTING_PKG_NAME}/lib -lsetting-common)
75 # /usr/apps/${SETTING_PKG_NAME}/lib
76
77 # dmalloc
78 #TARGET_LINK_LIBRARIES(${PROJECT_NAME} -ldmalloc)
79 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_main_LDFLAGS} "-pie")
80
81 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /usr/apps/${SETTING_PKG_NAME}/bin)
82
83 EXEC_PROGRAM("xmllint"
84   ARGS "${CMAKE_SOURCE_DIR}/org.tizen.setting.xml --noout --schema ${CMAKE_SOURCE_DIR}/manifest.xsd"
85   OUTPUT_VARIABLE output1
86   RETURN_VALUE ret
87   )
88 MESSAGE(STATUS "ret=${ret}")
89
90 IF (NOT ${ret} EQUAL 0)
91     MESSAGE(FATAL_ERROR "org.tizen.setting.xml may has XML validation error.")
92 ENDIF (NOT ${ret} EQUAL 0)
93
94 # make setting-theme.edj
95 ADD_CUSTOM_TARGET(setting-theme.edj
96                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images
97                 ${CMAKE_SOURCE_DIR}/resource/setting-theme.edc ${CMAKE_BINARY_DIR}/setting-theme.edj
98                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-theme.edc
99 )
100
101 ADD_DEPENDENCIES(${PROJECT_NAME} setting-theme.edj)
102
103 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-theme.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
104
105 # install open source license
106 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/Open_Source_Announcement.html DESTINATION /usr/apps/${SETTING_PKG_NAME}/data)
107
108
109 #------------------------------------------------------------------------------------------
110 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/setting.cfg DESTINATION /opt/data/setting)
111 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/langlist.xml DESTINATION /opt/data/setting)
112 #------------------------------------------------------------------------------------------
113
114 # install desktop file & icon
115 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
116
117 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${SETTING_PKG_NAME}.xml DESTINATION /usr/share/packages/)
118
119 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${SETTING_PKG_NAME}.png DESTINATION /usr/share/icons/default/small)
120 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/resource/icons DESTINATION /usr/apps/${SETTING_PKG_NAME}/res FILES_MATCHING PATTERN "*.png")
121 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/resource/images DESTINATION /usr/apps/${SETTING_PKG_NAME}/res FILES_MATCHING PATTERN "*.png")
122
123 # install media-data
124 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/resource/media-data-sdk/settings DESTINATION /opt/share PATTERN "*")
125
126 # install ini file
127 # INSTALL(FILES ${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.ini DESTINATION share/process-info)
128 #add sub directory
129 ADD_SUBDIRECTORY(po)
130