Skip to content

Commit 7dee326

Browse files
committed
Adapt cmake files to new arduino-cmake
1 parent d7dd3e7 commit 7dee326

File tree

3 files changed

+19
-24
lines changed

3 files changed

+19
-24
lines changed

Arduino_Pedelec_Controller/CMakeLists.txt

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,6 @@ include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR}
1010

1111
set(FIRMWARE_NAME pcontroller)
1212

13-
set(${FIRMWARE_NAME}_BOARD ${FC_PROCESSOR})
14-
set(${FIRMWARE_NAME}_PORT /dev/ttyUSB0) # Serial upload port
15-
1613
# special compile flags for the Travis CI environment
1714
# (avr-gcc is rather outdated and outputs crazy warnings)
1815
if("$ENV{TRAVIS}" STREQUAL "true")
@@ -26,7 +23,7 @@ endif("$ENV{TRAVIS}" STREQUAL "true")
2623
# and move everything to main.cpp
2724
configure_file(Arduino_Pedelec_Controller.ino main.cpp COPYONLY)
2825

29-
set(${FIRMWARE_NAME}_SRCS # Source code
26+
add_executable(${FIRMWARE_NAME}
3027
${CMAKE_CURRENT_BINARY_DIR}/main.cpp
3128
BMP085.cpp
3229
BMP085.h
@@ -71,9 +68,8 @@ set(${FIRMWARE_NAME}_SRCS # Source code
7168
switches.h
7269
switches_action.h
7370
)
74-
generate_arduino_firmware(${FIRMWARE_NAME})
71+
target_link_arduino_libraries(${FIRMWARE_NAME} PRIVATE AUTO_PUBLIC)
7572

76-
# Dirty hack to solve compile error on Fedora 15
77-
#target_link_libraries(${FIRMWARE_NAME} m)
78-
#target_link_libraries(${FIRMWARE_NAME} c)
79-
#target_link_libraries(${FIRMWARE_NAME} m)
73+
# Upload support: Usage:
74+
# make upload-pcontroller SERIAL_PORT=/dev/ttyUSB0
75+
target_enable_arduino_upload(${FIRMWARE_NAME})

CMakeLists.txt

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,23 @@
55
# Description: Pedelec controller cmake project #
66
# #
77
#=============================================================================#
8-
set(CMAKE_TOOLCHAIN_FILE cmake/ArduinoToolchain.cmake) # Arduino Toolchain
9-
10-
cmake_minimum_required(VERSION 2.8)
11-
project(Pedelec_Controller C CXX)
12-
8+
set(CMAKE_TOOLCHAIN_FILE cmake/Arduino-toolchain.cmake) # Arduino Toolchain
139

1410
# "grep" for FC 2.0 hardware in config.h
11+
# Do this before project() since it invokes toolchain detection
1512
file(STRINGS Arduino_Pedelec_Controller/config.h config_h_lines REGEX "^#define HARDWARE_REV 2[0-9]")
1613
if (config_h_lines)
1714
message("Building firmware for FC 2.0 or higher")
18-
set(FC_PROCESSOR mega2560)
15+
set(ARDUINO_BOARD "Arduino Mega or Mega 2560 [avr.mega]")
16+
set(ARDUINO_AVR_MEGA_MENU_CPU_ATMEGA2560 TRUE)
1917
else(config_h_lines)
20-
set(FC_PROCESSOR atmega328)
18+
set(ARDUINO_BOARD "Arduino Nano [avr.nano]")
19+
set(ARDUINO_AVR_NANO_MENU_CPU_ATMEGA328 TRUE)
2120
endif(config_h_lines)
2221

22+
cmake_minimum_required(VERSION 3.7.0)
23+
project(Pedelec_Controller C CXX)
24+
2325
# Documentation
2426
option(DOCUMENTATION "Generate API documentation with Doxygen" OFF)
2527

Hardware_Test/CMakeLists.txt

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,14 @@ configure_file(Hardware_Test.ino testprogram.cpp COPYONLY)
1212

1313
# Hardware test program
1414
set(TESTPROGRAM_NAME testprogram)
15-
set(${TESTPROGRAM_NAME}_BOARD ${FC_PROCESSOR})
16-
set(${TESTPROGRAM_NAME}_PORT /dev/ttyUSB0)
1715

18-
set(${TESTPROGRAM_NAME}_SRCS
16+
add_executable(${TESTPROGRAM_NAME}
1917
${CMAKE_CURRENT_BINARY_DIR}/testprogram.cpp
2018
PCD8544_charset.cpp
2119
PCD8544_nano.cpp
2220
)
23-
generate_arduino_firmware(${TESTPROGRAM_NAME})
21+
target_link_arduino_libraries(${TESTPROGRAM_NAME} PRIVATE EEPROM core)
2422

25-
# Dirty hack to solve compile error on Fedora 15
26-
#target_link_libraries(${TESTPROGRAM_NAME} m)
27-
#target_link_libraries(${TESTPROGRAM_NAME} c)
28-
#target_link_libraries(${TESTPROGRAM_NAME} m)
23+
# Upload support: Usage:
24+
# make upload-testprogram SERIAL_PORT=/dev/ttyUSB0
25+
target_enable_arduino_upload(${TESTPROGRAM_NAME})

0 commit comments

Comments
 (0)