Exclude some lines for code coverage
[platform/core/api/package-manager.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 PROJECT(capi-appfw-package-manager C)
4 aux_source_directory(src SOURCES)
5
6 INCLUDE(FindPkgConfig)
7 pkg_check_modules(PKGS REQUIRED
8         capi-base-common
9         dlog
10         vconf
11         aul
12         pkgmgr
13         pkgmgr-installer
14         pkgmgr-info
15         libtzplatform-config
16         cynara-client
17         cynara-session
18         )
19 FOREACH(FLAGS ${PKGS_CFLAGS})
20         SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLAGS}")
21 ENDFOREACH(FLAGS)
22
23 SET(INC_DIR include)
24 INCLUDE_DIRECTORIES(${INC_DIR})
25
26 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SOURCES})
27 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${PKGS_LDFLAGS})
28
29 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -Wall -fvisibility=hidden")
30 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
31
32 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${FULLVER})
33 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${MAJORVER})
34 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES CLEAN_DIRECT_OUTPUT 1)
35
36 SET(PC_PREFIX ${CMAKE_INSTALL_PREFIX})
37 CONFIGURE_FILE(capi-appfw-package-manager.pc.in ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc @ONLY)
38
39 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR})
40 INSTALL(DIRECTORY ${INC_DIR}/ DESTINATION include/appfw)
41 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
42
43 ADD_SUBDIRECTORY(tool)