1 |
commit: 63d3dcfd13613f7b9eb23f2b20533dc0e310112c |
2 |
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Aug 4 14:07:17 2016 +0000 |
4 |
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Aug 4 14:07:29 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63d3dcfd |
7 |
|
8 |
net-analyzer/mtr: Fix building with USE="-ipv6 -gtk". |
9 |
|
10 |
Package-Manager: portage-2.3.0 |
11 |
|
12 |
net-analyzer/mtr/files/mtr-9999-ipv6.patch | 59 +++++++++++++++++++++++++++ |
13 |
net-analyzer/mtr/files/mtr-9999-strings.patch | 12 ++++++ |
14 |
net-analyzer/mtr/mtr-0.87.ebuild | 2 + |
15 |
net-analyzer/mtr/mtr-9999.ebuild | 21 ++++++---- |
16 |
4 files changed, 86 insertions(+), 8 deletions(-) |
17 |
|
18 |
diff --git a/net-analyzer/mtr/files/mtr-9999-ipv6.patch b/net-analyzer/mtr/files/mtr-9999-ipv6.patch |
19 |
new file mode 100644 |
20 |
index 0000000..32a6285 |
21 |
--- /dev/null |
22 |
+++ b/net-analyzer/mtr/files/mtr-9999-ipv6.patch |
23 |
@@ -0,0 +1,59 @@ |
24 |
+--- a/net.c |
25 |
++++ b/net.c |
26 |
+@@ -320,9 +320,13 @@ |
27 |
+ struct sockaddr_storage local; |
28 |
+ struct sockaddr_storage remote; |
29 |
+ struct sockaddr_in *local4 = (struct sockaddr_in *) &local; |
30 |
++#ifdef ENABLE_IPV6 |
31 |
+ struct sockaddr_in6 *local6 = (struct sockaddr_in6 *) &local; |
32 |
++#endif |
33 |
+ struct sockaddr_in *remote4 = (struct sockaddr_in *) &remote; |
34 |
++#ifdef ENABLE_IPV6 |
35 |
+ struct sockaddr_in6 *remote6 = (struct sockaddr_in6 *) &remote; |
36 |
++#endif |
37 |
+ socklen_t len; |
38 |
+ |
39 |
+ ttl = index + 1; |
40 |
+@@ -437,9 +441,13 @@ |
41 |
+ struct sockaddr_storage local; |
42 |
+ struct sockaddr_storage remote; |
43 |
+ struct sockaddr_in *local4 = (struct sockaddr_in *) &local; |
44 |
++#ifdef ENABLE_IPV6 |
45 |
+ struct sockaddr_in6 *local6 = (struct sockaddr_in6 *) &local; |
46 |
++#endif |
47 |
+ struct sockaddr_in *remote4 = (struct sockaddr_in *) &remote; |
48 |
++#ifdef ENABLE_IPV6 |
49 |
+ struct sockaddr_in6 *remote6 = (struct sockaddr_in6 *) &remote; |
50 |
++#endif |
51 |
+ socklen_t len; |
52 |
+ |
53 |
+ ttl = index + 1; |
54 |
+@@ -726,8 +734,12 @@ |
55 |
+ |
56 |
+ /* sendto() assumes packet length includes the IPv4 header but not the |
57 |
+ IPv6 header. */ |
58 |
++#ifdef ENABLE_IPV6 |
59 |
+ spacketsize = abs(packetsize) - |
60 |
+ ( ( af == AF_INET ) ? 0 : sizeof (struct ip6_hdr) ); |
61 |
++#else |
62 |
++ spacketsize = abs(packetsize); |
63 |
++#endif |
64 |
+ rv = sendto(sendsock, packet, spacketsize, 0, remotesockaddr, salen); |
65 |
+ if (first && (rv < 0) && ((errno == EINVAL) || (errno == EMSGSIZE))) { |
66 |
+ /* Try the first packet again using host byte order. */ |
67 |
+@@ -1535,11 +1547,15 @@ |
68 |
+ struct sockaddr_in name_struct; |
69 |
+ #endif |
70 |
+ struct sockaddr_in * sa4; |
71 |
++#ifdef ENABLE_IPV6 |
72 |
+ struct sockaddr_in6 * sa6; |
73 |
++#endif |
74 |
+ struct sockaddr * name = (struct sockaddr *) &name_struct; |
75 |
+ struct sockaddr_storage remote; |
76 |
+ struct sockaddr_in *remote4 = (struct sockaddr_in *) &remote; |
77 |
++#ifdef ENABLE_IPV6 |
78 |
+ struct sockaddr_in6 *remote6 = (struct sockaddr_in6 *) &remote; |
79 |
++#endif |
80 |
+ socklen_t len; |
81 |
+ int s; |
82 |
+ |
83 |
|
84 |
diff --git a/net-analyzer/mtr/files/mtr-9999-strings.patch b/net-analyzer/mtr/files/mtr-9999-strings.patch |
85 |
new file mode 100644 |
86 |
index 0000000..878382b |
87 |
--- /dev/null |
88 |
+++ b/net-analyzer/mtr/files/mtr-9999-strings.patch |
89 |
@@ -0,0 +1,12 @@ |
90 |
+--- a/dns.c |
91 |
++++ b/dns.c |
92 |
+@@ -49,7 +49,8 @@ |
93 |
+ #include <unistd.h> |
94 |
+ #include <fcntl.h> |
95 |
+ //#include <ctype.h> |
96 |
+-//#include <string.h> |
97 |
++#include <string.h> |
98 |
++#include <strings.h> |
99 |
+ #include <stdio.h> |
100 |
+ #include <stdlib.h> |
101 |
+ #include <signal.h> |
102 |
|
103 |
diff --git a/net-analyzer/mtr/mtr-0.87.ebuild b/net-analyzer/mtr/mtr-0.87.ebuild |
104 |
index afac241..f1a2c37 100644 |
105 |
--- a/net-analyzer/mtr/mtr-0.87.ebuild |
106 |
+++ b/net-analyzer/mtr/mtr-0.87.ebuild |
107 |
@@ -30,6 +30,8 @@ DEPEND=" |
108 |
DOCS=( AUTHORS FORMATS NEWS README SECURITY TODO ) |
109 |
FILECAPS=( cap_net_raw /usr/sbin/mtr ) |
110 |
PATCHES=( |
111 |
+ "${FILESDIR}"/${PN}-0.80-impl-dec.patch |
112 |
+ "${FILESDIR}"/${PN}-9999-ipv6.patch |
113 |
"${FILESDIR}"/${PN}-9999-tinfo.patch |
114 |
) |
115 |
|
116 |
|
117 |
diff --git a/net-analyzer/mtr/mtr-9999.ebuild b/net-analyzer/mtr/mtr-9999.ebuild |
118 |
index 2af7b97..f54af4f 100644 |
119 |
--- a/net-analyzer/mtr/mtr-9999.ebuild |
120 |
+++ b/net-analyzer/mtr/mtr-9999.ebuild |
121 |
@@ -1,10 +1,9 @@ |
122 |
-# Copyright 1999-2015 Gentoo Foundation |
123 |
+# Copyright 1999-2016 Gentoo Foundation |
124 |
# Distributed under the terms of the GNU General Public License v2 |
125 |
# $Id$ |
126 |
|
127 |
-EAPI=5 |
128 |
- |
129 |
-inherit eutils autotools fcaps flag-o-matic git-r3 |
130 |
+EAPI=6 |
131 |
+inherit autotools eutils fcaps flag-o-matic git-r3 |
132 |
|
133 |
DESCRIPTION="My TraceRoute, an Excellent network diagnostic tool" |
134 |
HOMEPAGE="http://www.bitwizard.nl/mtr/" |
135 |
@@ -31,6 +30,12 @@ DEPEND=" |
136 |
|
137 |
DOCS=( AUTHORS FORMATS NEWS README SECURITY TODO ) |
138 |
FILECAPS=( cap_net_raw /usr/sbin/mtr ) |
139 |
+PATCHES=( |
140 |
+ "${FILESDIR}"/${PN}-0.80-impl-dec.patch |
141 |
+ "${FILESDIR}"/${PN}-9999-ipv6.patch |
142 |
+ "${FILESDIR}"/${PN}-9999-strings.patch |
143 |
+ "${FILESDIR}"/${PN}-9999-tinfo.patch |
144 |
+) |
145 |
|
146 |
src_unpack() { |
147 |
git-r3_src_unpack |
148 |
@@ -38,16 +43,16 @@ src_unpack() { |
149 |
} |
150 |
|
151 |
src_prepare() { |
152 |
- epatch \ |
153 |
- "${FILESDIR}"/${PN}-0.80-impl-dec.patch \ |
154 |
- "${FILESDIR}"/${PN}-0.85-gtk.patch \ |
155 |
- "${FILESDIR}"/${PN}-9999-tinfo.patch |
156 |
+ default |
157 |
|
158 |
sed -i -e "/^\s*xver=/s|$.*)|${EGIT_VERSION:0:8}|" Makefile.am || die |
159 |
|
160 |
# Keep this comment and following mv, even in case ebuild does not need |
161 |
# it: kept gtk-2.0.m4 in SRC_URI but you'll have to mv it before autoreconf |
162 |
mv "${WORKDIR}"/gtk-2.0-for-mtr.m4 gtk-2.0.m4 || die #222909 |
163 |
+ |
164 |
+ eapply_user |
165 |
+ |
166 |
AT_M4DIR="." eautoreconf |
167 |
} |