This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] Disable rest of sunrpc, too [V2]
- From: Thorsten Kukuk <kukuk at suse dot de>
- To: libc-alpha at sourceware dot org
- Date: Thu, 23 Feb 2017 15:42:51 +0100
- Subject: [PATCH] Disable rest of sunrpc, too [V2]
- Authentication-results: sourceware.org; auth=none
Hi,
if the sunrpc code is disabled, we still build and install header
files, rpcgen or librpcsvc.a by default. That's bad because it
prevents from installing a full replacement of glibc SunRPC code
in the same place, an alternate directory has to be used, which
means a lot of code has to be adjusted.
Comments?
Thorsten
--
Thorsten Kukuk, Distinguished Engineer, Senior Architect SLES & CaaSP
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nuernberg, Germany
GF: Felix Imendoerffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nuernberg)
If sunrpc code is disabled, no RPC header files, rpcgen nor
librpcsvc.a should be installed, too.
* sunrpc/Makefile: don't build and install header files,
rpcgen and librpcsvc.a by default.
Signed-off-by: Thorsten Kukuk <kukuk@thkukuk.de>
---
NEWS | 4 ++++
sunrpc/Makefile | 15 +++++++++------
2 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/NEWS b/NEWS
index b5a401c..3e87a9a 100644
--- a/NEWS
+++ b/NEWS
@@ -9,6 +9,10 @@ Version 2.26
[Add important changes here]
+* rpcgen and librpcsvc.a will now only be build if
+ obsolete-rpc configuration is disabled. Alternative
+ sources can be found at https://github.com/thkukuk/rpcsvc-proto.
+
Security related changes:
[Add security related changes here]
diff --git a/sunrpc/Makefile b/sunrpc/Makefile
index 0c1e612..305bee6 100644
--- a/sunrpc/Makefile
+++ b/sunrpc/Makefile
@@ -48,11 +48,10 @@ include ../Makeconfig
rpcsvc = bootparam_prot.x nlm_prot.x rstat.x \
yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \
rusers.x spray.x nfs_prot.x rquota.x key_prot.x
-headers-in-tirpc = $(addprefix rpc/,auth.h auth_unix.h clnt.h pmap_clnt.h \
- pmap_prot.h pmap_rmt.h rpc.h rpc_msg.h \
- svc.h svc_auth.h types.h xdr.h auth_des.h \
- des_crypt.h)
-headers-not-in-tirpc = $(addprefix rpc/,key_prot.h rpc_des.h) \
+headers-sunrpc = $(addprefix rpc/,auth.h auth_unix.h clnt.h pmap_clnt.h \
+ pmap_prot.h pmap_rmt.h rpc.h rpc_msg.h \
+ svc.h svc_auth.h types.h xdr.h auth_des.h \
+ des_crypt.h key_prot.h rpc_des.h) \
$(rpcsvc:%=rpcsvc/%) rpcsvc/bootparam.h
headers = rpc/netdb.h
install-others = $(inst_sysconfdir)/rpc
@@ -61,7 +60,7 @@ generated += $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \
generated-dirs += rpcsvc
ifeq ($(link-obsolete-rpc),yes)
-headers += $(headers-in-tirpc) $(headers-not-in-tirpc)
+headers += $(headers-sunrpc)
endif
ifeq ($(build-shared),yes)
@@ -86,12 +85,14 @@ shared-only-routines = $(routines)
endif
endif
+ifeq ($(link-obsolete-rpc),yes)
install-bin := rpcgen
rpcgen-objs = rpc_main.o rpc_hout.o rpc_cout.o rpc_parse.o \
rpc_scan.o rpc_util.o rpc_svcout.o rpc_clntout.o \
rpc_tblout.o rpc_sample.o
extra-objs = $(rpcgen-objs) $(addprefix cross-,$(rpcgen-objs))
others += rpcgen
+endif
tests = tst-xdrmem tst-xdrmem2 test-rpcent
xtests := tst-getmyaddr
@@ -105,12 +106,14 @@ rpcgen-tests := $(objpfx)bug20790.out
tests-special += $(rpcgen-tests)
endif
+ifeq ($(link-obsolete-rpc),yes)
headers += $(rpcsvc:%.x=rpcsvc/%.h)
extra-libs := librpcsvc
extra-libs-others := librpcsvc # Make it in `others' pass, not `lib' pass.
librpcsvc-routines = $(rpcsvc:%.x=x%)
librpcsvc-inhibit-o = .os # Build no shared rpcsvc library.
omit-deps = $(librpcsvc-routines)
+endif
ifeq (yes,$(build-shared))
rpc-compat-routines = $(addprefix compat-,$(need-export-routines))
--
1.8.5.6