Steps to reproduce:
1. Clone sdk-nrf @ 2.3.0
2. Attempt to build `samples/net/mqtt`:
$ west build -p auto -b thingy91_nrf9160_ns . ... -- Found partition manager static configuration: /Users/hayden/development/PlayerData/edge-v2/nrf/boards/arm/thingy91_nrf9160/thingy91_pm_static.yml Partition 'mcuboot' is not included in the dynamic resolving since it is statically defined. Partition 'mcuboot_pad' is not included in the dynamic resolving since it is statically defined. Partition 'mcuboot_primary' is not included in the dynamic resolving since it is statically defined. Partition 'mcuboot_primary_app' is not included in the dynamic resolving since it is statically defined. Partition 'mcuboot_secondary' is not included in the dynamic resolving since it is statically defined. Partition 'nonsecure_storage' is not included in the dynamic resolving since it is statically defined. Partition 'tfm_secure' is not included in the dynamic resolving since it is statically defined. Partition 'tfm_nonsecure' is not included in the dynamic resolving since it is statically defined. Partition 'tfm' is not included in the dynamic resolving since it is statically defined. Dropping partition 'nrf_modem_lib_trace' since its size is 0. Traceback (most recent call last): File "/Users/hayden/development/PlayerData/edge-v2/nrf/scripts/partition_manager.py", line 1978, in <module> main() File "/Users/hayden/development/PlayerData/edge-v2/nrf/scripts/partition_manager.py", line 1028, in main solution.update(solve_region(pm_config, region, region_config, File "/Users/hayden/development/PlayerData/edge-v2/nrf/scripts/partition_manager.py", line 971, in solve_region get_region_config(partitions, region_config, static_partitions, system_reqs=pm_config) File "/Users/hayden/development/PlayerData/edge-v2/nrf/scripts/partition_manager.py", line 758, in get_region_config solve_complex_region(pm_config, start, size, placement_strategy, region_name, device, static_conf, dp, system_reqs) File "/Users/hayden/development/PlayerData/edge-v2/nrf/scripts/partition_manager.py", line 866, in solve_complex_region set_addresses_and_align(pm_config, sub_partitions, solution, free_size, dp, start=start, system_reqs=system_reqs) File "/Users/hayden/development/PlayerData/edge-v2/nrf/scripts/partition_manager.py", line 417, in set_addresses_and_align reqs[dp]['size'] = dynamic_partitions_size(reqs, size, dp) File "/Users/hayden/development/PlayerData/edge-v2/nrf/scripts/partition_manager.py", line 388, in dynamic_partitions_size size = total_size - sum([req['size'] for name, req in reqs.items() if 'size' in req.keys() and name != dp]) TypeError: unsupported operand type(s) for +: 'int' and 'str' CMake Error at /Users/hayden/development/PlayerData/edge-v2/nrf/cmake/partition_manager.cmake:304 (message): Partition Manager failed, aborting. Command: /Users/hayden/development/PlayerData/edge-v2/env/bin/python3.9;/Users/hayden/development/PlayerData/edge-v2/nrf/scripts/partition_manager.py;--input-files;/Users/hayden/development/PlayerData/edge-v2/nrf/samples/net/mqtt/build/mcuboot/zephyr/include/generated/pm.yml;/Users/hayden/development/PlayerData/edge-v2/nrf/samples/net/mqtt/build/zephyr/include/generated/pm.yml;/Users/hayden/development/PlayerData/edge-v2/nrf/samples/net/mqtt/build/modules/nrf/subsys/partition_manager/pm.yml.libmodem;/Users/hayden/development/PlayerData/edge-v2/nrf/samples/net/mqtt/build/modules/nrf/subsys/partition_manager/pm.yml.tfm;/Users/hayden/development/PlayerData/edge-v2/nrf/samples/net/mqtt/build/modules/nrf/subsys/partition_manager/pm.yml.trustzone;/Users/hayden/development/PlayerData/edge-v2/nrf/samples/net/mqtt/build/modules/nrf/subsys/partition_manager/pm.yml.mcuboot;--regions;sram_primary;otp;flash_primary;--output-partitions;/Users/hayden/development/PlayerData/edge-v2/nrf/samples/net/mqtt/build/partitions.yml;--output-regions;/Users/hayden/development/PlayerData/edge-v2/nrf/samples/net/mqtt/build/regions.yml;--static-config;/Users/hayden/development/PlayerData/edge-v2/nrf/boards/arm/thingy91_nrf9160/thingy91_pm_static.yml;--sram_primary-size;0x40000;--sram_primary-base-address;0x20000000;--sram_primary-placement-strategy;complex;--sram_primary-dynamic-partition;sram_primary;--otp-size;756;--otp-base-address;0xff8108;--otp-placement-strategy;start_to_end;--flash_primary-size;0x100000;--flash_primary-base-address;0x0;--flash_primary-placement-strategy;complex;--flash_primary-device;flash_controller;--flash_primary-default-driver-kconfig;CONFIG_SOC_FLASH_NRF Call Stack (most recent call first): /Users/hayden/development/PlayerData/edge-v2/zephyr/cmake/modules/kernel.cmake:246 (include) /Users/hayden/development/PlayerData/edge-v2/zephyr/cmake/modules/zephyr_default.cmake:117 (include) /Users/hayden/development/PlayerData/edge-v2/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include) /Users/hayden/development/PlayerData/edge-v2/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate) CMakeLists.txt:9 (find_package)
Throwing a debugger in, it's not wrong:
[1256, 8320, 8192, 'CONFIG_PM_PARTITION_SIZE_TFM_SRAM']
Looks like config variables aren't being expanded before running the script?