Add sending wakeup wakeup signal to resourced
[platform/core/appfw/pkgmgr-info.git] / parser / CMakeLists.txt
1 ### Description
2 # Communication modules for pkg-mgr client lib and server process
3 # By Youmin Ha <youmin.ha@samsung.com>
4
5 cmake_minimum_required(VERSION 2.6)
6 #set(CMAKE_SKIP_BUILD_RPATH true)
7 set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true)
8
9 INCLUDE(TizenCommon)
10
11 ### Define tizen version for db version
12 if(DEFINED TIZEN_MAJOR_VER)
13         ADD_DEFINITIONS("-DTIZEN_MAJOR_VER=\"${TIZEN_MAJOR_VER}\"")
14 else()
15         message("TIZEN_MAJOR_VER is not defined. set it to 0")
16         ADD_DEFINITIONS("-DTIZEN_MAJOR_VER=\"0\"")
17 endif()
18
19 if(DEFINED TIZEN_MINOR_VER)
20         ADD_DEFINITIONS("-DTIZEN_MINOR_VER=\"${TIZEN_MINOR_VER}\"")
21 else()
22         message("TIZEN_MINOR_VER is not defined. set it to 0")
23         ADD_DEFINITIONS("-DTIZEN_MINOR_VER=\"0\"")
24 endif()
25
26 if(DEFINED TIZEN_PATCH_VER)
27         ADD_DEFINITIONS("-DTIZEN_PATCH_VER=\"${TIZEN_PATCH_VER}\"")
28 else()
29         message("TIZEN_PATCH_VER is not defined. set it to 0")
30         ADD_DEFINITIONS("-DTIZEN_PATCH_VER=\"${TIZEN_PATCH_VER}\"")
31 endif()
32
33 ### Get required CFLAGS, LDFLAGS from pkg-config
34
35 include(FindPkgConfig)
36 pkg_check_modules(parser_pkgs REQUIRED dlog libxml-2.0 glib-2.0 gio-2.0 sqlite3 db-util vconf bundle capi-system-info libsmack)
37
38 foreach(flag ${parser_pkgs_CFLAGS})
39         set(parser_pkgs_CFLAGS_str "${parser_pkgs_CFLAGS_str} ${flag}")
40 endforeach()
41 ADD_DEFINITIONS("-DLIB_PATH=\"${LIB_INSTALL_DIR}\"")
42 ## Additional flag
43 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
44 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -Wall -Wno-deprecated-declarations")
45 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
46
47 add_definitions("-DSYSCONFDIR=\"${SYSCONFDIR}\"")
48 ### Set current binary dir to be included (for generated *.h files)
49 include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
50
51 ### Build modules
52
53 # This library is for installer backend
54 AUX_SOURCE_DIRECTORY(src PARSER_SRCS)
55 add_library(pkgmgr_parser SHARED ${PARSER_SRCS})
56
57 set_target_properties(pkgmgr_parser PROPERTIES SOVERSION ${MAJORVER})
58 set_target_properties(pkgmgr_parser PROPERTIES VERSION ${FULLVER})
59 set_target_properties(pkgmgr_parser PROPERTIES COMPILE_FLAGS "${parser_pkgs_CFLAGS_str}")
60 target_link_libraries(pkgmgr_parser ${parser_pkgs_LDFLAGS})
61
62 ### Create pc file
63 configure_file(pkgmgr-parser.pc.in ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-parser.pc @ONLY)
64 configure_file(manifest.xsd.in manifest.xsd @ONLY)
65 configure_file(xml.xsd.in xml.xsd @ONLY)
66
67 ## Install
68 INSTALL(TARGETS pkgmgr_parser DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
69 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/ DESTINATION include/pkgmgr)
70 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-parser.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
71 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/manifest.xsd DESTINATION ${SYSCONFDIR}/package-manager/preload/)
72 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/xml.xsd DESTINATION ${SYSCONFDIR}/package-manager/preload/)