Use the same type to compare values
[platform/framework/web/download-provider.git] / provider / CMakeLists.txt
1
2 ## PROJECT NAME
3 PROJECT(${PKG_NAME} C)
4
5 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
6         SET(CMAKE_BUILD_TYPE "Release")
7 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
8 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
9
10 INCLUDE(FindPkgConfig)
11
12 pkg_check_modules(dp2_pkgs REQUIRED glib-2.0
13                 gobject-2.0
14                 sqlite3
15                 capi-appfw-app-manager
16                 capi-network-connection
17                 capi-content-mime-type
18                 appsvc
19                 bundle
20                 dlog
21                 libsystemd
22                 vconf
23                 libcurl
24                 cynara-client
25                 cynara-client-async
26                 cynara-creds-socket
27                 cynara-creds-dbus
28                 libtzplatform-config
29                 )
30
31 FOREACH(flag ${dp2_pkgs_CFLAGS})
32         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
33 ENDFOREACH(flag)
34
35 IF(SUPPORT_WIFI_DIRECT)
36 MESSAGE("WIFI direct:On")
37 pkg_check_modules(dp2_wifi_direct_pkgs REQUIRED
38                 capi-network-wifi-direct)
39 FOREACH(flag ${dp2_wifi_direct_pkgs_CFLAGS})
40         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
41 ENDFOREACH(flag)
42 ELSE (SUPPORT_WIFI_DIRECT)
43 MESSAGE("WIFI direct:Off")
44 ENDIF(SUPPORT_WIFI_DIRECT)
45
46 IF(SUPPORT_NOTIFICATION)
47 MESSAGE("Notification:On")
48 pkg_check_modules(dp2_noti_pkgs REQUIRED
49                 notification)
50 FOREACH(flag ${dp2_noti_pkgs_CFLAGS})
51         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
52 ENDFOREACH(flag)
53 ADD_DEFINITIONS(-DSUPPORT_NOTIFICATION)
54 ELSE (SUPPORT_NOTIFICATION)
55 MESSAGE("Notification:Off")
56 ENDIF(SUPPORT_NOTIFICATION)
57
58 IF(SUPPORT_COMPANION_MODE)
59 MESSAGE("Companion:On")
60 pkg_check_modules(dp2_companion_pkgs REQUIRED
61                         sap-client-stub-api)
62 FOREACH(flag ${dp2_companion_pkgs_CFLAGS})
63         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
64 ENDFOREACH(flag)
65 ADD_DEFINITIONS(-DSUPPORT_COMPANION_MODE)
66 ELSE (SUPPORT_COMPANION_MODE)
67 MESSAGE("Companion:Off")
68 ENDIF(SUPPORT_COMPANION_MODE)
69
70 IF(SUPPORT_LARGE_FILE)
71         MESSAGE("Large file:On")
72         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -D_FILE_OFFSET_BITS=64")
73 ENDIF(SUPPORT_LARGE_FILE)
74
75 ## INCLUDES
76 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/agent/include)
77
78 set(DP2_LINK_LIBRARIES ${GLIB-2_LIBRARIES}
79                 ${GOBJECT-2_LIBRARIES}
80                 pthread
81                 capi-appfw-app-manager
82         )
83
84 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fpic -Wall -Werror -Werror-implicit-function-declaration")
85 IF (BUILD_GTESTS)
86         SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fvisibility=default")
87 ELSE (BUILD_GTESTS)
88         SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fvisibility=hidden")
89 ENDIF (BUILD_GTESTS)
90
91 SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -g -fPIE")
92 SET(CMAKE_C_FLAGS_RELEASE "-O2 -fPIE")
93
94 IF(DEFINED IMAGE_DIR)
95         ADD_DEFINITIONS(-DIMAGE_DIR=\"${IMAGE_DIR}\")
96 ENDIF(DEFINED IMAGE_DIR)
97
98 IF(DEFINED PROVIDER_DIR)
99         ADD_DEFINITIONS(-DPROVIDER_DIR=\"${PROVIDER_DIR}\")
100 ENDIF(DEFINED PROVIDER_DIR)
101
102 IF(DEFINED DATABASE_CLIENT_DIR)
103         ADD_DEFINITIONS(-DDATABASE_CLIENT_DIR=\"${DATABASE_CLIENT_DIR}\")
104 ENDIF(DEFINED DATABASE_CLIENT_DIR)
105
106 IF(DEFINED DATABASE_DIR)
107         ADD_DEFINITIONS(-DDATABASE_DIR=\"${DATABASE_DIR}\")
108 ENDIF(DEFINED DATABASE_DIR)
109
110 IF(DEFINED LOCALE_DIR)
111         ADD_DEFINITIONS(-DPKG_NAME=\"${PKG_NAME}\")
112         ADD_DEFINITIONS(-DLOCALE_DIR=\"${LOCALE_DIR}\")
113 ENDIF(DEFINED LOCALE_DIR)
114
115 ADD_DEFINITIONS(-DDOWNLOAD_PROVIDER_LOG_TAG=\"DOWNLOAD_PROVIDER\")
116
117 ADD_EXECUTABLE(${PROJECT_NAME}
118         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-pthread.c
119         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-ipc.c
120         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-utils.c
121         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-notify.c
122         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-security.c
123         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-network.c
124         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-db.c
125         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-plugin-download-agent.c
126         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-queue.c
127         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-queue-manager.c
128         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-client.c
129         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-client-manager.c
130         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-notification.c
131         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-notification-manager.c
132         ${CMAKE_CURRENT_SOURCE_DIR}/download-provider-main.c )
133 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${dp2_pkgs_LDFLAGS} ${DP2_LINK_LIBRARIES} ${dp2_noti_pkgs_LDFLAGS} ${dp2_companion_pkgs_LDFLAGS} ${dp2_wifi_direct_pkgs_LDFLAGS} ${dp2_security_privilege_pkgs_LDFLAGS} -ldl -pie)
134 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BIN_INSTALL_DIR})
135
136 INSTALL(FILES include/download-provider.h DESTINATION ${INCLUDE_INSTALL_DIR}/${PKG_NAME})