All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] connman: add patch to fix build with headers >= 4.5
Date: Thu, 14 Apr 2016 11:24:03 -0300	[thread overview]
Message-ID: <1460643843-26057-1-git-send-email-gustavo@zacarias.com.ar> (raw)

Add a patch from Gentoo that fixes the build on linux headers >= 4.5
The probem arises from an incompatibility in newer headers when both
net/if.h and linux/if.h are included in the same source.
See https://bugs.gentoo.org/show_bug.cgi?id=577584

Fixes:
http://autobuild.buildroot.net/results/48e/48e6f34a7940f52d987db47784c0d9e82f39de7c/

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
 package/connman/0003-xtables.patch | 61 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)
 create mode 100644 package/connman/0003-xtables.patch

diff --git a/package/connman/0003-xtables.patch b/package/connman/0003-xtables.patch
new file mode 100644
index 0000000..277fce6
--- /dev/null
+++ b/package/connman/0003-xtables.patch
@@ -0,0 +1,61 @@
+Use some preprocessor tricks to route around incompatibilies seen
+between newer Linux kernels and glibc when both net/if.h and linux/if.h
+are included in the same source.
+
+Patch from gentoo, see https://bugs.gentoo.org/show_bug.cgi?id=577584
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- connman-1.31/src/iptables.c.old	2016-03-22 20:12:47.829460752 -0700
++++ connman-1.31/src/iptables.c	2016-03-22 21:33:36.835384724 -0700
+@@ -28,11 +28,11 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <unistd.h>
+ #include <sys/errno.h>
+ #include <sys/socket.h>
+-#include <xtables.h>
++#include "connman_xtables.h"
+ #include <inttypes.h>
+ 
+ #include <linux/netfilter_ipv4/ip_tables.h>
+ 
+ #include "connman.h"
+--- connman-1.31/src/firewall.c.old	2016-03-22 21:29:01.959472262 -0700
++++ connman-1.31/src/firewall.c	2016-03-22 21:33:53.048144181 -0700
+@@ -23,11 +23,11 @@
+ #include <config.h>
+ #endif
+ 
+ #include <errno.h>
+ 
+-#include <xtables.h>
++#include "connman_xtables.h"
+ #include <linux/netfilter_ipv4/ip_tables.h>
+ 
+ #include "connman.h"
+ 
+ #define CHAIN_PREFIX "connman-"
+--- /dev/null	2016-03-18 06:21:16.372989086 -0700
++++ connman-1.31/include/connman_xtables.h	2016-03-22 21:32:21.349504786 -0700
+@@ -0,0 +1,20 @@
++#ifndef CONNMAN_XTABLES_H
++#define CONNMAN_XTABLES_H
++
++#include <linux/version.h>
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 5, 0)
++#include <xtables.h>
++#else
++#ifdef __USE_MISC
++#define GENTOO_USE_MISC __USE_MISC
++#undef __USE_MISC
++#endif
++
++#include <xtables.h>
++
++#ifdef GENTOO_USE_MISC
++#define __USE_MISC GENTOO_USE_MISC
++#undef GENTOO_USE_MISC
++#endif
++#endif
++#endif
-- 
2.7.3

             reply	other threads:[~2016-04-14 14:24 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-14 14:24 Gustavo Zacarias [this message]
2016-04-15  7:56 ` [Buildroot] [PATCH] connman: add patch to fix build with headers >= 4.5 Thomas Petazzoni
2016-04-15 12:39   ` Gustavo Zacarias

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1460643843-26057-1-git-send-email-gustavo@zacarias.com.ar \
    --to=gustavo@zacarias.com.ar \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.