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