Resolve SVACE issues with WGID - 427970,427940,427933,427844
[apps/native/menu-screen.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(menu-screen C)
3
4 SET(PACKAGE_NAME "org.tizen.${PROJECT_NAME}")
5 SET(PREFIX "/usr/apps/${PACKAGE_NAME}")
6 SET(BINDIR "${PREFIX}/bin")
7 SET(DATADIR "${PREFIX}/res/data")
8 SET(RESDIR "${PREFIX}/res")
9 SET(ICONDIR "${PREFIX}/shared/res")
10 SET(IMAGEDIR "${RESDIR}/images")
11 SET(EDJEDIR "${RESDIR}/edje")
12 SET(LOCALEDIR "${RESDIR}/locale")
13 SET(VERSION 0.1.0)
14
15 SET(SRCS
16         src/db.c
17         src/index.c
18         src/item.c
19         src/item_badge.c
20         src/item_event.c
21         src/key.c
22         src/layout.c
23         src/list.c
24         src/mapbuf.c
25         src/menu_screen.c
26         src/mouse.c
27         src/page.c
28         src/page_scroller.c
29         src/pkgmgr.c
30         src/popup.c
31         src/util.c
32         src/all_apps/db.c
33         src/all_apps/layout.c
34         src/all_apps/list.c
35         src/all_apps/shortcut.c
36 )
37
38 INCLUDE(FindPkgConfig)
39 pkg_check_modules(MENU_PKGS REQUIRED
40         appcore-efl
41         #       appsvc
42         aul
43         badge
44         bundle
45         capi-appfw-application
46         capi-system-info
47         capi-system-system-settings
48         capi-system-info
49         capi-appfw-app-manager
50         capi-appfw-package-manager
51         dlog
52         db-util
53         ecore
54         ecore-evas
55         ecore-file
56         ecore-imf
57         ecore-input
58         edje
59         eet
60         eina
61         elementary
62         evas
63         pkgmgr
64         pkgmgr-info
65         shortcut
66         syspopup-caller
67 )
68
69 ADD_DEFINITIONS("-DENABLE_BGIMAGE")
70 ADD_DEFINITIONS("-DLOG_TAG=\"MENU_SCREEN\"")
71 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
72 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE_NAME}\"")
73 ADD_DEFINITIONS("-DVERSION=\"${VERSION}\"")
74 ADD_DEFINITIONS("-DDATADIR=\"${DATADIR}\"")
75 ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"")
76 ADD_DEFINITIONS("-DIMAGEDIR=\"${IMAGEDIR}\"")
77 ADD_DEFINITIONS("-DEDJEDIR=\"${EDJEDIR}\"")
78
79 FOREACH (flag ${MENU_PKGS_CFLAGS})
80     SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
81 ENDFOREACH(flag)
82
83 FOREACH(flag ${ARM_PKGS_CFLAGS})
84         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
85 ENDFOREACH(flag)
86
87 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fdata-sections -ffunction-sections -Wl,--gc-sections")
88 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIE")
89 SET(CMAKE_C_FLAGS_PROFILING "-O0 -g -pg -fPIE")
90 SET(CMAKE_CXX_FLAGS_PROFILING "-O0 -std=c++0x -g -pg -fPIE")
91 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -fPIE")
92 SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -std=c++0x -g -fPIE")
93 SET(CMAKE_C_FLAGS_RELEASE "-O2 -g -fPIE")
94 SET(CMAKE_CXX_FLAGS_RELEASE "-O2 std=c++0x -g -fPIE")
95 SET(CMAKE_C_FLAGS_CCOV "-O2 -g --coverage -fPIE")
96 SET(CMAKE_CXX_FLAGS_CCOV "-O2 std=c++0x -g --coverage -fPIE")
97 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
98
99 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/inc)
100 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/inc)
101 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/res)
102 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/src)
103 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/src/all_apps)
104
105 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
106 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${ARM_PKGS_LDFLAGS})
107 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${MENU_PKGS_LDFLAGS})
108
109 # Install
110 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
111
112 # Install xml
113 INSTALL(FILES ${CMAKE_BINARY_DIR}/${PACKAGE_NAME}.xml DESTINATION /usr/share/packages)
114 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${PACKAGE_NAME}.png DESTINATION /usr/share/icons/)
115
116 ADD_SUBDIRECTORY(res/edje)
117 ADD_SUBDIRECTORY(res/images)
118 ADD_SUBDIRECTORY(res/po)
119
120 # End of a file