Move architecture cases out of sysdeps/unix/sysv/linux/configure.ac

Message ID Pine.LNX.4.64.1406241759490.4217@digraph.polyomino.org.uk
State Committed
Headers

Commit Message

Joseph Myers June 24, 2014, 6:03 p.m. UTC
  Continuing the process of making non-ex-ports architectures follow the
preferred sysdeps practices followed by ex-ports architectures - that
is, putting things in architecture-specific sysdeps files rather than
having architecture-specific cases in architecture-independent files -
this patch moves architecture cases out of
sysdeps/unix/sysv/linux/configure.ac into (new or existing) configure
fragments for each architecture.  (In the case of the
arch_minimum_kernel setting for x32,
sysdeps/unix/sysv/linux/x86_64/x32/configure already has such a
setting so the setting in sysdeps/unix/sysv/linux/configure.ac was a
duplicate that could just be removed - though I haven't tested for
x32.)

Tested for x86_64 and x86 that the patch causes no changes to the
installed shared libraries or ldd (or any part of the installation
except for the parts that always change because the files contain
timestamps - nscd and static libraries).

2014-06-24  Joseph Myers  <joseph@codesourcery.com>

	* sysdeps/unix/sysv/linux/configure.ac: Remove cases for
	individual architectures.
	* sysdeps/unix/sysv/linux/configure: Regenerated.
	* sysdeps/unix/sysv/linux/i386/configure.ac: New file.
	* sysdeps/unix/sysv/linux/i386/configure: New generated file.
	* sysdeps/unix/sysv/linux/powerpc/configure.ac
	(ldd_rewrite_script): Define variable.
	* sysdeps/unix/sysv/linux/powerpc/configure: Regenerated.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/configure.ac: New
	file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/configure: New
	generated file.
	* sysdeps/unix/sysv/linux/s390/configure.ac: New file.
	* sysdeps/unix/sysv/linux/s390/configure: New generated file.
	* sysdeps/unix/sysv/linux/sh/configure.ac: New file.
	* sysdeps/unix/sysv/linux/sh/configure: New generated file.
	* sysdeps/unix/sysv/linux/sparc/configure.ac: New file.
	* sysdeps/unix/sysv/linux/sparc/configure: New generated file.
	* sysdeps/unix/sysv/linux/x86_64/configure.ac: New file.
	* sysdeps/unix/sysv/linux/x86_64/configure: New generated file.
  

Comments

David Miller June 24, 2014, 8:16 p.m. UTC | #1
From: "Joseph S. Myers" <joseph@codesourcery.com>
Date: Tue, 24 Jun 2014 18:03:43 +0000

> Continuing the process of making non-ex-ports architectures follow the
> preferred sysdeps practices followed by ex-ports architectures - that
> is, putting things in architecture-specific sysdeps files rather than
> having architecture-specific cases in architecture-independent files -
> this patch moves architecture cases out of
> sysdeps/unix/sysv/linux/configure.ac into (new or existing) configure
> fragments for each architecture.  (In the case of the
> arch_minimum_kernel setting for x32,
> sysdeps/unix/sysv/linux/x86_64/x32/configure already has such a
> setting so the setting in sysdeps/unix/sysv/linux/configure.ac was a
> duplicate that could just be removed - though I haven't tested for
> x32.)
> 
> Tested for x86_64 and x86 that the patch causes no changes to the
> installed shared libraries or ldd (or any part of the installation
> except for the parts that always change because the files contain
> timestamps - nscd and static libraries).

Sparc bits look fine to me.
  
Roland McGrath June 24, 2014, 8:23 p.m. UTC | #2
Looks good.
  

Patch

diff --git a/sysdeps/unix/sysv/linux/configure b/sysdeps/unix/sysv/linux/configure
index 6ba2454..57fda6c 100644
--- a/sysdeps/unix/sysv/linux/configure
+++ b/sysdeps/unix/sysv/linux/configure
@@ -208,43 +208,7 @@  fi
 # set arch_minimum_kernel already, let that override our defaults here.
 # Note that we presume such a fragment has set libc_cv_gcc_unwind_find_fde
 # if appropriate too.
-test -n "$arch_minimum_kernel" ||
-case "$machine" in
-  i386*)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  x86_64/x32)
-    arch_minimum_kernel=3.4.0
-    ;;
-  powerpc/powerpc32*)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  s390/s390-32)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  s390/s390-64)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  sh*)
-    arch_minimum_kernel=2.6.32
-    libc_cv_gcc_unwind_find_fde=yes
-    ;;
-  sparc/sparc64*)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  sparc*)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  *)
-    arch_minimum_kernel=2.6.32
-    ;;
-esac
+test -n "$arch_minimum_kernel" || arch_minimum_kernel=2.6.32
 if test -n "$minimum_kernel"; then
 
   user_version=$((`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1 \* 65536 + \2 \* 256 + \3/'`))
@@ -362,29 +326,6 @@  fi
 # One Linux we use ldconfig.
 use_ldconfig=yes
 
-# We need some extensions to the `ldd' script.
-
-case "$machine" in
-  i[3456]86*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/ldd-rewrite.sed
-    ;;
-  s390*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed
-    ;;
-  sparc*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed
-    ;;
-  x86_64*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
-    ;;
-  powerpc*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/powerpc/ldd-rewrite.sed
-    ;;
-  *)
-    ;;
-esac
-
-
 if test $host = $build; then
   # If $prefix/include/{net,scsi} are symlinks, make install will
   # clobber what they're linked to (probably a kernel tree).
diff --git a/sysdeps/unix/sysv/linux/configure.ac b/sysdeps/unix/sysv/linux/configure.ac
index d182978..e172ffe 100644
--- a/sysdeps/unix/sysv/linux/configure.ac
+++ b/sysdeps/unix/sysv/linux/configure.ac
@@ -33,43 +33,7 @@  fi
 # set arch_minimum_kernel already, let that override our defaults here.
 # Note that we presume such a fragment has set libc_cv_gcc_unwind_find_fde
 # if appropriate too.
-test -n "$arch_minimum_kernel" ||
-case "$machine" in
-  i386*)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  x86_64/x32)
-    arch_minimum_kernel=3.4.0
-    ;;
-  powerpc/powerpc32*)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  s390/s390-32)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  s390/s390-64)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  sh*)
-    arch_minimum_kernel=2.6.32
-    libc_cv_gcc_unwind_find_fde=yes
-    ;;
-  sparc/sparc64*)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  sparc*)
-    libc_cv_gcc_unwind_find_fde=yes
-    arch_minimum_kernel=2.6.32
-    ;;
-  *)
-    arch_minimum_kernel=2.6.32
-    ;;
-esac
+test -n "$arch_minimum_kernel" || arch_minimum_kernel=2.6.32
 if test -n "$minimum_kernel"; then
   changequote(,)
   user_version=$((`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1 \* 65536 + \2 \* 256 + \3/'`))
@@ -164,29 +128,6 @@  fi
 # One Linux we use ldconfig.
 use_ldconfig=yes
 
-# We need some extensions to the `ldd' script.
-changequote(,)
-case "$machine" in
-  i[3456]86*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/ldd-rewrite.sed
-    ;;
-  s390*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed
-    ;;
-  sparc*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed
-    ;;
-  x86_64*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
-    ;;
-  powerpc*)
-    ldd_rewrite_script=sysdeps/unix/sysv/linux/powerpc/ldd-rewrite.sed
-    ;;
-  *)
-    ;;
-esac
-changequote([,])
-
 if test $host = $build; then
   # If $prefix/include/{net,scsi} are symlinks, make install will
   # clobber what they're linked to (probably a kernel tree).
diff --git a/sysdeps/unix/sysv/linux/i386/configure b/sysdeps/unix/sysv/linux/i386/configure
new file mode 100644
index 0000000..f119e62
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/i386/configure
@@ -0,0 +1,5 @@ 
+# This file is generated from configure.ac by Autoconf.  DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/i386.
+
+libc_cv_gcc_unwind_find_fde=yes
+ldd_rewrite_script=sysdeps/unix/sysv/linux/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/i386/configure.ac b/sysdeps/unix/sysv/linux/i386/configure.ac
new file mode 100644
index 0000000..64ab2cc
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/i386/configure.ac
@@ -0,0 +1,5 @@ 
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/i386.
+
+libc_cv_gcc_unwind_find_fde=yes
+ldd_rewrite_script=sysdeps/unix/sysv/linux/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/powerpc/configure b/sysdeps/unix/sysv/linux/powerpc/configure
index 50e3639..6f883de 100644
--- a/sysdeps/unix/sysv/linux/powerpc/configure
+++ b/sysdeps/unix/sysv/linux/powerpc/configure
@@ -75,3 +75,5 @@  $as_echo "$libc_cv_mabi_ibmlongdouble" >&6; }
     as_fn_error $? "this configuration requires -mlong-double-128 IBM extended format support" "$LINENO" 5
   fi
 fi
+
+ldd_rewrite_script=sysdeps/unix/sysv/linux/powerpc/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/powerpc/configure.ac b/sysdeps/unix/sysv/linux/powerpc/configure.ac
index 1768ab1..b8e5f9a 100644
--- a/sysdeps/unix/sysv/linux/powerpc/configure.ac
+++ b/sysdeps/unix/sysv/linux/powerpc/configure.ac
@@ -35,3 +35,5 @@  long double foobar (long double x) { return x; }],
     AC_MSG_ERROR([this configuration requires -mlong-double-128 IBM extended format support])
   fi
 fi
+
+ldd_rewrite_script=sysdeps/unix/sysv/linux/powerpc/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/configure b/sysdeps/unix/sysv/linux/powerpc/powerpc32/configure
new file mode 100644
index 0000000..eb58187
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/configure
@@ -0,0 +1,4 @@ 
+# This file is generated from configure.ac by Autoconf.  DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/powerpc/powerpc32.
+
+libc_cv_gcc_unwind_find_fde=yes
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/configure.ac b/sysdeps/unix/sysv/linux/powerpc/powerpc32/configure.ac
new file mode 100644
index 0000000..e1c4c0d
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/configure.ac
@@ -0,0 +1,4 @@ 
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/powerpc/powerpc32.
+
+libc_cv_gcc_unwind_find_fde=yes
diff --git a/sysdeps/unix/sysv/linux/s390/configure b/sysdeps/unix/sysv/linux/s390/configure
new file mode 100644
index 0000000..1d735d7
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/s390/configure
@@ -0,0 +1,5 @@ 
+# This file is generated from configure.ac by Autoconf.  DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/s390.
+
+libc_cv_gcc_unwind_find_fde=yes
+ldd_rewrite_script=sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/s390/configure.ac b/sysdeps/unix/sysv/linux/s390/configure.ac
new file mode 100644
index 0000000..978450c
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/s390/configure.ac
@@ -0,0 +1,5 @@ 
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/s390.
+
+libc_cv_gcc_unwind_find_fde=yes
+ldd_rewrite_script=sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/sh/configure b/sysdeps/unix/sysv/linux/sh/configure
new file mode 100644
index 0000000..6c31f5e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sh/configure
@@ -0,0 +1,4 @@ 
+# This file is generated from configure.ac by Autoconf.  DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/sh.
+
+libc_cv_gcc_unwind_find_fde=yes
diff --git a/sysdeps/unix/sysv/linux/sh/configure.ac b/sysdeps/unix/sysv/linux/sh/configure.ac
new file mode 100644
index 0000000..85ef0f8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sh/configure.ac
@@ -0,0 +1,4 @@ 
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/sh.
+
+libc_cv_gcc_unwind_find_fde=yes
diff --git a/sysdeps/unix/sysv/linux/sparc/configure b/sysdeps/unix/sysv/linux/sparc/configure
new file mode 100644
index 0000000..00fb21e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sparc/configure
@@ -0,0 +1,5 @@ 
+# This file is generated from configure.ac by Autoconf.  DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/sparc.
+
+libc_cv_gcc_unwind_find_fde=yes
+ldd_rewrite_script=sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/sparc/configure.ac b/sysdeps/unix/sysv/linux/sparc/configure.ac
new file mode 100644
index 0000000..7e2af98
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sparc/configure.ac
@@ -0,0 +1,5 @@ 
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/sparc.
+
+libc_cv_gcc_unwind_find_fde=yes
+ldd_rewrite_script=sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/x86_64/configure b/sysdeps/unix/sysv/linux/x86_64/configure
new file mode 100644
index 0000000..cb90487
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/x86_64/configure
@@ -0,0 +1,4 @@ 
+# This file is generated from configure.ac by Autoconf.  DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/x86_64.
+
+ldd_rewrite_script=sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/x86_64/configure.ac b/sysdeps/unix/sysv/linux/x86_64/configure.ac
new file mode 100644
index 0000000..4a34e94
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/x86_64/configure.ac
@@ -0,0 +1,4 @@ 
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/x86_64.
+
+ldd_rewrite_script=sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed