diff --git a/SW/CMakeLists.txt b/SW/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..30e76cfc862e6320a0c9348bff4c5545b8bce90f --- /dev/null +++ b/SW/CMakeLists.txt @@ -0,0 +1,44 @@ +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 +) + +include_directories(libs/src) +add_subdirectory(libs rk) + +add_avr_executable(gate-servo-controller ${SOURCE_FILES}) +avr_target_link_libraries(gate-servo-controller rk) \ No newline at end of file