summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomas Mozes <hydrapolic@gmail.com>2018-02-20 12:31:42 +0100
committerUltrabug <ultrabug@gentoo.org>2018-04-02 19:11:37 +0200
commitf569763b63e3d0159bfb297d295d970e4a890d3c (patch)
tree8f83ad0e3de0f3e0163637452e82ff8a088a442d /sys-cluster
parentdev-libs/libdaemon-0.14-r3: alpha stable (diff)
downloadgentoo-f569763b63e3d0159bfb297d295d970e4a890d3c.tar.gz
gentoo-f569763b63e3d0159bfb297d295d970e4a890d3c.tar.bz2
gentoo-f569763b63e3d0159bfb297d295d970e4a890d3c.zip
sys-cluster/keepalived: fix building with linux-headers-4.15
Closes: https://bugs.gentoo.org/648252 Package-Manager: Portage-2.3.24, Repoman-2.3.6
Diffstat (limited to 'sys-cluster')
-rw-r--r--sys-cluster/keepalived/files/keepalived-fix-building-with-linux-headers-4.15.patch54
-rw-r--r--sys-cluster/keepalived/keepalived-1.4.2.ebuild4
2 files changed, 58 insertions, 0 deletions
diff --git a/sys-cluster/keepalived/files/keepalived-fix-building-with-linux-headers-4.15.patch b/sys-cluster/keepalived/files/keepalived-fix-building-with-linux-headers-4.15.patch
new file mode 100644
index 000000000000..542b1554ac09
--- /dev/null
+++ b/sys-cluster/keepalived/files/keepalived-fix-building-with-linux-headers-4.15.patch
@@ -0,0 +1,54 @@
+From 947248af144bcab6376ccddab8dc40f313b14281 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <baruch@tkos.co.il>
+Date: Fri, 9 Feb 2018 11:55:19 +0200
+Subject: [PATCH] Fix build with Linux kernel headers v4.15
+
+Linux kernel version 4.15 changed the libc/kernel headers suppression
+logic in a way that introduces collisions:
+
+In file included from ./../include/vrrp_ipaddress.h:32:0,
+ from ./../include/vrrp_arp.h:31,
+ from vrrp.c:29:
+/home/peko/autobuild/instance-1/output/host/arc-buildroot-linux-uclibc/sysroot/usr/include/linux/in.h:29:3: error: redeclaration of enumerator 'IPPROTO_IP'
+ IPPROTO_IP = 0, /* Dummy protocol for TCP */
+ ^
+/home/peko/autobuild/instance-1/output/host/arc-buildroot-linux-uclibc/sysroot/usr/include/netinet/in.h:33:5: note: previous definition of 'IPPROTO_IP' was here
+ IPPROTO_IP = 0, /* Dummy protocol for TCP. */
+ ^~~~~~~~~~
+
+Include the libc netinet/in.h header first to suppress the kernel
+header.
+
+In addition, add _GNU_SOURCE to vrrp.c for the libc provided in6_pktinfo
+definition.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+ keepalived/include/vrrp_arp.h | 1 +
+ keepalived/vrrp/vrrp.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/keepalived/include/vrrp_arp.h b/keepalived/include/vrrp_arp.h
+index c2b4e6b5..9dd68f63 100644
+--- a/keepalived/include/vrrp_arp.h
++++ b/keepalived/include/vrrp_arp.h
+@@ -24,6 +24,7 @@
+ #define _VRRP_ARP_H
+
+ /* system includes */
++#include <netinet/in.h>
+ #include <net/ethernet.h>
+ #include <net/if_arp.h>
+
+diff --git a/keepalived/vrrp/vrrp.c b/keepalived/vrrp/vrrp.c
+index 56395363..eaa9c567 100644
+--- a/keepalived/vrrp/vrrp.c
++++ b/keepalived/vrrp/vrrp.c
+@@ -26,6 +26,7 @@
+ #include "config.h"
+
+ /* local include */
++#define _GNU_SOURCE
+ #include "vrrp_arp.h"
+ #include "vrrp_ndisc.h"
+ #include "vrrp_scheduler.h"
diff --git a/sys-cluster/keepalived/keepalived-1.4.2.ebuild b/sys-cluster/keepalived/keepalived-1.4.2.ebuild
index 9ec3a8f5d741..6b60cf23060b 100644
--- a/sys-cluster/keepalived/keepalived-1.4.2.ebuild
+++ b/sys-cluster/keepalived/keepalived-1.4.2.ebuild
@@ -30,6 +30,10 @@ DOCS=(
doc/keepalived.conf.SYNOPSIS doc/NOTE_vrrp_vmac.txt
)
+PATCHES=(
+ "${FILESDIR}/${PN}-fix-building-with-linux-headers-4.15.patch"
+)
+
src_prepare() {
default