zephyr/cmake/modules
Torsten Rasmussen 4e3a01df41 cmake: support shortened file names for single SoC boards
This allow developers to create board files without the SoC name when
the board only defines a single SoC.

This means that a board, such as rpi_pico, which defines only a single
SoC, rp2040, and one variant, now allows the following file names:
Board target: rpi_pico/rp2040
- dts: rpi_pico_rp2040.dts, short: rpi_pico.dts
- defconfig: rpi_pico_rp2040_defconfig, short: rpi_pico_defconfig
- overlay: rpi_pico_rp2040.overlay, short: rpi_pico.overlay
- conf:  rpi_pico_rp2040.conf, short: rpi_pico.conf

Board target: rpi_pico/rp2040/w
- dts: rpi_pico_rp2040_w.dts, short: rpi_pico_w.dts
- defconfig: rpi_pico_rp2040_w_defconfig, short: rpi_pico_w_defconfig
- overlay: rpi_pico_rp2040_w.overlay, short: rpi_pico_w.overlay
- conf:  rpi_pico_rp2040_w.conf, short: rpi_pico_w.conf

A multi CPU cluster board, nrf5340dk:
Board target: nrf5340dk/nrf5340/cpunet
- dts: nrf5340dk_nrf5340_cpunet.dts, short: nrf5340dk_cpunet.dts
- defconfig: nrf5340dk_nrf5340_cpunet_defconfig,
             short: nrf5340dk_cpunet_defconfig
- overlay: nrf5340dk_nrf5340_cpunet.overlay,
           short: nrf5340dk_cpunet.overlay
- conf:  nrf5340dk_nrf5340_cpunet.conf, short: nrf5340dk_cpunet.conf

A multi SoC board, nrf5340dk (real: nrf52840, emulated: nrf52811):
Board target: nrf52840dk/nrf52840
- dts: nrf52840dk_nrf52840.dts, short: Not possible
- defconfig: nrf52840dk_nrf52840_defconfig, short: Not possible
- overlay: nrf52840dk_nrf52840.overlay, short: Not possible
- conf:  nrf52840dk_nrf52840.conf, short: Not possible

If two conflicting files are found, for example both
rpi_pico_rp2040.overlay and rpi_pico.overlay, then an error is raised.

If short form is detected for a board target with multiple SoCs, for
example nrf52840dk_nrf52840.overlay and nrf52840dk.overlay, then an
error is raised.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-04-09 23:35:54 +02:00
..
Platform cmake: conditionally enable shared library support 2024-04-08 09:04:32 +02:00
arch_v1.cmake hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
arch_v2.cmake hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
basic_settings.cmake cmake: extend zephyr_get() to handle build configurations from sysbuild 2022-09-02 15:16:50 +02:00
boards.cmake cmake: support shortened file names for single SoC boards 2024-04-09 23:35:54 +02:00
ccache.cmake cmake: Zephyr CMake package and CMake modules 2022-02-22 10:02:39 -08:00
configuration_files.cmake cmake: support shortened file names for single SoC boards 2024-04-09 23:35:54 +02:00
doc.cmake cmake: doc: created a doc.cmake CMake module in Zephyr CMake modules dir 2022-02-22 10:02:39 -08:00
dts.cmake cmake: support shortened file names for single SoC boards 2024-04-09 23:35:54 +02:00
extensions.cmake cmake: support shortened file names for single SoC boards 2024-04-09 23:35:54 +02:00
Findarmclang.cmake cmake: armclang version detection 2023-09-13 16:23:30 +02:00
FindBabbleSim.cmake nrf5_bsim cmake: Check that the simulator version is new enough 2024-03-19 21:18:13 -05:00
FindDeprecated.cmake hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
FindDtc.cmake cmake: cleanup search for devicetree compiler, dtc 2022-09-01 15:59:43 +02:00
FindGnuLd.cmake cmake: modules/FindGnuLd: cache variable GNULD_VERSION_STRING 2023-09-01 09:02:38 -04:00
FindHostTools.cmake hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
FindLlvmLld.cmake cmake: Fix FindLlvmLld usage of unimported package 2023-06-26 12:40:03 +00:00
FindoneApi.cmake cmake: Fix FindLlvmLld usage of unimported package 2023-06-26 12:40:03 +00:00
FindScaTools.cmake cmake: implement build infrastructure for supporting SCA tools. 2023-01-27 20:28:58 +09:00
FindTargetTools.cmake cmake: conditionally enable shared library support 2024-04-08 09:04:32 +02:00
FindZephyr-sdk.cmake ARC: MWDT: rework GNU helper tools usage 2023-06-17 07:44:31 -04:00
generated_file_directories.cmake cmake: modules: generated_file_directories: fix paths 2024-01-30 12:36:11 +01:00
hwm_v2.cmake hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
kconfig.cmake scripts: remove boards_legacy sub-folder from list_boards.py 2024-03-22 11:51:58 +01:00
kernel.cmake cmake: warn the user that the toolchain cache hides errors 2023-09-22 13:42:21 +02:00
pre_dt.cmake hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
python.cmake cmake: drop ERROR_QUIET in python.cmake 2023-12-13 13:56:59 +01:00
root.cmake cmake: boards: Fix issue with relative paths 2023-06-15 05:10:42 -04:00
shields.cmake cmake: modules: shields: Process shields in order 2024-01-09 10:03:15 +01:00
snippets.cmake cmake: support snippets scope for zephyr_get() 2023-05-25 13:31:53 +00:00
soc_v1.cmake hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
soc_v2.cmake cmake: add CMake configure dependency to board.yml 2024-03-22 13:02:00 +00:00
unittest.cmake unittest: update unittest to hwmv2 2024-03-22 11:51:58 +01:00
user_cache.cmake cmake: Fix USER_CACHE_DIR path generation 2023-05-10 15:27:54 +02:00
version.cmake version: cmake: kconfig: introduce extra <type>_VERSION_<x>_STRING 2024-02-01 10:28:43 +00:00
west.cmake cmake: cleanup old west version support 2023-08-24 10:47:00 +02:00
zephyr_default.cmake hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
zephyr_module.cmake cmake: Introduce ZEPHYR_CURRENT_MODULE_NAME 2024-01-24 10:54:17 +01:00