### Description # Recovery tool for pkg db corruption # By Junghyun Yeon CMAKE_MINIMUM_REQUIRED(VERSION 2.6) SET(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true) ### Get required CFLAGS, LDFLAGS from pkg-config SET(PKG_DB_RECOVERY pkg-db-recovery) include(FindPkgConfig) pkg_check_modules(TOOL_DEPS REQUIRED sqlite3 libtzplatform-config) FOREACH(FLAG ${TOOL_DEPS_CFLAGS}) SET(${CMAKE_C_FLAGS} "${CMAKE_C_FLAGS} ${FLAG}") ENDFOREACH() ## Additional flag SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -fPIE") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") ### Build ADD_EXECUTABLE(${PKG_DB_RECOVERY} ${CMAKE_CURRENT_SOURCE_DIR}/${PKG_DB_RECOVERY}.c) TARGET_LINK_LIBRARIES(${PKG_DB_RECOVERY} ${TOOL_DEPS_LDFLAGS} "-pie") ## Install INSTALL(TARGETS ${PKG_DB_RECOVERY} DESTINATION bin) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PKG_DB_RECOVERY}.service DESTINATION ${UNITDIR})