Code sync from tizen 2.4 branch
[platform/core/connectivity/bt-syspopup.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(bt-syspopup C)
3
4 IF("$ENV{CFLAGS}" MATCHES "-DTIZEN_WEARABLE")
5 SET(SRCS ${CMAKE_SOURCE_DIR}/src/bt-syspopup-w.c)
6 ENDIF()
7 IF("$ENV{CFLAGS}" MATCHES "-DTIZEN_MOBILE")
8 SET(SRCS ${CMAKE_SOURCE_DIR}/src/bt-syspopup-m.c)
9 ENDIF()
10
11 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
12
13 IF("$ENV{CFLAGS}" MATCHES "-DTIZEN_WEARABLE")
14 SET(TABLEDIR "/usr/apps/org.tizen.bt-syspopup/shared/res/tables")
15 ENDIF()
16
17 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
18         SET(CMAKE_BUILD_TYPE "Release")
19 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
20 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
21
22 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})
23
24 INCLUDE(FindPkgConfig)
25 IF("$ENV{CFLAGS}" MATCHES "-DTIZEN_WEARABLE")
26 pkg_check_modules(pkgs REQUIRED
27         capi-appfw-application
28         bundle
29         deviced
30         dlog
31         dbus-glib-1
32         ecore
33         ecore-input
34         ecore-imf
35         edje
36         elementary
37         evas
38         gobject-2.0
39         syspopup
40         syspopup-caller
41         capi-network-bluetooth
42         feedback
43         aul
44         efl-assist
45         edbus
46         vconf)
47 ELSEIF("$ENV{CFLAGS}" MATCHES "-DTIZEN_MOBILE")
48 pkg_check_modules(pkgs REQUIRED
49         capi-appfw-application
50         bundle
51         deviced
52         capi-system-device
53         capi-media-player
54         dlog
55         dbus-glib-1
56         ecore
57         ecore-input
58         ecore-imf
59         edje
60         elementary
61         evas
62         efl-assist
63         gobject-2.0
64         syspopup
65         capi-network-bluetooth
66         feedback
67         notification
68         aul
69         edbus
70         vconf)
71 ENDIF()
72
73 FOREACH(flag ${pkgs_CFLAGS})
74         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag} -Wall -g")
75 ENDFOREACH(flag)
76 #SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -finstrument-functions")
77
78 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC")
79 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g ")
80 SET(CMAKE_C_FLAGS_RELEASE "-O2")
81 #This is flag for Gprof
82 #SET(CMAKE_C_FLAGS_RELEASE "-pg")
83
84 FIND_PROGRAM(UNAME NAMES uname)
85 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
86 IF("${ARCH}" STREQUAL "arm")
87         ADD_DEFINITIONS("-DTARGET")
88         MESSAGE("add -DTARGET")
89 ENDIF("${ARCH}" STREQUAL "arm")
90
91 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
92 ADD_DEFINITIONS("-DSLP_DEBUG")
93
94 IF(WAYLAND_SUPPORT)
95   ADD_DEFINITIONS(
96     "-DHAVE_WAYLAND"
97     "-DWAYLAND" # used by syspopup
98     )
99 ENDIF(WAYLAND_SUPPORT)
100
101 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
102
103 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
104 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
105
106 IF("$ENV{CFLAGS}" MATCHES "-DTIZEN_WEARABLE")
107 ADD_CUSTOM_TARGET(custom_popup.edj
108 COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/data/images
109 ${CMAKE_CURRENT_SOURCE_DIR}/data/custom_popup_w.edc
110 ${CMAKE_CURRENT_SOURCE_DIR}/data/custom_popup.edj DEPENDS
111 ${CMAKE_CURRENT_SOURCE_DIR}/data/custom_popup_w.edc
112 )
113 ENDIF()
114 IF("$ENV{CFLAGS}" MATCHES "-DTIZEN_MOBILE")
115 ADD_CUSTOM_TARGET(custom_popup.edj
116 COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/data
117 ${CMAKE_CURRENT_SOURCE_DIR}/data/custom_popup_m.edc
118 ${CMAKE_CURRENT_SOURCE_DIR}/data/custom_popup.edj DEPENDS
119 ${CMAKE_CURRENT_SOURCE_DIR}/data/custom_popup_m.edc
120 )
121 ENDIF()
122
123 ADD_DEPENDENCIES(${PROJECT_NAME} custom_popup.edj)
124
125
126 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${TZ_SYS_RW_APP}/org.tizen.bt-syspopup/bin)
127
128 # install desktop file & icon
129 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
130 INSTALL(FILES ${CMAKE_BINARY_DIR}/data/org.tizen.bt-syspopup.xml DESTINATION /usr/share/packages/)
131 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/org.tizen.bt-syspopup.png DESTINATION ${TZ_SYS_SHARE}/icons/default/small)
132 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/custom_popup.edj DESTINATION ${TZ_SYS_RW_APP}/org.tizen.bt-syspopup/res/edje)
133 IF("$ENV{CFLAGS}" MATCHES "-DTIZEN_WEARABLE")
134 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/tables/ DESTINATION ${TABLEDIR} FILES_MATCHING PATTERN "*.xml")
135 ENDIF()