diff -Nur eglibc-2.12.orig/libc/sunrpc/proto.h eglibc-2.12/libc/sunrpc/proto.h --- eglibc-2.12.orig/libc/sunrpc/proto.h 2010-09-28 19:14:26.000000000 +0200 +++ eglibc-2.12/libc/sunrpc/proto.h 2010-09-29 14:05:15.000000000 +0200 @@ -58,7 +58,9 @@ /* Rather then defining _GNU_SOURCE before including $build's we just declare stpcpy here. */ +#if !defined(__APPLE__) extern char *stpcpy (char *, const char *); +#endif /* Use $build's i18n support as we can't use $host's. */ #define _(X) (gettext (X)) diff -Nur eglibc-2.12.orig/libc/sunrpc/rpc/types.h eglibc-2.12/libc/sunrpc/rpc/types.h --- eglibc-2.12.orig/libc/sunrpc/rpc/types.h 2010-09-28 19:14:26.000000000 +0200 +++ eglibc-2.12/libc/sunrpc/rpc/types.h 2010-09-29 12:45:55.000000000 +0200 @@ -68,6 +68,7 @@ #include #endif +#if !defined(_CROSS_RPCGEN_) || !defined(__APPLE__) #ifndef __u_char_defined typedef __u_char u_char; typedef __u_short u_short; @@ -83,6 +84,7 @@ typedef __caddr_t caddr_t; # define __daddr_t_defined #endif +#endif #include #include diff -Nur eglibc-2.12.orig/libc/sunrpc/rpc_clntout.c eglibc-2.12/libc/sunrpc/rpc_clntout.c --- eglibc-2.12.orig/libc/sunrpc/rpc_clntout.c 2010-09-28 19:14:27.000000000 +0200 +++ eglibc-2.12/libc/sunrpc/rpc_clntout.c 2010-09-29 12:45:11.000000000 +0200 @@ -31,7 +31,7 @@ */ #include #include -#include +#include "rpc/types.h" #include "rpc_parse.h" #include "rpc_util.h" #include "proto.h" diff -Nur eglibc-2.12.orig/libc/sunrpc/rpc_main.c eglibc-2.12/libc/sunrpc/rpc_main.c --- eglibc-2.12.orig/libc/sunrpc/rpc_main.c 2010-09-28 19:14:27.000000000 +0200 +++ eglibc-2.12/libc/sunrpc/rpc_main.c 2010-09-29 12:45:11.000000000 +0200 @@ -37,7 +37,11 @@ #include #include #include +#ifdef _CROSS_RPCGEN_ +#define gettext(X) (X) +#else #include +#endif #include #include #include @@ -996,10 +1000,12 @@ abort (); temp = rindex (cmd->infile, '.'); cp = stpcpy (mkfilename, "Makefile."); - if (temp != NULL) - *((char *) stpncpy (cp, cmd->infile, temp - cmd->infile)) = '\0'; - else + if (temp != NULL) { + strncpy (cp, cmd->infile, temp - cmd->infile); + cp[temp - cmd->infile - 1] = '\0'; + } else { stpcpy (cp, cmd->infile); + } } else diff -Nur eglibc-2.12.orig/libc/sunrpc/rpc_scan.c eglibc-2.12/libc/sunrpc/rpc_scan.c --- eglibc-2.12.orig/libc/sunrpc/rpc_scan.c 2010-09-28 19:14:27.000000000 +0200 +++ eglibc-2.12/libc/sunrpc/rpc_scan.c 2010-09-29 12:45:11.000000000 +0200 @@ -36,7 +36,11 @@ #include #include #include +#ifdef _CROSS_RPCGEN_ +#define gettext(X) (X) +#else #include +#endif #include "rpc_scan.h" #include "rpc_parse.h" #include "rpc_util.h" diff -Nur eglibc-2.12.orig/libc/timezone/Makefile eglibc-2.12/libc/timezone/Makefile --- eglibc-2.12.orig/libc/timezone/Makefile 2010-09-28 19:13:39.000000000 +0200 +++ eglibc-2.12/libc/timezone/Makefile 2010-09-29 12:45:11.000000000 +0200 @@ -181,8 +181,9 @@ $(objpfx)zic: $(addprefix $(objpfx), $(zic-objs)) $(addprefix $(objpfx)cross-,$(zic-objs)): $(objpfx)cross-%.o: %.c - gcc $< -c $(OUTPUT_OPTION) $(CFLAGS-$*.c) $(CPPFLAGS-$*) \ - -DCROSS_ZIC $(compile-mkdep-flags) + gcc $< -c $(OUTPUT_OPTION) \ + $(filter-out -DHAVE_GETTEXT,$(CFLAGS-$*.c)) \ + $(CPPFLAGS-$*) -DCROSS_ZIC $(compile-mkdep-flags) $(objpfx)cross-zic: $(addprefix $(objpfx)cross-,$(zic-objs)) gcc $(addprefix $(objpfx)cross-,$(zic-objs)) -o $@