diff options
author | John Crispin <john@openwrt.org> | 2015-03-12 19:50:57 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2015-03-12 19:50:57 +0000 |
commit | 3e2f57835342074a90843077c1c63c88a42e6217 (patch) | |
tree | 666eb809bad8689d3e992696cd44ea8efa233eda /toolchain/glibc/patches/2.19/100-fix_cross_rpcgen.patch | |
parent | eff1859f8e75d7d7cc3d07d2bcb5952ab214b8a0 (diff) | |
download | upstream-3e2f57835342074a90843077c1c63c88a42e6217.tar.gz upstream-3e2f57835342074a90843077c1c63c88a42e6217.tar.bz2 upstream-3e2f57835342074a90843077c1c63c88a42e6217.zip |
toolchain: The glorious return of glibc, ver 2.21
It's the eglibc packaging with a bit of spit-polishing. And testing. :-)
[blogic: merged glibc and eglibc into 1 and made eglibc a glibc variant]
Signed-off-by: Jeff Waugh <jdub@bethesignal.org>
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 44701
Diffstat (limited to 'toolchain/glibc/patches/2.19/100-fix_cross_rpcgen.patch')
-rw-r--r-- | toolchain/glibc/patches/2.19/100-fix_cross_rpcgen.patch | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/toolchain/glibc/patches/2.19/100-fix_cross_rpcgen.patch b/toolchain/glibc/patches/2.19/100-fix_cross_rpcgen.patch new file mode 100644 index 0000000000..5c0d45b530 --- /dev/null +++ b/toolchain/glibc/patches/2.19/100-fix_cross_rpcgen.patch @@ -0,0 +1,52 @@ +--- a/libc/sunrpc/rpc/types.h ++++ b/libc/sunrpc/rpc/types.h +@@ -75,18 +75,23 @@ typedef unsigned long rpcport_t; + #endif + + #ifndef __u_char_defined +-typedef __u_char u_char; +-typedef __u_short u_short; +-typedef __u_int u_int; +-typedef __u_long u_long; +-typedef __quad_t quad_t; +-typedef __u_quad_t u_quad_t; +-typedef __fsid_t fsid_t; ++typedef unsigned char u_char; ++typedef unsigned short u_short; ++typedef unsigned int u_int; ++typedef unsigned long u_long; ++#if __WORDSIZE == 64 ++typedef long int quad_t; ++typedef unsigned long int u_quad_t; ++#elif defined __GLIBC_HAVE_LONG_LONG ++typedef long long int quad_t; ++typedef unsigned long long int u_quad_t; ++#endif ++typedef u_quad_t fsid_t; + # define __u_char_defined + #endif +-#ifndef __daddr_t_defined +-typedef __daddr_t daddr_t; +-typedef __caddr_t caddr_t; ++#if !defined(__daddr_t_defined) && defined(linux) ++typedef long int daddr_t; ++typedef char *caddr_t; + # define __daddr_t_defined + #endif + +--- a/libc/sunrpc/rpc_main.c ++++ b/libc/sunrpc/rpc_main.c +@@ -958,9 +958,10 @@ mkfile_output (struct commandline *cmd) + 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); + + } |