[RFC,v3,0/2] Remove --enable-obsolete-nsl --enable-obsolete-rpc

Message ID 20200606183644.18296-1-pvorel@suse.cz
State New
Headers show

Commit Message

Petr Vorel June 6, 2020, 6:36 p.m.
Hi,

changes v2->v3:
* Fix issue with missing etc directory.
It was caused by missing:
install-others = $(inst_sysconfdir)/rpc
But now is /etc/rpc only included on backward compatibility.
It leaded me to create /etc directory for tests in
testroot.pristine/install.stamp make target (I could add maybe_xmkdir
("/etc", 0777); to elf/tst-ldconfig-ld_so_conf-update.c, but this is
safer for future tests), but that wouldn't be needed if /etc/rpc is
always needed.

* Removed rpc/netdb.h for new archs.

* Fix typo in docs.

Few questions:
1) Is ifdef have-GLIBC_2.28 correct guard to get nsl/rpc only to archs which
supported it? Shouldn't it be actually have-GLIBC_2.31?

2) Should new archs also get /etc/rpc?

I've tested only default compilation on x86_64:
Summary of test results:
   4166 PASS
     24 UNSUPPORTED
     12 XFAIL
      6 XPASS

I'll try to test it on other archs, but testing from others (especially
cross-compilation would be great).

Kind regards,
Petr




Petr Vorel (2):
  configure: Remove --enable-obsolete-nsl
  Remove --enable-obsolete-rpc flag

 INSTALL                                       |    9 -
 Makefile                                      |    4 +
 NEWS                                          |   15 +
 .../strcoll-inputs/filelist#en_US.UTF-8       |   29 -
 config.h.in                                   |    8 -
 config.make.in                                |    2 -
 configure                                     |   38 +-
 configure.ac                                  |   22 -
 grp/initgroups.c                              |    8 +-
 include/libc-symbols.h                        |   16 +-
 include/shlib-compat.h                        |    8 +-
 manual/install.texi                           |   10 -
 manual/nss.texi                               |   20 +-
 nis/Makefile                                  |   52 +-
 nscd/initgrcache.c                            |    8 +-
 nss/grp-lookup.c                              |    6 +-
 nss/nsswitch.c                                |   14 +-
 nss/pwd-lookup.c                              |    6 +-
 nss/spwd-lookup.c                             |    6 +-
 scripts/build-many-glibcs.py                  |    8 -
 sunrpc/Makefile                               |  135 +-
 sunrpc/auth_des.c                             |    4 +-
 sunrpc/auth_none.c                            |    2 +-
 sunrpc/auth_unix.c                            |    4 +-
 sunrpc/authdes_prot.c                         |    4 +-
 sunrpc/authuxprot.c                           |    2 +-
 sunrpc/bug20790.x                             |    1 -
 sunrpc/clnt_gen.c                             |    2 +-
 sunrpc/clnt_perr.c                            |   10 +-
 sunrpc/clnt_raw.c                             |    2 +-
 sunrpc/clnt_simp.c                            |    2 +-
 sunrpc/clnt_tcp.c                             |    2 +-
 sunrpc/clnt_udp.c                             |    6 +-
 sunrpc/clnt_unix.c                            |    2 +-
 sunrpc/get_myaddr.c                           |    2 +-
 sunrpc/key_call.c                             |   18 +-
 sunrpc/key_prot.c                             |   20 +-
 sunrpc/netname.c                              |   10 +-
 sunrpc/pm_getmaps.c                           |    2 +-
 sunrpc/pm_getport.c                           |    4 +-
 sunrpc/pmap_clnt.c                            |    4 +-
 sunrpc/pmap_prot.c                            |    2 +-
 sunrpc/pmap_prot2.c                           |    2 +-
 sunrpc/pmap_rmt.c                             |    8 +-
 sunrpc/proto.h                                |   65 -
 sunrpc/publickey.c                            |    4 +-
 sunrpc/rpc_clntout.c                          |  333 ----
 sunrpc/rpc_cmsg.c                             |    2 +-
 sunrpc/rpc_common.c                           |   10 +-
 sunrpc/rpc_cout.c                             |  811 ---------
 sunrpc/rpc_dtable.c                           |    2 +-
 sunrpc/rpc_hout.c                             |  607 -------
 sunrpc/rpc_main.c                             | 1451 -----------------
 sunrpc/rpc_parse.c                            |  687 --------
 sunrpc/rpc_parse.h                            |  165 --
 sunrpc/rpc_prot.c                             |   14 +-
 sunrpc/rpc_sample.c                           |  336 ----
 sunrpc/rpc_scan.c                             |  544 ------
 sunrpc/rpc_scan.h                             |  104 --
 sunrpc/rpc_svcout.c                           | 1093 -------------
 sunrpc/rpc_tblout.c                           |  178 --
 sunrpc/rpc_thread.c                           |    8 +-
 sunrpc/rpc_util.c                             |  525 ------
 sunrpc/rpc_util.h                             |  154 --
 sunrpc/rpcgen.c                               |    2 -
 sunrpc/rpcsvc/bootparam.h                     |   23 -
 sunrpc/rpcsvc/bootparam_prot.x                |   97 --
 sunrpc/rpcsvc/key_prot.x                      |  283 ----
 sunrpc/rpcsvc/klm_prot.x                      |  130 --
 sunrpc/rpcsvc/mount.x                         |  161 --
 sunrpc/rpcsvc/nfs_prot.x                      |  352 ----
 sunrpc/rpcsvc/nlm_prot.x                      |  203 ---
 sunrpc/rpcsvc/rex.x                           |  229 ---
 sunrpc/rpcsvc/rquota.x                        |   61 -
 sunrpc/rpcsvc/rstat.x                         |  145 --
 sunrpc/rpcsvc/rusers.x                        |  228 ---
 sunrpc/rpcsvc/sm_inter.x                      |  110 --
 sunrpc/rpcsvc/spray.x                         |   84 -
 sunrpc/rpcsvc/yppasswd.x                      |   61 -
 sunrpc/rtime.c                                |    2 +-
 sunrpc/svc.c                                  |   32 +-
 sunrpc/svc_auth.c                             |    2 +-
 sunrpc/svc_raw.c                              |    2 +-
 sunrpc/svc_run.c                              |    4 +-
 sunrpc/svc_tcp.c                              |    4 +-
 sunrpc/svc_udp.c                              |    6 +-
 sunrpc/svc_unix.c                             |    4 +-
 sunrpc/svcauth_des.c                          |    2 +-
 sunrpc/xcrypt.c                               |    4 +-
 sunrpc/xdr.c                                  |   44 +-
 sunrpc/xdr_array.c                            |    4 +-
 sunrpc/xdr_float.c                            |    4 +-
 sunrpc/xdr_intXX_t.c                          |   20 +-
 sunrpc/xdr_mem.c                              |    2 +-
 sunrpc/xdr_rec.c                              |    8 +-
 sunrpc/xdr_ref.c                              |    4 +-
 sunrpc/xdr_sizeof.c                           |    2 +-
 sunrpc/xdr_stdio.c                            |    2 +-
 98 files changed, 196 insertions(+), 9757 deletions(-)
 delete mode 100644 sunrpc/bug20790.x
 delete mode 100644 sunrpc/proto.h
 delete mode 100644 sunrpc/rpc_clntout.c
 delete mode 100644 sunrpc/rpc_cout.c
 delete mode 100644 sunrpc/rpc_hout.c
 delete mode 100644 sunrpc/rpc_main.c
 delete mode 100644 sunrpc/rpc_parse.c
 delete mode 100644 sunrpc/rpc_parse.h
 delete mode 100644 sunrpc/rpc_sample.c
 delete mode 100644 sunrpc/rpc_scan.c
 delete mode 100644 sunrpc/rpc_scan.h
 delete mode 100644 sunrpc/rpc_svcout.c
 delete mode 100644 sunrpc/rpc_tblout.c
 delete mode 100644 sunrpc/rpc_util.c
 delete mode 100644 sunrpc/rpc_util.h
 delete mode 100644 sunrpc/rpcgen.c
 delete mode 100644 sunrpc/rpcsvc/bootparam.h
 delete mode 100644 sunrpc/rpcsvc/bootparam_prot.x
 delete mode 100644 sunrpc/rpcsvc/key_prot.x
 delete mode 100644 sunrpc/rpcsvc/klm_prot.x
 delete mode 100644 sunrpc/rpcsvc/mount.x
 delete mode 100644 sunrpc/rpcsvc/nfs_prot.x
 delete mode 100644 sunrpc/rpcsvc/nlm_prot.x
 delete mode 100644 sunrpc/rpcsvc/rex.x
 delete mode 100644 sunrpc/rpcsvc/rquota.x
 delete mode 100644 sunrpc/rpcsvc/rstat.x
 delete mode 100644 sunrpc/rpcsvc/rusers.x
 delete mode 100644 sunrpc/rpcsvc/sm_inter.x
 delete mode 100644 sunrpc/rpcsvc/spray.x
 delete mode 100644 sunrpc/rpcsvc/yppasswd.x

-- 
2.26.2

Comments

Petr Vorel June 6, 2020, 6:55 p.m. | #1
Hi,

Maybe the naming isn't quite right:
I guess libc_hidden_nolink should be libc_hidden_nolink_sunrpc (thus files in
sunrpc/ will not have to be renamed) => v4.

I kept libnsl_hidden_nolink_def. I could rename it to libnsl_hidden_nolink if
desired.

Kind regards,
Petr

Patch

diff v2->v3:
diff --git Makefile Makefile
index 6dcfe40c25..eb6ac71a97 100644
--- Makefile
+++ Makefile
@@ -585,6 +585,10 @@  $(tests-container) $(addsuffix /tests,$(subdirs)) : \
 $(objpfx)testroot.pristine/install.stamp :
 	test -d $(objpfx)testroot.pristine || \
 	  mkdir $(objpfx)testroot.pristine
+	# We need a writable /etc for some of the tests.
+	test -d $(objpfx)testroot.pristine/etc || \
+	  mkdir $(objpfx)testroot.pristine/etc && \
+	  chmod 777 $(objpfx)testroot.pristine/etc
 	# We need a working /bin/sh for some of the tests.
 	test -d $(objpfx)testroot.pristine/bin || \
 	  mkdir $(objpfx)testroot.pristine/bin
diff --git sunrpc/Makefile sunrpc/Makefile
index 6585706bbe..671d4ccc24 100644
--- sunrpc/Makefile
+++ sunrpc/Makefile
@@ -28,7 +28,7 @@  ifdef have-GLIBC_2.28
 # distribution with some additional changes from the TI-RPC package
 # which is also available from Sun.  The files are heavily changed to
 # compile cleanly and to fit in the GNU environment.  All the code
-# from Sun's rpc, and etc subdirectories is in this directory;
+# from Sun's rpc and etc subdirectories is in this directory;
 # the rpc subdirectory contains only the header files.  Other than
 # that, several files were renamed so as not to exceed 14-character
 # file name limits:
@@ -47,7 +47,7 @@  ifdef have-GLIBC_2.28
 #	svc_auth_unix.c -> svc_authux.c
 #	xdr_reference.c -> xdr_ref.c
 
-headers = rpc/netdb.h
+install-others = $(inst_sysconfdir)/rpc
 
 ifeq ($(build-shared),yes)
 need-export-routines := auth_des auth_unix clnt_gen clnt_perr clnt_tcp \