更改项目名称,增加编译结果文件名的版本与编译日期

This commit is contained in:
yelvlab 2024-12-03 16:02:36 +08:00
parent ae92418e1e
commit 2d7e6fb6e4
2 changed files with 19 additions and 13 deletions

View File

@ -1,7 +1,13 @@
cmake_minimum_required(VERSION 3.28)
include(cmake/toolchain.cmake)
project(gd32e23x_template)
project(xlsw_3dp_LDC1612)
set(VERSION_MAJOR 0)
set(VERSION_MINOR 0)
set(VERSION_PATCH 1)
set(VERSION "V${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
string(TIMESTAMP CURRENT_DATE "%Y-%m-%d")
enable_language(C)
enable_language(CXX)
@ -21,11 +27,11 @@ set(TARGET_C_SRC
${CMAKE_SOURCE_DIR}/src/peripheral.c
)
add_executable(gd32e23x_template ${TARGET_C_SRC})
add_executable(xlsw_3dp_LDC1612 ${TARGET_C_SRC})
target_link_libraries(gd32e23x_template GD32E23X_SDK)
target_include_directories(gd32e23x_template PUBLIC inc)
target_link_libraries(xlsw_3dp_LDC1612 GD32E23X_SDK)
target_include_directories(xlsw_3dp_LDC1612 PUBLIC inc)
# Generate .bin and .hex
generate_binary_file(gd32e23x_template)
generate_hex_file(gd32e23x_template)
generate_binary_file(xlsw_3dp_LDC1612 "XLSW_LDC1612_FW")
generate_hex_file(xlsw_3dp_LDC1612 "XLSW_LDC1612_FW")

View File

@ -41,12 +41,12 @@ function(print_size_of_target TARGET)
)
endfunction()
function(_generate_file TARGET OUTPUT_EXTENSION OBJCOPY_BFD_OUTPUT)
function(_generate_file TARGET PREFIX VERSION DATE OUTPUT_EXTENSION OBJCOPY_BFD_OUTPUT)
get_target_property(TARGET_OUTPUT_NAME ${TARGET} OUTPUT_NAME)
if (TARGET_OUTPUT_NAME)
set(OUTPUT_FILE_NAME "${TARGET_OUTPUT_NAME}.${OUTPUT_EXTENSION}")
set(OUTPUT_FILE_NAME "${PREFIX}_${VERSION}_${DATE}.${OUTPUT_EXTENSION}")
else()
set(OUTPUT_FILE_NAME "${TARGET}.${OUTPUT_EXTENSION}")
set(OUTPUT_FILE_NAME "${TARGET}_${VERSION}_${DATE}.${OUTPUT_EXTENSION}")
endif()
get_target_property(RUNTIME_OUTPUT_DIRECTORY ${TARGET} RUNTIME_OUTPUT_DIRECTORY)
@ -65,12 +65,12 @@ function(_generate_file TARGET OUTPUT_EXTENSION OBJCOPY_BFD_OUTPUT)
)
endfunction()
function(generate_binary_file TARGET)
_generate_file(${TARGET} "bin" "binary")
function(generate_binary_file TARGET PREFIX)
_generate_file(${TARGET} "${PREFIX}" "${VERSION}" "${CURRENT_DATE}" "bin" "binary")
endfunction()
function(generate_hex_file TARGET)
_generate_file(${TARGET} "hex" "ihex")
function(generate_hex_file TARGET PREFIX)
_generate_file(${TARGET} "${PREFIX}" "${VERSION}" "${CURRENT_DATE}" "hex" "ihex")
endfunction()
set(CMAKE_EXECUTABLE_SUFFIX_C .elf)