set(CMAKE_SYSTEM_NAME Generic)
set(CMAKE_SYSTEM_PROCESSOR arm)

set(CMAKE_C_COMPILER arm-none-eabi-gcc CACHE PATH "Path to C compiler")
set(CMAKE_CXX_COMPILER arm-none-eabi-g++ CACHE PATH "Path to C++ compiler")

set(CMAKE_SIZE arm-none-eabi-size CACHE PATH "Path to size tool")
set(CMAKE_READELF arm-none-eabi-readelf CACHE PATH "Path to readelf tool")
set(CMAKE_RANLIB arm-none-eabi-gcc-ranlib CACHE PATH "Path to ranlib")
set(CMAKE_AR arm-none-eabi-gcc-ar CACHE PATH "Path to ar")
set(CMAKE_OBJCOPY arm-none-eabi-objcopy CACHE PATH "Path to objcopy")
set(CMAKE_LINKER arm-none-eabi-ld CACHE PATH "Path to linker")
set(CMAKE_DFU "${CMAKE_CURRENT_LIST_DIR}/tools/dfu" CACHE PATH "Path to DFU builder")

set(MCU_LINKER_SCRIPT STM32H750VBTx.ld)
set(MCU_LINKER_FLAGS_INT -Wl,--defsym=FLASH_TARGET_INT=1)
set(MCU_ARCH cortex-m7)
set(MCU_FLOAT_ABI hard)
set(MCU_FPU fpv5-d16)
set(MCU_FLAGS "-mcpu=${MCU_ARCH} -mthumb -mfloat-abi=${MCU_FLOAT_ABI} ")

if (MCU_FLOAT_ABI STREQUAL hard)
    set(MCU_FLAGS "${MCU_FLAGS} -mfpu=${MCU_FPU}")
endif ()

set(APPLICATION_VTOR 0x08000000)
set(EXTERNAL_LOAD_ADDRESS 0x90000000)
set(INITIALISE_QSPI 1)
set(CDC_FIFO_BUFFERS 64)

set(APPLICATION_VTOR_EXT 0x90000000)
set(EXTERNAL_LOAD_ADDRESS_EXT 0x08000000)
set(INITIALISE_QSPI_EXT 0)
set(CDC_FIFO_BUFFERS_EXT 4)

set(COMMON_FLAGS "${MCU_FLAGS} -fsingle-precision-constant -Wall -fdata-sections -ffunction-sections -Wattributes -Wdouble-promotion -Werror=double-promotion -Wno-unused-variable -Wno-write-strings")

set(CMAKE_C_FLAGS_INIT "${COMMON_FLAGS}")
set(CMAKE_CXX_FLAGS_INIT "${COMMON_FLAGS} -fno-exceptions")
set(CMAKE_C_FLAGS_DEBUG_INIT "-g -Og")
set(CMAKE_CXX_FLAGS_DEBUG_INIT "-g -Og")
#set(CMAKE_EXE_LINKER_FLAGS_INIT "-specs=nano.specs -T ${MCU_LINKER_SCRIPT} -Wl,--gc-sections")

set(CMAKE_EXE_LINKER_FLAGS_INIT "-specs=nosys.specs -Wl,--gc-sections,--no-wchar-size-warning")

add_definitions(-DTARGET_32BLIT_HW)
