diff -r 1fd08b889aa3 -r e0ef539e23d9 patches/uClibc/20080801/100-ifaddrs.patch --- a/patches/uClibc/20080801/100-ifaddrs.patch Wed Oct 21 18:08:31 2009 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,190 +0,0 @@ -Copyright 2008 Yann E. MORIN. - -This patch is needed to make gcc-4.3.1 able to build the Java frontend. - -Index: uClibc/libc/inet/ifaddrs.c -=================================================================== ---- uClibc/libc/inet/ifaddrs.c (revision 23002) -+++ uClibc/libc/inet/ifaddrs.c (working copy) -@@ -22,7 +22,7 @@ - #include - #include - #include --#include "ifaddrs.h" -+#include - #include - #include - #include -Index: uClibc/libc/inet/ifaddrs.h -=================================================================== ---- uClibc/libc/inet/ifaddrs.h (revision 23002) -+++ uClibc/libc/inet/ifaddrs.h (working copy) -@@ -1,76 +0,0 @@ --/* ifaddrs.h -- declarations for getting network interface addresses -- Copyright (C) 2002 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#ifndef _IFADDRS_H --#define _IFADDRS_H 1 -- --#include --#include --#include --#include -- --__BEGIN_DECLS -- --/* The `getifaddrs' function generates a linked list of these structures. -- Each element of the list describes one network interface. */ --struct ifaddrs --{ -- struct ifaddrs *ifa_next; /* Pointer to the next structure. */ -- -- char *ifa_name; /* Name of this network interface. */ -- unsigned int ifa_flags; /* Flags as from SIOCGIFFLAGS ioctl. */ -- -- struct sockaddr *ifa_addr; /* Network address of this interface. */ -- struct sockaddr *ifa_netmask; /* Netmask of this interface. */ -- union -- { -- /* At most one of the following two is valid. If the IFF_BROADCAST -- bit is set in `ifa_flags', then `ifa_broadaddr' is valid. If the -- IFF_POINTOPOINT bit is set, then `ifa_dstaddr' is valid. -- It is never the case that both these bits are set at once. */ -- struct sockaddr *ifu_broadaddr; /* Broadcast address of this interface. */ -- struct sockaddr *ifu_dstaddr; /* Point-to-point destination address. */ -- } ifa_ifu; -- /* These very same macros are defined by for `struct ifaddr'. -- So if they are defined already, the existing definitions will be fine. */ --# ifndef ifa_broadaddr --# define ifa_broadaddr ifa_ifu.ifu_broadaddr --# endif --# ifndef ifa_dstaddr --# define ifa_dstaddr ifa_ifu.ifu_dstaddr --# endif -- -- void *ifa_data; /* Address-specific data (may be unused). */ --}; -- -- --/* Create a linked list of `struct ifaddrs' structures, one for each -- network interface on the host machine. If successful, store the -- list in *IFAP and return 0. On errors, return -1 and set `errno'. -- -- The storage returned in *IFAP is allocated dynamically and can -- only be properly freed by passing it to `freeifaddrs'. */ --extern int getifaddrs (struct ifaddrs **__ifap) __THROW; -- --/* Reclaim the storage allocated by a previous `getifaddrs' call. */ --extern void freeifaddrs (struct ifaddrs *__ifa) __THROW; -- --__END_DECLS -- --#endif /* ifaddrs.h */ -Index: uClibc/libc/inet/getaddrinfo.c -=================================================================== ---- uClibc/libc/inet/getaddrinfo.c (revision 23002) -+++ uClibc/libc/inet/getaddrinfo.c (working copy) -@@ -68,7 +68,7 @@ - #include - #include - #include --#include "ifaddrs.h" -+#include - - /* Experimentally off - libc_hidden_proto(memcpy) */ - /* Experimentally off - libc_hidden_proto(memset) */ ---- /dev/null 2008-08-04 09:44:45.624322752 +0200 -+++ uClibc/include/ifaddrs.h 2008-08-05 09:31:20.000000000 +0200 -@@ -0,0 +1,76 @@ -+/* ifaddrs.h -- declarations for getting network interface addresses -+ Copyright (C) 2002 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _IFADDRS_H -+#define _IFADDRS_H 1 -+ -+#include -+#include -+#include -+#include -+ -+__BEGIN_DECLS -+ -+/* The `getifaddrs' function generates a linked list of these structures. -+ Each element of the list describes one network interface. */ -+struct ifaddrs -+{ -+ struct ifaddrs *ifa_next; /* Pointer to the next structure. */ -+ -+ char *ifa_name; /* Name of this network interface. */ -+ unsigned int ifa_flags; /* Flags as from SIOCGIFFLAGS ioctl. */ -+ -+ struct sockaddr *ifa_addr; /* Network address of this interface. */ -+ struct sockaddr *ifa_netmask; /* Netmask of this interface. */ -+ union -+ { -+ /* At most one of the following two is valid. If the IFF_BROADCAST -+ bit is set in `ifa_flags', then `ifa_broadaddr' is valid. If the -+ IFF_POINTOPOINT bit is set, then `ifa_dstaddr' is valid. -+ It is never the case that both these bits are set at once. */ -+ struct sockaddr *ifu_broadaddr; /* Broadcast address of this interface. */ -+ struct sockaddr *ifu_dstaddr; /* Point-to-point destination address. */ -+ } ifa_ifu; -+ /* These very same macros are defined by for `struct ifaddr'. -+ So if they are defined already, the existing definitions will be fine. */ -+# ifndef ifa_broadaddr -+# define ifa_broadaddr ifa_ifu.ifu_broadaddr -+# endif -+# ifndef ifa_dstaddr -+# define ifa_dstaddr ifa_ifu.ifu_dstaddr -+# endif -+ -+ void *ifa_data; /* Address-specific data (may be unused). */ -+}; -+ -+ -+/* Create a linked list of `struct ifaddrs' structures, one for each -+ network interface on the host machine. If successful, store the -+ list in *IFAP and return 0. On errors, return -1 and set `errno'. -+ -+ The storage returned in *IFAP is allocated dynamically and can -+ only be properly freed by passing it to `freeifaddrs'. */ -+extern int getifaddrs (struct ifaddrs **__ifap) __THROW; -+ -+/* Reclaim the storage allocated by a previous `getifaddrs' call. */ -+extern void freeifaddrs (struct ifaddrs *__ifa) __THROW; -+ -+__END_DECLS -+ -+#endif /* ifaddrs.h */