[Buildroot] [PATCH v2] libseccomp: Add new config option to build and install tests

Markos Chandras markos.chandras at imgtec.com
Fri Sep 18 08:19:31 UTC 2015


Add new config option to allow building and installing the libseccomp
testsuite on the target. It's useful for testing the kernels'
seccomp behavior for the target architecture.

Signed-off-by: Markos Chandras <markos.chandras at imgtec.com>
---
changes since v1:
- Drop compile hook for tests and use MAKE_OPTS instead
---
 package/libseccomp/Config.in     |  9 +++++++++
 package/libseccomp/libseccomp.mk | 16 ++++++++++++++++
 2 files changed, 25 insertions(+)

diff --git a/package/libseccomp/Config.in b/package/libseccomp/Config.in
index 4c34c5466592..760a6f321142 100644
--- a/package/libseccomp/Config.in
+++ b/package/libseccomp/Config.in
@@ -15,6 +15,15 @@ config BR2_PACKAGE_LIBSECCOMP
 
 	  https://github.com/seccomp/libseccomp
 
+config BR2_PACKAGE_LIBSECCOMP_TESTS
+	bool "Install libseccomp tests"
+	depends on BR2_PACKAGE_BASH && BR2_PACKAGE_LIBSECCOMP
+	help
+	  Build and install the libseccomp testsuite.
+
+comment "libseccomp testsuite needs bash as running shell"
+	depends on !BR2_PACKAGE_BASH && BR2_PACKAGE_LIBSECCOMP
+
 comment "libseccomp needs a toolchain w/ headers >= 3.12"
 	depends on BR2_aarch64 || BR2_mips || BR2_mipsel || BR2_mips64 || \
 		BR2_mips64el || BR2_i386 || BR2_x86_64
diff --git a/package/libseccomp/libseccomp.mk b/package/libseccomp/libseccomp.mk
index a188298006b1..5ebd8c54ac1f 100644
--- a/package/libseccomp/libseccomp.mk
+++ b/package/libseccomp/libseccomp.mk
@@ -17,4 +17,20 @@ define LIBSECCOMP_FIXUP_M4_DIR
 endef
 LIBSECCOMP_POST_EXTRACT_HOOKS += LIBSECCOMP_FIXUP_M4_DIR
 
+ifeq ($(BR2_PACKAGE_LIBSECCOMP_TESTS),y)
+
+LIBSECCOMP_MAKE_OPTS += check-build
+
+define LIBSECCOMP_TESTS_INSTALL
+	mkdir -p $(TARGET_DIR)/usr/libseccomp/{tests,tools} && \
+	for x in tests tools; do \
+		find $(@D)/$$x -maxdepth 1 \( -name "*.tests" -o -perm -a=x \) \
+			-type f -exec cp {} $(TARGET_DIR)/usr/libseccomp/$$x/ \; ; \
+	done
+endef
+
+LIBSECCOMP_POST_INSTALL_TARGET_HOOKS += LIBSECCOMP_TESTS_INSTALL
+
+endif
+
 $(eval $(autotools-package))
-- 
2.5.2




More information about the buildroot mailing list