Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit02e802b

Browse files
committed
feat: handle bootloaders
This adds a new keyword, BOOTLOADER, in set_board().Cmake-wise, the bootloader targets replace the board targets, they are not feature targets to plug in.
1 parent45f563a commit02e802b

File tree

509 files changed

+14698
-1001
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

509 files changed

+14698
-1001
lines changed

‎cmake/boards_db.cmake

Lines changed: 14086 additions & 406 deletions
Large diffs are not rendered by default.

‎cmake/scripts/update_boarddb.py

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,12 @@ def boardstxt_filter(key) :
2828
# Midatronics.menu.upload_method.MassStorage=Mass Storage
2929
returnTrue
3030

31-
# Remove upload_method also, that's out of our scope and requires more logic
32-
iflen(key)>=3andkey[2]=="upload_method" :
31+
# keep bootloader flags that impact the build
32+
iflen(key)>=6 \
33+
andkey[1]=="menu" \
34+
andkey[2]=="upload_method" :
35+
ifkey[3]!="build" :
36+
returnFalse
3337
returnTrue
3438

3539
returnFalse
@@ -96,8 +100,12 @@ def regenerate_template(config, infile, outfile) :
96100
inherit_fam["menu"]=inherit_fam["menu"].copy()
97101
# del what you iterate over (otherwise you get infinite nesting)
98102
delinherit_fam["menu"]["pnum"]
103+
foru_meth,u_meth_cfgininherit_fam.menu.upload_method.copy().items() :
104+
if"build"notinu_meth_cfg.keys() :
105+
delinherit_fam.menu.upload_method[u_meth]
99106

100107
forboard,boardcfginfamcfg.menu.pnum.items() :
108+
boardcfg["_fpconf"]=get_fpconf(boardcfg)
101109
boardcfg.set_default_entries(inherit_fam)
102110

103111
inherit_board=boardcfg.copy()
@@ -116,7 +124,10 @@ def regenerate_template(config, infile, outfile) :
116124

117125
boardcfg.evaluate_entries()
118126

119-
boardcfg["_fpconf"]=get_fpconf(boardcfg)
120127
allboards[board]=boardcfg
128+
formth,mthcfginboardcfg.menu.upload_method.items() :
129+
ifmth.startswith(("hid","dfuo","dfu2")) :
130+
mth=mth.removesuffix("Method")
131+
allboards[f"{board}_{mth}"]=mthcfg
121132

122133
regenerate_template(allboards,shargs.template,shargs.outfile)

‎cmake/set_board.cmake

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,17 @@ function(set_board BOARD_ID)
55
updatedb()# updates board_db if needed
66
include(boards_db)
77

8+
set(KEYWORDSSERIALUSBXUSBVIRTIOBOOTLOADER)
9+
cmake_parse_arguments(PARSE_ARGV1BOARD"""${KEYWORDS}""")
10+
11+
if(DEFINEDBOARD_UNPARSED_ARGUMENTSORDEFINEDBOARD_KEYWORDS_MISSING_VALUES)
12+
message(SEND_ERROR"Invalid call to set_board(); some arguments went unparsed")
13+
endif()
14+
15+
if(DEFINEDBOARD_BOOTLOADER)
16+
set(BOARD_ID"${BOARD_ID}_${BOARD_BOOTLOADER}")
17+
endif()
18+
819
if (NOTTARGET${BOARD_ID})
920
message(SEND_ERROR"Board${BOARD_ID} not found. Maybe the board database is not up-to-date?")
1021
return()
@@ -16,13 +27,6 @@ function(set_board BOARD_ID)
1627
set(MCU${${BOARD_ID}_MCU}PARENT_SCOPE)
1728
set(FPCONF${${BOARD_ID}_FPCONF}PARENT_SCOPE)
1829

19-
set(KEYWORDSSERIALUSBXUSBVIRTIO)
20-
cmake_parse_arguments(PARSE_ARGV1BOARD"""${KEYWORDS}""")
21-
22-
if(DEFINEDBOARD_UNPARSED_ARGUMENTSORDEFINEDBOARD_KEYWORDS_MISSING_VALUES)
23-
message(SEND_ERROR"Invalid call to set_board(); some arguments went unparsed")
24-
endif()
25-
2630
# if the user passed in an invalid value, then the target won't be found
2731
# and cmake will output an error message
2832
if(DEFINEDBOARD_SERIAL)

‎cmake/templates/easy_cmake.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ set_board("{{"${BOARDNAME}"}}"
4040
# USB none / CDCgen / CDC / HID
4141
# XUSB FS / HS / HSFS
4242
# VIRTIO disable / generic / enabled
43+
# BOOTLOADER dfuo / dfu2 / hid
4344
)
4445

4546
include(overall_settings)

‎cores/arduino/CMakeLists.txt

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,25 +19,17 @@ target_link_libraries(core INTERFACE core_usage)
1919

2020

2121
add_library(core_binSTATICEXCLUDE_FROM_ALL
22-
HardwareSerial.cpp
23-
IPAddress.cpp
24-
Print.cpp
25-
RingBuffer.cpp
26-
Stream.cpp
27-
Tone.cpp
28-
USBSerial.cpp
29-
VirtIOSerial.cpp
30-
WInterrupts.cpp
31-
WMath.cpp
32-
WSerial.cpp
33-
WString.cpp
3422
abi.cpp
3523
avr/dtostrf.c
3624
board.c
25+
HardwareSerial.cpp
3726
hooks.c
27+
IPAddress.cpp
3828
itoa.c
3929
main.cpp
4030
pins_arduino.c
31+
Print.cpp
32+
RingBuffer.cpp
4133
stm32/OpenAMP/libmetal/device.c
4234
stm32/OpenAMP/libmetal/generic/condition.c
4335
stm32/OpenAMP/libmetal/generic/cortexm/sys.c
@@ -74,11 +66,19 @@ add_library(core_bin STATIC EXCLUDE_FROM_ALL
7466
stm32/usb/usbd_desc.c
7567
stm32/usb/usbd_ep_conf.c
7668
stm32/usb/usbd_if.c
69+
Stream.cpp
70+
Tone.cpp
71+
USBSerial.cpp
72+
VirtIOSerial.cpp
73+
WInterrupts.cpp
7774
wiring_analog.c
7875
wiring_digital.c
7976
wiring_pulse.cpp
8077
wiring_shift.c
8178
wiring_time.c
79+
WMath.cpp
80+
WSerial.cpp
81+
WString.cpp
8282
)
8383
target_link_libraries(core_binPUBLICcore_usage)
8484

‎libraries/SrcWrapper/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,3 +194,4 @@ target_link_libraries(SrcWrapper INTERFACE
194194
SrcWrapper_bin
195195
$<TARGET_OBJECTS:SrcWrapper_bin>
196196
)
197+

‎variants/STM32F0xx/F030C6T/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F030C8T/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22+
generic_clock.c
2223
PeripheralPins.c
2324
PeripheralPins_EEXTR_F030_V1.c
24-
generic_clock.c
2525
variant_EEXTR_F030_V1.cpp
2626
variant_generic.cpp
2727
)

‎variants/STM32F0xx/F030CCT/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F030F4P/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_DEMO_F030F4.cpp
2525
variant_generic.cpp
2626
)

‎variants/STM32F0xx/F030K6T/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F030R8T/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_DISCO_F030R8.cpp
25-
variant_NUCLEO_F030R8.cpp
2625
variant_generic.cpp
26+
variant_NUCLEO_F030R8.cpp
2727
)
2828
target_link_libraries(variant_binPUBLICvariant_usage)
2929

‎variants/STM32F0xx/F030RCT/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F031C(4-6)T/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F031E6Y_F038E6Y/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F031F(4-6)P/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F031G(4-6)U/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F031K(4-6)U/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F031K6T/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
24-
variant_NUCLEO_F031K6.cpp
23+
PeripheralPins.c
2524
variant_generic.cpp
25+
variant_NUCLEO_F031K6.cpp
2626
)
2727
target_link_libraries(variant_binPUBLICvariant_usage)
2828

‎variants/STM32F0xx/F038C6T/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F038F6P/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F038G6U/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F038K6U/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F042C(4-6)(T-U)/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F042F(4-6)P/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F042G(4-6)U/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F042K(4-6)T/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
24-
variant_NUCLEO_F042K6.cpp
23+
PeripheralPins.c
2524
variant_generic.cpp
25+
variant_NUCLEO_F042K6.cpp
2626
)
2727
target_link_libraries(variant_binPUBLICvariant_usage)
2828

‎variants/STM32F0xx/F042K(4-6)U/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F042T6Y/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F048C6U/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

‎variants/STM32F0xx/F048G6U/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ target_link_libraries(variant INTERFACE variant_usage)
1919

2020

2121
add_library(variant_binSTATICEXCLUDE_FROM_ALL
22-
PeripheralPins.c
2322
generic_clock.c
23+
PeripheralPins.c
2424
variant_generic.cpp
2525
)
2626
target_link_libraries(variant_binPUBLICvariant_usage)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp