Skip to content
Snippets Groups Projects
CMakeLists.txt 1.31 KiB
Newer Older
Martin Vítek's avatar
Martin Vítek committed
cmake_minimum_required(VERSION 3.0)

set(AVR_UPLOADTOOL avrdude)
set(AVR_PROGRAMMER usbasp)
set(AVR_UPLOADTOOL_PORT usb)
set(AVR_MCU atmega8)
set(AVR_H_FUSE 0xC8)
set(AVR_L_FUSE 0x1F)
#set(CMAKE_BUILD_TYPE RelWithDebInfo)
set(CMAKE_BUILD_TYPE Release)
set(MCU_SPEED "14745600UL")
set(WITH_MCU OFF)
set(WITH_MCU OFF CACHE BOOL "Add the mCU type to the target file name." FORCE)

find_package(avr)

project(gate-servo-controller)

add_definitions("-DF_CPU=${MCU_SPEED}")

add_definitions("-fpack-struct")
add_definitions("-fshort-enums")
add_definitions("-Wall")
add_definitions("-funsigned-char")
add_definitions("-funsigned-bitfields")
add_definitions("-ffunction-sections")
add_definitions("-fdata-sections")
add_definitions("-fno-exceptions")
add_definitions("-mcall-prologues")
add_definitions("-mrelax")
add_definitions("-c")
add_definitions("-std=c++14")

set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-Wl,--gc-sections -Wl,--relax -Os -mrelax")

set(SOURCE_FILES
        main.cpp
        servo.h
        servo.cpp
        lib/adc.h
        lib/adc.cpp
        lib/usart.h
        lib/usart.cpp
        Controller.h
        Controller.cpp
        irq.h
        irq.cpp
#include_directories(libs/src)
#add_subdirectory(libs rk)
Martin Vítek's avatar
Martin Vítek committed

add_avr_executable(gate-servo-controller ${SOURCE_FILES})
#avr_target_link_libraries(gate-servo-controller rk)