zephyr/cmake/modules
Grzegorz Swiderski 105a2bae84 cmake: modules: boards: Fix board deprecation for HWMv2
Deprecating boards comes with similar challenges as with board aliases,
since BOARD_DEPRECATED is also set after parsing BOARD as user input.

With this patch, a deprecated board can be properly translated to a
board with identifiers. This opens up the possibility of recording all
legacy board names in `boards/deprecated.cmake`, such as:

   set(mps2_an521_remote_DEPRECATED mps2/an521/cpu1)

Unlike with aliases, though, there are additional restrictions for
building with BOARD=<deprecated>, which only makes this feature suitable
for deprecating v1 boards:

 * BOARD=<deprecated>/<identifier> is never allowed.
 * BOARD=<deprecated>@<revision> is not allowed if the old board already
   corresponds to a new board revision:

   set(<deprecated>_DEPRECATED <new-board>@<new-revision>)

Future enhancements will be needed for deprecating v2 boards.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 15:50:05 +01:00
..
FindBabbleSim.cmake
FindDeprecated.cmake
FindDtc.cmake
FindGnuLd.cmake
FindHostTools.cmake
FindLlvmLld.cmake
FindScaTools.cmake
FindTargetTools.cmake
FindZephyr-sdk.cmake
Findarmclang.cmake
FindoneApi.cmake
arch_v1.cmake
arch_v2.cmake
basic_settings.cmake
boards.cmake
ccache.cmake
configuration_files.cmake
doc.cmake
dts.cmake
extensions.cmake
generated_file_directories.cmake
hwm_v2.cmake
kconfig.cmake
kernel.cmake
pre_dt.cmake
python.cmake
root.cmake
shields.cmake
snippets.cmake
soc_v1.cmake
soc_v2.cmake
unittest.cmake
user_cache.cmake
version.cmake
west.cmake
zephyr_default.cmake
zephyr_module.cmake