Server/runner (#54)
[platform/core/appfw/pkgmgr-info.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 PROJECT(pkgmgr-info)
4
5 INCLUDE(TizenCommon)
6
7 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
8 SET(EXEC_PREFIX "\${prefix}")
9 SET(INCLUDEDIR "\${prefix}/include")
10 SET(CMAKE_SKIP_BUILD_RPATH true)
11
12 ### Local include directories
13 INCLUDE_DIRECTORIES(
14   ${CMAKE_SOURCE_DIR}/include
15   ${CMAKE_SOURCE_DIR}/parser/include
16   ${CMAKE_SOURCE_DIR}/src
17   ${CMAKE_SOURCE_DIR}/src/common
18   ${CMAKE_SOURCE_DIR}/src/common/database
19   ${CMAKE_SOURCE_DIR}/src/common/socket
20   ${CMAKE_SOURCE_DIR}/src/common/parcel
21 )
22
23 ### Required packages
24 INCLUDE(FindPkgConfig)
25 pkg_check_modules(pkgs REQUIRED glib-2.0 gio-2.0 gio-unix-2.0 dlog vconf sqlite3 libxml-2.0 libtzplatform-config libsmack bundle)
26
27 FOREACH(flag ${pkgs_CFLAGS})
28         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
29 ENDFOREACH(flag)
30
31
32 pkg_check_modules(libpkgs REQUIRED glib-2.0 gio-2.0 gio-unix-2.0 dlog vconf sqlite3 libtzplatform-config libsmack bundle capi-system-info minizip libsystemd parcel)
33
34 FOREACH(flag ${libpkgs_CFLAGS})
35         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
36 ENDFOREACH(flag)
37
38 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
39
40 ## Additional flag
41 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
42 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -Wall")
43 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
44
45 ENABLE_TESTING()
46 SET(TARGET_PKGMGR_INFO_UNIT_TEST "pkgmgr-info-unit-test")
47
48 ################## ## build comm libraries
49 ADD_SUBDIRECTORY(parser)
50 ADD_SUBDIRECTORY(tool)
51 ADD_SUBDIRECTORY(plugin_list)
52 ADD_SUBDIRECTORY(src)
53 ADD_SUBDIRECTORY(test)
54
55 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/pkgmgr-info.pc.in ${CMAKE_BINARY_DIR}/pkgmgr-info.pc @ONLY)
56 CONFIGURE_FILE(pkg_db_version.txt.in pkg_db_version.txt @ONLY)
57
58 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-info.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
59 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/ DESTINATION include)
60 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkg_db_version.txt DESTINATION ${SYSCONFDIR}/package-manager/)