Most users don't need the standalone API examples. Distributions like SUSE
do not supply libgcc for cross-compiling and we cannot do without on ARMv8
for building examples/.

Make examples selectable via symbol CONFIG_EXAMPLES. It defaults to
yes on ARCH_QEMU to ensure that we compile the API as part of our
continuous integration.

Cc: Matthias Brugger <mbrug...@suse.com>
Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de>
---
v2:
        default=y on ARCH_QEMU only
---
 Kconfig           | 8 ++++++++
 examples/Makefile | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/Kconfig b/Kconfig
index 883e3f71d0..d0eae2ceba 100644
--- a/Kconfig
+++ b/Kconfig
@@ -422,6 +422,14 @@ config SYS_SRAM_SIZE
        default 0x10000 if TARGET_TRICORDER
        default 0x0

+config EXAMPLES
+       bool "Compile API examples"
+       depends on !SANDBOX
+       default y if ARCH_QEMU
+       help
+         U-Boot provides an API for standalone applications. Examples are
+         provided in directory examples/.
+
 endmenu                # General setup

 menu "Boot images"
diff --git a/examples/Makefile b/examples/Makefile
index d440bc5655..bf518bd221 100644
--- a/examples/Makefile
+++ b/examples/Makefile
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0+

-ifndef CONFIG_SANDBOX
+ifdef CONFIG_EXAMPLES

 ifdef FTRACE
 subdir-ccflags-y += -finstrument-functions -DFTRACE
--
2.28.0

Reply via email to