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) ADD_DEFINITIONS("-DLIB_PATH=\"${LIB_INSTALL_DIR}\"") ### 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/socket ${CMAKE_SOURCE_DIR}/src/common/parcel ${CMAKE_SOURCE_DIR}/src/server ${CMAKE_SOURCE_DIR}/src/server/cynara_checker ${CMAKE_SOURCE_DIR}/src/server/filter_checker ${CMAKE_SOURCE_DIR}/src/server/database ${CMAKE_SOURCE_DIR}/src/server/request_handler ) ### Required packages INCLUDE(FindPkgConfig) pkg_check_modules(libpkgs REQUIRED glib-2.0 gio-2.0 gio-unix-2.0 dlog vconf libtzplatform-config libsmack bundle capi-system-info minizip libsystemd parcel cynara-client-async cynara-session cynara-creds-socket capi-system-resource ) FOREACH(flag ${libpkgs_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) pkg_check_modules(libpkgs_server REQUIRED glib-2.0 gio-2.0 gio-unix-2.0 dlog vconf sqlite3 libtzplatform-config libsmack bundle capi-system-info minizip libsystemd parcel cynara-client-async cynara-session cynara-creds-socket capi-system-resource tizen-database ) FOREACH(flag ${libpkgs_server_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) ## 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}") # Linker flags SET(EXTRA_LINKER_FLAGS "-Wl,--as-needed") SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${EXTRA_LINKER_FLAGS}") IF(NOT ASAN_ENABLED) ENABLE_TESTING() SET(TARGET_PKGMGR_INFO_UNIT_TEST "pkgmgr-info-unit-test") ENDIF(NOT ASAN_ENABLED) ################## ## build comm libraries ADD_SUBDIRECTORY(parser) ADD_SUBDIRECTORY(tool) ADD_SUBDIRECTORY(plugin_list) ADD_SUBDIRECTORY(src) IF(NOT ASAN_ENABLED) ADD_SUBDIRECTORY(test) ENDIF(NOT ASAN_ENABLED) 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/)