From e6b937f35e317962aab3d02cbace9ee363b27a76 Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Sun, 3 Nov 2024 18:54:00 +0100 Subject: [PATCH] test: run longjmp() test only on supported architectures We have only implemented longjmp() on the EFI architectures. Define a symbol CONFIG_HAVE_SETJMP and have it selected by the relevant architectures. Use CONFIG_HAVE_SETJMP to decide if the longjmp test shall be built. Signed-off-by: Heinrich Schuchardt Reviewed-by: Tom Rini --- arch/Kconfig | 9 +++++++++ test/lib/Makefile | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/arch/Kconfig b/arch/Kconfig index c39efb4d0a..6258788f53 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -8,6 +8,11 @@ config CREATE_ARCH_SYMLINK config HAVE_ARCH_IOREMAP bool +config HAVE_SETJMP + bool + help + The architecture supports setjmp() and longjmp(). + config SUPPORT_BIG_ENDIAN bool @@ -73,6 +78,7 @@ config ARC config ARM bool "ARM architecture" + select HAVE_SETJMP select ARCH_SUPPORTS_LTO select CREATE_ARCH_SYMLINK select HAVE_PRIVATE_LIBGCC if !ARM64 @@ -129,6 +135,7 @@ config PPC config RISCV bool "RISC-V architecture" select CREATE_ARCH_SYMLINK + select HAVE_SETJMP select SUPPORT_ACPI select SUPPORT_LITTLE_ENDIAN select SUPPORT_OF_CONTROL @@ -154,6 +161,7 @@ config RISCV config SANDBOX bool "Sandbox" + select HAVE_SETJMP select ARCH_SUPPORTS_LTO select BOARD_LATE_INIT select BZIP2 @@ -249,6 +257,7 @@ config SH config X86 bool "x86 architecture" + select HAVE_SETJMP select SUPPORT_SPL select SUPPORT_TPL select SUPPORT_LITTLE_ENDIAN diff --git a/test/lib/Makefile b/test/lib/Makefile index a54387a058..7146ffa1b1 100644 --- a/test/lib/Makefile +++ b/test/lib/Makefile @@ -11,7 +11,7 @@ obj-$(CONFIG_EFI_SECURE_BOOT) += efi_image_region.o obj-y += hexdump.o obj-$(CONFIG_SANDBOX) += kconfig.o obj-y += lmb.o -obj-y += longjmp.o +obj-$(CONFIG_HAVE_SETJMP) += longjmp.o obj-$(CONFIG_CONSOLE_RECORD) += test_print.o obj-$(CONFIG_SSCANF) += sscanf.o obj-y += string.o -- 2.39.5