Release version 0.15.0
[platform/core/appfw/slp-pkgmgr.git] / installer / 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 ### Get required CFLAGS, LDFLAGS from pkg-config
10
11 include(FindPkgConfig)
12 pkg_check_modules(installer_pkgs REQUIRED glib-2.0 gio-2.0 dlog pkgmgr-info libtzplatform-config)
13 foreach(flag ${installer_pkgs_CFLAGS})
14         set(installer_pkgs_CFLAGS_str "${installer_pkgs_CFLAGS_str} ${flag}")
15 endforeach()
16
17 PKG_CHECK_MODULES(AGENT_DEPS REQUIRED glib-2.0 gio-2.0 dlog libsystemd)
18 FOREACH(FLAG ${AGENT_DEPS_CFLAGS})
19         SET(AGENT_CFLAGS "${AGENT_CFLAGS} ${FLAG}")
20 ENDFOREACH()
21
22 ### Build modules
23
24 ## pkgmgr_installer object (by youmin.ha)
25 # This library is for installer backend
26 add_library(pkgmgr_installer SHARED pkgmgr_installer.c)
27 set_target_properties(pkgmgr_installer PROPERTIES SOVERSION ${MAJORVER})
28 set_target_properties(pkgmgr_installer PROPERTIES VERSION ${FULLVER})
29 set_target_properties(pkgmgr_installer PROPERTIES COMPILE_FLAGS "${installer_pkgs_CFLAGS_str} -fPIC")
30 target_link_libraries(pkgmgr_installer ${installer_pkgs_LDFLAGS})
31
32 ### Create pc file
33 configure_file(pkgmgr-installer.pc.in ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-installer.pc @ONLY)
34
35 ## Install
36 INSTALL(TARGETS pkgmgr_installer DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
37 INSTALL(FILES pkgmgr_installer.h DESTINATION include/pkgmgr)
38 INSTALL(FILES pkgmgr_installer_info.h DESTINATION include/pkgmgr)
39 INSTALL(FILES pkgmgr_installer_error.h DESTINATION include/pkgmgr)
40 INSTALL(FILES pkgmgr_installer_type.h DESTINATION include/pkgmgr)
41 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-installer.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
42
43 ## pkgmgr_installer_signal_agent
44 ADD_EXECUTABLE(pkgmgr-installer-signal-agent pkgmgr_installer_signal_agent.c)
45 SET_TARGET_PROPERTIES(pkgmgr-installer-signal-agent PROPERTIES COMPILE_FLAGS "${AGENT_CFLAGS} -fPIE")
46 TARGET_LINK_LIBRARIES(pkgmgr-installer-signal-agent ${AGENT_DEPS_LDFLAGS} "-pie")
47
48 INSTALL(TARGETS pkgmgr-installer-signal-agent DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)