INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}/../../src/ ${CMAKE_CURRENT_SOURCE_DIR}/../../parser/ ) FILE(GLOB_RECURSE UNIT_TESTS_SRCS *.cc *.c) FILE(GLOB_RECURSE SERVER_SRCS ${CMAKE_SOURCE_DIR}/src/server/*.cc ${CMAKE_SOURCE_DIR}/src/server/*.c) FILE(GLOB_RECURSE UTIL_SRCS ${CMAKE_SOURCE_DIR}/src/utils/*) LIST(FILTER SERVER_SRCS EXCLUDE REGEX main.cc) ADD_EXECUTABLE(${TARGET_PKGMGR_INFO_UNIT_TEST} ${UNIT_TESTS_SRCS} ${SERVER_SRCS} ${UTIL_SRCS} ) ADD_DEFINITIONS("-DSYSCONFDIR=\"${SYSCONFDIR}\"") include(FindPkgConfig) pkg_check_modules(unit_test_pkgs REQUIRED dlog glib-2.0 gio-2.0 sqlite3 gmock parcel tizen-database) FOREACH(flag ${unit_test_pkgs_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) ## Compile flags SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -fpic -std=c++17") TARGET_LINK_LIBRARIES(${TARGET_PKGMGR_INFO_UNIT_TEST} PRIVATE ${libpkgs_LDFLAGS}) TARGET_LINK_LIBRARIES(${TARGET_PKGMGR_INFO_UNIT_TEST} PRIVATE ${libpkgmgr-parser_LDFLAGS}) TARGET_LINK_LIBRARIES(${TARGET_PKGMGR_INFO_UNIT_TEST} PUBLIC pkgmgr-info) SET_TARGET_PROPERTIES(${TARGET_PKGMGR_INFO_UNIT_TEST} PROPERTIES COMPILE_FLAGS ${CFLAGS} "-fPIE -fpic") SET_TARGET_PROPERTIES(${TARGET_PKGMGR_INFO_UNIT_TEST} PROPERTIES LINK_FLAGS "-pie") set_target_properties(${TARGET_PKGMGR_INFO_UNIT_TEST} PROPERTIES COMPILE_FLAGS "${unit_test_pkgs_CFLAGS_str}") target_link_libraries(${TARGET_PKGMGR_INFO_UNIT_TEST} PRIVATE ${unit_test_pkgs_LDFLAGS}) SET_TARGET_PROPERTIES(${TARGET_PKGMGR_INFO_UNIT_TEST} PROPERTIES LINK_FLAGS "-Wl,--as-needed") ADD_TEST( NAME ${TARGET_PKGMGR_INFO_UNIT_TEST} COMMAND ${TARGET_PKGMGR_INFO_UNIT_TEST} ) INSTALL(TARGETS ${TARGET_PKGMGR_INFO_UNIT_TEST} DESTINATION bin)