[Buildroot] [PATCH 2/2] support/testing: test_uboot_tools: Add a test building a binary that include fw_env.h
Romain Naour
romain.naour at gmail.com
Mon May 11 21:47:44 UTC 2020
From: Nicolas Carrier <nicolas.carrier at orolia.com>
Nicolas Carrier proposed a package to reproduce the uboot-tools issue
he reported [1] with uboot 2020.01 packaged in the Buildroot 2020.02
release.
Add this package to the Buildroot testsuite in order to ckeck in gitlab
if fw_env.h doesn't contain any header that require building uboot
with a board configuration for the target.
[1] http://lists.busybox.net/pipermail/buildroot/2020-April/280307.html
Signed-off-by: Romain Naour <romain.naour at gmail.com>
Cc: Nicolas Carrier <nicolas.carrier at orolia.com>
---
.../tests/boot/br2-external/uboot-tools/Config.in | 1 +
.../boot/br2-external/uboot-tools/external.desc | 1 +
.../boot/br2-external/uboot-tools/external.mk | 1 +
.../package/uboot-tools-test/Config.in | 6 ++++++
.../package/uboot-tools-test/uboot-env-test.c | 14 ++++++++++++++
.../package/uboot-tools-test/uboot-tools-test.mk | 14 ++++++++++++++
support/testing/tests/boot/test_uboot_tools.py | 15 +++++++++++++++
7 files changed, 52 insertions(+)
create mode 100644 support/testing/tests/boot/br2-external/uboot-tools/Config.in
create mode 100644 support/testing/tests/boot/br2-external/uboot-tools/external.desc
create mode 100644 support/testing/tests/boot/br2-external/uboot-tools/external.mk
create mode 100644 support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/Config.in
create mode 100644 support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/uboot-env-test.c
create mode 100644 support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/uboot-tools-test.mk
create mode 100644 support/testing/tests/boot/test_uboot_tools.py
diff --git a/support/testing/tests/boot/br2-external/uboot-tools/Config.in b/support/testing/tests/boot/br2-external/uboot-tools/Config.in
new file mode 100644
index 0000000000..3cd7c06bb8
--- /dev/null
+++ b/support/testing/tests/boot/br2-external/uboot-tools/Config.in
@@ -0,0 +1 @@
+source "$BR2_EXTERNAL_UBOOT_TOOLS_TEST_PATH/package/uboot-tools-test/Config.in"
diff --git a/support/testing/tests/boot/br2-external/uboot-tools/external.desc b/support/testing/tests/boot/br2-external/uboot-tools/external.desc
new file mode 100644
index 0000000000..2f8477edaf
--- /dev/null
+++ b/support/testing/tests/boot/br2-external/uboot-tools/external.desc
@@ -0,0 +1 @@
+name: UBOOT_TOOLS_TEST
diff --git a/support/testing/tests/boot/br2-external/uboot-tools/external.mk b/support/testing/tests/boot/br2-external/uboot-tools/external.mk
new file mode 100644
index 0000000000..61cfd5878f
--- /dev/null
+++ b/support/testing/tests/boot/br2-external/uboot-tools/external.mk
@@ -0,0 +1 @@
+include $(sort $(wildcard $(BR2_EXTERNAL_UBOOT_TOOLS_TEST_PATH)/package/*/*.mk))
diff --git a/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/Config.in b/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/Config.in
new file mode 100644
index 0000000000..1bdc09a731
--- /dev/null
+++ b/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/Config.in
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_UBOOT_TOOLS_TEST
+ bool "uboot-tools-test"
+ select BR2_PACKAGE_UBOOT_TOOLS
+ help
+ Test code for fw_env.h inclusion.
+
diff --git a/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/uboot-env-test.c b/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/uboot-env-test.c
new file mode 100644
index 0000000000..0bd7c9993f
--- /dev/null
+++ b/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/uboot-env-test.c
@@ -0,0 +1,14 @@
+/*
+ * Based on http://lists.busybox.net/pipermail/buildroot/2020-April/280307.html
+ */
+
+#include <stdlib.h>
+#include <fw_env.h>
+#include <stdio.h>
+
+int main(void)
+{
+ puts("Hello world!");
+
+ return EXIT_SUCCESS;
+}
diff --git a/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/uboot-tools-test.mk b/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/uboot-tools-test.mk
new file mode 100644
index 0000000000..93937aa879
--- /dev/null
+++ b/support/testing/tests/boot/br2-external/uboot-tools/package/uboot-tools-test/uboot-tools-test.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# uboot-tools-test
+#
+################################################################################
+
+UBOOT_TOOLS_TEST_DEPENDENCIES = uboot-tools
+
+define UBOOT_TOOLS_TEST_BUILD_CMDS
+ $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) -lubootenv \
+ $(UBOOT_TOOLS_TEST_PKGDIR)/uboot-env-test.c -o $(@D)/uboot-env-test
+endef
+
+$(eval $(generic-package))
diff --git a/support/testing/tests/boot/test_uboot_tools.py b/support/testing/tests/boot/test_uboot_tools.py
new file mode 100644
index 0000000000..55a5fba3c6
--- /dev/null
+++ b/support/testing/tests/boot/test_uboot_tools.py
@@ -0,0 +1,15 @@
+
+import infra.basetest
+
+
+class TestUbootToolsEnv(infra.basetest.BRTest):
+ br2_external = [infra.filepath("tests/boot/br2-external/uboot-tools")]
+ config = \
+ """
+ BR2_aarch64=y
+ BR2_TOOLCHAIN_EXTERNAL=y
+ BR2_PACKAGE_UBOOT_TOOLS_TEST=y
+ """
+
+ def test_run(self):
+ pass
--
2.25.4
More information about the buildroot
mailing list