diff --git a/CMakeLists.txt b/CMakeLists.txt index 52f8f27..4fb7370 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,10 +2,10 @@ cmake_minimum_required(VERSION 3.10) project(hello-world) # set(CMAKE_VERBOSE_MAKEFILE ON) -set(CMAKE_C_COMPILER riscv-none-embed-gcc) -set(CMAKE_CXX_COMPILER riscv-none-embed-gcc) -set(CMAKE_OBJCOPY riscv-none-embed-objcopy) -set(CMAKE_SIZE riscv-none-embed-size) +set(CMAKE_C_COMPILER riscv-none-elf-gcc) +set(CMAKE_CXX_COMPILER riscv-none-elf-gcc) +set(CMAKE_OBJCOPY riscv-none-elf-objcopy) +set(CMAKE_SIZE riscv-none-elf-size) set_property(SOURCE Startup/startup_ch32v20x_D6.S PROPERTY LANGUAGE C) @@ -21,7 +21,7 @@ include_directories(Peripheral/inc) add_definitions(-finline-functions-called-once -g) -add_definitions(-Wall -march=rv32ec -mabi=ilp32e -msmall-data-limit=0 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common) +add_definitions(-Wall -Wextra -march=rv32imac_zicsr_zifencei -mabi=ilp32 -msmall-data-limit=0 -msave-restore -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -mcmodel=medany --specs=nano.specs) file(GLOB SOURCES "Debug/*.c" "Core/*.c" "User/*.c" "Peripheral/src/*.c" "Startup/*.S") @@ -34,5 +34,6 @@ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}.siz COMMAND ${CMAKE_SIZE} ARGS --format=berkeley ${CMAKE_PROJECT_NAME}.elf) - add_executable(${CMAKE_PROJECT_NAME}.elf ${SOURCES}) -target_link_options(${CMAKE_PROJECT_NAME}.elf PRIVATE -T ${CMAKE_SOURCE_DIR}/Ld/Link.ld -Os -march=rv32ec -mabi=ilp32e -nostartfiles -Xlinker -gc-sections -static --specs=nano.specs --specs=nosys.specs) +add_executable(${CMAKE_PROJECT_NAME}.elf ${SOURCES}) + +target_link_options(${CMAKE_PROJECT_NAME}.elf PRIVATE -T ${CMAKE_SOURCE_DIR}/Ld/Link.ld -Os -march=rv32imac_zicsr_zifencei -mabi=ilp32 -mstrict-align -nostartfiles -Xlinker -gc-sections -static --specs=nano.specs -mcmodel=medany)