Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 11 additions & 10 deletions Makefile.include
Original file line number Diff line number Diff line change
Expand Up @@ -996,20 +996,21 @@ ifeq (, $(filter help generate-Makefile.ci, $(MAKECMDGOALS)))
EXPECT_ERRORS := 1
endif

# If there is a whitelist, then test if the board is whitelisted.
ifneq (, $(BOARD_WHITELIST))
ifeq (, $(filter $(BOARD_WHITELIST), $(BOARD)))
$(shell $(COLOR_ECHO) "$(COLOR_RED)The selected BOARD=$(BOARD) is not whitelisted:$(COLOR_RESET) $(BOARD_WHITELIST)" 1>&2)
# If there is a list of supported boards, then test if the board is supported.
ifneq (, $(BOARDS_SUPPORTED))
ifeq (, $(filter $(BOARDS_SUPPORTED), $(BOARD)))
$(shell $(COLOR_ECHO) "$(COLOR_RED)The selected BOARD=$(BOARD) is not listed in BOARDS_SUPPORTED$(COLOR_RESET)." 1>&2)
$(shell $(COLOR_ECHO) "$(COLOR_YELLOW)When the list BOARDS_SUPPORTED is not empty, only boards explicitly listed there are supported.$(COLOR_RESET)" 1>&2)
$(shell $(COLOR_ECHO) "BOARDS_SUPPORTED = $(BOARDS_SUPPORTED)" 1>&2)
EXPECT_ERRORS := 1
endif
endif

# If there is a blacklist, then test if the board is blacklisted.
ifneq (, $(BOARD_BLACKLIST))
ifneq (, $(filter $(BOARD_BLACKLIST), $(BOARD)))
$(shell $(COLOR_ECHO) "$(COLOR_RED)The selected BOARD=$(BOARD) is blacklisted:$(COLOR_RESET) $(BOARD_BLACKLIST)" 1>&2)
EXPECT_ERRORS := 1
endif
# If there is a list of unsupported boards, then test if the board is unsupported.
ifneq (, $(filter $(BOARDS_UNSUPPORTED), $(BOARD)))
$(shell $(COLOR_ECHO) "$(COLOR_RED)The selected BOARD=$(BOARD) is listed in BOARDS_UNSUPPORTED.$(COLOR_RESET)" 1>&2)
$(shell $(COLOR_ECHO) "BOARDS_UNSUPPORTED = $(BOARDS_UNSUPPORTED)" 1>&2)
EXPECT_ERRORS := 1
endif

# test if toolchain is supported.
Expand Down
10 changes: 5 additions & 5 deletions doc/guides/advanced_tutorials/creating_application.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -64,14 +64,14 @@ include $(RIOTBASE)/Makefile.include

Sometimes it is necessary to exclude boards because they don't provide a
required functionality or don't have sufficient memory. RIOT's build system
looks for the macros `BOARD_BLACKLIST`, `BOARD_WHITELIST`, and
looks for the macros `BOARDS_UNSUPPORTED`, `BOARDS_SUPPORTED`, and
`BOARD_INSUFFICIENT_MEMORY`. Any board name that is not included in
`BOARD_WHITELIST` will issue a message that one has to expect errors if they
`BOARDS_SUPPORTED` will issue a message that one has to expect errors if they
build the application for the board referred by that name. The list can also be
used by a CI system to not build the application for this board at all. A board
that is included in `BOARD_BLACKLIST` will show the same behavior. The build
system evaluates `BOARD_WHITELIST` first and then `BOARD_BLACKLIST`. The
`BOARD_INSUFFICIENT_MEMORY` macro is similar to `BOARD_BLACKLIST` but will
that is included in `BOARDS_UNSUPPORTED` will show the same behavior. The build
system evaluates `BOARDS_SUPPORTED` first and then `BOARDS_UNSUPPORTED`. The
`BOARD_INSUFFICIENT_MEMORY` macro is similar to `BOARDS_UNSUPPORTED` but will
build in any case. A CI system can use the information provided by the
`BOARD_INSUFFICIENT_MEMORY` macro to skip the linking step in the build
process, since some linkers will issue an error if the code won't fit the
Expand Down
2 changes: 1 addition & 1 deletion examples/advanced/twr_aloha/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ USEMODULE += event_periodic
USEMODULE += test_utils_result_output

# Collision between defines of Silabs SDK and mynewt-core
BOARD_BLACKLIST := xg23-pk6068a
BOARDS_UNSUPPORTED := xg23-pk6068a

# All uwb-core applications need to enable `-fms-extensions`
CFLAGS += -fms-extensions
Expand Down
2 changes: 1 addition & 1 deletion examples/lang_support/official/rust-gcoap/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
APPLICATION = rust_gcoap

# TODO: Fix bug in docker image
BOARD_BLACKLIST := native32 native64 native
BOARDS_UNSUPPORTED := native32 native64 native

# The name of crate (as per Cargo.toml package name, but with '-' replaced with '_')
#
Expand Down
2 changes: 1 addition & 1 deletion examples/networking/misc/ccn-lite-relay/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ APPLICATION = ccn-lite-relay
# If no BOARD is found in the environment, use this default:
BOARD ?= native

BOARD_WHITELIST := iotlab-m3 msba2 mulle native32 native64 nrf52dk nrf52840dk \
BOARDS_SUPPORTED := iotlab-m3 msba2 mulle native32 native64 nrf52dk nrf52840dk \
pba-d-01-kw2x samr21-xpro


Expand Down
2 changes: 1 addition & 1 deletion examples/networking/misc/openthread/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ APPLICATION = openthread
BOARD ?= samr21-xpro

# These are the boards that OpenThread stack has been tested on
BOARD_WHITELIST := \
BOARDS_SUPPORTED := \
samr21-xpro \
iotlab-m3 \
iotlab-a8-m3 \
Expand Down
8 changes: 4 additions & 4 deletions makefiles/board_alias.inc.mk
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ ifneq (, $(_BOARD_ALIAS_USED))
# use real board name instead of alias from here on
# we need to use override in case BOARD was specified on the command line
override BOARD := $(_board)
_whitelist := $(BOARD_WHITELIST)
_blacklist := $(BOARD_BLACKLIST)
_boards_supported := $(BOARDS_SUPPORTED)
_boards_unsupported := $(BOARDS_UNSUPPORTED)
_test_blacklist := $(TEST_ON_CI_BLACKLIST)
BOARD_WHITELIST += $(if $(filter $(_alias),$(_whitelist)), $(_board))
BOARD_BLACKLIST += $(if $(filter $(_alias),$(_blacklist)), $(_board))
BOARDS_SUPPORTED += $(if $(filter $(_alias),$(_boards_supported)), $(_board))
BOARDS_UNSUPPORTED += $(if $(filter $(_alias),$(_boards_unsupported)), $(_board))
TEST_ON_CI_BLACKLIST += $(if $(filter $(_alias),$(_test_blacklist)), $(_board))
# inform the user about the alias
ifeq (native,$(_alias))
Expand Down
2 changes: 1 addition & 1 deletion makefiles/dependencies_debug.inc.mk
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
# Only generate the dependencies when the board is not disabled
# This will allow comparing with the output of `info-boards-supported` more easily
dependency-debug:
ifneq (,$(filter-out $(BOARD_BLACKLIST),$(filter $(if $(BOARD_WHITELIST),$(BOARD_WHITELIST), %),$(BOARD))))
ifneq (,$(filter-out $(BOARDS_UNSUPPORTED),$(filter $(if $(BOARDS_SUPPORTED),$(BOARDS_SUPPORTED), %),$(BOARD))))
$(call file_save_dependencies_variables,dependencies_info)
@:
else
Expand Down
4 changes: 2 additions & 2 deletions makefiles/info-global.inc.mk
Original file line number Diff line number Diff line change
Expand Up @@ -92,8 +92,8 @@ define board_unsatisfied_features
endif
endef

BOARDS := $(filter $(if $(BOARD_WHITELIST), $(BOARD_WHITELIST), %), $(BOARDS))
BOARDS := $(filter-out $(BOARD_BLACKLIST), $(BOARDS))
BOARDS := $(filter $(if $(BOARDS_SUPPORTED), $(BOARDS_SUPPORTED), %), $(BOARDS))
BOARDS := $(filter-out $(BOARDS_UNSUPPORTED), $(BOARDS))

BOARDS_WITH_MISSING_FEATURES :=
BOARDS_FEATURES_MISSING :=
Expand Down
2 changes: 1 addition & 1 deletion tests/board_microbit/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ BOARD ?= microbit
include ../Makefile.tests_common

# This test application is for the BBC micro:bit only
BOARD_WHITELIST := microbit microbit-v2 calliope-mini
BOARDS_SUPPORTED := microbit microbit-v2 calliope-mini

# We want to test the microbit support module
USEMODULE += microbit
Expand Down
38 changes: 19 additions & 19 deletions tests/build_system/cortexm_common_ldscript/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,27 @@ include ../Makefile.build_system_common

# Normally all boards using `cortexm_common/ldscripts/cortexm.ld` linkerscript
# Only tested on these ones for the moment
BOARD_WHITELIST += iotlab-a8-m3
BOARD_WHITELIST += iotlab-m3
BOARD_WHITELIST += samr21-xpro
BOARDS_SUPPORTED += iotlab-a8-m3
BOARDS_SUPPORTED += iotlab-m3
BOARDS_SUPPORTED += samr21-xpro
# Normally all boards using `kinetis/ldscripts/kinetis.ld` linkerscript
BOARD_WHITELIST += frdm-kw41z
BOARD_WHITELIST += frdm-k64f
BOARD_WHITELIST += frdm-k22f
BOARD_WHITELIST += mulle
BOARD_WHITELIST += pba-d-01-kw2x
BOARD_WHITELIST += teensy31
BOARDS_SUPPORTED += frdm-kw41z
BOARDS_SUPPORTED += frdm-k64f
BOARDS_SUPPORTED += frdm-k22f
BOARDS_SUPPORTED += mulle
BOARDS_SUPPORTED += pba-d-01-kw2x
BOARDS_SUPPORTED += teensy31
# Boards using a bootloader and ROM_OFFSET by default
BOARD_WHITELIST += arduino-mkr1000
BOARD_WHITELIST += arduino-mkrfox1200
BOARD_WHITELIST += arduino-mkrzero
BOARD_WHITELIST += blackpill-stm32f103c8
BOARD_WHITELIST += blackpill-stm32f103cb
BOARD_WHITELIST += bluepill-stm32f103c8
BOARD_WHITELIST += bluepill-stm32f103cb
BOARD_WHITELIST += feather-m0
BOARD_WHITELIST += opencm904
BOARD_WHITELIST += spark-core
BOARDS_SUPPORTED += arduino-mkr1000
BOARDS_SUPPORTED += arduino-mkrfox1200
BOARDS_SUPPORTED += arduino-mkrzero
BOARDS_SUPPORTED += blackpill-stm32f103c8
BOARDS_SUPPORTED += blackpill-stm32f103cb
BOARDS_SUPPORTED += bluepill-stm32f103c8
BOARDS_SUPPORTED += bluepill-stm32f103cb
BOARDS_SUPPORTED += feather-m0
BOARDS_SUPPORTED += opencm904
BOARDS_SUPPORTED += spark-core

include $(RIOTBASE)/Makefile.include

Expand Down
2 changes: 1 addition & 1 deletion tests/build_system/external_unittests/Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Run this only on native64 / native, as this rather tests the build system
# than the code actually run.

BOARD_WHITELIST := native native64
BOARDS_SUPPORTED := native native64

EXTERNAL_UNITTEST_DIRS := $(CURDIR)/external_tests_dir

Expand Down
2 changes: 1 addition & 1 deletion tests/build_system/utils/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
BOARD_WHITELIST = native32 native64
BOARDS_SUPPORTED = native32 native64

include ../Makefile.build_system_common
include $(RIOTBASE)/Makefile.include
Expand Down
2 changes: 1 addition & 1 deletion tests/cpu/avr8_xmega_drivers/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ BOARD ?= atxmega-a1u-xpro
include ../Makefile.cpu_common

# list of ATxmega boards
BOARD_WHITELIST = \
BOARDS_SUPPORTED = \
atxmega-a1-xplained \
atxmega-a1u-xpro \
atxmega-a3bu-xplained \
Expand Down
2 changes: 1 addition & 1 deletion tests/cpu/efm32_features/Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
BOARD ?= sltb001a
include ../Makefile.cpu_common

BOARD_WHITELIST := ikea-tradfri \
BOARDS_SUPPORTED := ikea-tradfri \
slstk3401a \
slstk3402a \
sltb001a \
Expand Down
2 changes: 1 addition & 1 deletion tests/cpu/native_backtrace/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ include ../Makefile.cpu_common

USEMODULE += backtrace

BOARD_WHITELIST := native32 native64
BOARDS_SUPPORTED := native32 native64

# Tests if native returns a backtrace of size three.
# The following function should be included in the backtrace:
Expand Down
2 changes: 1 addition & 1 deletion tests/drivers/ds18/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
include ../Makefile.drivers_common

BOARD_WHITELIST := sensebox_samd21 samr21-xpro nucleo-l152re nucleo-l432kc nucleo-l073rz b-l072z-lrwan arduino-nano
BOARDS_SUPPORTED := sensebox_samd21 samr21-xpro nucleo-l152re nucleo-l432kc nucleo-l073rz b-l072z-lrwan arduino-nano

USEMODULE += ds18
USEMODULE += ztimer_sec
Expand Down
2 changes: 1 addition & 1 deletion tests/drivers/edbg_eui/Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
BOARD ?= samr21-xpro
BOARD_WHITELIST = samr21-xpro
BOARDS_SUPPORTED = samr21-xpro

include ../Makefile.drivers_common

Expand Down
2 changes: 1 addition & 1 deletion tests/drivers/kw2xrf/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ BOARD ?= pba-d-01-kw2x

include ../Makefile.drivers_common

BOARD_WHITELIST := \
BOARDS_SUPPORTED := \
pba-d-01-kw2x \
#

Expand Down
2 changes: 1 addition & 1 deletion tests/drivers/pulse_counter/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
include ../Makefile.drivers_common

BOARD_BLACKLIST := msb-430 msb-430h telosb z1
BOARDS_UNSUPPORTED := msb-430 msb-430h telosb z1

USEMODULE += pulse_counter

Expand Down
2 changes: 1 addition & 1 deletion tests/drivers/saul_drivers/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ include ../Makefile.drivers_common

# Only build on a subset of boards (one per arch supported and
# with enough features provided)
BOARD_WHITELIST ?= \
BOARDS_SUPPORTED ?= \
atmega256rfr2-xpro \
esp32-wroom-32 \
stm32f4discovery \
Expand Down
2 changes: 1 addition & 1 deletion tests/mcuboot/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ BOARD ?= nrf52dk

include ../Makefile.tests_common

BOARD_WHITELIST := nrf52dk
BOARDS_SUPPORTED := nrf52dk

export IMAGE_VERSION = 1.1.1+1

Expand Down
2 changes: 1 addition & 1 deletion tests/net/gnrc_dhcpv6_client/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ DHCPV6_SERVER_PORT := 61342
RIOTBASE ?= $(CURDIR)/../..

# boards don't support ethos
BOARD_BLACKLIST += ruuvitag thingy52
BOARDS_UNSUPPORTED += ruuvitag thingy52

USEMODULE += dhcpv6_client_ia_pd
USEMODULE += dhcpv6_client_ia_na
Expand Down
2 changes: 1 addition & 1 deletion tests/net/gnrc_netif_ieee802154/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
BOARD_WHITELIST = native32 native64 derfmega256 avr-rss2 atmega256rfr2-xpro nrf52840dongle
BOARDS_SUPPORTED = native32 native64 derfmega256 avr-rss2 atmega256rfr2-xpro nrf52840dongle

include ../Makefile.net_common

Expand Down
2 changes: 1 addition & 1 deletion tests/net/socket_zep/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
include ../Makefile.net_common

BOARD_WHITELIST = native32 native64 # socket_zep is only available on native
BOARDS_SUPPORTED = native32 native64 # socket_zep is only available on native

USEMODULE += od
USEMODULE += socket_zep
Expand Down
2 changes: 1 addition & 1 deletion tests/pkg/arduino_sdi_12/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ USEPKG += arduino_sdi_12

# Boards not fast enough, that can't keep up with the line data rate, should be
# added here
BOARD_BLACKLIST := \
BOARDS_UNSUPPORTED := \
#

include $(RIOTBASE)/Makefile.include
2 changes: 1 addition & 1 deletion tests/pkg/cmsis-dsp/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ include ../Makefile.pkg_common
USEPKG += cmsis
USEMODULE += cmsis-dsp

BOARD_WHITELIST := \
BOARDS_SUPPORTED := \
airfy-beacon \
arduino-due \
b-u585i-iot02a \
Expand Down
2 changes: 1 addition & 1 deletion tests/pkg/cmsis-nn/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ BLOBS += input
# This package only works with Cortex M23, M3, M33, M4 and M7 CPUs, but there
# is no easy way provided by the build system to filter them at that level
# (cpu_core_cortexm is the only feature available) for the moment.
BOARD_WHITELIST := \
BOARDS_SUPPORTED := \
b-l475e-iot01a \
b-u585i-iot02a \
iotlab-m3 \
Expand Down
2 changes: 1 addition & 1 deletion tests/pkg/cryptoauthlib_compare_sha256/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ include ../Makefile.pkg_common
# Test fails to build for these boards fails due to
# redefinition of define AES_COUNT in library, which
# is also defined in efm32 header files
BOARD_BLACKLIST := stk3200 stk3600 stk3700
BOARDS_UNSUPPORTED := stk3200 stk3600 stk3700

USEPKG += cryptoauthlib
USEMODULE += hashes
Expand Down
4 changes: 2 additions & 2 deletions tests/pkg/cryptoauthlib_internal-tests/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ CFLAGS += -DTHREAD_STACKSIZE_MAIN=\(3*THREAD_STACKSIZE_DEFAULT\)
# Test fails to build for these boards fails due to
# redefinition of define AES_COUNT in library, which
# is also defined in board header files
BOARD_BLACKLIST := stk3200 stk3600 stk3700
BOARDS_UNSUPPORTED := stk3200 stk3600 stk3700

# Native boards are blacklisted due to a bug in cryptoauthlib's cmd-processor.c
# The file checks for __linux__ before checking for RIOT_APPLICATION, causing it
# to compile a main() function instead of atca_run_cmd(), which conflicts with
# RIOT's main(). This is an upstream bug in cryptoauthlib test infrastructure.
# See: build/pkg/cryptoauthlib/test/cmd-processor.c lines 233-278
BOARD_BLACKLIST += native native32 native64
BOARDS_UNSUPPORTED += native native32 native64

# due to memory constrains we ignore the cert test
CFLAGS += -DDO_NOT_TEST_CERT
Expand Down
2 changes: 1 addition & 1 deletion tests/pkg/lua_loader/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ USEPKG += lua
# This application uses getchar and thus expects input from stdio
USEMODULE += stdin

BOARD_WHITELIST += native32 native64 samr21-xpro
BOARDS_SUPPORTED += native32 native64 samr21-xpro

# currently fails with a Floating point exception - see #495
TEST_ON_CI_BLACKLIST += native32 native64
Expand Down
2 changes: 1 addition & 1 deletion tests/pkg/lz4/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ USEPKG += lz4
CFLAGS += -DTHREAD_STACKSIZE_DEFAULT=16384

# stk3200 and nucleo-l011k4 boards don't allow a custom default thread stacksize
BOARD_BLACKLIST := \
BOARDS_UNSUPPORTED := \
nucleo-l011k4 \
stk3200 \
#
Expand Down
2 changes: 1 addition & 1 deletion tests/pkg/relic/Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
include ../Makefile.pkg_common

# The following boards are known to fail or have not been tested.
BOARD_BLACKLIST := arduino-duemilanove \
BOARDS_UNSUPPORTED := arduino-duemilanove \
arduino-leonardo \
arduino-mega2560 \
arduino-nano \
Expand Down
2 changes: 1 addition & 1 deletion tests/sys/fido2_ctap/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ BOARD ?= native

include ../Makefile.sys_common

BOARD_WHITELIST = \
BOARDS_SUPPORTED = \
native \
nrf52840dk \
nrf52840dongle \
Expand Down
2 changes: 1 addition & 1 deletion tests/sys/fido2_ctap_hid/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ BOARD ?= nrf52840dk

include ../Makefile.sys_common

BOARD_WHITELIST = \
BOARDS_SUPPORTED = \
nrf52840dk \
nrf52840dongle \
adafruit-feather-nrf52840-sense
Expand Down
Loading
Loading