Re: [RFA] defs.h: Define GDB_DEFAULT_TARGET_[WIDE_]CHARSET for Cygwin and MingW builds

Corinna Vinschen
2010-03-03T17:22:26Z

On Mar 3 12:08, Daniel Jacobowitz wrote:
> On Tue, Mar 02, 2010 at 03:55:08PM -0700, Tom Tromey wrote:
> Or there may be some better way. Corinna, do you know? Is there some
> other marker to distinguish a Cygwin executable besides linking to the
> DLL?

Not that I'm aware of, sorry.

> Anyway, once you've got sniffers that distinguish Windows from Cygwin
> binaries, the rest is easy. In the Windows implementation of
> auto_charset, if GetACP is available, call it. That's not 100% right,
> in that you could *theoretically* be debugging a Windows binary on a
> remote system with a different charset, but it's all the work I think
> we should do for a default.
>
> At this point, I think it's correct to call GetACP even for
> a Cygwin GDB. The GDB might be a Cygwin executable but the program
> being debugged might not be, and it will use the non-Cygwin
> Windows settings.

As one of the Cygwin maintainers I veto the notion to handle Cygwin
as a Windows target in the first place.

It's not valid to assume that Cygwin GDB is used to debug native apps
and Cygwin apps are just an afterthought. And for Cygwin binaries the
Windows default codepage has no meaning. The default codeset in Cygwin
is UTF-8 and otherwise the same locale environment variables are used as
other POSIX systems.

Only the MingW GDB should default to the ANSI codepage. Cygwin should
default to UTF-8.

Corinna

--
Corinna Vinschen
Cygwin Project Co-Leader
Red Hat