diff options
| author | Richard Qin <richard.qin.x@gmail.com> | 2026-11-07 03:30:17 +0800 |
|---|---|---|
| committer | Richard Qin <richard.qin.x@gmail.com> | 2026-11-07 03:31:03 +0800 |
| commit | 2a4c290c55b683352a16747432a7fc4635597cc6 (patch) | |
| tree | a150caea2ade12af4c5dcd70f09bacd3318f4d43 /rv64cpu/sw/CMakeLists.txt | |
| parent | e0948e3fc10029ba4bb4d48d7b5daae94fe575b9 (diff) | |
| download | rcc-project-2a4c290c55b683352a16747432a7fc4635597cc6.tar.gz rcc-project-2a4c290c55b683352a16747432a7fc4635597cc6.tar.xz | |
refactor: reset software and test directories
Diffstat (limited to 'rv64cpu/sw/CMakeLists.txt')
| -rw-r--r-- | rv64cpu/sw/CMakeLists.txt | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/rv64cpu/sw/CMakeLists.txt b/rv64cpu/sw/CMakeLists.txt deleted file mode 100644 index c43580f..0000000 --- a/rv64cpu/sw/CMakeLists.txt +++ /dev/null @@ -1,71 +0,0 @@ -# ─── Software Build (Bare-Metal) ───────────────────────────────────────────────── -# -# This CMakeLists.txt is only included when BUILD_SW=ON and requires -# the RISC-V cross-compilation toolchain: -# -# cmake -B build_sw -DBUILD_SW=ON \ -# -DCMAKE_TOOLCHAIN_FILE=tools/toolchain-riscv64.cmake -# -# ───────────────────────────────────────────────────────────────────────────────── - -enable_language(ASM) - -set(LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/common/link.ld) -set(STARTUP_SRC ${CMAKE_CURRENT_SOURCE_DIR}/common/start.S) - -# ─── Helper: create a bare-metal firmware target ───────────────────────────────── -function(add_firmware) - cmake_parse_arguments(FW "" "NAME" "SOURCES" ${ARGN}) - - add_executable(${FW_NAME}.elf - ${STARTUP_SRC} - ${FW_SOURCES} - ) - - target_include_directories(${FW_NAME}.elf PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR}/common - ) - - target_link_options(${FW_NAME}.elf PRIVATE - -T${LINKER_SCRIPT} - -Wl,-Map=${FW_NAME}.map - ) - - # Generate .bin - add_custom_command(TARGET ${FW_NAME}.elf POST_BUILD - COMMAND ${CMAKE_OBJCOPY} -O binary - ${FW_NAME}.elf ${FW_NAME}.bin - COMMENT "Generating ${FW_NAME}.bin" - ) - - # Generate .hex (for $readmemh) - add_custom_command(TARGET ${FW_NAME}.elf POST_BUILD - COMMAND ${CMAKE_OBJCOPY} -O verilog - ${FW_NAME}.elf ${FW_NAME}.hex - COMMENT "Generating ${FW_NAME}.hex" - ) - - # Print size - add_custom_command(TARGET ${FW_NAME}.elf POST_BUILD - COMMAND ${CMAKE_SIZE} ${FW_NAME}.elf - ) -endfunction() - -# ═══════════════════════════════════════════════════════════════════════════════════ -# Firmware Targets — uncomment as you create the source files -# ═══════════════════════════════════════════════════════════════════════════════════ -# -# add_firmware( -# NAME hello_uart -# SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/baremetal/hello_uart/main.c -# ) -# -# add_firmware( -# NAME timer_irq -# SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/baremetal/timer_irq/main.c -# ) -# -# add_firmware( -# NAME cache_test -# SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/baremetal/cache_test/main.c -# ) |
