cmake_minimum_required(VERSION 3.22)
project(UltimateEmbeddedDemo LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
add_executable(
    UltimateEmbeddedDemo
    embedded_demo.cpp
)
target_include_directories(
    UltimateEmbeddedDemo
    PRIVATE
    .
)
target_compile_options(
    UltimateEmbeddedDemo PRIVATE
    --cpu=Cortex-M3
    --fpu=None
    --endian=little
    --c++
    --libc++
    --debug
    -Ol
    --no_exceptions
    --no_rtti
    --no_cse
    --no_unroll
    --no_inline
    --no_code_motion
    --no_tbaa
    --no_clustering
    --no_scheduling
    -e
)
target_link_options(
    UltimateEmbeddedDemo PRIVATE
    --config
    C:/iar/ewarmc-10.10/arm/config/generic_cortex.icf
    --semihosting
    --entry
    __iar_program_start
    --vfe
    --text_out
    locale
    --cpu=Cortex-M3
    --fpu=None
)
