diff mbox

[1/1] package/libseccomp: needs headers >= 3.12

Message ID 1427819637-2471-1-git-send-email-bernd.kuhls@t-online.de
State Accepted
Headers show

Commit Message

Bernd Kuhls March 31, 2015, 4:33 p.m. UTC
EM_AARCH64 was added to linux kernel with version 3.12:
https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/log/include/uapi/linux/elf-em.h?h=linux-3.12.y

Fixes
http://autobuild.buildroot.net/results/4cd/4cd6aaccde9fb0f80e49133b477f330b601f4a63/
http://autobuild.buildroot.net/results/bd1/bd105e821de583e582199aae31fab13ef17e67a0/
http://autobuild.buildroot.net/results/092/092143df2b91d50850067274da531c713f2ccb72/
http://autobuild.buildroot.net/results/814/8149cf0c3ef3ef8d91b5891591a71691dc3d7427/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/libseccomp/Config.in |    6 ++++++
 1 file changed, 6 insertions(+)

Comments

Baruch Siach March 31, 2015, 4:57 p.m. UTC | #1
Hi Bernd,

On Tue, Mar 31, 2015 at 06:33:57PM +0200, Bernd Kuhls wrote:
> EM_AARCH64 was added to linux kernel with version 3.12:
> https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/log/include/uapi/linux/elf-em.h?h=linux-3.12.y
> 
> Fixes
> http://autobuild.buildroot.net/results/4cd/4cd6aaccde9fb0f80e49133b477f330b601f4a63/
> http://autobuild.buildroot.net/results/bd1/bd105e821de583e582199aae31fab13ef17e67a0/
> http://autobuild.buildroot.net/results/092/092143df2b91d50850067274da531c713f2ccb72/
> http://autobuild.buildroot.net/results/814/8149cf0c3ef3ef8d91b5891591a71691dc3d7427/
> 
> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
> ---
>  package/libseccomp/Config.in |    6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/package/libseccomp/Config.in b/package/libseccomp/Config.in
> index 4e893c8..153e14a 100644
> --- a/package/libseccomp/Config.in
> +++ b/package/libseccomp/Config.in
> @@ -2,6 +2,7 @@ config BR2_PACKAGE_LIBSECCOMP
>  	bool "libseccomp"
>  	depends on BR2_aarch64 || BR2_mips || BR2_mipsel || BR2_mips64 || \
>  		BR2_mips64el || BR2_i386 || BR2_x86_64
> +	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12

Can't we limit the 3.12 headers dependency to BR2_aarch64?

Something like (untested):

	depends on BR2_mips || BR2_mipsel || BR2_mips64 || \
		BR2_mips64el || BR2_i386 || BR2_x86_64 \
		|| (BR2_aarch64 && BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12)

>  	help
>  	  High level interface to the Linux Kernel's seccomp filter
>  
> @@ -13,3 +14,8 @@ config BR2_PACKAGE_LIBSECCOMP
>  	  and easily adopted by application developers.
>  
>  	  https://github.com/seccomp/libseccomp
> +
> +comment "libseccomp needs headers >= 3.12"
> +	depends on BR2_aarch64 || BR2_mips || BR2_mipsel || BR2_mips64 || \
> +		BR2_mips64el || BR2_i386 || BR2_x86_64
> +	depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12

baruch
Bernd Kuhls March 31, 2015, 4:59 p.m. UTC | #2
Baruch Siach <baruch@tkos.co.il> wrote in 
news:20150331165723.GP12479@tarshish:

> Can't we limit the 3.12 headers dependency to BR2_aarch64?

Hi Baruch,

no, the build errors are not limited to aarch64: 
http://autobuild.buildroot.net/?reason=libseccomp-v2.2.0

Regards, Bernd
Baruch Siach March 31, 2015, 5:11 p.m. UTC | #3
Hi Bernd,

On Tue, Mar 31, 2015 at 06:59:53PM +0200, Bernd Kuhls wrote:
> Baruch Siach <baruch@tkos.co.il> wrote in 
> news:20150331165723.GP12479@tarshish:
> 
> > Can't we limit the 3.12 headers dependency to BR2_aarch64?
> 
> no, the build errors are not limited to aarch64: 
> http://autobuild.buildroot.net/?reason=libseccomp-v2.2.0

Now I see. It is kernel commit 909e3ee41 that adds both EM_ARM and EM_AARCH64 
to a generic header. In this case maybe patching the code is preferable. 
Something like:

#ifndef EM_ARM
#define EM_ARM 40
#endif

#ifndef EM_AARCH64
#define EM_AARCH64 183
#endif

Something like that should be acceptable upstream.

baruch
Thomas Petazzoni March 31, 2015, 9:33 p.m. UTC | #4
Dear Baruch Siach,

On Tue, 31 Mar 2015 20:11:43 +0300, Baruch Siach wrote:

> Now I see. It is kernel commit 909e3ee41 that adds both EM_ARM and EM_AARCH64 
> to a generic header. In this case maybe patching the code is preferable. 
> Something like:
> 
> #ifndef EM_ARM
> #define EM_ARM 40
> #endif
> 
> #ifndef EM_AARCH64
> #define EM_AARCH64 183
> #endif
> 
> Something like that should be acceptable upstream.

Agreed, this would allow to remove the dependency of libseccomp on >=
3.12. Though I personally don't mind that much, since libseccomp does
not have any reverse dependencies, except systemd (for which it is an
optional dependency), and systemd itself already depends on having a
fairly recent set of kernel headers.

Thomas
Thomas Petazzoni March 31, 2015, 9:46 p.m. UTC | #5
Dear Bernd Kuhls,

On Tue, 31 Mar 2015 18:33:57 +0200, Bernd Kuhls wrote:

> +comment "libseccomp needs headers >= 3.12"

This should have been "libseccomp needs a tpolchain w/ headers >= 3.12"

I've committed your patch. Baruch, if you really want to have
libseccomp on kernel olders than 3.12, do not hesitate to send a
followup patch. Since the issue was affecting the autobuilders, I
wanted to get rid of it as soon as possible.

Thanks,

Thomas
diff mbox

Patch

diff --git a/package/libseccomp/Config.in b/package/libseccomp/Config.in
index 4e893c8..153e14a 100644
--- a/package/libseccomp/Config.in
+++ b/package/libseccomp/Config.in
@@ -2,6 +2,7 @@  config BR2_PACKAGE_LIBSECCOMP
 	bool "libseccomp"
 	depends on BR2_aarch64 || BR2_mips || BR2_mipsel || BR2_mips64 || \
 		BR2_mips64el || BR2_i386 || BR2_x86_64
+	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
 	help
 	  High level interface to the Linux Kernel's seccomp filter
 
@@ -13,3 +14,8 @@  config BR2_PACKAGE_LIBSECCOMP
 	  and easily adopted by application developers.
 
 	  https://github.com/seccomp/libseccomp
+
+comment "libseccomp needs headers >= 3.12"
+	depends on BR2_aarch64 || BR2_mips || BR2_mipsel || BR2_mips64 || \
+		BR2_mips64el || BR2_i386 || BR2_x86_64
+	depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12