Browse Source

ether_line: fix build for socket && !ip

The internal __ether_line helper needs ether_ntoa_r()

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
(cherry picked from commit 81264e8097b705f3b2a7e29be0a1a2ea853230cb)

Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Bernhard Reutner-Fischer 14 years ago
parent
commit
42303a2fc7
2 changed files with 5 additions and 6 deletions
  1. 3 4
      include/netinet/ether.h
  2. 2 2
      libc/inet/Makefile.in

+ 3 - 4
include/netinet/ether.h

@@ -31,7 +31,8 @@
 
 __BEGIN_DECLS
 
-#if defined __UCLIBC_HAS_IPV4__ || defined __UCLIBC_HAS_IPV6__
+#if defined __UCLIBC_HAS_SOCKET__ || defined __UCLIBC_HAS_IPV4__ || \
+	defined __UCLIBC_HAS_IPV6__
 /* Convert 48 bit Ethernet ADDRess to ASCII.  */
 extern char *ether_ntoa (__const struct ether_addr *__addr) __THROW;
 extern char *ether_ntoa_r (__const struct ether_addr *__addr, char *__buf)
@@ -43,10 +44,8 @@ extern struct ether_addr *ether_aton (__const char *__asc) __THROW;
 extern struct ether_addr *ether_aton_r (__const char *__asc,
 					struct ether_addr *__addr) __THROW;
 libc_hidden_proto(ether_aton_r)
-#endif
 
-#if defined __UCLIBC_HAS_SOCKET__ || defined __UCLIBC_HAS_IPV4__ || \
-	defined __UCLIBC_HAS_IPV6__
+
 /* Map 48 bit Ethernet number ADDR to HOSTNAME.  */
 extern int ether_ntohost (char *__hostname, __const struct ether_addr *__addr)
      __THROW;

+ 2 - 2
libc/inet/Makefile.in

@@ -20,7 +20,7 @@ endif
 ifneq ($(UCLIBC_HAS_IPV4)$(UCLIBC_HAS_IPV6),)
 CSRC +=	getservice.c getproto.c hostid.c getnetent.c getnetbynm.c getnetbyad.c \
 	inet_net.c herror.c if_index.c gai_strerror.c getaddrinfo.c \
-	ether_addr.c ifaddrs.c ntop.c
+	ifaddrs.c ntop.c
 endif
 ifeq ($(UCLIBC_HAS_IPV6),y)
 CSRC += in6_addr.c
@@ -62,7 +62,7 @@ CSRC += $(socketcalls_CSRC) opensock.c
 endif
 
 ifneq ($(UCLIBC_HAS_SOCKET)$(UCLIBC_HAS_IPV4)$(UCLIBC_HAS_IPV6),)
-CSRC += ethers.c
+CSRC += ethers.c ether_addr.c
 endif
 
 INET_SRC := $(patsubst %.c,$(INET_DIR)/%.c,$(CSRC))