aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/inetutils
diff options
context:
space:
mode:
authorGraham Gower <graham.gower@gmail.com>2010-12-02 11:05:58 +1030
committerStefan Schmidt <stefan@buglabs.net>2010-12-02 16:47:20 +0100
commitf07157a85f6790728ae7d7f435b48be02c9fa336 (patch)
tree4a30dc7dca7f60f91a8064c54e915e4208c6407a /recipes/inetutils
parenta5464f8e1febb8f17aa2eb1ecc66f922e0b0dd9c (diff)
downloadopenembedded-f07157a85f6790728ae7d7f435b48be02c9fa336.tar.gz
inetutils_1.8.bb: Fix build when DISTRO_FEATURES lacks ipv6.
In file included from ./ping.h:19:0, from ping_address.c:47: ./ping_common.h:23:27: fatal error: netinet/icmp6.h: No such file or directory compilation terminated. In file included from ./ping.h:19:0, from ping_router.c:46: ./ping_common.h:23:27: fatal error: netinet/icmp6.h: No such file or directory compilation terminated. make[2]: *** [ping_address.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: *** [ping_router.o] Error 1 In file included from ping_common.c:32:0: ping_common.h:23:27: fatal error: netinet/icmp6.h: No such file or directory compilation terminated. make[2]: *** [ping_common.o] Error 1 In file included from ping.h:19:0, from libping.c:38: ping_common.h:23:27: fatal error: netinet/icmp6.h: No such file or directory compilation terminated. make[2]: *** [libping.o] Error 1 In file included from ./ping.h:19:0, from ping_timestamp.c:46: ./ping_common.h:23:27: fatal error: netinet/icmp6.h: No such file or directory compilation terminated. make[2]: *** [ping_timestamp.o] Error 1 In file included from ./ping.h:19:0, from ping_echo.c:47: ./ping_common.h:23:27: fatal error: netinet/icmp6.h: No such file or directory compilation terminated. make[2]: *** [ping_echo.o] Error 1 In file included from ./ping.h:19:0, from ping.c:49: ./ping_common.h:23:27: fatal error: netinet/icmp6.h: No such file or directory compilation terminated. make[2]: *** [ping.o] Error 1 Signed-off-by: Graham Gower <graham.gower@gmail.com> Acked-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'recipes/inetutils')
-rw-r--r--recipes/inetutils/inetutils-1.8/fix-disable-ipv6.patch58
-rw-r--r--recipes/inetutils/inetutils_1.8.bb6
2 files changed, 63 insertions, 1 deletions
diff --git a/recipes/inetutils/inetutils-1.8/fix-disable-ipv6.patch b/recipes/inetutils/inetutils-1.8/fix-disable-ipv6.patch
new file mode 100644
index 0000000000..75d51a1b08
--- /dev/null
+++ b/recipes/inetutils/inetutils-1.8/fix-disable-ipv6.patch
@@ -0,0 +1,58 @@
+Upstream: http://www.mail-archive.com/bug-inetutils@gnu.org/msg02103.html
+
+diff -ur inetutils-1.8.orig/ping/ping_common.h inetutils-1.8/ping/ping_common.h
+--- inetutils-1.8.orig/ping/ping_common.h 2010-05-15 20:55:47.000000000 +0930
++++ inetutils-1.8/ping/ping_common.h 2010-12-01 12:19:08.000000000 +1030
+@@ -17,10 +17,14 @@
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see `http://www.gnu.org/licenses/'. */
+
++#include <config.h>
++
+ #include <netinet/in_systm.h>
+ #include <netinet/in.h>
+ #include <netinet/ip.h>
++#ifdef HAVE_IPV6
+ #include <netinet/icmp6.h>
++#endif
+ #include <icmp.h>
+ #include <error.h>
+ #include <progname.h>
+@@ -66,13 +70,19 @@
+ (t).tv_usec = ((i)%PING_PRECISION)*(1000000/PING_PRECISION) ;\
+ } while (0)
+
++#ifdef HAVE_IPV6
+ /* Not sure about this step*/
+ #define _PING_BUFLEN(p, USE_IPV6) ((USE_IPV6)? ((p)->ping_datalen + sizeof (struct icmp6_hdr)) : \
+ ((p)->ping_datalen + sizeof (icmphdr_t)))
++#else
++#define _PING_BUFLEN(p, USE_IPV6) ((p)->ping_datalen + sizeof (icmphdr_t))
++#endif
+
++#ifdef HAVE_IPV6
+ typedef int (*ping_efp6) (int code, void *closure, struct sockaddr_in6 * dest,
+ struct sockaddr_in6 * from, struct icmp6_hdr * icmp,
+ int datalen);
++#endif
+
+ typedef int (*ping_efp) (int code,
+ void *closure,
+@@ -81,13 +91,17 @@
+ struct ip * ip, icmphdr_t * icmp, int datalen);
+
+ union event {
++#ifdef HAVE_IPV6
+ ping_efp6 handler6;
++#endif
+ ping_efp handler;
+ };
+
+ union ping_address {
+ struct sockaddr_in ping_sockaddr;
++#ifdef HAVE_IPV6
+ struct sockaddr_in6 ping_sockaddr6;
++#endif
+ };
+
+ typedef struct ping_data PING;
diff --git a/recipes/inetutils/inetutils_1.8.bb b/recipes/inetutils/inetutils_1.8.bb
index 42fb760c57..1e3d2abe5a 100644
--- a/recipes/inetutils/inetutils_1.8.bb
+++ b/recipes/inetutils/inetutils_1.8.bb
@@ -17,12 +17,16 @@ SRC_URI = "${GNU_MIRROR}/inetutils/inetutils-${PV}.tar.gz \
file://inetutils-1.8-1003-use-daemon-from-the-C-library-when-possible.patch \
file://inetutils-1.8-1004-detect-fork-support.patch \
file://inetutils-1.8-1005-ftpd-add-daemon-D-nommu-support.patch \
+ file://fix-disable-ipv6.patch \
"
inherit autotools
+noipv6="${@base_contains('DISTRO_FEATURES', 'ipv6', '', '--disable-ipv6 gl_cv_socket_ipv6=no', d)}"
EXTRA_OECONF = "--with-ncurses-include-dir=${STAGING_INCDIR} \
- --with-path-procnet-dev=/proc/net/dev"
+ --with-path-procnet-dev=/proc/net/dev \
+ ${noipv6} \
+ "
do_configure_prepend () {
export HELP2MAN='true'