Remove unused apis
[platform/core/appfw/pkgmgr-info.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 PROJECT(pkgmgr-info C)
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(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/parser)
14
15 ### Required packages
16 INCLUDE(FindPkgConfig)
17 pkg_check_modules(pkgs REQUIRED glib-2.0 dlog vconf sqlite3 db-util libxml-2.0 dbus-1 dbus-glib-1 libtzplatform-config libsmack bundle)
18
19 FOREACH(flag ${pkgs_CFLAGS})
20         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
21 ENDFOREACH(flag)
22
23
24 pkg_check_modules(libpkgs REQUIRED glib-2.0 dlog vconf sqlite3 db-util dbus-1 dbus-glib-1 libtzplatform-config libsmack bundle capi-system-info)
25
26 FOREACH(flag ${libpkgs_CFLAGS})
27         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
28 ENDFOREACH(flag)
29
30 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
31
32 ## Additional flag
33 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
34 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -Wall")
35 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
36
37 ################## ## build comm libraries
38 ADD_SUBDIRECTORY(parser)
39
40 ## build pkgmgr-info library
41 ADD_LIBRARY(pkgmgr-info SHARED
42         src/pkgmgrinfo_client.c
43         src/pkgmgrinfo_db.c
44         src/pkgmgrinfo_certinfo.c
45         src/pkgmgrinfo_pkginfo.c
46         src/pkgmgrinfo_appinfo.c
47         src/pkgmgrinfo_basic.c
48         src/pkgmgrinfo_private.c)
49
50 SET_TARGET_PROPERTIES(pkgmgr-info PROPERTIES SOVERSION ${MAJORVER})
51 SET_TARGET_PROPERTIES(pkgmgr-info PROPERTIES VERSION ${FULLVER})
52 TARGET_LINK_LIBRARIES(pkgmgr-info pkgmgr_parser ${libpkgs_LDFLAGS})
53
54 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/pkgmgr-info.pc.in ${CMAKE_BINARY_DIR}/pkgmgr-info.pc @ONLY)
55 CONFIGURE_FILE(parser_path.conf.in parser_path.conf @ONLY)
56 CONFIGURE_FILE(mdparser_list.txt.in mdparser_list.txt @ONLY)
57 CONFIGURE_FILE(category_parser_list.txt.in category_parser_list.txt @ONLY)
58 CONFIGURE_FILE(tag_parser_list.txt.in tag_parser_list.txt @ONLY)
59
60 INSTALL(TARGETS pkgmgr-info DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
61 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-info.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
62 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/pkgmgr-info.h DESTINATION include)
63 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/pkgmgrinfo_type.h DESTINATION include)
64 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/pkgmgrinfo_basic.h DESTINATION include)
65 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/parser_path.conf DESTINATION ${SYSCONFDIR}/package-manager/)
66 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mdparser_list.txt DESTINATION ${SYSCONFDIR}/package-manager/parserlib/metadata)
67 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/category_parser_list.txt DESTINATION ${SYSCONFDIR}/package-manager/parserlib/category)
68 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/tag_parser_list.txt DESTINATION ${SYSCONFDIR}/package-manager/parserlib)