[oe] [PATCH] avahi_0.6.25.bb: Fix build when DISTRO_FEATURES lacks ipv6.

Graham Gower graham.gower at gmail.com
Tue Nov 30 01:10:00 UTC 2010


socket.c: In function 'avahi_mdns_mcast_join_ipv6':
socket.c:159:38: error: 'IPV6_DROP_MEMBERSHIP' undeclared (first use in this function)
socket.c:159:38: note: each undeclared identifier is reported only once for each function it appears in
socket.c:161:45: error: 'IPV6_ADD_MEMBERSHIP' undeclared (first use in this function)
socket.c: In function 'ipv6_pktinfo':
socket.c:273:9: warning: unused variable 'yes'
socket.c:272:29: warning: unused parameter 'fd'
socket.c: In function 'avahi_open_socket_ipv6':
socket.c:387:38: error: 'IPV6_MULTICAST_HOPS' undeclared (first use in this function)
socket.c:393:38: error: 'IPV6_UNICAST_HOPS' undeclared (first use in this function)
socket.c:399:38: error: 'IPV6_V6ONLY' undeclared (first use in this function)
socket.c:405:38: error: 'IPV6_MULTICAST_LOOP' undeclared (first use in this function)
cache.c: In function 'avahi_cache_start_poof':
cache.c:494:5: warning: cast discards qualifiers from pointer target type
socket.c: In function 'avahi_send_dns_packet_ipv4':
socket.c:524:16: warning: cast increases required alignment of target type
socket.c: In function 'avahi_send_dns_packet_ipv6':
socket.c:575:23: error: invalid application of 'sizeof' to incomplete type 'struct in6_pktinfo'
socket.c:603:30: error: invalid application of 'sizeof' to incomplete type 'struct in6_pktinfo'
socket.c:608:27: error: 'IPV6_PKTINFO' undeclared (first use in this function)
socket.c:613:17: error: dereferencing pointer to incomplete type
socket.c:616:25: error: dereferencing pointer to incomplete type
socket.c: In function 'avahi_recv_dns_packet_ipv4':
socket.c:716:48: warning: cast increases required alignment of target type
socket.c:716:25: warning: dereferencing type-punned pointer will break strict-aliasing rules
socket.c:722:44: warning: cast increases required alignment of target type
socket.c: In function 'avahi_recv_dns_packet_ipv6':
socket.c:855:22: error: 'IPV6_HOPLIMIT' undeclared (first use in this function)
socket.c:858:48: warning: cast increases required alignment of target type
socket.c:858:25: warning: dereferencing type-punned pointer will break strict-aliasing rules
socket.c:864:22: error: 'IPV6_PKTINFO' undeclared (first use in this function)
socket.c:868:39: error: dereferencing pointer to incomplete type
socket.c:871:59: error: dereferencing pointer to incomplete type
socket.c: In function 'avahi_open_unicast_socket_ipv6':
socket.c:946:38: error: 'IPV6_V6ONLY' undeclared (first use in this function)
make[2]: *** [libavahi_core_la-socket.lo] Error 1

Signed-off-by: Graham Gower <graham.gower at gmail.com>
---
 recipes/avahi/avahi-0.6.25/disable-ipv6.patch |  433 +++++++++++++++++++++++++
 recipes/avahi/avahi_0.6.25.bb                 |    6 +
 2 files changed, 439 insertions(+), 0 deletions(-)
 create mode 100644 recipes/avahi/avahi-0.6.25/disable-ipv6.patch

diff --git a/recipes/avahi/avahi-0.6.25/disable-ipv6.patch b/recipes/avahi/avahi-0.6.25/disable-ipv6.patch
new file mode 100644
index 0000000..14c2723
--- /dev/null
+++ b/recipes/avahi/avahi-0.6.25/disable-ipv6.patch
@@ -0,0 +1,433 @@
+diff -ur avahi-0.6.25.orig/avahi-core/iface.c avahi-0.6.25/avahi-core/iface.c
+--- avahi-0.6.25.orig/avahi-core/iface.c	2008-12-13 08:06:15.000000000 +1030
++++ avahi-0.6.25/avahi-core/iface.c	2010-11-30 09:33:14.000000000 +1030
+@@ -207,7 +207,14 @@
+                    avahi_address_snprint(at, sizeof(at), &i->local_mcast_address));
+ 
+     if (i->protocol == AVAHI_PROTO_INET6)
++#ifndef DISABLE_IPV6
+         r = avahi_mdns_mcast_join_ipv6(i->monitor->server->fd_ipv6, &i->local_mcast_address.data.ipv6, i->hardware->index, join);
++#else
++    {
++	i->mcast_joined = 0;
++        return -1;
++    }
++#endif
+     else {
+         assert(i->protocol == AVAHI_PROTO_INET);
+ 
+@@ -569,8 +576,10 @@
+ 
+     if (i->protocol == AVAHI_PROTO_INET && i->monitor->server->fd_ipv4 >= 0)
+         avahi_send_dns_packet_ipv4(i->monitor->server->fd_ipv4, i->hardware->index, p, i->mcast_joined ? &i->local_mcast_address.data.ipv4 : NULL, a ? &a->data.ipv4 : NULL, port);
++#ifndef DISABLE_IPV6
+     else if (i->protocol == AVAHI_PROTO_INET6 && i->monitor->server->fd_ipv6 >= 0)
+         avahi_send_dns_packet_ipv6(i->monitor->server->fd_ipv6, i->hardware->index, p, i->mcast_joined ? &i->local_mcast_address.data.ipv6 : NULL, a ? &a->data.ipv6 : NULL, port);
++#endif
+ }
+ 
+ void avahi_interface_send_packet(AvahiInterface *i, AvahiDnsPacket *p) {
+@@ -768,6 +777,7 @@
+             if ((ntohl(a->data.ipv4.address) & m) == (ntohl(ia->address.data.ipv4.address) & m))
+                 return 1;
+         } else {
++#ifndef DISABLE_IPV6
+             unsigned j;
+             unsigned char pl;
+             assert(a->proto == AVAHI_PROTO_INET6);
+@@ -791,6 +801,9 @@
+                 if ((a->data.ipv6.address[j] & m) != (ia->address.data.ipv6.address[j] & m))
+                     break;
+             }
++#else
++            return 1;
++#endif
+         }
+     }
+ 
+diff -ur avahi-0.6.25.orig/avahi-core/server.c avahi-0.6.25/avahi-core/server.c
+--- avahi-0.6.25.orig/avahi-core/server.c	2009-04-14 10:58:56.000000000 +0930
++++ avahi-0.6.25/avahi-core/server.c	2010-11-30 09:25:29.000000000 +1030
+@@ -818,8 +818,11 @@
+ 
+             if (j->protocol == AVAHI_PROTO_INET && s->fd_legacy_unicast_ipv4 >= 0) {
+                 avahi_send_dns_packet_ipv4(s->fd_legacy_unicast_ipv4, j->hardware->index, p, NULL, NULL, 0);
+-            } else if (j->protocol == AVAHI_PROTO_INET6 && s->fd_legacy_unicast_ipv6 >= 0)
++            }
++#ifndef DISABLE_IPV6
++	    else if (j->protocol == AVAHI_PROTO_INET6 && s->fd_legacy_unicast_ipv6 >= 0)
+                 avahi_send_dns_packet_ipv6(s->fd_legacy_unicast_ipv6, j->hardware->index, p, NULL, NULL, 0);
++#endif
+         }
+ 
+     /* Reset the id */
+@@ -848,6 +851,7 @@
+ 
+     }
+ 
++#ifndef DISABLE_IPV6
+     if (address->proto == AVAHI_PROTO_INET6 && s->fd_legacy_unicast_ipv6 >= 0) {
+         struct sockaddr_in6 lsa;
+         socklen_t l = sizeof(lsa);
+@@ -857,6 +861,7 @@
+         else
+             return avahi_port_from_sockaddr((struct sockaddr*) &lsa) == port;
+     }
++#endif
+ 
+     return 0;
+ }
+@@ -904,9 +909,11 @@
+         return;
+     }
+ 
++#ifndef DISABLE_IPV6
+     if (avahi_address_is_ipv4_in_ipv6(src_address))
+         /* This is an IPv4 address encapsulated in IPv6, so let's ignore it. */
+         return;
++#endif
+ 
+     if (originates_from_local_legacy_unicast_socket(s, src_address, port))
+         /* This originates from our local reflector, so let's ignore it */
+@@ -1031,11 +1038,14 @@
+     if (fd == s->fd_ipv4) {
+         dest.proto = src.proto = AVAHI_PROTO_INET;
+         p = avahi_recv_dns_packet_ipv4(s->fd_ipv4, &src.data.ipv4, &port, &dest.data.ipv4, &iface, &ttl);
+-    } else {
++    }
++#ifndef DISABLE_IPV6
++    else {
+         assert(fd == s->fd_ipv6);
+         dest.proto = src.proto = AVAHI_PROTO_INET6;
+         p = avahi_recv_dns_packet_ipv6(s->fd_ipv6, &src.data.ipv6, &port, &dest.data.ipv6, &iface, &ttl);
+     }
++#endif
+ 
+     if (p) {
+         if (iface == AVAHI_IF_UNSPEC)
+@@ -1062,10 +1072,13 @@
+ 
+     if (fd == s->fd_legacy_unicast_ipv4)
+         p = avahi_recv_dns_packet_ipv4(s->fd_legacy_unicast_ipv4, NULL, NULL, NULL, NULL, NULL);
+-    else {
++    else
++#ifndef DISABLE_IPV6
++    {
+         assert(fd == s->fd_legacy_unicast_ipv6);
+         p = avahi_recv_dns_packet_ipv6(s->fd_legacy_unicast_ipv6, NULL, NULL, NULL, NULL, NULL);
+     }
++#endif
+ 
+     if (p) {
+         dispatch_legacy_unicast_packet(s, p);
+@@ -1325,33 +1338,47 @@
+     assert(s);
+ 
+     s->fd_ipv4 = s->config.use_ipv4 ? avahi_open_socket_ipv4(s->config.disallow_other_stacks) : -1;
++#ifndef DISABLE_IPV6
+     s->fd_ipv6 = s->config.use_ipv6 ? avahi_open_socket_ipv6(s->config.disallow_other_stacks) : -1;
++#endif
+ 
++#ifndef DISABLE_IPV6
+     if (s->fd_ipv6 < 0 && s->fd_ipv4 < 0)
++#else
++    if (s->fd_ipv4 < 0)
++#endif
+         return AVAHI_ERR_NO_NETWORK;
+ 
+     if (s->fd_ipv4 < 0 && s->config.use_ipv4)
+         avahi_log_notice("Failed to create IPv4 socket, proceeding in IPv6 only mode");
++#ifndef DISABLE_IPV6
+     else if (s->fd_ipv6 < 0 && s->config.use_ipv6)
+         avahi_log_notice("Failed to create IPv6 socket, proceeding in IPv4 only mode");
++#endif
+ 
+     s->fd_legacy_unicast_ipv4 = s->fd_ipv4 >= 0 && s->config.enable_reflector ? avahi_open_unicast_socket_ipv4() : -1;
++#ifndef DISABLE_IPV6
+     s->fd_legacy_unicast_ipv6 = s->fd_ipv6 >= 0 && s->config.enable_reflector ? avahi_open_unicast_socket_ipv6() : -1;
++#endif
+ 
+-    s->watch_ipv4 =
+-        s->watch_ipv6 =
+-        s->watch_legacy_unicast_ipv4 =
+-        s->watch_legacy_unicast_ipv6 = NULL;
++    s->watch_ipv4 = s->watch_legacy_unicast_ipv4 = NULL;
++#ifndef DISABLE_IPV6
++    s->watch_ipv6 = s->watch_legacy_unicast_ipv6 = NULL;
++#endif
+ 
+     if (s->fd_ipv4 >= 0)
+         s->watch_ipv4 = s->poll_api->watch_new(s->poll_api, s->fd_ipv4, AVAHI_WATCH_IN, mcast_socket_event, s);
++#ifndef DISABLE_IPV6
+     if (s->fd_ipv6 >= 0)
+         s->watch_ipv6 = s->poll_api->watch_new(s->poll_api, s->fd_ipv6, AVAHI_WATCH_IN, mcast_socket_event, s);
++#endif
+ 
+     if (s->fd_legacy_unicast_ipv4 >= 0)
+         s->watch_legacy_unicast_ipv4 = s->poll_api->watch_new(s->poll_api, s->fd_legacy_unicast_ipv4, AVAHI_WATCH_IN, legacy_unicast_socket_event, s);
++#ifndef DISABLE_IPV6
+     if (s->fd_legacy_unicast_ipv6 >= 0)
+         s->watch_legacy_unicast_ipv6 = s->poll_api->watch_new(s->poll_api, s->fd_legacy_unicast_ipv6, AVAHI_WATCH_IN, legacy_unicast_socket_event, s);
++#endif
+ 
+     return 0;
+ }
+@@ -1499,25 +1526,33 @@
+ 
+     if (s->watch_ipv4)
+         s->poll_api->watch_free(s->watch_ipv4);
++#ifndef DISABLE_IPV6
+     if (s->watch_ipv6)
+         s->poll_api->watch_free(s->watch_ipv6);
++#endif
+ 
+     if (s->watch_legacy_unicast_ipv4)
+         s->poll_api->watch_free(s->watch_legacy_unicast_ipv4);
++#ifndef DISABLE_IPV6
+     if (s->watch_legacy_unicast_ipv6)
+         s->poll_api->watch_free(s->watch_legacy_unicast_ipv6);
++#endif
+ 
+     /* Free sockets */
+ 
+     if (s->fd_ipv4 >= 0)
+         close(s->fd_ipv4);
++#ifndef DISABLE_IPV6
+     if (s->fd_ipv6 >= 0)
+         close(s->fd_ipv6);
++#endif
+ 
+     if (s->fd_legacy_unicast_ipv4 >= 0)
+         close(s->fd_legacy_unicast_ipv4);
++#ifndef DISABLE_IPV6
+     if (s->fd_legacy_unicast_ipv6 >= 0)
+         close(s->fd_legacy_unicast_ipv6);
++#endif
+ 
+     /* Free other stuff */
+ 
+@@ -1570,7 +1605,11 @@
+     assert(c);
+ 
+     memset(c, 0, sizeof(AvahiServerConfig));
++#ifndef DISABLE_IPV6
+     c->use_ipv6 = 1;
++#else
++    c->use_ipv6 = 0;
++#endif
+     c->use_ipv4 = 1;
+     c->allow_interfaces = NULL;
+     c->deny_interfaces = NULL;
+@@ -1592,7 +1631,9 @@
+     c->disable_publishing = 0;
+     c->allow_point_to_point = 0;
+     c->publish_aaaa_on_ipv4 = 1;
++#ifndef DISABLE_IPV6
+     c->publish_a_on_ipv6 = 0;
++#endif
+ 
+     return c;
+ }
+diff -ur avahi-0.6.25.orig/avahi-core/socket.c avahi-0.6.25/avahi-core/socket.c
+--- avahi-0.6.25.orig/avahi-core/socket.c	2008-06-18 08:43:44.000000000 +0930
++++ avahi-0.6.25/avahi-core/socket.c	2010-11-29 16:55:33.000000000 +1030
+@@ -142,6 +142,7 @@
+     return 0;
+ }
+ 
++#ifndef DISABLE_IPV6
+ int avahi_mdns_mcast_join_ipv6(int fd, const AvahiIPv6Address *a, int idx, int join) {
+     struct ipv6_mreq mreq6;
+     struct sockaddr_in6 sa6;
+@@ -165,6 +166,7 @@
+ 
+     return 0;
+ }
++#endif
+ 
+ static int reuseaddr(int fd) {
+     int yes;
+@@ -371,6 +373,7 @@
+     return -1;
+ }
+ 
++#ifndef DISABLE_IPV6
+ int avahi_open_socket_ipv6(int no_reuse) {
+     struct sockaddr_in6 sa, local;
+     int fd = -1, yes, r;
+@@ -440,6 +443,7 @@
+ 
+     return -1;
+ }
++#endif
+ 
+ static int sendmsg_loop(int fd, struct msghdr *msg, int flags) {
+     assert(fd >= 0);
+@@ -560,6 +564,7 @@
+     return sendmsg_loop(fd, &msg, 0);
+ }
+ 
++#ifndef DISABLE_IPV6
+ int avahi_send_dns_packet_ipv6(
+         int fd,
+         AvahiIfIndex interface,
+@@ -621,6 +626,7 @@
+ 
+     return sendmsg_loop(fd, &msg, 0);
+ }
++#endif
+ 
+ AvahiDnsPacket *avahi_recv_dns_packet_ipv4(
+         int fd,
+@@ -775,6 +781,7 @@
+     return NULL;
+ }
+ 
++#ifndef DISABLE_IPV6
+ AvahiDnsPacket *avahi_recv_dns_packet_ipv6(
+         int fd,
+         AvahiIPv6Address *ret_src_address,
+@@ -892,6 +899,7 @@
+ 
+     return NULL;
+ }
++#endif
+ 
+ int avahi_open_unicast_socket_ipv4(void) {
+     struct sockaddr_in local;
+@@ -933,6 +941,7 @@
+     return -1;
+ }
+ 
++#ifndef DISABLE_IPV6
+ int avahi_open_unicast_socket_ipv6(void) {
+     struct sockaddr_in6 local;
+     int fd = -1, yes;
+@@ -977,3 +986,4 @@
+ 
+     return -1;
+ }
++#endif
+diff -ur avahi-0.6.25.orig/avahi-core/socket.h avahi-0.6.25/avahi-core/socket.h
+--- avahi-0.6.25.orig/avahi-core/socket.h	2008-06-18 08:43:44.000000000 +0930
++++ avahi-0.6.25/avahi-core/socket.h	2010-11-29 16:53:25.000000000 +1030
+@@ -32,18 +32,28 @@
+ #define AVAHI_IPV6_MCAST_GROUP "ff02::fb"
+ 
+ int avahi_open_socket_ipv4(int no_reuse);
++#ifndef DISABLE_IPV6
+ int avahi_open_socket_ipv6(int no_reuse);
++#endif
+ 
+ int avahi_open_unicast_socket_ipv4(void);
++#ifndef DISABLE_IPV6
+ int avahi_open_unicast_socket_ipv6(void);
++#endif
+ 
+ int avahi_send_dns_packet_ipv4(int fd, AvahiIfIndex iface, AvahiDnsPacket *p, const AvahiIPv4Address *src_address, const AvahiIPv4Address *dst_address, uint16_t dst_port);
++#ifndef DISABLE_IPV6
+ int avahi_send_dns_packet_ipv6(int fd, AvahiIfIndex iface, AvahiDnsPacket *p, const AvahiIPv6Address *src_address, const AvahiIPv6Address *dst_address, uint16_t dst_port);
++#endif
+ 
+ AvahiDnsPacket *avahi_recv_dns_packet_ipv4(int fd, AvahiIPv4Address *ret_src_address, uint16_t *ret_src_port, AvahiIPv4Address *ret_dst_address, AvahiIfIndex *ret_iface, uint8_t *ret_ttl);
++#ifndef DISABLE_IPV6
+ AvahiDnsPacket *avahi_recv_dns_packet_ipv6(int fd, AvahiIPv6Address *ret_src_address, uint16_t *ret_src_port, AvahiIPv6Address *ret_dst_address, AvahiIfIndex *ret_iface, uint8_t *ret_ttl);
++#endif
+ 
+ int avahi_mdns_mcast_join_ipv4(int fd, const AvahiIPv4Address *local_address, int iface, int join);
++#ifndef DISABLE_IPV6
+ int avahi_mdns_mcast_join_ipv6(int fd, const AvahiIPv6Address *local_address, int iface, int join);
++#endif
+ 
+ #endif
+diff -ur avahi-0.6.25.orig/avahi-core/wide-area.c avahi-0.6.25/avahi-core/wide-area.c
+--- avahi-0.6.25.orig/avahi-core/wide-area.c	2008-06-18 08:43:44.000000000 +0930
++++ avahi-0.6.25/avahi-core/wide-area.c	2010-11-29 17:00:46.000000000 +1030
+@@ -144,12 +144,16 @@
+         return avahi_send_dns_packet_ipv4(l->engine->fd_ipv4, AVAHI_IF_UNSPEC, p, NULL, &a->data.ipv4, AVAHI_DNS_PORT);
+         
+     } else {
++#ifndef DISABLE_IPV6
+         assert(a->proto == AVAHI_PROTO_INET6);
+ 
+         if (l->engine->fd_ipv6 < 0)
+             return -1;
+         
+         return avahi_send_dns_packet_ipv6(l->engine->fd_ipv6, AVAHI_IF_UNSPEC, p, NULL, &a->data.ipv6, AVAHI_DNS_PORT);
++#else
++	return -1;
++#endif
+     }
+ }
+ 
+@@ -559,8 +563,10 @@
+     if (fd == e->fd_ipv4)
+         p = avahi_recv_dns_packet_ipv4(e->fd_ipv4, NULL, NULL, NULL, NULL, NULL);
+     else {
++#ifndef DISABLE_IPV6
+         assert(fd == e->fd_ipv6);
+         p = avahi_recv_dns_packet_ipv6(e->fd_ipv6, NULL, NULL, NULL, NULL, NULL);
++#endif
+     }
+ 
+     if (p) {
+@@ -580,13 +586,21 @@
+ 
+     /* Create sockets */
+     e->fd_ipv4 = s->config.use_ipv4 ? avahi_open_unicast_socket_ipv4() : -1;
++#ifndef DISABLE_IPV6
+     e->fd_ipv6 = s->config.use_ipv6 ? avahi_open_unicast_socket_ipv6() : -1;
++#endif
+ 
++#ifndef DISABLE_IPV6
+     if (e->fd_ipv4 < 0 && e->fd_ipv6 < 0) {
++#else
++    if (e->fd_ipv4 < 0) {
++#endif
+         avahi_log_error(__FILE__": Failed to create wide area sockets: %s", strerror(errno));
+-
++ 
++#ifndef DISABLE_IPV6
+         if (e->fd_ipv6 >= 0)
+             close(e->fd_ipv6);
++#endif
+ 
+         if (e->fd_ipv4 >= 0)
+             close(e->fd_ipv4);
+@@ -601,8 +615,10 @@
+     
+     if (e->fd_ipv4 >= 0)
+         e->watch_ipv4 = s->poll_api->watch_new(e->server->poll_api, e->fd_ipv4, AVAHI_WATCH_IN, socket_event, e);
++#ifndef DISABLE_IPV6
+     if (e->fd_ipv6 >= 0)
+         e->watch_ipv6 = s->poll_api->watch_new(e->server->poll_api, e->fd_ipv6, AVAHI_WATCH_IN, socket_event, e);
++#endif
+ 
+     e->n_dns_servers = e->current_dns_server = 0;
+     e->next_id = (uint16_t) rand();
+@@ -635,11 +651,13 @@
+     if (e->watch_ipv4)
+         e->server->poll_api->watch_free(e->watch_ipv4);
+ 
++#ifndef DISABLE_IPV6
+     if (e->watch_ipv6)
+         e->server->poll_api->watch_free(e->watch_ipv6);
+ 
+     if (e->fd_ipv6 >= 0)
+         close(e->fd_ipv6);
++#endif
+     
+     if (e->fd_ipv4 >= 0)
+         close(e->fd_ipv4);
+@@ -661,7 +679,11 @@
+ 
+     if (a) {
+         for (e->n_dns_servers = 0; n > 0 && e->n_dns_servers < AVAHI_WIDE_AREA_SERVERS_MAX; a++, n--) 
++#ifndef DISABLE_IPV6
+             if ((a->proto == AVAHI_PROTO_INET && e->fd_ipv4 >= 0) || (a->proto == AVAHI_PROTO_INET6 && e->fd_ipv6 >= 0))
++#else
++            if (a->proto == AVAHI_PROTO_INET && e->fd_ipv4 >= 0)
++#endif
+                 e->dns_servers[e->n_dns_servers++] = *a;
+     } else {
+         assert(n == 0);
diff --git a/recipes/avahi/avahi_0.6.25.bb b/recipes/avahi/avahi_0.6.25.bb
index fa41831..f27b1f9 100644
--- a/recipes/avahi/avahi_0.6.25.bb
+++ b/recipes/avahi/avahi_0.6.25.bb
@@ -6,5 +6,11 @@ DEPENDS += "intltool-native"
 
 PACKAGES =+ "libavahi-gobject"
 
+SRC_URI += "file://disable-ipv6.patch"
+
+noipv6 = "${@base_contains('DISTRO_FEATURES', 'ipv6', '', '-DDISABLE_IPV6', d)}"
+EXTRA_OEMAKE_append = " 'CFLAGS=${CFLAGS} ${noipv6}'"
+
+
 SRC_URI[md5sum] = "a83155a6e29e3988f07e5eea3287b21e"
 SRC_URI[sha256sum] = "9220d974f5515b8ccfa3900cd72cedcac0fa4cc87ca3c64405f7c55346cbba59"
-- 
1.7.1





More information about the Openembedded-devel mailing list