Patchwork [12/19] package/libseccomp: new package

login
register
mail settings
Submitter Yann E. MORIN
Date Dec. 16, 2012, 4:56 p.m.
Message ID <caac6f2b10b2b3a3d473e552c106e9e748243cf9.1355676845.git.yann.morin.1998@free.fr>
Download mbox | patch
Permalink /patch/206697/
State Accepted
Headers show

Comments

Yann E. MORIN - Dec. 16, 2012, 4:56 p.m.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/Config.in                                  |    1 +
 package/libseccomp/Config.in                       |   13 +++++++++++
 ...ibseccomp-use-system-headers-from-sysroot.patch |   17 +++++++++++++++
 package/libseccomp/libseccomp.mk                   |   22 ++++++++++++++++++++
 4 files changed, 53 insertions(+), 0 deletions(-)
 create mode 100644 package/libseccomp/Config.in
 create mode 100644 package/libseccomp/libseccomp-use-system-headers-from-sysroot.patch
 create mode 100644 package/libseccomp/libseccomp.mk
Peter Korsgaard - Dec. 16, 2012, 8:38 p.m.
>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 Yann> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
 Yann> ---
 Yann>  package/Config.in                                  |    1 +
 Yann>  package/libseccomp/Config.in                       |   13 +++++++++++
 Yann>  ...ibseccomp-use-system-headers-from-sysroot.patch |   17 +++++++++++++++
 Yann>  package/libseccomp/libseccomp.mk                   |   22 ++++++++++++++++++++
 Yann>  4 files changed, 53 insertions(+), 0 deletions(-)
 Yann>  create mode 100644 package/libseccomp/Config.in
 Yann>  create mode 100644 package/libseccomp/libseccomp-use-system-headers-from-sysroot.patch
 Yann>  create mode 100644 package/libseccomp/libseccomp.mk

 Yann> diff --git a/package/Config.in b/package/Config.in
 Yann> index eff2887..2f67d10 100644
 Yann> --- a/package/Config.in
 Yann> +++ b/package/Config.in
 Yann> @@ -523,6 +523,7 @@ source "package/libical/Config.in"
 Yann>  source "package/libnspr/Config.in"
 Yann>  source "package/libsigc/Config.in"
 Yann>  source "package/libtpl/Config.in"
 Yann> +source "package/libseccomp/Config.in"
 Yann>  source "package/liburcu/Config.in"
 Yann>  source "package/linux-pam/Config.in"
 Yann>  source "package/lttng-libust/Config.in"
 Yann> diff --git a/package/libseccomp/Config.in b/package/libseccomp/Config.in
 Yann> new file mode 100644
 Yann> index 0000000..183cf4e
 Yann> --- /dev/null
 Yann> +++ b/package/libseccomp/Config.in
 Yann> @@ -0,0 +1,13 @@
 Yann> +config BR2_PACKAGE_LIBSECCOMP
 Yann> +	bool "libseccomp"
 Yann> +	help
 Yann> +	  High level interface to the Linux Kernel's seccomp filter 
 Yann> +	  
 Yann> +	  The libseccomp library provides and easy to use, platform independent,

s/and/an/. I know this is just cut'n'pasted from the sf.net website, but
I've fixed it anyway and committed, thanks.
Yann E. MORIN - Dec. 16, 2012, 8:42 p.m.
Peter, All,

On Sunday 16 December 2012 Peter Korsgaard wrote:
> >>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:
[--SNIP--]
>  Yann> diff --git a/package/libseccomp/Config.in b/package/libseccomp/Config.in
>  Yann> new file mode 100644
>  Yann> index 0000000..183cf4e
>  Yann> --- /dev/null
>  Yann> +++ b/package/libseccomp/Config.in
>  Yann> @@ -0,0 +1,13 @@
>  Yann> +config BR2_PACKAGE_LIBSECCOMP
>  Yann> +	bool "libseccomp"
>  Yann> +	help
>  Yann> +	  High level interface to the Linux Kernel's seccomp filter 
>  Yann> +	  
>  Yann> +	  The libseccomp library provides and easy to use, platform independent,
> 
> s/and/an/. I know this is just cut'n'pasted from the sf.net website, but
> I've fixed it anyway and committed, thanks.

Thank you!

Regards,
Yamnn E. MORIN.
Peter Korsgaard - Dec. 16, 2012, 10:19 p.m.
>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 Yann> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
 Yann> ---
 Yann>  package/Config.in                                  |    1 +
 Yann>  package/libseccomp/Config.in                       |   13 +++++++++++
 Yann>  ...ibseccomp-use-system-headers-from-sysroot.patch |   17 +++++++++++++++
 Yann>  package/libseccomp/libseccomp.mk                   |   22 ++++++++++++++++++++

There seem to be some arch dependent issues on atleast powerpc:

http://autobuild.buildroot.net/results/1742dfc07c27cfa91e1b253a2b16142206413b6b/build-end.log

Care to have a look?

Patch

diff --git a/package/Config.in b/package/Config.in
index eff2887..2f67d10 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -523,6 +523,7 @@  source "package/libical/Config.in"
 source "package/libnspr/Config.in"
 source "package/libsigc/Config.in"
 source "package/libtpl/Config.in"
+source "package/libseccomp/Config.in"
 source "package/liburcu/Config.in"
 source "package/linux-pam/Config.in"
 source "package/lttng-libust/Config.in"
diff --git a/package/libseccomp/Config.in b/package/libseccomp/Config.in
new file mode 100644
index 0000000..183cf4e
--- /dev/null
+++ b/package/libseccomp/Config.in
@@ -0,0 +1,13 @@ 
+config BR2_PACKAGE_LIBSECCOMP
+	bool "libseccomp"
+	help
+	  High level interface to the Linux Kernel's seccomp filter 
+	  
+	  The libseccomp library provides and easy to use, platform independent,
+	  interface to the Linux Kernel's syscall filtering mechanism: seccomp.
+	  The libseccomp API is designed to abstract away the underlying BPF
+	  based syscall filter language and present a more conventional
+	  function-call based filtering interface that should be familiar to,
+	  and easily adopted by application developers.
+	  
+	  http://sourceforge.net/projects/libseccomp/
diff --git a/package/libseccomp/libseccomp-use-system-headers-from-sysroot.patch b/package/libseccomp/libseccomp-use-system-headers-from-sysroot.patch
new file mode 100644
index 0000000..0997edd
--- /dev/null
+++ b/package/libseccomp/libseccomp-use-system-headers-from-sysroot.patch
@@ -0,0 +1,17 @@ 
+configure: check headers in sysroot, not in host's system headers
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN libseccomp-1.0.0.orig/configure libseccomp-1.0.0/configure
+--- libseccomp-1.0.0.orig/configure	2012-07-27 22:35:05.000000000 +0200
++++ libseccomp-1.0.0/configure	2012-10-27 00:12:50.739196219 +0200
+@@ -205,7 +205,8 @@
+ #
+ 
+ # system seccomp includes
+-if [[ -r "/usr/include/linux/seccomp.h" ]]; then
++# ${SYSROOT} added by buildroot for cross-compilation
++if [[ -r "${SYSROOT}/usr/include/linux/seccomp.h" ]]; then
+ 	opt_sysinc_seccomp="yes"
+ else
+ 	opt_sysinc_seccomp="no"
diff --git a/package/libseccomp/libseccomp.mk b/package/libseccomp/libseccomp.mk
new file mode 100644
index 0000000..73fe632
--- /dev/null
+++ b/package/libseccomp/libseccomp.mk
@@ -0,0 +1,22 @@ 
+#############################################################
+#
+# libseccomp
+#
+#############################################################
+
+LIBSECCOMP_VERSION         = 1.0.0
+LIBSECCOMP_SOURCE          = libseccomp-$(LIBSECCOMP_VERSION).tar.gz
+LIBSECCOMP_SITE            = http://downloads.sourceforge.net/project/libseccomp
+LIBSECCOMP_LICENSE         = LGPLv2.1
+LIBSECCOMP_LICENSE_FILES   = LICENSE
+LIBSECCOMP_INSTALL_STAGING = YES
+
+# Needed for configure to find our system headers:
+LIBSECCOMP_CONF_ENV            = SYSROOT=$(STAGING_DIR)
+LIBSECCOMP_MAKE_ENV            = $(TARGET_CONFIGURE_OPTS)
+LIBSECCOMP_MAKE_OPT            = SUBDIRS_BUILD=src
+LIBSECCOMP_INSTALL_STAGING_OPT = SUBDIRS_BUILD=src SUBDIRS_INSTALL="src include" DESTDIR=$(STAGING_DIR) install
+LIBSECCOMP_INSTALL_TARGET_OPT  = SUBDIRS_BUILD=src SUBDIRS_INSTALL="src include" DESTDIR=$(TARGET_DIR) install
+
+# Not a real autotools package, but works quite OK nonetheless
+$(eval $(autotools-package))