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

Add matter_enable_recommended meta-setting #34942

Merged
merged 3 commits into from
Sep 10, 2024

Conversation

ksperling-apple
Copy link
Contributor

This setting defaults to true which leaves current behavior unchanged.

However it can be set to false to achieve a more conservative / minimal set of defaults, without having to manually disable an ever-increasing set of features. Consider using this setting as the default value for other settings that increase code size or add debugging / tracing or similar features that are not always desired. Especially settings that default to true on Linux and Mac ("because you're probably building for development") should likely use this option for their default, e.g.

matter_foo = matter_enable_recommended && (current_os == "linux" || current_os == "mac")

Copy link

Review changes with SemanticDiff.

@ksperling-apple ksperling-apple changed the title Add matter_enable_defaults meta-setting Add matter_enable_recommended meta-setting Aug 13, 2024
Copy link

github-actions bot commented Aug 13, 2024

PR #34942: Size comparison from 20d6857 to 27620b2

Full report (84 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 20d6857 27620b2 change % change
bl602 lighting-app bl602 FLASH 1278128 1278128 0 0.0
RAM 95928 95928 0 0.0
bl602+mfd FLASH 1292238 1292238 0 0.0
RAM 96072 96072 0 0.0
bl602+rpc FLASH 1317092 1317092 0 0.0
RAM 104352 104352 0 0.0
bl702 lighting-app bl702 FLASH 943988 943988 0 0.0
RAM 15209 15209 0 0.0
bl702+mfd FLASH 946388 946388 0 0.0
RAM 15353 15353 0 0.0
bl702+rpc FLASH 1039044 1039044 0 0.0
RAM 24221 24221 0 0.0
bl706-eth FLASH 646706 646706 0 0.0
RAM 25305 25305 0 0.0
bl706-wifi FLASH 894312 894312 0 0.0
RAM 14525 14525 0 0.0
bl702l lighting-app bl702l FLASH 960392 960392 0 0.0
RAM 16868 16868 0 0.0
bl702l+mfd FLASH 963270 963270 0 0.0
RAM 17012 17012 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 803140 803140 0 0.0
RAM 117628 117628 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 818984 818984 0 0.0
RAM 125220 125220 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 811324 811324 0 0.0
RAM 119500 119500 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 763496 763496 0 0.0
RAM 113648 113648 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747996 747996 0 0.0
RAM 113840 113840 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 613106 613106 0 0.0
RAM 205404 205404 0 0.0
lock CC3235SF_LAUNCHXL FLASH 655074 655074 0 0.0
RAM 205620 205620 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 672289 672289 0 0.0
RAM 78348 78348 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 692149 692149 0 0.0
RAM 80980 80980 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 692149 692149 0 0.0
RAM 80980 80980 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 649077 649077 0 0.0
RAM 73416 73416 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 610721 610721 0 0.0
RAM 71340 71340 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 630349 630349 0 0.0
RAM 73892 73892 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 630349 630349 0 0.0
RAM 73892 73892 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 628185 628185 0 0.0
RAM 74356 74356 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 647893 647893 0 0.0
RAM 76908 76908 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 647893 647893 0 0.0
RAM 76908 76908 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 601717 601717 0 0.0
RAM 68388 68388 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 621577 621577 0 0.0
RAM 71020 71020 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 621577 621577 0 0.0
RAM 71020 71020 0 0.0
efr32 lighting-app BRD4187C FLASH 930312 930304 -8 -0.0
RAM 135144 135144 0 0.0
lock-app BRD4338a FLASH 737468 737460 -8 -0.0
RAM 207864 207864 0 0.0
window-app BRD4187C FLASH 1015444 1015436 -8 -0.0
RAM 127084 127084 0 0.0
esp32 all-clusters-app c3devkit DRAM 94176 94176 0 0.0
FLASH 1533510 1533510 0 0.0
IRAM 82538 82538 0 0.0
m5stack DRAM 115104 115104 0 0.0
FLASH 1543266 1543266 0 0.0
IRAM 117039 117039 0 0.0
linux air-purifier-app debug unknown 4624 4624 0 0.0
FLASH 2754771 2754771 0 0.0
RAM 128408 128408 0 0.0
all-clusters-app debug unknown 5408 5408 0 0.0
FLASH 6036700 6036700 0 0.0
RAM 509704 509704 0 0.0
all-clusters-minimal-app debug unknown 5304 5304 0 0.0
FLASH 5375880 5375880 0 0.0
RAM 240072 240072 0 0.0
bridge-app debug unknown 5288 5288 0 0.0
FLASH 4728568 4728568 0 0.0
RAM 216952 216952 0 0.0
chip-tool debug unknown 5832 5832 0 0.0
FLASH 12488168 12488168 0 0.0
RAM 557202 557202 0 0.0
chip-tool-ipv6only arm64 unknown 20312 20312 0 0.0
FLASH 11163692 11163692 0 0.0
RAM 607272 607272 0 0.0
fabric-admin debug unknown 5672 5672 0 0.0
FLASH 11198969 11198969 0 0.0
RAM 554706 554706 0 0.0
fabric-bridge-app debug unknown 4520 4520 0 0.0
FLASH 4539332 4539332 0 0.0
RAM 203456 203456 0 0.0
lighting-app debug+rpc+ui unknown 5936 5936 0 0.0
FLASH 5663137 5663137 0 0.0
RAM 228008 228008 0 0.0
lock-app debug unknown 5224 5224 0 0.0
FLASH 4783348 4783348 0 0.0
RAM 203736 203736 0 0.0
ota-provider-app debug unknown 4600 4600 0 0.0
FLASH 4423388 4423388 0 0.0
RAM 197720 197720 0 0.0
ota-requestor-app debug unknown 4536 4536 0 0.0
FLASH 4562006 4562006 0 0.0
RAM 202256 202256 0 0.0
shell debug unknown 4176 4176 0 0.0
FLASH 3076317 3076317 0 0.0
RAM 159200 159200 0 0.0
thermostat-no-ble arm64 unknown 9352 9352 0 0.0
FLASH 4363668 4363668 0 0.0
RAM 242416 242416 0 0.0
tv-app debug unknown 5496 5496 0 0.0
FLASH 6006597 6006597 0 0.0
RAM 582968 582968 0 0.0
tv-casting-app debug unknown 5168 5168 0 0.0
FLASH 10692077 10692077 0 0.0
RAM 644280 644280 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 909012 909012 0 0.0
RAM 142255 142255 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 880932 880932 0 0.0
RAM 140394 140394 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 840848 840848 0 0.0
RAM 141074 141074 0 0.0
nxp contact k32w0+release FLASH 577372 577372 0 0.0
RAM 70468 70468 0 0.0
k32w1+release FLASH 592680 592680 0 0.0
RAM 74456 74456 0 0.0
light k32w0+release FLASH 612816 612816 0 0.0
RAM 69940 69940 0 0.0
k32w1+release FLASH 677640 677640 0 0.0
RAM 83232 83232 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1638196 1638196 0 0.0
RAM 210928 210928 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1543892 1543892 0 0.0
RAM 207672 207672 0 0.0
light cy8ckit_062s2_43012 FLASH 1463796 1463796 0 0.0
RAM 200776 200776 0 0.0
lock cy8ckit_062s2_43012 FLASH 1462460 1462460 0 0.0
RAM 225112 225112 0 0.0
qpg lighting-app qpg6105+debug FLASH 655908 655908 0 0.0
RAM 105152 105152 0 0.0
lock-app qpg6105+debug FLASH 613248 613248 0 0.0
RAM 99636 99636 0 0.0
stm32 light STM32WB5MM-DK FLASH 478304 478304 0 0.0
RAM 144764 144764 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 620118 620118 0 0.0
RAM 50940 50940 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 680638 680638 0 0.0
RAM 149592 149592 0 0.0
all-clusters-minimal-app tlsr9528a FLASH 773898 773898 0 0.0
RAM 110752 110752 0 0.0
bridge-app tlsr9258a FLASH 678806 678806 0 0.0
RAM 91636 91636 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 621714 621714 0 0.0
RAM 50980 50980 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 707596 707596 0 0.0
RAM 74320 74320 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 620640 620640 0 0.0
RAM 145580 145580 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 806726 806726 0 0.0
RAM 99504 99504 0 0.0
lock-app-dfu tlsr9528a FLASH 654586 654586 0 0.0
RAM 67016 67016 0 0.0
ota-requestor-app tlsr9258a FLASH 696822 696822 0 0.0
RAM 91320 91320 0 0.0
pump-app-usb tlsr9518adk80d FLASH 631102 631102 0 0.0
RAM 55760 55760 0 0.0
pump-controller-app tlsr9518adk80d FLASH 608612 608612 0 0.0
RAM 53004 53004 0 0.0
shell tlsr9518adk80d FLASH 466810 466810 0 0.0
RAM 68660 68660 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 628502 628502 0 0.0
RAM 52700 52700 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 652482 652482 0 0.0
RAM 56640 56640 0 0.0
thermostat tlsr9518adk80d FLASH 633666 633666 0 0.0
RAM 53400 53400 0 0.0
window-covering tlsr9118bdk40d FLASH 522646 522646 0 0.0
RAM 98540 98540 0 0.0
tizen all-clusters-app arm unknown 4796 4796 0 0.0
FLASH 1697032 1697032 0 0.0
RAM 89292 89292 0 0.0
chip-tool-ubsan arm unknown 10236 10236 0 0.0
FLASH 17307046 17307046 0 0.0
RAM 7560508 7560508 0 0.0

src/lib/core/core.gni Outdated Show resolved Hide resolved
@mergify mergify bot added conflict and removed conflict labels Aug 30, 2024
This setting defaults to true which leaves current behavior unchanged.

However it can be set to false to achieve a more conservative / minimal set of
defaults, without having to manually disable an ever-increasing set of
features. Consider using this setting as the default value for other settings
that increase code size or add debugging / tracing or similar features that are
not always desired. Especially settings that default to true on Linux and Mac
("because you're probably building for development") should likely use this
option for their default, e.g.

matter_foo = matter_enable_recommended && (current_os == "linux" || current_os == "mac")
Copy link

github-actions bot commented Sep 10, 2024

PR #34942: Size comparison from 3f0f242 to cf217aa

Full report (5 builds for esp32, nrfconnect)
platform target config section 3f0f242 cf217aa change % change
esp32 all-clusters-app c3devkit DRAM 94136 94136 0 0.0
FLASH 1538430 1538430 0 0.0
IRAM 82538 82538 0 0.0
m5stack DRAM 115072 115072 0 0.0
FLASH 1548862 1548862 0 0.0
IRAM 117039 117039 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 914064 914064 0 0.0
RAM 142252 142252 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 885732 885732 0 0.0
RAM 140391 140391 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 845456 845456 0 0.0
RAM 141070 141070 0 0.0

Copy link

github-actions bot commented Sep 10, 2024

PR #34942: Size comparison from 60d6c6b to 21a2954

Increases above 0.2%:

platform target config section 60d6c6b 21a2954 change % change
bl702 lighting-app bl706-eth FLASH 646136 648370 2234 0.3
bl706-wifi FLASH 893550 896168 2618 0.3
cyw30739 light CYW30739B2-P5-EVK-01 FLASH 676465 678489 2024 0.3
CYW30739B2-P5-EVK-02 FLASH 696325 698349 2024 0.3
CYW30739B2-P5-EVK-03 FLASH 696325 698349 2024 0.3
CYW930739M2EVB-02 FLASH 653253 655285 2032 0.3
light-switch CYW30739B2-P5-EVK-01 FLASH 612649 614705 2056 0.3
CYW30739B2-P5-EVK-02 FLASH 632277 634333 2056 0.3
CYW30739B2-P5-EVK-03 FLASH 632277 634333 2056 0.3
lock CYW30739B2-P5-EVK-01 FLASH 631761 633785 2024 0.3
CYW30739B2-P5-EVK-02 FLASH 651477 653501 2024 0.3
CYW30739B2-P5-EVK-03 FLASH 651477 653501 2024 0.3
thermostat CYW30739B2-P5-EVK-01 FLASH 607269 609309 2040 0.3
CYW30739B2-P5-EVK-02 FLASH 627121 629161 2040 0.3
CYW30739B2-P5-EVK-03 FLASH 627121 629161 2040 0.3
efr32 lock-app BRD4338a FLASH 739628 742116 2488 0.3
nxp contact k32w0+release FLASH 579860 581812 1952 0.3
k32w1+release FLASH 593664 595624 1960 0.3
light k32w1+release FLASH 677344 679288 1944 0.3
qpg lighting-app qpg6105+debug FLASH 658364 660316 1952 0.3
lock-app qpg6105+debug FLASH 616288 618232 1944 0.3
stm32 light STM32WB5MM-DK FLASH 479880 481888 2008 0.4
tizen all-clusters-app arm unknown 4844 5044 200 4.1
FLASH 1723480 1775110 51630 3.0
RAM 89588 89872 284 0.3
Full report (63 builds for bl602, bl702, bl702l, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 60d6c6b 21a2954 change % change
bl602 lighting-app bl602 FLASH 1276800 1279444 2644 0.2
RAM 95816 95824 8 0.0
bl602+mfd FLASH 1290910 1293554 2644 0.2
RAM 95952 95960 8 0.0
bl602+rpc FLASH 1316012 1318664 2652 0.2
RAM 104240 104248 8 0.0
bl702 lighting-app bl702 FLASH 943320 945542 2222 0.2
RAM 15153 15153 0 0.0
bl702+mfd FLASH 945464 947686 2222 0.2
RAM 15305 15305 0 0.0
bl702+rpc FLASH 1038384 1040606 2222 0.2
RAM 24173 24173 0 0.0
bl706-eth FLASH 646136 648370 2234 0.3
RAM 25241 25241 0 0.0
bl706-wifi FLASH 893550 896168 2618 0.3
RAM 14477 14477 0 0.0
bl702l lighting-app bl702l FLASH 959724 961946 2222 0.2
RAM 16812 16812 0 0.0
bl702l+mfd FLASH 962346 964568 2222 0.2
RAM 16964 16964 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 676465 678489 2024 0.3
RAM 78468 78476 8 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 696325 698349 2024 0.3
RAM 81108 81116 8 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 696325 698349 2024 0.3
RAM 81108 81116 8 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 653253 655285 2032 0.3
RAM 73536 73544 8 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 612649 614705 2056 0.3
RAM 71444 71452 8 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 632277 634333 2056 0.3
RAM 73988 73996 8 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 632277 634333 2056 0.3
RAM 73988 73996 8 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 631761 633785 2024 0.3
RAM 74492 74500 8 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 651477 653501 2024 0.3
RAM 77036 77044 8 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 651477 653501 2024 0.3
RAM 77036 77044 8 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 607269 609309 2040 0.3
RAM 68580 68588 8 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 627121 629161 2040 0.3
RAM 71220 71228 8 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 627121 629161 2040 0.3
RAM 71220 71228 8 0.0
efr32 lighting-app BRD4187C FLASH 931980 933852 1872 0.2
RAM 135032 135044 12 0.0
lock-app BRD4338a FLASH 739628 742116 2488 0.3
RAM 197132 197148 16 0.0
window-app BRD4187C FLASH 1014840 1017320 2480 0.2
RAM 126972 126984 12 0.0
esp32 all-clusters-app c3devkit DRAM 94144 94144 0 0.0
FLASH 1539044 1539044 0 0.0
IRAM 82538 82538 0 0.0
m5stack DRAM 115088 115088 0 0.0
FLASH 1549398 1549398 0 0.0
IRAM 117039 117039 0 0.0
linux chip-tool-ipv6only arm64 unknown 20384 20384 0 0.0
FLASH 11337428 11337428 0 0.0
RAM 612376 612376 0 0.0
thermostat-no-ble arm64 unknown 9320 9320 0 0.0
FLASH 4331348 4331348 0 0.0
RAM 242288 242288 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 914672 914672 0 0.0
RAM 142256 142256 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 886320 886320 0 0.0
RAM 140395 140395 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 846028 846028 0 0.0
RAM 141074 141074 0 0.0
nxp contact k32w0+release FLASH 579860 581812 1952 0.3
RAM 70684 70696 12 0.0
k32w1+release FLASH 593664 595624 1960 0.3
RAM 62720 62728 8 0.0
light k32w0+release FLASH 615544 615544 0 0.0
RAM 70148 70148 0 0.0
k32w1+release FLASH 677344 679288 1944 0.3
RAM 47864 47872 8 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646524 1649028 2504 0.2
RAM 210952 210960 8 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1550140 1552636 2496 0.2
RAM 207664 207672 8 0.0
light cy8ckit_062s2_43012 FLASH 1465972 1468460 2488 0.2
RAM 200656 200664 8 0.0
lock cy8ckit_062s2_43012 FLASH 1462492 1464988 2496 0.2
RAM 225008 225016 8 0.0
qpg lighting-app qpg6105+debug FLASH 658364 660316 1952 0.3
RAM 105200 105212 12 0.0
lock-app qpg6105+debug FLASH 616288 618232 1944 0.3
RAM 99660 99672 12 0.0
stm32 light STM32WB5MM-DK FLASH 479880 481888 2008 0.4
RAM 144660 144668 8 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 621214 621214 0 0.0
RAM 50948 50948 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 686978 686978 0 0.0
RAM 149592 149592 0 0.0
all-clusters-minimal-app tlsr9528a FLASH 779394 779394 0 0.0
RAM 110752 110752 0 0.0
bridge-app tlsr9258a FLASH 680288 680288 0 0.0
RAM 91604 91604 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 620978 620978 0 0.0
RAM 50900 50900 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 707000 707000 0 0.0
RAM 74240 74240 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 623392 623392 0 0.0
RAM 145484 145484 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 809522 809522 0 0.0
RAM 99408 99408 0 0.0
lock-app-dfu tlsr9528a FLASH 654832 654832 0 0.0
RAM 66960 66960 0 0.0
ota-requestor-app tlsr9258a FLASH 696264 696264 0 0.0
RAM 91196 91196 0 0.0
pump-app-usb tlsr9518adk80d FLASH 632580 632580 0 0.0
RAM 55768 55768 0 0.0
pump-controller-app tlsr9518adk80d FLASH 609768 609768 0 0.0
RAM 53012 53012 0 0.0
shell tlsr9518adk80d FLASH 467196 467196 0 0.0
RAM 68668 68668 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 627756 627756 0 0.0
RAM 52620 52620 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651904 651904 0 0.0
RAM 56560 56560 0 0.0
thermostat tlsr9518adk80d FLASH 636500 636500 0 0.0
RAM 53416 53416 0 0.0
window-covering tlsr9118bdk40d FLASH 521912 521912 0 0.0
RAM 98460 98460 0 0.0
tizen all-clusters-app arm unknown 4844 5044 200 4.1
FLASH 1723480 1775110 51630 3.0
RAM 89588 89872 284 0.3
chip-tool-ubsan arm unknown 10284 10284 0 0.0
FLASH 17527250 17527250 0 0.0
RAM 7609448 7609448 0 0.0

This allows it to be uesd from args.gni (i.e. in the context of a default_args
scope, where variables like current_os are not defined) as well as within a
build / toolchain context.
Copy link

github-actions bot commented Sep 10, 2024

PR #34942: Size comparison from f7536b6 to c7371c7

Full report (77 builds for bl602, bl702, bl702l, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section f7536b6 c7371c7 change % change
bl602 lighting-app bl602 FLASH 1278156 1278156 0 0.0
RAM 95832 95832 0 0.0
bl602+mfd FLASH 1292010 1292010 0 0.0
RAM 95968 95968 0 0.0
bl602+rpc FLASH 1317120 1317120 0 0.0
RAM 104256 104256 0 0.0
bl702 lighting-app bl702 FLASH 943632 943632 0 0.0
RAM 15153 15153 0 0.0
bl702+mfd FLASH 946032 946032 0 0.0
RAM 15305 15305 0 0.0
bl702+rpc FLASH 1038952 1038952 0 0.0
RAM 24173 24173 0 0.0
bl706-eth FLASH 646056 646056 0 0.0
RAM 25241 25241 0 0.0
bl706-wifi FLASH 894048 894048 0 0.0
RAM 14477 14477 0 0.0
bl702l lighting-app bl702l FLASH 960292 960292 0 0.0
RAM 16812 16812 0 0.0
bl702l+mfd FLASH 962914 962914 0 0.0
RAM 16964 16964 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 676881 676881 0 0.0
RAM 78484 78484 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 696733 696733 0 0.0
RAM 81124 81124 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 696733 696733 0 0.0
RAM 81124 81124 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 653661 653661 0 0.0
RAM 73552 73552 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 613057 613057 0 0.0
RAM 71460 71460 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 632693 632693 0 0.0
RAM 74004 74004 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 632693 632693 0 0.0
RAM 74004 74004 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 632169 632169 0 0.0
RAM 74508 74508 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 651893 651893 0 0.0
RAM 77052 77052 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 651893 651893 0 0.0
RAM 77052 77052 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 607681 607681 0 0.0
RAM 68596 68596 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 627533 627533 0 0.0
RAM 71236 71236 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 627533 627533 0 0.0
RAM 71236 71236 0 0.0
efr32 lighting-app BRD4187C FLASH 932400 932392 -8 -0.0
RAM 135060 135060 0 0.0
lock-app BRD4338a FLASH 740092 740092 0 0.0
RAM 197156 197156 0 0.0
window-app BRD4187C FLASH 1015396 1015396 0 0.0
RAM 127000 127000 0 0.0
esp32 all-clusters-app c3devkit DRAM 94160 94160 0 0.0
FLASH 1539512 1539512 0 0.0
IRAM 82538 82538 0 0.0
m5stack DRAM 115104 115104 0 0.0
FLASH 1549830 1549830 0 0.0
IRAM 117039 117039 0 0.0
linux air-purifier-app debug unknown 4688 4688 0 0.0
FLASH 2771087 2771087 0 0.0
RAM 128928 128928 0 0.0
all-clusters-app debug unknown 5456 5456 0 0.0
FLASH 6082720 6082720 0 0.0
RAM 514432 514432 0 0.0
all-clusters-minimal-app debug unknown 5352 5352 0 0.0
FLASH 5406670 5406670 0 0.0
RAM 240784 240784 0 0.0
bridge-app debug unknown 5336 5336 0 0.0
FLASH 4740144 4740144 0 0.0
RAM 217824 217824 0 0.0
chip-tool debug unknown 5888 5888 0 0.0
FLASH 12671984 12671984 0 0.0
RAM 562250 562250 0 0.0
chip-tool-ipv6only arm64 unknown 20384 20384 0 0.0
FLASH 11337428 11337428 0 0.0
RAM 612376 612376 0 0.0
fabric-admin debug unknown 5720 5720 0 0.0
FLASH 10978929 10978929 0 0.0
RAM 561306 561306 0 0.0
fabric-bridge-app debug unknown 4568 4568 0 0.0
FLASH 4562880 4562880 0 0.0
RAM 204440 204440 0 0.0
lighting-app debug+rpc+ui unknown 5984 5984 0 0.0
FLASH 5676465 5676465 0 0.0
RAM 228112 228112 0 0.0
lock-app debug unknown 5272 5272 0 0.0
FLASH 4789428 4789428 0 0.0
RAM 203912 203912 0 0.0
ota-provider-app debug unknown 4648 4648 0 0.0
FLASH 4422812 4422812 0 0.0
RAM 197616 197616 0 0.0
ota-requestor-app debug unknown 4584 4584 0 0.0
FLASH 4561356 4561356 0 0.0
RAM 202184 202184 0 0.0
shell debug unknown 4216 4216 0 0.0
FLASH 3107773 3107773 0 0.0
RAM 159624 159624 0 0.0
thermostat-no-ble arm64 unknown 9336 9336 0 0.0
FLASH 4333156 4333156 0 0.0
RAM 242400 242400 0 0.0
tv-app debug unknown 5552 5552 0 0.0
FLASH 6022229 6022229 0 0.0
RAM 587104 587104 0 0.0
tv-casting-app debug unknown 5208 5208 0 0.0
FLASH 10879421 10879421 0 0.0
RAM 650224 650224 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 915104 915104 0 0.0
RAM 142272 142272 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 886472 886472 0 0.0
RAM 140411 140411 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 846460 846460 0 0.0
RAM 141090 141090 0 0.0
nxp contact k32w0+release FLASH 580148 580148 0 0.0
RAM 70704 70704 0 0.0
k32w1+release FLASH 593952 593952 0 0.0
RAM 62736 62736 0 0.0
light k32w0+release FLASH 615928 615928 0 0.0
RAM 70168 70168 0 0.0
k32w1+release FLASH 677728 677728 0 0.0
RAM 47880 47880 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646988 1646988 0 0.0
RAM 210968 210968 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1550612 1550612 0 0.0
RAM 207680 207680 0 0.0
light cy8ckit_062s2_43012 FLASH 1466436 1466436 0 0.0
RAM 200672 200672 0 0.0
lock cy8ckit_062s2_43012 FLASH 1462956 1462956 0 0.0
RAM 225024 225024 0 0.0
qpg lighting-app qpg6105+debug FLASH 658748 658748 0 0.0
RAM 105220 105220 0 0.0
lock-app qpg6105+debug FLASH 616688 616688 0 0.0
RAM 99680 99680 0 0.0
stm32 light STM32WB5MM-DK FLASH 480264 480264 0 0.0
RAM 144676 144676 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 621630 621630 0 0.0
RAM 50964 50964 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 687326 687326 0 0.0
RAM 149608 149608 0 0.0
all-clusters-minimal-app tlsr9528a FLASH 779820 779820 0 0.0
RAM 110768 110768 0 0.0
bridge-app tlsr9258a FLASH 680714 680714 0 0.0
RAM 91620 91620 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 621394 621394 0 0.0
RAM 50916 50916 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 707426 707426 0 0.0
RAM 74256 74256 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 623742 623742 0 0.0
RAM 145500 145500 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 809948 809948 0 0.0
RAM 99424 99424 0 0.0
lock-app-dfu tlsr9528a FLASH 655258 655258 0 0.0
RAM 66976 66976 0 0.0
ota-requestor-app tlsr9258a FLASH 696690 696690 0 0.0
RAM 91212 91212 0 0.0
pump-app-usb tlsr9518adk80d FLASH 633006 633006 0 0.0
RAM 55784 55784 0 0.0
pump-controller-app tlsr9518adk80d FLASH 610194 610194 0 0.0
RAM 53028 53028 0 0.0
shell tlsr9518adk80d FLASH 467196 467196 0 0.0
RAM 68668 68668 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 628172 628172 0 0.0
RAM 52636 52636 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 652330 652330 0 0.0
RAM 56576 56576 0 0.0
thermostat tlsr9518adk80d FLASH 636926 636926 0 0.0
RAM 53432 53432 0 0.0
window-covering tlsr9118bdk40d FLASH 522258 522258 0 0.0
RAM 98476 98476 0 0.0
tizen all-clusters-app arm unknown 4852 4852 0 0.0
FLASH 1724808 1724808 0 0.0
RAM 89608 89608 0 0.0
chip-tool-ubsan arm unknown 10284 10284 0 0.0
FLASH 17527250 17527250 0 0.0
RAM 7609448 7609448 0 0.0

@mergify mergify bot merged commit d1279a8 into project-chip:master Sep 10, 2024
67 checks passed
@ksperling-apple ksperling-apple deleted the enabled-recommended branch September 10, 2024 18:43
yyzhong-g pushed a commit to yyzhong-g/connectedhomeip that referenced this pull request Dec 12, 2024
* Add matter_enable_recommended meta-setting

This setting defaults to true which leaves current behavior unchanged.

However it can be set to false to achieve a more conservative / minimal set of
defaults, without having to manually disable an ever-increasing set of
features. Consider using this setting as the default value for other settings
that increase code size or add debugging / tracing or similar features that are
not always desired. Especially settings that default to true on Linux and Mac
("because you're probably building for development") should likely use this
option for their default, e.g.

matter_foo = matter_enable_recommended && (current_os == "linux" || current_os == "mac")

* Add more documentation and turn off the setting for minimal CI builds

* Move matter_enable_recommended into /config/recommended.gni

This allows it to be uesd from args.gni (i.e. in the context of a default_args
scope, where variables like current_os are not defined) as well as within a
build / toolchain context.
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.

5 participants