diff --git a/examples/dtls-echo/Makefile b/examples/dtls-echo/Makefile index 5cc179253ef6..d8d4f0966bd2 100644 --- a/examples/dtls-echo/Makefile +++ b/examples/dtls-echo/Makefile @@ -7,13 +7,6 @@ BOARD ?= native # This has to be the absolute path to the RIOT base directory: RIOTBASE ?= $(CURDIR)/../.. -# TinyDTLS only has support for 32-bit architectures ATM -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno atmega328p \ - chronos mega-xplained microduino-corerf \ - msb-430 msb-430h telosb waspmote-pro wsn430-v1_3b \ - wsn430-v1_4 z1 - # Include packages that pull up and auto-init the link layer. # NOTE: 6LoWPAN will be included if IEEE802.15.4 devices are present USEMODULE += gnrc_netdev_default diff --git a/examples/dtls-wolfssl/Makefile b/examples/dtls-wolfssl/Makefile index 46c948c43b14..8bb4e7699feb 100644 --- a/examples/dtls-wolfssl/Makefile +++ b/examples/dtls-wolfssl/Makefile @@ -7,9 +7,6 @@ BOARD ?= native # This has to be the absolute path to the RIOT base directory: RIOTBASE ?= $(CURDIR)/../.. -# wolfSSL supports 32-bit architectures only -FEATURES_REQUIRED += arch_32bit - # Include packages that pull up and auto-init the link layer. # NOTE: 6LoWPAN will be included if IEEE802.15.4 devices are present USEMODULE += gnrc_netdev_default diff --git a/examples/javascript/Makefile b/examples/javascript/Makefile index 51722d348b89..2038d474e9f9 100644 --- a/examples/javascript/Makefile +++ b/examples/javascript/Makefile @@ -7,12 +7,6 @@ BOARD ?= native # This has to be the absolute path to the RIOT base directory: RIOTBASE ?= $(CURDIR)/../.. -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo arduino-mega2560 \ - arduino-nano arduino-uno atmega328p chronos \ - msb-430 msb-430h telosb waspmote-pro wsn430-v1_3b \ - wsn430-v1_4 z1 pic32-wifire pic32-clicker \ - mega-xplained microduino-corerf - # Comment this out to disable code in RIOT that does safety checking # which is not needed in a production environment but helps in the # development process: diff --git a/examples/lua_REPL/Makefile b/examples/lua_REPL/Makefile index 32a814668908..abf99eb8ac23 100644 --- a/examples/lua_REPL/Makefile +++ b/examples/lua_REPL/Makefile @@ -6,12 +6,6 @@ BOARD ?= native # This has to be the absolute path to the RIOT base directory: RIOTBASE ?= $(CURDIR)/../.. -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno atmega328p \ - chronos hifive1 hifive1b mega-xplained microduino-corerf \ - msb-430 msb-430h pic32-clicker pic32-wifire telosb \ - waspmote-pro wsn430-v1_3b wsn430-v1_4 z1 - # Comment this out to disable code in RIOT that does safety checking # which is not needed in a production environment but helps in the # development process: diff --git a/examples/lua_basic/Makefile b/examples/lua_basic/Makefile index 0e7c843323e5..05361d823664 100644 --- a/examples/lua_basic/Makefile +++ b/examples/lua_basic/Makefile @@ -6,12 +6,6 @@ BOARD ?= native # This has to be the absolute path to the RIOT base directory: RIOTBASE ?= $(CURDIR)/../.. -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano \ - arduino-uno atmega328p chronos hifive1 hifive1b \ - mega-xplained microduino-corerf msb-430 msb-430h pic32-clicker \ - pic32-wifire telosb waspmote-pro wsn430-v1_3b wsn430-v1_4 z1 - # Comment this out to disable code in RIOT that does safety checking # which is not needed in a production environment but helps in the # development process: diff --git a/pkg/cifra/Makefile.dep b/pkg/cifra/Makefile.dep new file mode 100644 index 000000000000..57d8d54026fe --- /dev/null +++ b/pkg/cifra/Makefile.dep @@ -0,0 +1,2 @@ +# Cifra is only supported by 32 bit architectures +FEATURES_REQUIRED += arch_32bit diff --git a/pkg/cn-cbor/Makefile.dep b/pkg/cn-cbor/Makefile.dep index ec9bf5782364..d2baa35dfe2b 100644 --- a/pkg/cn-cbor/Makefile.dep +++ b/pkg/cn-cbor/Makefile.dep @@ -1 +1,4 @@ USEMODULE += posix_headers + +# CN-CBOR is only supported by 32 bit architectures +FEATURES_REQUIRED += arch_32bit diff --git a/pkg/hacl/Makefile.dep b/pkg/hacl/Makefile.dep index 8030144a9aac..f9aabaca2e9e 100644 --- a/pkg/hacl/Makefile.dep +++ b/pkg/hacl/Makefile.dep @@ -1 +1,4 @@ USEMODULE+=random + +# HACL is only supported by 32 bit architectures +FEATURES_REQUIRED += arch_32bit diff --git a/pkg/jerryscript/Makefile.dep b/pkg/jerryscript/Makefile.dep index 5e38313cfedc..493506766dc5 100644 --- a/pkg/jerryscript/Makefile.dep +++ b/pkg/jerryscript/Makefile.dep @@ -2,3 +2,9 @@ ifneq (,$(filter jerryscript,$(USEPKG))) USEMODULE += jerryport-minimal USEMODULE += jerryscript-ext endif + +# Jerryscript is only supported by 32-bit architectures +FEATURES_REQUIRED += arch_32bit + +# Jerryscript is not supported on MIPS because of missing stdin over UART +FEATURES_BLACKLIST += arch_mips32r2 diff --git a/pkg/libcoap/Makefile.dep b/pkg/libcoap/Makefile.dep index 35d651d968aa..5a5fa543e40f 100644 --- a/pkg/libcoap/Makefile.dep +++ b/pkg/libcoap/Makefile.dep @@ -3,3 +3,6 @@ ifneq (,$(filter libcoap,$(USEPKG))) USEMODULE += posix_headers USEMODULE += gnrc_sock_udp endif + +# libcoap is only supported by 32 bit architectures +FEATURES_REQUIRED += arch_32bit diff --git a/pkg/libhydrogen/Makefile.dep b/pkg/libhydrogen/Makefile.dep index 3941d5a187d0..caba98824efa 100644 --- a/pkg/libhydrogen/Makefile.dep +++ b/pkg/libhydrogen/Makefile.dep @@ -1 +1,6 @@ USEMODULE += random + +# libhydrogen is only supported by 32 bit architectures +# AVR boards: require avr-gcc >= 7.0 (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60040) +# MSP430 boards: invalid alignment of 'hydro_random_context' +FEATURES_REQUIRED += arch_32bit diff --git a/pkg/lua/Makefile.dep b/pkg/lua/Makefile.dep index 2079d072aa51..848218175bc1 100644 --- a/pkg/lua/Makefile.dep +++ b/pkg/lua/Makefile.dep @@ -1,3 +1,14 @@ USEPKG += tlsf USEMODULE += lua-contrib USEMODULE += printf_float + +# LUA is only supported by 32-bit architectures +FEATURES_REQUIRED += arch_32bit + +# LUA is not supported on MIPS because of missing stdin over UART +FEATURES_BLACKLIST += arch_mips32r2 + +# LUA is not supported on RISCV because of build issues with the toolchain +# (undefined reference to _times, _unlink and _link functions in provided +# newlib nano). +FEATURES_BLACKLIST += arch_riscv diff --git a/pkg/micro-ecc/Makefile.dep b/pkg/micro-ecc/Makefile.dep new file mode 100644 index 000000000000..2f9de711f68f --- /dev/null +++ b/pkg/micro-ecc/Makefile.dep @@ -0,0 +1,2 @@ +# micro-ecc is not 16 bit compatible +FEATURES_BLACKLIST += arch_16bit diff --git a/pkg/monocypher/Makefile.dep b/pkg/monocypher/Makefile.dep index 767f3cc1c768..2a90b7137822 100644 --- a/pkg/monocypher/Makefile.dep +++ b/pkg/monocypher/Makefile.dep @@ -1 +1,4 @@ USEMODULE += monocypher_sha512 + +# monocypher is only supported by 32 bit architectures +FEATURES_REQUIRED += arch_32bit diff --git a/pkg/qDSA/Makefile.dep b/pkg/qDSA/Makefile.dep index 325ac6eecf6b..b19f9fa6fd9e 100644 --- a/pkg/qDSA/Makefile.dep +++ b/pkg/qDSA/Makefile.dep @@ -5,3 +5,6 @@ endif ifneq (,$(filter atmega_common,$(USEMODULE))) USEMODULE += qDSA_asm endif + +# qDsa is not 16 bit compatible +FEATURES_BLACKLIST += arch_16bit diff --git a/pkg/tinycbor/Makefile.dep b/pkg/tinycbor/Makefile.dep new file mode 100644 index 000000000000..10f81a15ca01 --- /dev/null +++ b/pkg/tinycbor/Makefile.dep @@ -0,0 +1,2 @@ +# tinycbor is only supported by 32 bit architectures +FEATURES_REQUIRED += arch_32bit diff --git a/pkg/tinydtls/Makefile.dep b/pkg/tinydtls/Makefile.dep index f76edd6d15ca..36392f3ba65c 100644 --- a/pkg/tinydtls/Makefile.dep +++ b/pkg/tinydtls/Makefile.dep @@ -8,3 +8,6 @@ ifneq (,$(filter tinydtls,$(USEMODULE))) USEMODULE += tinydtls_aes USEMODULE += tinydtls_ecc endif + +# TinyDTLS only has support for 32-bit architectures ATM +FEATURES_REQUIRED += arch_32bit diff --git a/pkg/wolfssl/Makefile.dep b/pkg/wolfssl/Makefile.dep index 9352cdb32682..eaa49bff4b37 100644 --- a/pkg/wolfssl/Makefile.dep +++ b/pkg/wolfssl/Makefile.dep @@ -82,3 +82,6 @@ endif ifneq (,$(filter wolfcrypt_random,$(USEMODULE))) USEMODULE += random endif + +# wolfssl is only supported by 32 bit architectures +FEATURES_REQUIRED += arch_32bit diff --git a/tests/pkg_cifra/Makefile b/tests/pkg_cifra/Makefile index 8bb6b27e9387..c5d47093c2e7 100644 --- a/tests/pkg_cifra/Makefile +++ b/tests/pkg_cifra/Makefile @@ -1,12 +1,5 @@ include ../Makefile.tests_common -# No 8 bit and 16 bit support -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno \ - atmega328p chronos mega-xplained microduino-corerf \ - msb-430 msb-430h telosb waspmote-pro wsn430-v1_3b \ - wsn430-v1_4 z1 - USEMODULE += embunit USEMODULE += random USEPKG += cifra diff --git a/tests/pkg_cn-cbor/Makefile b/tests/pkg_cn-cbor/Makefile index d10a31651e7e..8ca112dbc8c1 100644 --- a/tests/pkg_cn-cbor/Makefile +++ b/tests/pkg_cn-cbor/Makefile @@ -1,23 +1,5 @@ include ../Makefile.tests_common -BOARD_BLACKLIST := arduino-duemilanove \ - arduino-leonardo \ - arduino-mega2560 \ - arduino-nano \ - arduino-uno \ - atmega328p \ - chronos \ - mega-xplained \ - microduino-corerf \ - msb-430 \ - msb-430h \ - telosb \ - waspmote-pro \ - wsn430-v1_3b \ - wsn430-v1_4 \ - z1 \ - # - USEPKG += cn-cbor USEMODULE += embunit USEMODULE += fmt diff --git a/tests/pkg_hacl/Makefile b/tests/pkg_hacl/Makefile index 82fbfa2127f7..530bc4f53ea1 100644 --- a/tests/pkg_hacl/Makefile +++ b/tests/pkg_hacl/Makefile @@ -1,11 +1,5 @@ include ../Makefile.tests_common -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno \ - atmega328p chronos mega-xplained microduino-corerf \ - msb-430 msb-430h telosb waspmote-pro wsn430-v1_3b \ - wsn430-v1_4 z1 - CFLAGS += -DTHREAD_STACKSIZE_MAIN=\(5*THREAD_STACKSIZE_DEFAULT\) USEPKG += hacl USEMODULE += random diff --git a/tests/pkg_libcoap/Makefile b/tests/pkg_libcoap/Makefile index 2e01a71cd2d1..811ad79f71fd 100644 --- a/tests/pkg_libcoap/Makefile +++ b/tests/pkg_libcoap/Makefile @@ -1,11 +1,5 @@ include ../Makefile.tests_common -# msp430 and avr have problems with int width and libcoaps usage of :x notation in structs -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno atmega328p \ - chronos mega-xplained microduino-corerf msb-430 \ - msb-430h telosb waspmote-pro wsn430-v1_3b wsn430-v1_4 z1 - USEMODULE += gnrc_ipv6 USEMODULE += gnrc_sock_udp USEPKG += libcoap diff --git a/tests/pkg_libcose/Makefile b/tests/pkg_libcose/Makefile index 5679250e4d47..1d73e82e490d 100644 --- a/tests/pkg_libcose/Makefile +++ b/tests/pkg_libcose/Makefile @@ -1,15 +1,7 @@ include ../Makefile.tests_common -# HACL* only compiles on 32bit platforms -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno \ - atmega328p chronos mega-xplained microduino-corerf \ - msb-430 msb-430h telosb waspmote-pro wsn430-v1_3b \ - wsn430-v1_4 z1 - TEST_ON_CI_WHITELIST += native - USEPKG += libcose # By default we use hacl as crypto backend, uncomment to use a different # crypto backend. diff --git a/tests/pkg_libhydrogen/Makefile b/tests/pkg_libhydrogen/Makefile index 6baf058e3d61..f171720b314b 100644 --- a/tests/pkg_libhydrogen/Makefile +++ b/tests/pkg_libhydrogen/Makefile @@ -1,12 +1,5 @@ include ../Makefile.tests_common -# AVR boards: require avr-gcc >= 7.0 (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60040) -# MSP430 boards: invalid alignment of 'hydro_random_context' -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-uno atmega328p \ - mega-xplained microduino-corerf waspmote-pro \ - chronos msb-430 msb-430h telosb wsn430-v1_3b wsn430-v1_4 z1 - USEPKG += libhydrogen USEMODULE += embunit diff --git a/tests/pkg_micro-ecc/Makefile b/tests/pkg_micro-ecc/Makefile index cfb15ae55ea8..a1a70b69e82a 100644 --- a/tests/pkg_micro-ecc/Makefile +++ b/tests/pkg_micro-ecc/Makefile @@ -1,8 +1,5 @@ include ../Makefile.tests_common -# micro-ecc is not 16 bit compatible -BOARD_BLACKLIST = chronos msb-430 msb-430h telosb wsn430-v1_3b wsn430-v1_4 z1 - USEMODULE += hashes USEPKG += micro-ecc diff --git a/tests/pkg_monocypher/Makefile b/tests/pkg_monocypher/Makefile index 460c75430f2e..bf9abd64a985 100644 --- a/tests/pkg_monocypher/Makefile +++ b/tests/pkg_monocypher/Makefile @@ -1,12 +1,5 @@ include ../Makefile.tests_common -# No 8 bit and 16 bit support -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno \ - atmega328p chronos mega-xplained microduino-corerf \ - msb-430 msb-430h telosb waspmote-pro wsn430-v1_3b \ - wsn430-v1_4 z1 - # required for Monocypher (as described in the package documentation) CFLAGS += "-DTHREAD_STACKSIZE_MAIN=(4096 + THREAD_STACKSIZE_DEFAULT + THREAD_EXTRA_STACKSIZE_PRINTF)" diff --git a/tests/pkg_qdsa/Makefile b/tests/pkg_qdsa/Makefile index befa4345e995..7d855c09dc8c 100644 --- a/tests/pkg_qdsa/Makefile +++ b/tests/pkg_qdsa/Makefile @@ -1,8 +1,5 @@ include ../Makefile.tests_common -# qDSA is not 16 bit compatible -BOARD_BLACKLIST := chronos msb-430 msb-430h telosb wsn430-v1_3b wsn430-v1_4 z1 - CFLAGS += -DTHREAD_STACKSIZE_MAIN=\(4*THREAD_STACKSIZE_DEFAULT\) USEPKG += qDSA diff --git a/tests/pkg_tinycbor/Makefile b/tests/pkg_tinycbor/Makefile index c1539a7f53e9..fd8b1560e4d9 100644 --- a/tests/pkg_tinycbor/Makefile +++ b/tests/pkg_tinycbor/Makefile @@ -1,12 +1,5 @@ include ../Makefile.tests_common -# No 8 bit and 16 bit support yet -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano \ - arduino-uno atmega328p chronos microduino-corerf \ - mega-xplained msb-430 msb-430h telosb waspmote-pro \ - wsn430-v1_3b wsn430-v1_4 z1 \ - USEMODULE += embunit USEMODULE += fmt USEPKG += tinycbor diff --git a/tests/pkg_wolfcrypt-ed25519-verify/Makefile b/tests/pkg_wolfcrypt-ed25519-verify/Makefile index 0d382dc45b1a..f6b8db76e130 100644 --- a/tests/pkg_wolfcrypt-ed25519-verify/Makefile +++ b/tests/pkg_wolfcrypt-ed25519-verify/Makefile @@ -3,14 +3,6 @@ include ../Makefile.tests_common # If no BOARD is found in the environment, use this default: BOARD ?= native -# Only 32-bit targets -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno atmega328p \ - chronos esp8266-esp-12x esp8266-olimex-mod \ - esp8266-sparkfun-thing mega-xplained microduino-corerf \ - msb-430 msb-430h telosb waspmote-pro \ - wsn430-v1_3b wsn430-v1_4 z1 - # This has to be the absolute path to the RIOT base directory: RIOTBASE ?= $(CURDIR)/../.. diff --git a/tests/pkg_wolfssl/Makefile b/tests/pkg_wolfssl/Makefile index 2176dcde00bc..e15f2263c806 100644 --- a/tests/pkg_wolfssl/Makefile +++ b/tests/pkg_wolfssl/Makefile @@ -3,14 +3,6 @@ include ../Makefile.tests_common # If no BOARD is found in the environment, use this default: BOARD ?= native -# Only 32-bit targets -BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ - arduino-mega2560 arduino-nano arduino-uno \ - atmega328p chronos esp8266-esp-12x esp8266-olimex-mod \ - esp8266-sparkfun-thing mega-xplained microduino-corerf \ - msb-430 msb-430h telosb waspmote-pro \ - wsn430-v1_3b wsn430-v1_4 z1 - # This has to be the absolute path to the RIOT base directory: RIOTBASE ?= $(CURDIR)/../..