CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(pkgmgr-info) INCLUDE(TizenCommon) SET(PREFIX ${CMAKE_INSTALL_PREFIX}) SET(EXEC_PREFIX "\${prefix}") SET(INCLUDEDIR "\${prefix}/include") SET(CMAKE_SKIP_BUILD_RPATH true) ### Local include directories INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/parser/include ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/common ${CMAKE_SOURCE_DIR}/src/common/database ${CMAKE_SOURCE_DIR}/src/common/socket ${CMAKE_SOURCE_DIR}/src/common/parcel ${CMAKE_SOURCE_DIR}/src/common/request_handler ) ### Required packages INCLUDE(FindPkgConfig) 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) FOREACH(flag ${pkgs_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) 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) FOREACH(flag ${libpkgs_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") ## Additional flag SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden") SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -Wall") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") ENABLE_TESTING() SET(TARGET_PKGMGR_INFO_UNIT_TEST "pkgmgr-info-unit-test") ################## ## build comm libraries ADD_SUBDIRECTORY(parser) ADD_SUBDIRECTORY(tool) ADD_SUBDIRECTORY(plugin_list) ADD_SUBDIRECTORY(src) ADD_SUBDIRECTORY(test) CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/pkgmgr-info.pc.in ${CMAKE_BINARY_DIR}/pkgmgr-info.pc @ONLY) CONFIGURE_FILE(pkg_db_version.txt.in pkg_db_version.txt @ONLY) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-info.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/ DESTINATION include) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkg_db_version.txt DESTINATION ${SYSCONFDIR}/package-manager/)