3 PROJECT(download-provider-interface C)
4 SET(PACKAGE_DESCRIPTION "Interface supported by download-provider")
6 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
7 SET(CMAKE_BUILD_TYPE "Release")
8 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
9 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
11 SET(PC_REQUIRED "glib-2.0 gobject-2.0 dlog capi-base-common capi-appfw-app-manager capi-appfw-application bundle storage")
13 INCLUDE(FindPkgConfig)
15 pkg_check_modules(provider_interface_pkgs REQUIRED ${PC_REQUIRED})
17 FOREACH(flag ${provider_interface_pkgs_CFLAGS})
18 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
23 ${CMAKE_CURRENT_SOURCE_DIR}/include
24 ${CMAKE_SOURCE_DIR}/provider/include)
26 SET(PROVIDER_INTERFACE_LINK_LIBRARIES
28 ${GOBJECT-2_LIBRARIES}
32 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall -Werror -fvisibility=hidden")
33 SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -g -fPIE")
34 SET(CMAKE_C_FLAGS_RELEASE "-O2 -fPIE")
36 ADD_DEFINITIONS(-DDOWNLOAD_PROVIDER_LOG_TAG=\"DOWNLOAD_PROVIDER_INTERFACE\")
38 ADD_LIBRARY(${PROJECT_NAME} SHARED
39 ${CMAKE_SOURCE_DIR}/provider/download-provider-utils.c
40 ${CMAKE_SOURCE_DIR}/provider/download-provider-ipc.c
41 ${CMAKE_SOURCE_DIR}/provider/download-provider-pthread.c
42 ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.c )
43 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${provider_interface_pkgs_LDFLAGS} ${PROVIDER_INTERFACE_LINK_LIBRARIES})
44 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${PKG_VERSION})
45 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION 0)
47 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
48 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/${PROJECT_NAME}.h DESTINATION ${INCLUDE_INSTALL_DIR}/${PKG_NAME})
49 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
50 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)