Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Mbed] Mbed platform examples Python builder #11197

Merged
merged 12 commits into from
Nov 2, 2021

Conversation

ATmobica
Copy link
Contributor

Problem

Add Mbed platform implementation of examples Python builder

Change overview

Implement Mbed builder
Improve shell Mbed builder - Python builder compatibility
Improve examples CMake files
Testdata update
Add mbed-release targets to exampleTarget input - task.json

Testing

CI tests
Build examples manually with build_example.py
Run test.py

.vscode/tasks.json Outdated Show resolved Hide resolved
scripts/build/builders/mbed.py Outdated Show resolved Hide resolved
@github-actions
Copy link

github-actions bot commented Oct 29, 2021

PR #11197: Size comparison from 06f9a38 to 05c7d4e

Increases (1 build for esp32)
platform target config section 06f9a38 05c7d4e change % change
esp32 all-clusters-app m5stack (read only) 907659 907747 88 0.0
.flash.text 907659 907747 88 0.0
Full report (37 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 06f9a38 05c7d4e change % change
efr32 lighting-app BRD4161A (read only) 738120 738120 0 0.0
(read/write) 115428 115428 0 0.0
.bss 113676 113676 0 0.0
.data 1752 1752 0 0.0
.text 738112 738112 0 0.0
BRD4161A+rpc (read only) 725560 725560 0 0.0
(read/write) 132036 132036 0 0.0
.bss 130180 130180 0 0.0
.data 1852 1852 0 0.0
.text 725552 725552 0 0.0
lock-app BRD4161A (read only) 717400 717400 0 0.0
(read/write) 113244 113244 0 0.0
.bss 111532 111532 0 0.0
.data 1712 1712 0 0.0
.text 717392 717392 0 0.0
window-app BRD4161A (read only) 718304 718304 0 0.0
(read/write) 113572 113572 0 0.0
.bss 111852 111852 0 0.0
.data 1716 1716 0 0.0
.text 718296 718296 0 0.0
esp32 all-clusters-app c3devkit (read only) 876382 876382 0 0.0
(read/write) 1308944 1308944 0 0.0
.dram0.bss 59248 59248 0 0.0
.dram0.data 16448 16448 0 0.0
.flash.rodata 200016 200016 0 0.0
.flash.text 876382 876382 0 0.0
.iram0.text 57554 57554 0 0.0
m5stack (read only) 907659 907747 88 0.0
(read/write) 428724 428724 0 0.0
.dram0.bss 61744 61744 0 0.0
.dram0.data 32084 32084 0 0.0
.flash.rodata 208732 208732 0 0.0
.flash.text 907659 907747 88 0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 701656 701656 0 0.0
.bss 78688 78688 0 0.0
.data 1900 1900 0 0.0
.text 615268 615268 0 0.0
lock-app k32w061+debug (read/write) 593612 593612 0 0.0
.bss 69172 69172 0 0.0
.data 1864 1864 0 0.0
.text 516776 516776 0 0.0
shell k32w061+debug (read/write) 425252 425252 0 0.0
.bss 63256 63256 0 0.0
.data 672 672 0 0.0
.text 359620 359620 0 0.0
linux all-clusters-app debug (read only) 1655073 1655073 0 0.0
(read/write) 119104 119104 0 0.0
.bss 51376 51376 0 0.0
.data 978 978 0 0.0
.data.rel.ro 61504 61504 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 520 520 0 0.0
.rodata 138069 138069 0 0.0
.text 1384738 1384738 0 0.0
bridge-app debug+rpc (read only) 1283341 1283341 0 0.0
(read/write) 85160 85160 0 0.0
.bss 51856 51856 0 0.0
.data 976 976 0 0.0
.data.rel.ro 27336 27336 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 111044 111044 0 0.0
.text 1076981 1076981 0 0.0
chip-tool debug (read only) 4266229 4266229 0 0.0
(read/write) 122176 122176 0 0.0
.bss 17680 17680 0 0.0
.data 1584 1584 0 0.0
.data.rel.ro 97504 97504 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 424 424 0 0.0
.rodata 214704 214704 0 0.0
.text 3788725 3788725 0 0.0
lighting-app debug+rpc (read only) 1542281 1542281 0 0.0
(read/write) 102000 102000 0 0.0
.bss 41208 41208 0 0.0
.data 1106 1106 0 0.0
.data.rel.ro 54416 54416 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 129169 129169 0 0.0
.text 1280658 1280658 0 0.0
ota-provider-app debug (read only) 1239849 1239849 0 0.0
(read/write) 67872 67872 0 0.0
.bss 37440 37440 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24584 24584 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 111208 111208 0 0.0
.text 1032466 1032466 0 0.0
ota-requestor-app debug (read only) 1301465 1301465 0 0.0
(read/write) 76616 76616 0 0.0
.bss 45216 45216 0 0.0
.data 816 816 0 0.0
.data.rel.ro 25464 25464 0 0.0
.dynamic 592 592 0 0.0
.got 3984 3984 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 127424 127424 0 0.0
.text 1076226 1076226 0 0.0
shell debug (read only) 787153 787153 0 0.0
(read/write) 57760 57760 0 0.0
.bss 16168 16168 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36848 36848 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 77519 77519 0 0.0
.text 608098 608098 0 0.0
tv-app debug (read only) 1774929 1774929 0 0.0
(read/write) 289624 289624 0 0.0
.bss 223280 223280 0 0.0
.data 2032 2032 0 0.0
.data.rel.ro 58672 58672 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 154488 154488 0 0.0
.text 1478178 1478178 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2291400 2291400 0 0.0
.bss 180620 180620 0 0.0
.data 5192 5192 0 0.0
.heap 850632 850632 0 0.0
.text 1254000 1254000 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2275608 2275608 0 0.0
.bss 172820 172820 0 0.0
.data 5568 5568 0 0.0
.heap 858056 858056 0 0.0
.text 1238208 1238208 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2253328 2253328 0 0.0
.bss 171724 171724 0 0.0
.data 5552 5552 0 0.0
.heap 859168 859168 0 0.0
.text 1215928 1215928 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2048976 2048976 0 0.0
.bss 156208 156208 0 0.0
.data 4968 4968 0 0.0
.heap 875272 875272 0 0.0
.text 1011576 1011576 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 863535 863535 0 0.0
bss 112132 112132 0 0.0
rodata 97816 97816 0 0.0
text 577960 577960 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 824363 824363 0 0.0
bss 108372 108372 0 0.0
rodata 88596 88596 0 0.0
text 551136 551136 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 788526 788526 0 0.0
bss 113504 113504 0 0.0
rodata 93056 93056 0 0.0
text 507428 507428 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 840211 840211 0 0.0
bss 111168 111168 0 0.0
rodata 94172 94172 0 0.0
text 559444 559444 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 765506 765506 0 0.0
bss 112576 112576 0 0.0
rodata 89476 89476 0 0.0
text 489004 489004 0 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497323 497323 0 0.0
bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844911 844911 0 0.0
bss 111304 111304 0 0.0
rodata 95416 95416 0 0.0
text 562656 562656 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 840199 840199 0 0.0
bss 111200 111200 0 0.0
rodata 94192 94192 0 0.0
text 559288 559288 0 0.0
shell nrf52840dk_nrf52840 (read/write) 776435 776435 0 0.0
bss 109072 109072 0 0.0
rodata 72536 72536 0 0.0
text 520236 520236 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 691490 691490 0 0.0
bss 110056 110056 0 0.0
rodata 67180 67180 0 0.0
text 440848 440848 0 0.0
p6 lock-app default (read/write) 2169744 2169744 0 0.0
.bss 67168 67168 0 0.0
.data 2416 2416 0 0.0
.heap 963760 963760 0 0.0
.text 1128008 1128008 0 0.0
qpg lighting-app qpg6100+debug (read only) 491224 491224 0 0.0
(read/write) 114144 114144 0 0.0
.bss 51288 51288 0 0.0
.data 1000 1000 0 0.0
.text 485904 485904 0 0.0
lock-app qpg6100+debug (read only) 467556 467556 0 0.0
(read/write) 114140 114140 0 0.0
.bss 50240 50240 0 0.0
.data 956 956 0 0.0
.text 462236 462236 0 0.0
persistent-storage-app qpg6100+debug (read only) 155236 155236 0 0.0
(read/write) 114140 114140 0 0.0
.bss 27752 27752 0 0.0
.data 372 372 0 0.0
.text 149916 149916 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 665202 665202 0 0.0
bss 69944 69944 0 0.0
noinit 33216 33216 0 0.0
text 458454 458454 0 0.0

@andy31415
Copy link
Contributor

Could you merge past #11200 and consider glob-blacklisting some of the many variants of builds so that they are not autobuilt - I am afraid of too much of a build explosion if we try to compile all mbedos variants possible.

@ATmobica ATmobica force-pushed the mbed-python-builder branch from 05c7d4e to fbda8de Compare November 2, 2021 12:34
@github-actions
Copy link

github-actions bot commented Nov 2, 2021

PR #11197: Size comparison from 3544a6b to fbda8de

Full report (37 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 3544a6b fbda8de change % change
efr32 lighting-app BRD4161A (read only) 735416 735416 0 0.0
(read/write) 114444 114444 0 0.0
.bss 112692 112692 0 0.0
.data 1752 1752 0 0.0
.text 735408 735408 0 0.0
BRD4161A+rpc (read only) 722840 722840 0 0.0
(read/write) 131052 131052 0 0.0
.bss 129196 129196 0 0.0
.data 1852 1852 0 0.0
.text 722832 722832 0 0.0
lock-app BRD4161A (read only) 714700 714700 0 0.0
(read/write) 112260 112260 0 0.0
.bss 110548 110548 0 0.0
.data 1712 1712 0 0.0
.text 714692 714692 0 0.0
window-app BRD4161A (read only) 715612 715612 0 0.0
(read/write) 112584 112584 0 0.0
.bss 110868 110868 0 0.0
.data 1716 1716 0 0.0
.text 715604 715604 0 0.0
esp32 all-clusters-app c3devkit (read only) 880174 880174 0 0.0
(read/write) 1307552 1307552 0 0.0
.dram0.bss 58424 58424 0 0.0
.dram0.data 16464 16464 0 0.0
.flash.rodata 199424 199424 0 0.0
.flash.text 880174 880174 0 0.0
.iram0.text 57554 57554 0 0.0
m5stack (read only) 911051 911051 0 0.0
(read/write) 427312 427312 0 0.0
.dram0.bss 60920 60920 0 0.0
.dram0.data 32100 32100 0 0.0
.flash.rodata 208128 208128 0 0.0
.flash.text 911051 911051 0 0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 698232 698232 0 0.0
.bss 77688 77688 0 0.0
.data 1900 1900 0 0.0
.text 612844 612844 0 0.0
lock-app k32w061+debug (read/write) 590524 590524 0 0.0
.bss 68188 68188 0 0.0
.data 1864 1864 0 0.0
.text 514672 514672 0 0.0
shell k32w061+debug (read/write) 424772 424772 0 0.0
.bss 63280 63280 0 0.0
.data 672 672 0 0.0
.text 359116 359116 0 0.0
linux all-clusters-app debug (read only) 1684105 1684105 0 0.0
(read/write) 118992 118992 0 0.0
.bss 50608 50608 0 0.0
.data 1010 1010 0 0.0
.data.rel.ro 62112 62112 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 536 536 0 0.0
.rodata 137845 137845 0 0.0
.text 1413202 1413202 0 0.0
bridge-app debug+rpc (read only) 1278549 1278549 0 0.0
(read/write) 84104 84104 0 0.0
.bss 50768 50768 0 0.0
.data 976 976 0 0.0
.data.rel.ro 27368 27368 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 109604 109604 0 0.0
.text 1073701 1073701 0 0.0
chip-tool debug (read only) 4312925 4312925 0 0.0
(read/write) 123552 123552 0 0.0
.bss 17680 17680 0 0.0
.data 1584 1584 0 0.0
.data.rel.ro 98880 98880 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 424 424 0 0.0
.rodata 217488 217488 0 0.0
.text 3829781 3829781 0 0.0
lighting-app debug+rpc (read only) 1537521 1537521 0 0.0
(read/write) 100976 100976 0 0.0
.bss 40152 40152 0 0.0
.data 1106 1106 0 0.0
.data.rel.ro 54448 54448 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 127761 127761 0 0.0
.text 1277378 1277378 0 0.0
ota-provider-app debug (read only) 1236441 1236441 0 0.0
(read/write) 67072 67072 0 0.0
.bss 36608 36608 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24616 24616 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 110376 110376 0 0.0
.text 1029938 1029938 0 0.0
ota-requestor-app debug (read only) 1293697 1293697 0 0.0
(read/write) 76392 76392 0 0.0
.bss 44864 44864 0 0.0
.data 816 816 0 0.0
.data.rel.ro 25576 25576 0 0.0
.dynamic 592 592 0 0.0
.got 3984 3984 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 121600 121600 0 0.0
.text 1074306 1074306 0 0.0
shell debug (read only) 785041 785041 0 0.0
(read/write) 57664 57664 0 0.0
.bss 16072 16072 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36848 36848 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 77295 77295 0 0.0
.text 606210 606210 0 0.0
tv-app debug (read only) 1770921 1770921 0 0.0
(read/write) 288536 288536 0 0.0
.bss 222192 222192 0 0.0
.data 2032 2032 0 0.0
.data.rel.ro 58672 58672 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 153176 153176 0 0.0
.text 1475842 1475842 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2293608 2293608 0 0.0
.bss 179796 179796 0 0.0
.data 5216 5216 0 0.0
.heap 851432 851432 0 0.0
.text 1256208 1256208 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2272736 2272736 0 0.0
.bss 171836 171836 0 0.0
.data 5568 5568 0 0.0
.heap 859040 859040 0 0.0
.text 1235336 1235336 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2250392 2250392 0 0.0
.bss 170740 170740 0 0.0
.data 5552 5552 0 0.0
.heap 860152 860152 0 0.0
.text 1212992 1212992 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2048328 2048328 0 0.0
.bss 156232 156232 0 0.0
.data 4968 4968 0 0.0
.heap 875248 875248 0 0.0
.text 1010928 1010928 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 860191 860191 0 0.0
bss 111148 111148 0 0.0
rodata 96360 96360 0 0.0
text 577060 577060 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 821015 821015 0 0.0
bss 107392 107392 0 0.0
rodata 87136 87136 0 0.0
text 550236 550236 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 785218 785218 0 0.0
bss 112524 112524 0 0.0
rodata 91604 91604 0 0.0
text 506528 506528 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 836883 836883 0 0.0
bss 110184 110184 0 0.0
rodata 92716 92716 0 0.0
text 558540 558540 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 762194 762194 0 0.0
bss 111596 111596 0 0.0
rodata 88020 88020 0 0.0
text 488100 488100 0 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497323 497323 0 0.0
bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 842879 842879 0 0.0
bss 110320 110320 0 0.0
rodata 94424 94424 0 0.0
text 562600 562600 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 836739 836739 0 0.0
bss 110220 110220 0 0.0
rodata 92716 92716 0 0.0
text 558276 558276 0 0.0
shell nrf52840dk_nrf52840 (read/write) 775903 775903 0 0.0
bss 109096 109096 0 0.0
rodata 72404 72404 0 0.0
text 519792 519792 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 690906 690906 0 0.0
bss 110080 110080 0 0.0
rodata 67044 67044 0 0.0
text 440400 440400 0 0.0
p6 lock-app default (read/write) 2166560 2166560 0 0.0
.bss 66184 66184 0 0.0
.data 2416 2416 0 0.0
.heap 964744 964744 0 0.0
.text 1124824 1124824 0 0.0
qpg lighting-app qpg6100+debug (read only) 489688 489688 0 0.0
(read/write) 114144 114144 0 0.0
.bss 50320 50320 0 0.0
.data 1000 1000 0 0.0
.text 484368 484368 0 0.0
lock-app qpg6100+debug (read only) 466016 466016 0 0.0
(read/write) 114140 114140 0 0.0
.bss 49272 49272 0 0.0
.data 956 956 0 0.0
.text 460696 460696 0 0.0
persistent-storage-app qpg6100+debug (read only) 155820 155820 0 0.0
(read/write) 114140 114140 0 0.0
.bss 27752 27752 0 0.0
.data 372 372 0 0.0
.text 150500 150500 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 661614 661614 0 0.0
bss 68960 68960 0 0.0
noinit 33216 33216 0 0.0
text 457334 457334 0 0.0

@ATmobica ATmobica requested a review from andy31415 November 2, 2021 13:39
@andy31415
Copy link
Contributor

fast track: build script changes only

@andy31415 andy31415 merged commit 8716608 into project-chip:master Nov 2, 2021
@ATmobica ATmobica deleted the mbed-python-builder branch November 3, 2021 17:31
PSONALl pushed a commit to PSONALl/connectedhomeip that referenced this pull request Dec 3, 2021
* Add Mbed python builder
Add Mbed targets to python builder

* Improve mbed_example.sh script - Python builder compatibility
Improve examples cmake file and gitignore

* Improve build and outputs definition in Python builder

* Update all_targets_except_host.txt

* Update testdata
Fix mbed builder for testing

* Fix mbed unit test build script

* Fix mbed builder for Darwin platform

* Add mbed-release targets to exampleTarget input - task.json

* Changes restyle

* Add all Mbed supported targets and sorted - tasks.json

* Improve mbed builder - more dry-run commands
Add develop and debug profiles to glob-blacklist

* Changes restyle
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants