[v2,1/1] s390: Deprecate s390 32-bit target "s390-*"

Message ID 20260423120006.3740571-2-jremus@linux.ibm.com
State New
Headers
Series s390: Deprecate s390 32-bit target "s390-*" |

Commit Message

Jens Remus April 23, 2026, noon UTC
  The s390 32-bit target (s390-*) is deprecated and planned for removal
in a future release, along with the elf32-s390 target format.  Emit an
error for this target during configure, which can be overridden using
option --enable-obsolete.

Linux Kernel 6.19 removed s390 32-bit compatibility support. [1]
Glibc 2.43 deprecated s390 32-bit with the intent to remove it in a
future release. [2]
GCC 16 will deprecate s390 32-bit (compiler option -m31) with the intent
to remove it in a future release. [3]

The s390 64-bit target (s390x-*) remains supported.

[1]: Linux kernel 6.19 commit 8e0b986c59c6 ("s390: Remove compat support"),
     https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=8e0b986c59c6
[2]: Glibc 2.43 commit 638d437dbf9c ("Deprecate s390-linux-gnu (31bit)"),
     https://sourceware.org/git/glibc.git?a=commitdiff;h=638d437dbf9c
[3]: GCC 16 commit 5886bb453a6a ("s390: Deprecate -m31"),
     https://gcc.gnu.org/git/gcc.git?h=5886bb453a6a

bfd/
	* config.bfd: Require --enable-obsolete to build s390 32-bit
	target "s390-*".

binutils/
	* NEWS: Deprecate s390 32-bit target "s390-*".

gdb/
	* NEWS: Deprecate s390 32-bit target "s390-*".

Signed-off-by: Jens Remus <jremus@linux.ibm.com>
---

Notes (jremus):
    Changes in v2:
    - Add likewise gdb/NEWS entry.
    - Correct GNU ChangeLog in commit message.

 bfd/config.bfd |  1 +
 binutils/NEWS  |  8 ++++++++
 gdb/NEWS       | 13 +++++++++++++
 3 files changed, 22 insertions(+)
  

Patch

diff --git a/bfd/config.bfd b/bfd/config.bfd
index 9472a481f81c..2d00d07cdc8d 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -48,6 +48,7 @@  targ_underscore=no
 
 # Catch obsolete configurations.
 case $targ in
+ s390-* | \
  null)
     if test "x$enable_obsolete" != xyes; then
       echo "*** Configuration $targ is obsolete." >&2
diff --git a/binutils/NEWS b/binutils/NEWS
index 5ac0e8b78114..5e802fe0be8d 100644
--- a/binutils/NEWS
+++ b/binutils/NEWS
@@ -1,5 +1,13 @@ 
 -*- text -*-
 
+* The s390 32-bit target (s390-*) is deprecated and planned for removal in a
+  future release, along with the elf32-s390 target format.  configure emits
+  an error for this target, which can be overridden using --enable-obsolete.
+  Linux Kernel 6.19 removed s390 32-bit compatibility support.  Glibc 2.43
+  has and GCC 16 will deprecate s390 32-bit, both with the intent to remove
+  it in a future release.
+  The s390 64-bit target (s390x-*) remains supported.
+
 * Objdump and readelf now have a --debug-dir=<DIR> option which can be used to
   tell them where to find separate debug info files.
 
diff --git a/gdb/NEWS b/gdb/NEWS
index 6b5c2f6a46a3..ea2d2cac2964 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -72,12 +72,25 @@ 
   automatically set to UTF-8.  (Users can use the Windows 'chcp'
   command to change the output codepage of the console.)
 
+* The s390 32-bit target (s390-*) is deprecated and planned for
+  removal in a future release, along with the elf32-s390 target
+  format.  configure now emits an error for this target, which can be
+  overridden using --enable-obsolete.
+  Linux Kernel 6.19 removed s390 32-bit compatibility support.
+  Glibc 2.43 has and GCC 16 will deprecate s390 32-bit, both with
+  the intent to remove it in a future release.
+  The s390 64-bit target (s390x-*) remains supported.
+
 * New targets
 
 GNU/Linux/MicroBlaze (gdbserver) microblazeel-*linux*
 
 AArch64 MinGW                   aarch64-*-mingw*
 
+* Deprecated targets
+
+GNU/Linux/S390 32-bit		s390-*-*
+
 * New commands
 
 set local-environment