motorized_fader/src/CMakeLists.txt

41 lines
1.1 KiB
CMake
Raw Normal View History

2025-02-10 18:25:49 +00:00
add_executable(${PROJECT_NAME}
main.c
)
# Ensure the build rules are defined
set_target_properties(${PROJECT_NAME} PROPERTIES SUFFIX ".elf")
if(NOT TARGET size)
# Set the size utility to display the size of the final binary
add_custom_target(size ALL
2025-02-14 21:03:54 +00:00
COMMAND ${CMAKE_SIZE} -G --target=elf32-avr ${CMAKE_PROJECT_NAME}.elf
2025-02-10 18:25:49 +00:00
DEPENDS ${CMAKE_PROJECT_NAME}.elf
)
endif()
if(NOT TARGET hex)
# Define how to convert ELF to HEX
add_custom_target(hex ALL
COMMAND ${CMAKE_OBJCOPY} -O ihex -R .eeprom ${CMAKE_PROJECT_NAME}.elf ${CMAKE_PROJECT_NAME}.hex
DEPENDS ${CMAKE_PROJECT_NAME}.elf
)
endif()
if(NOT TARGET bin)
# Define how to convert ELF to BIN
add_custom_target(bin ALL
COMMAND ${CMAKE_OBJCOPY} -O binary -R .eeprom ${CMAKE_PROJECT_NAME}.elf ${CMAKE_PROJECT_NAME}.bin
DEPENDS ${CMAKE_PROJECT_NAME}.elf
)
endif()
if(NOT TARGET upload)
# Upload command (adjust according to your programmer)
add_custom_target(upload ALL
COMMAND avrdude -c ${PROGRAMMER} -P ${PORT} -p ${AVR_MCU} -B 125kHz -U flash:w:${CMAKE_PROJECT_NAME}.hex
2025-02-10 18:25:49 +00:00
DEPENDS hex
)
endif()