bfd: Always use CP_ACP=1 on Solaris [PR11280]

Message ID yddechpd7ez.fsf@CeBiTec.Uni-Bielefeld.DE
State New
Headers
Series bfd: Always use CP_ACP=1 on Solaris [PR11280] |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_binutils_build--master-aarch64 fail Patch failed to apply
linaro-tcwg-bot/tcwg_binutils_build--master-arm fail Patch failed to apply

Commit Message

Rainer Orth June 29, 2026, 9:26 a.m. UTC
  bfd/configure.host defines CP_ACP=1 on Solaris 11 as a workaround for
the lack the MS-ANSI codepage in Solaris libc iconv(3C).  However, the
issue isn't restricted to some OpenSolaris build as the comment
suggests, but present on Solaris in general as can be seen in the iconv -l
output:

On both Solaris 10 and 11.4, one gets

	CP1252 (1252, ANSI-1252, WINDOWS-1252),

unlike GNU iconv which lists

	CP1252 MS-ANSI WINDOWS-1252

Therefore, this patch applies the patch on all Solaris versions.

Tested on {amd64,i386}-pc-solaris2.11 and sparc{v9,}-sun-solaris2.11.

Ok for trunk?


I didn't try to reproduce the original issue as reported in PR
binutils/11280, but just went by the description there.

	Rainer
  

Comments

Jan Beulich June 29, 2026, 10 a.m. UTC | #1
On 29.06.2026 11:26, Rainer Orth wrote:
> bfd/configure.host defines CP_ACP=1 on Solaris 11 as a workaround for
> the lack the MS-ANSI codepage in Solaris libc iconv(3C).  However, the
> issue isn't restricted to some OpenSolaris build as the comment
> suggests, but present on Solaris in general as can be seen in the iconv -l
> output:
> 
> On both Solaris 10 and 11.4, one gets
> 
> 	CP1252 (1252, ANSI-1252, WINDOWS-1252),
> 
> unlike GNU iconv which lists
> 
> 	CP1252 MS-ANSI WINDOWS-1252
> 
> Therefore, this patch applies the patch on all Solaris versions.
> 
> Tested on {amd64,i386}-pc-solaris2.11 and sparc{v9,}-sun-solaris2.11.
> 
> Ok for trunk?

Yes.

Jan
  

Patch

# HG changeset patch
# Parent  25b1400af2e88d6c429bb02a6779e7ffb29b6766
bfd: Always use CP_ACP=1 on Solaris [PR11280]

diff --git a/bfd/configure.host b/bfd/configure.host
--- a/bfd/configure.host
+++ b/bfd/configure.host
@@ -72,11 +72,11 @@  mips*-*-sysv4*)		;;
 mips*-*-sysv*)		HDEFINES="-G 4" ;;
 mips*-*-riscos*)	HDEFINES="-G 4" ;;
 
-# Some Solaris systems (osol0906 at least) have a libc that doesn't recognise
-# the "MS-ANSI" code page name, so we define an override for CP_ACP (sets the
-# default code page used by windres/windmc when not specified by a commandline
-# option) to select the "WINDOWS-1252" name instead.  See PR11280 for details.
-*-*-solaris2.11)	HDEFINES=-DCP_ACP=1 ;;
+# Solaris libc doesn't recognise the "MS-ANSI" code page name, so we define
+# an override for CP_ACP (sets the default code page used by windres/windmc
+# when not specified by a commandline option) to select the "WINDOWS-1252"
+# name instead.  See PR11280 for details.
+*-*-solaris2*)		HDEFINES=-DCP_ACP=1 ;;
 
 *-*-windows*)
 			HOST_64BIT_TYPE=__int64