This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
PATCH: Fix "make xcheck" in sunrpc
- From: "H.J. Lu" <hongjiu dot lu at intel dot com>
- To: GNU C Library <libc-alpha at sourceware dot org>
- Date: Wed, 20 Apr 2011 12:24:34 -0700
- Subject: PATCH: Fix "make xcheck" in sunrpc
- Reply-to: "H.J. Lu" <hjl dot tools at gmail dot com>
Hi,
thrsvc in sunrpc needs clnt_perrno, svc_run and svcudp_create. This
patch fixes it.
H.J.
---
2011-04-20 H.J. Lu <hongjiu.lu@intel.com>
* sunrpc/Makefile (need-export-routines): Add svc_run.
(routines): Remove svc_run.
($(objpfx)thrsvc): Add $(common-objpfx)linkobj/libc.so.
* sunrpc/clnt_perr.c (clnt_perrno): Export.
* sunrpc/svc_run.c (svc_run): Likewise.
* sunrpc/svc_udp.c (svcudp_create): Likewise.
diff --git a/sunrpc/Makefile b/sunrpc/Makefile
index f86393a..bcaa215 100644
--- a/sunrpc/Makefile
+++ b/sunrpc/Makefile
@@ -64,12 +64,13 @@ ifeq ($(versioning),yes)
need-export-routines := auth_des auth_unix clnt_gen clnt_perr clnt_tcp \
clnt_udp get_myaddr key_call netname pm_getport \
rpc_thread svc svc_tcp svc_udp xcrypt xdr_array xdr \
- xdr_intXX_t xdr_mem xdr_ref xdr_sizeof xdr_stdio
+ xdr_intXX_t xdr_mem xdr_ref xdr_sizeof xdr_stdio \
+ svc_run
routines := auth_none authuxprot bindrsvprt clnt_raw clnt_simp \
rpc_dtable getrpcport pmap_clnt pm_getmaps pmap_prot pmap_prot2 \
pmap_rmt rpc_prot rpc_common rpc_cmsg svc_auth svc_authux svc_raw \
- svc_run svc_simple xdr_float xdr_rec publickey authdes_prot \
+ svc_simple xdr_float xdr_rec publickey authdes_prot \
des_crypt des_impl des_soft key_prot openchild rtime svcauth_des \
clnt_unix svc_unix create_xid $(need-export-routines)
# We only add the RPC for compatibility to libc.so.
@@ -212,4 +213,4 @@ ifneq ($(no_deps),t)
endif
endif
-$(objpfx)thrsvc: $(shared-thread-library)
+$(objpfx)thrsvc: $(common-objpfx)linkobj/libc.so $(shared-thread-library)
diff --git a/sunrpc/clnt_perr.c b/sunrpc/clnt_perr.c
index 734c2b3..e6b2460 100644
--- a/sunrpc/clnt_perr.c
+++ b/sunrpc/clnt_perr.c
@@ -270,7 +270,11 @@ clnt_perrno (enum clnt_stat num)
{
(void) __fxprintf (NULL, "%s", clnt_sperrno (num));
}
+#ifdef EXPORT_RPC_SYMBOLS
+libc_hidden_def (clnt_perrno)
+#else
libc_hidden_nolink (clnt_perrno, GLIBC_2_0)
+#endif
char *
clnt_spcreateerror (const char *msg)
diff --git a/sunrpc/svc_run.c b/sunrpc/svc_run.c
index d92ad57..09f40dd 100644
--- a/sunrpc/svc_run.c
+++ b/sunrpc/svc_run.c
@@ -101,4 +101,8 @@ svc_run (void)
free (my_pollfd);
}
+#ifdef EXPORT_RPC_SYMBOLS
+libc_hidden_def (svc_run)
+#else
libc_hidden_nolink (svc_run, GLIBC_2_0)
+#endif
diff --git a/sunrpc/svc_udp.c b/sunrpc/svc_udp.c
index 1e6e456..71be4f8 100644
--- a/sunrpc/svc_udp.c
+++ b/sunrpc/svc_udp.c
@@ -195,7 +195,11 @@ svcudp_create (sock)
{
return svcudp_bufcreate (sock, UDPMSGSIZE, UDPMSGSIZE);
}
+#ifdef EXPORT_RPC_SYMBOLS
+libc_hidden_def (svcudp_create)
+#else
libc_hidden_nolink (svcudp_create, GLIBC_2_0)
+#endif
static enum xprt_stat
svcudp_stat (xprt)