|
1 | | -set(pca10056_BOARD_ALIAS nrf52840dk/nrf52840) |
2 | | -set(adafruit_feather_nrf52840_zephyr_BOARD_ALIAS adafruit_feather_nrf52840/nrf52840/uf2) |
3 | | -set(renesas_ek_ra6m5_BOARD_ALIAS ek_ra6m5) |
4 | | -set(renesas_ek_ra8d1_BOARD_ALIAS ek_ra8d1) |
5 | | -set(renesas_da14695_dk_usb_BOARD_ALIAS da14695_dk_usb) |
6 | | -set(native_native_sim_BOARD_ALIAS native_sim) |
7 | | -set(native_nrf5340bsim_BOARD_ALIAS nrf5340bsim/nrf5340/cpuapp) |
8 | | -set(nordic_nrf54l15dk_BOARD_ALIAS nrf54l15dk/nrf54l15/cpuapp) |
9 | | -set(nordic_nrf54h20dk_BOARD_ALIAS nrf54h20dk/nrf54h20/cpuapp) |
10 | | -set(nordic_nrf5340dk_BOARD_ALIAS nrf5340dk/nrf5340/cpuapp) |
11 | | -set(nordic_nrf7002dk_BOARD_ALIAS nrf7002dk/nrf5340/cpuapp) |
12 | | -set(nxp_frdm_mcxn947_BOARD_ALIAS frdm_mcxn947/mcxn947/cpu0) |
13 | | -set(nxp_frdm_rw612_BOARD_ALIAS frdm_rw612) |
14 | | -set(nxp_mimxrt1170_evk_BOARD_ALIAS mimxrt1170_evk@A/mimxrt1176/cm7) |
15 | | -set(st_stm32h7b3i_dk_BOARD_ALIAS stm32h7b3i_dk) |
16 | | -set(st_stm32wba65i_dk1_BOARD_ALIAS stm32wba65i_dk1) |
17 | | -set(st_nucleo_u575zi_q_BOARD_ALIAS nucleo_u575zi_q/stm32u575xx) |
18 | | -set(st_nucleo_n657x0_q_BOARD_ALIAS nucleo_n657x0_q/stm32n657xx) |
| 1 | +# Workaround for Zephyr alias handling with BOARD_QUALIFIERS in newer Zephyr. |
| 2 | +# |
| 3 | +# Instead of using <alias>_BOARD_ALIAS variables, translate BOARD directly so |
| 4 | +# we don't end up with a spurious trailing '/' in BOARD_QUALIFIERS. |
| 5 | +macro(cp_board_alias alias target) |
| 6 | + if(BOARD STREQUAL "${alias}") |
| 7 | + if(NOT "${target}" MATCHES "^([^@/]+)(@[^@/]+)?(/([^@]+))?$") |
| 8 | + message(FATAL_ERROR "Invalid alias target '${target}'") |
| 9 | + endif() |
| 10 | + |
| 11 | + set(BOARD_ALIAS "${alias}" CACHE STRING "Board alias, provided by user") |
| 12 | + set(BOARD "${CMAKE_MATCH_1}") |
| 13 | + |
| 14 | + if(CMAKE_MATCH_2) |
| 15 | + string(REPLACE "@" "" _rev "${CMAKE_MATCH_2}") |
| 16 | + set(BOARD_REVISION "${_rev}") |
| 17 | + else() |
| 18 | + unset(BOARD_REVISION) |
| 19 | + endif() |
| 20 | + |
| 21 | + if(CMAKE_MATCH_4) |
| 22 | + set(BOARD_QUALIFIERS "${CMAKE_MATCH_4}") |
| 23 | + else() |
| 24 | + unset(BOARD_QUALIFIERS) |
| 25 | + endif() |
| 26 | + endif() |
| 27 | +endmacro() |
| 28 | + |
| 29 | +cp_board_alias(pca10056 nrf52840dk/nrf52840) |
| 30 | +cp_board_alias(adafruit_feather_nrf52840_zephyr adafruit_feather_nrf52840/nrf52840/uf2) |
| 31 | +cp_board_alias(renesas_ek_ra6m5 ek_ra6m5) |
| 32 | +cp_board_alias(renesas_ek_ra8d1 ek_ra8d1) |
| 33 | +cp_board_alias(renesas_da14695_dk_usb da14695_dk_usb) |
| 34 | +cp_board_alias(native_native_sim native_sim/native) |
| 35 | +cp_board_alias(native_nrf5340bsim nrf5340bsim/nrf5340/cpuapp) |
| 36 | +cp_board_alias(nordic_nrf54l15dk nrf54l15dk/nrf54l15/cpuapp) |
| 37 | +cp_board_alias(nordic_nrf54h20dk nrf54h20dk/nrf54h20/cpuapp) |
| 38 | +cp_board_alias(nordic_nrf5340dk nrf5340dk/nrf5340/cpuapp) |
| 39 | +cp_board_alias(nordic_nrf7002dk nrf7002dk/nrf5340/cpuapp) |
| 40 | +cp_board_alias(nxp_frdm_mcxn947 frdm_mcxn947/mcxn947/cpu0) |
| 41 | +cp_board_alias(nxp_frdm_rw612 frdm_rw612) |
| 42 | +cp_board_alias(nxp_mimxrt1170_evk mimxrt1170_evk@A/mimxrt1176/cm7) |
| 43 | +cp_board_alias(st_stm32h7b3i_dk stm32h7b3i_dk) |
| 44 | +cp_board_alias(st_stm32wba65i_dk1 stm32wba65i_dk1) |
| 45 | +cp_board_alias(st_nucleo_u575zi_q nucleo_u575zi_q/stm32u575xx) |
| 46 | +cp_board_alias(st_nucleo_n657x0_q nucleo_n657x0_q/stm32n657xx) |
0 commit comments