This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA] defs.h: Define GDB_DEFAULT_TARGET_[WIDE_]CHARSET for Cygwin and MingW builds
- From: Corinna Vinschen <vinschen at redhat dot com>
- To: gdb-patches at sourceware dot org
- Date: Mon, 1 Mar 2010 18:50:09 +0100
- Subject: Re: [RFA] defs.h: Define GDB_DEFAULT_TARGET_[WIDE_]CHARSET for Cygwin and MingW builds
- References: <20100228130500.GG5683@calimero.vinschen.de> <20100228142905.GB1556@caradoc.them.org> <20100228150318.GA32463@calimero.vinschen.de> <20100228184749.GA17375@caradoc.them.org> <20100228192159.GP5683@calimero.vinschen.de> <20100228222702.GC29360@caradoc.them.org> <m3k4twhspr.fsf@fleche.redhat.com> <20100301172052.GB32351@caradoc.them.org> <m3bpf8hrz6.fsf@fleche.redhat.com>
- Reply-to: gdb-patches at sourceware dot org
On Mar 1 10:27, Tom Tromey wrote:
> >>>>> "Daniel" == Daniel Jacobowitz <dan@codesourcery.com> writes:
>
> Daniel> On Mon, Mar 01, 2010 at 10:12:00AM -0700, Tom Tromey wrote:
> Daniel> If the default becomes dependent on the target, we need to distinguish
> Daniel> "user specified iso-8859-1" or "user didn't say anything, but now
> Daniel> we're debugging i686-mingw32, and that usually uses cp1252".
>
> >> I think the ideal would be to extract this information from the
> >> inferior.
>
> Daniel> I'm not sure I understand what you're suggesting... extract it how?
>
> I don't know :-)
>
> The only ways I can think of seem pretty fragile -- e.g., for POSIXy
> systems, extract information from the inferior environment and reproduce
> the C library logic.
>
> FWIW I think target-charset and target-wide-charset should be
> per-inferior settings, like the environment and arguments. I haven't
> looked into how to do that, though. I'm also not sure how that would
> interact with an "auto" setting.
I can't see any way to do that for an arbitrary target. Just Windows
alone would be enough to get headaches. The default multibyte charset
depends on the target application being a native Win32 application,
or a Cygwin application. In the first case, the charset is the default
ANSI codepage, in the latter case it's UTF-8, or the charset determined
by the LC_ALL/LC_CTYPE/LANG environment variables.
Corinna
--
Corinna Vinschen
Cygwin Project Co-Leader
Red Hat