
set(execName "cheali-charger-${hardware}-${cheali-charger-version}")
set(sizeName "cheali-charger-${hardware}")

include_directories(${CMAKE_SOURCE_DIR}/arduino/cores/arduino ${CMAKE_SOURCE_DIR}/arduino/variants/atmega32)
include_directories(${CMAKE_SOURCE_DIR}/src/core/atmega32)
include_directories(${CMAKE_SOURCE_DIR}/src/core)
include_directories(${CMAKE_CURRENT_SOURCE_DIR})

include_directories(/usr/lib/avr/include/)
link_libraries(arduino)
link_libraries(m)

add_executable(${execName} ${ALL_SOURCE_FILES})

add_custom_command(
    TARGET ${execName}
    POST_BUILD
    COMMAND avr-objcopy -R .eeprom -O ihex $<TARGET_FILE:${execName}> $<TARGET_FILE:${execName}>.hex)

add_custom_command(
    TARGET ${execName}
    POST_BUILD
    COMMAND avr-objcopy -R .eeprom -O binary $<TARGET_FILE:${execName}> $<TARGET_FILE:${execName}>.bin)

add_custom_command(
    TARGET ${execName}
    POST_BUILD
    COMMAND avr-objcopy -j .eeprom --no-change-warnings --change-section-lma .eeprom=0 -O ihex $<TARGET_FILE:${execName}> $<TARGET_FILE:${execName}>.eep)


add_custom_target(${execName}.size ALL
    COMMAND ${CMAKE_SOURCE_DIR}/src/core/avr-size.sh $<TARGET_FILE:${execName}> ${sizeName}.size
    DEPENDS ${execName})
