iputils: resolve musl compatibility

The new upstream is a fork of the original that consolidates other distro's
patches.  This fork resolves a series of musl build failures noted in the
autobuilder log.

http://autobuild.buildroot.net/results/12cb73f3def95efe706bcd957bc2c091e7931d5a/

  - Updated to github fork, selected merge from Nov 3 2015
    which provided musl fixes (last release was to old, 20150815)
  - Why the fork ? (http://www.spinics.net/lists/netdev/msg279881.html)
  - Added missing dependencies for kernel capabilies lib
  - Accounted for new consolidated ping (ipv4/6)

Tested against a buildroot arm musl/glibc toolchains, as well as
autobuilder defconfig.

Signed-off-by: Matt Weber <matt@thewebers.ws>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Matt Weber 2016-01-21 03:31:47 +00:00 committed by Thomas Petazzoni
parent 11d7b8b64a
commit 837de1793a
4 changed files with 22 additions and 47 deletions

View File

@ -1,34 +0,0 @@
From 712fddacfb5c4a8a48d9c5debe1870bc051d836c Mon Sep 17 00:00:00 2001
From: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Date: Tue, 6 Nov 2012 02:44:12 +0900
Subject: [PATCH] ping,ping6: Fix hang with -f option.
Bug was introduced by commit 8feb586c4... (ping,ping6: Check return
value of write(2) for stdout.).
https://bugs.archlinux.org/task/32306
Patch-by: Jan Synacek <jsynacek@redhat.com>
Reported-by: Mohammad Alsaleh <msal@tormail.org>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
ping_common.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ping_common.h b/ping_common.h
index d2a2b5c..6726e1b 100644
--- a/ping_common.h
+++ b/ping_common.h
@@ -140,7 +140,7 @@ static inline void write_stdout(const char *str, size_t len)
do {
cc = write(STDOUT_FILENO, str + o, len - o);
o += cc;
- } while (len >= o || cc < 0);
+ } while (len > o || cc < 0);
}
/*
--
2.1.3

View File

@ -6,4 +6,4 @@ config BR2_PACKAGE_IPUTILS
This package is set of small useful utilities for Linux networking. This package is set of small useful utilities for Linux networking.
It includes complete versions of ping, traceroute, etc. It includes complete versions of ping, traceroute, etc.
http://sourceforge.net/projects/iputils/ https://github.com/iputils/iputils

View File

@ -1,2 +1,2 @@
# From http://sourceforge.net/projects/iputils/files/ # Locally computed
sha1 3e85179746fd93000d6267bd55addfe97f321ba7 iputils-s20121011.tar.bz2 sha256 0e98cb527fa175d1e08afb969c124e452b30968f10ec2c3b078f1440c8977a94 iputils-c8ff6feaf0442f8efd96ccb415770c54f9e84d47.tar.gz

View File

@ -4,10 +4,16 @@
# #
################################################################################ ################################################################################
IPUTILS_VERSION = s20121011 # The original upstream was forked to the github repository in 2014 to
IPUTILS_SITE = http://www.skbuff.net/iputils # pull fixes from other distribution and centralize the changes after
IPUTILS_SOURCE = iputils-$(IPUTILS_VERSION).tar.bz2 # the upstream seemed to have gone dormant. The fork contains the
IPUTILS_LICENSE = GPLv2+, BSD-3c # latest changes including msul support, removing a libsysfs dependency
# and IPv6 updates.
# http://www.spinics.net/lists/netdev/msg279881.html
IPUTILS_VERSION = c8ff6feaf0442f8efd96ccb415770c54f9e84d47
IPUTILS_SITE = $(call github,iputils,iputils,$(IPUTILS_VERSION))
IPUTILS_LICENSE = GPLv2+, BSD-3c, BSD-4c
# Only includes a license file for BSD # Only includes a license file for BSD
IPUTILS_LICENSE_FILES = ninfod/COPYING IPUTILS_LICENSE_FILES = ninfod/COPYING
IPUTILS_DEPENDENCIES = openssl IPUTILS_DEPENDENCIES = openssl
@ -18,11 +24,15 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y)
IPUTILS_DEPENDENCIES += busybox IPUTILS_DEPENDENCIES += busybox
endif endif
# Disabling CAP_SETPCAP (file capabilities) IPUTILS_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) USE_SYSFS=no USE_IDN=no\
IPUTILS_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) USE_CAP=no USE_SYSFS=no\ CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE"
CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" \
arping clockdiff ping rarpd rdisc tftpd tracepath \ ifeq ($(BR2_PACKAGE_LIBCAP),y)
ping6 tracepath6 traceroute6 IPUTILS_MAKE_OPTS += USE_CAP=yes
IPUTILS_DEPENDENCIES += libcap
else
IPUTILS_MAKE_OPTS += USE_CAP=no
endif
define IPUTILS_BUILD_CMDS define IPUTILS_BUILD_CMDS
$(MAKE) -C $(@D) $(IPUTILS_MAKE_OPTS) $(MAKE) -C $(@D) $(IPUTILS_MAKE_OPTS)
@ -36,7 +46,6 @@ define IPUTILS_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 755 $(@D)/rdisc $(TARGET_DIR)/sbin/rdisc $(INSTALL) -D -m 755 $(@D)/rdisc $(TARGET_DIR)/sbin/rdisc
$(INSTALL) -D -m 755 $(@D)/tftpd $(TARGET_DIR)/usr/sbin/in.tftpd $(INSTALL) -D -m 755 $(@D)/tftpd $(TARGET_DIR)/usr/sbin/in.tftpd
$(INSTALL) -D -m 755 $(@D)/tracepath $(TARGET_DIR)/bin/tracepath $(INSTALL) -D -m 755 $(@D)/tracepath $(TARGET_DIR)/bin/tracepath
$(INSTALL) -D -m 755 $(@D)/ping6 $(TARGET_DIR)/bin/ping6
$(INSTALL) -D -m 755 $(@D)/tracepath6 $(TARGET_DIR)/bin/tracepath6 $(INSTALL) -D -m 755 $(@D)/tracepath6 $(TARGET_DIR)/bin/tracepath6
$(INSTALL) -D -m 755 $(@D)/traceroute6 $(TARGET_DIR)/bin/traceroute6 $(INSTALL) -D -m 755 $(@D)/traceroute6 $(TARGET_DIR)/bin/traceroute6
endef endef