Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] netcat-openbsd: depends on linux-headers >= 3.12
@ 2017-11-28 15:44 Gaël PORTAY
  2017-11-29 21:24 ` Thomas Petazzoni
  2017-12-31 13:16 ` Thomas Petazzoni
  0 siblings, 2 replies; 7+ messages in thread
From: Gaël PORTAY @ 2017-11-28 15:44 UTC (permalink / raw)
  To: buildroot

This debian fork of netcat includes the kernel UAPI inet6 header. This
header conflicts with the existing libc inet header and causes
redefinition of structures when they are both included.

The compiler raises the following error:

	/home/buildroot/build/instance-0/output/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/linux/in6.h:30:8: error: redefinition of 'struct in6_addr' struct in6_addr {

From version 3.12 of linux, the kernel UAPI header has mechanisms in
libc-compat.h to prevent such situations (see __UAPI_DEF_SOCKADDR_IN6
macros).

Unfortunately the build is broken when toolchains do not satisfy at least
the linux headers condition (>= 3.12).

The package now depends on the toolchain headers at least 3.12.

Signed-off-by: Ga?l PORTAY <gael.portay@savoirfairelinux.com>
---

Hi all,

This patch fixes the build issue[1] of the netcat-openbsd package for
x86_64[2] on branch next. I assume it also fixes the mips64el issue[3].

It fixes the issue from a configuration point of view. I believe the
issue cannot be solved. As explain in the commit message, the build is
broken because the linux-headers must be at least 3.12.
  
I need your help to make sure my understanding of the issue is right.

This fork of netcat uses some linux features, and the linux uapi header
must be included. It uses macros that are defined in the linux uapi
header which are not defined in the libc header.

I have tested by installing a new version of the kernel header using the
commands below.

	$ make BR2_DEFAULT_KERNEL_HEADERS=3.12 linux-headers 
	$ make netcat-openbsd-rebuild

And it worked.

Regards,
Gael

[1]: http://lists.busybox.net/pipermail/buildroot/2017-November/207809.html
[2]: http://autobuild.buildroot.net/results/3c42c1eadcbfc084a1e55bf1df0450aaf1f2139c/
[3]: http://autobuild.buildroot.net/results/de0dd8983243ee5d1fb189add8ce445177fb87c2/

 package/netcat-openbsd/Config.in | 1 +
 1 file changed, 1 insertion(+)

diff --git a/package/netcat-openbsd/Config.in b/package/netcat-openbsd/Config.in
index 6df87ec688..5c8823c2ef 100644
--- a/package/netcat-openbsd/Config.in
+++ b/package/netcat-openbsd/Config.in
@@ -4,6 +4,7 @@ config BR2_PACKAGE_NETCAT_OPENBSD
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_TOOLCHAIN_USES_GLIBC
 	depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
+	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
 	select BR2_PACKAGE_LIBBSD
 	help
 	  A simple Unix utility which reads and writes data across network
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-12-31 13:16 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-28 15:44 [Buildroot] [PATCH 1/1] netcat-openbsd: depends on linux-headers >= 3.12 Gaël PORTAY
2017-11-29 21:24 ` Thomas Petazzoni
2017-11-30 17:10   ` Baruch Siach
2017-11-30 19:36     ` Thomas Petazzoni
2017-11-30 19:53       ` Baruch Siach
2017-11-30 19:57       ` Gaël PORTAY
2017-12-31 13:16 ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox