Patchwork Don't add nis subdir for new architectures

login
register
mail settings
Submitter Andreas Schwab
Date July 4, 2018, 3:31 p.m.
Message ID <mvmefgj81b5.fsf@suse.de>
Download mbox | patch
Permalink /patch/28227/
State New
Headers show

Comments

Andreas Schwab - July 4, 2018, 3:31 p.m.
For future architectures, sysdeps/unix/inet no longer implies building the
nis subdirectory, and --enable-obsolete-nsl is ignored.

	* sysdeps/unix/inet/Subdirs: Remove nis.
	* sysdeps/unix/bsd/Subdirs: New file.
	* sysdeps/unix/sysv/linux/aarch64/Subdirs: New file.
	* sysdeps/unix/sysv/linux/alpha/Subdirs: New file.
	* sysdeps/unix/sysv/linux/arm/Subdirs: New file.
	* sysdeps/unix/sysv/linux/hppa/Subdirs: New file.
	* sysdeps/unix/sysv/linux/i386/Subdirs: New file.
	* sysdeps/unix/sysv/linux/ia64/Subdirs: New file.
	* sysdeps/unix/sysv/linux/m68k/Subdirs: New file.
	* sysdeps/unix/sysv/linux/microblaze/Subdirs: New file.
	* sysdeps/unix/sysv/linux/mips/Subdirs: New file.
	* sysdeps/unix/sysv/linux/powerpc/Subdirs: New file.
	* sysdeps/unix/sysv/linux/riscv/Subdirs: New file.
	* sysdeps/unix/sysv/linux/s390/Subdirs: New file.
	* sysdeps/unix/sysv/linux/sh/Subdirs: New file.
	* sysdeps/unix/sysv/linux/sparc/Subdirs: New file.
	* sysdeps/unix/sysv/linux/x86_64/Subdirs: New file.
	* manual/install.texi: Update --enable-obsolete-nsl.
	* INSTALL: Regenerate.
---
 INSTALL                                    | 4 +++-
 NEWS                                       | 4 ++++
 manual/install.texi                        | 2 ++
 sysdeps/unix/bsd/Subdirs                   | 1 +
 sysdeps/unix/inet/Subdirs                  | 1 -
 sysdeps/unix/sysv/linux/aarch64/Subdirs    | 1 +
 sysdeps/unix/sysv/linux/alpha/Subdirs      | 1 +
 sysdeps/unix/sysv/linux/arm/Subdirs        | 1 +
 sysdeps/unix/sysv/linux/hppa/Subdirs       | 1 +
 sysdeps/unix/sysv/linux/i386/Subdirs       | 1 +
 sysdeps/unix/sysv/linux/ia64/Subdirs       | 1 +
 sysdeps/unix/sysv/linux/m68k/Subdirs       | 1 +
 sysdeps/unix/sysv/linux/microblaze/Subdirs | 1 +
 sysdeps/unix/sysv/linux/mips/Subdirs       | 1 +
 sysdeps/unix/sysv/linux/powerpc/Subdirs    | 1 +
 sysdeps/unix/sysv/linux/riscv/Subdirs      | 1 +
 sysdeps/unix/sysv/linux/s390/Subdirs       | 1 +
 sysdeps/unix/sysv/linux/sh/Subdirs         | 1 +
 sysdeps/unix/sysv/linux/sparc/Subdirs      | 1 +
 sysdeps/unix/sysv/linux/x86_64/Subdirs     | 1 +
 20 files changed, 25 insertions(+), 2 deletions(-)
 create mode 100644 sysdeps/unix/bsd/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/alpha/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/arm/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/hppa/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/i386/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/ia64/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/m68k/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/microblaze/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/mips/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/powerpc/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/riscv/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/s390/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/sh/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/sparc/Subdirs
 create mode 100644 sysdeps/unix/sysv/linux/x86_64/Subdirs
Zack Weinberg - July 4, 2018, 3:53 p.m.
On Wed, Jul 4, 2018 at 11:31 AM, Andreas Schwab <schwab@suse.de> wrote:
> For future architectures, sysdeps/unix/inet no longer implies building the
> nis subdirectory, and --enable-obsolete-nsl is ignored.

This change appears to be technically correct for the existing Linux
ports.  I don't have enough context to assess whether it might have
negative consequences, but I support it in principle.

I have two minor concerns:

1) Should the nis directory continue to be built by default for the
existing Hurd port (ix86-gnu)?  I don't think that port has a stable
ABI yet, so perhaps not, but I'd like to hear that from Samuel.

2) The text added to install.texi / INSTALL is unclear:

> --- a/manual/install.texi
> +++ b/manual/install.texi
> @@ -229,6 +229,8 @@ compatibility and the NSS modules libnss_compat, libnss_nis and
>  libnss_nisplus are not built at all.
>  Use this option to enable libnsl with all depending NSS modules and
>  header files.
> +This option has no effect on architectures that were added after the
> +2.27 release.

as it could mean either that --enable-obsolete-nsl mode cannot be
turned *on* for new architectures, or that it cannot be turned *off*.
I suggest

  Architectures added after the 2.27 release will not even build libnsl as a
  compatibility library; this option has no effect on those architectures.

zw

Patch

diff --git a/INSTALL b/INSTALL
index 3c656fb7a6..9c2bc861c2 100644
--- a/INSTALL
+++ b/INSTALL
@@ -195,7 +195,9 @@  if 'CFLAGS' is specified it must enable optimization.  For example:
      By default, libnsl is only built as shared library for backward
      compatibility and the NSS modules libnss_compat, libnss_nis and
      libnss_nisplus are not built at all.  Use this option to enable
-     libnsl with all depending NSS modules and header files.
+     libnsl with all depending NSS modules and header files.  This
+     option has no effect on architectures that were added after the
+     2.27 release.
 
 '--disable-crypt'
      Do not install the passphrase-hashing library 'libcrypt' or the
diff --git a/NEWS b/NEWS
index b1ce067d27..994c23391e 100644
--- a/NEWS
+++ b/NEWS
@@ -152,6 +152,10 @@  Deprecated and removed features, and other changes affecting compatibility:
   project's versions of these files.  The plan is to make this the default
   behavior in a future release.
 
+* Future architecture ports will no longer build a compatibility libnsl
+  shared library, and --enable-obsolete-nsl will be ignored on those
+  architectures.
+
 Changes to build and runtime requirements:
 
   GNU make 4.0 or later is now required to build glibc.
diff --git a/manual/install.texi b/manual/install.texi
index 42e9954199..a670843b93 100644
--- a/manual/install.texi
+++ b/manual/install.texi
@@ -229,6 +229,8 @@  compatibility and the NSS modules libnss_compat, libnss_nis and
 libnss_nisplus are not built at all.
 Use this option to enable libnsl with all depending NSS modules and
 header files.
+This option has no effect on architectures that were added after the
+2.27 release.
 
 @item --disable-crypt
 Do not install the passphrase-hashing library @file{libcrypt} or the
diff --git a/sysdeps/unix/bsd/Subdirs b/sysdeps/unix/bsd/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/bsd/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/inet/Subdirs b/sysdeps/unix/inet/Subdirs
index 0a02dd4447..5040dd0a6e 100644
--- a/sysdeps/unix/inet/Subdirs
+++ b/sysdeps/unix/inet/Subdirs
@@ -2,7 +2,6 @@  inet
 resolv
 hesiod
 sunrpc
-nis
 nscd
 nss
 streams
diff --git a/sysdeps/unix/sysv/linux/aarch64/Subdirs b/sysdeps/unix/sysv/linux/aarch64/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/alpha/Subdirs b/sysdeps/unix/sysv/linux/alpha/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/alpha/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/arm/Subdirs b/sysdeps/unix/sysv/linux/arm/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/hppa/Subdirs b/sysdeps/unix/sysv/linux/hppa/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/hppa/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/i386/Subdirs b/sysdeps/unix/sysv/linux/i386/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/i386/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/ia64/Subdirs b/sysdeps/unix/sysv/linux/ia64/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/ia64/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/m68k/Subdirs b/sysdeps/unix/sysv/linux/m68k/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/m68k/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/microblaze/Subdirs b/sysdeps/unix/sysv/linux/microblaze/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/microblaze/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/mips/Subdirs b/sysdeps/unix/sysv/linux/mips/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/mips/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/powerpc/Subdirs b/sysdeps/unix/sysv/linux/powerpc/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/riscv/Subdirs b/sysdeps/unix/sysv/linux/riscv/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/riscv/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/s390/Subdirs b/sysdeps/unix/sysv/linux/s390/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/s390/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/sh/Subdirs b/sysdeps/unix/sysv/linux/sh/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sh/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/sparc/Subdirs b/sysdeps/unix/sysv/linux/sparc/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sparc/Subdirs
@@ -0,0 +1 @@ 
+nis
diff --git a/sysdeps/unix/sysv/linux/x86_64/Subdirs b/sysdeps/unix/sysv/linux/x86_64/Subdirs
new file mode 100644
index 0000000000..94f155b1c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/x86_64/Subdirs
@@ -0,0 +1 @@ 
+nis