cmake_minimum_required(VERSION 3.13) project(umcumgr C) set(CMAKE_C_STANDARD 99) #SET(CMAKE_EXE_LINKER_FLAGS "-static") OPTION(DO_UPDATE_SHA "Send data SHA with update packets" ON) OPTION(SANITIZE "ASAN" ON) add_executable(umcumgr src/base64.c src/image.c src/main.c src/crc16_sw.c src/termios_util.c) if(SANITIZE) message(STATUS "SANITIZE Enabled") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -fsanitize=undefined") endif(SANITIZE) if (DO_UPDATE_SHA) message(STATUS "Enabled data SHA on update packets") add_definitions(-DDO_UPLOAD_SHA) target_sources(umcumgr PRIVATE src/sha256.c) endif () target_include_directories(umcumgr PRIVATE tinycbor/src) target_link_libraries(umcumgr ${CMAKE_SOURCE_DIR}/tinycbor/lib/libtinycbor.a)