[WIP] mingw64 related changes to Cygwin configure and other assorted files with departed w32api/mingw
Tue Nov 13 17:39:00 GMT 2012
On Tue, Nov 13, 2012 at 10:33:01AM +0100, Corinna Vinschen wrote:
>On Nov 12 22:31, Christopher Faylor wrote:
>> On Mon, Nov 12, 2012 at 07:02:57PM -0500, Christopher Faylor wrote:
>> >On Mon, Nov 12, 2012 at 10:50:23PM +0100, Corinna Vinschen wrote:
>> >>I'm a bit puzzled about the necessity of some of the changes to source
>> >>files. Yaakov's Fedora 17 version of the headers is supposedly cut from
>> >>the mingw64 trunk on 2012-10-16, while JonY's official headers have an
>> >>upload date of 2012-10-18. They should be practically identical. Why
>> >>do I not see any problems to build CVS HEAD?!?
>> >You can keep asking me this question but I don't really have an answer.
>> >Since I don't run Fedora, I'm not going to install it to figure it out.
>I just checked and there's no difference in the header files at all.
>Yaakov's version == JonY's version.
>> Actually, an idea came to me in the thinking room that this might be due
>> to the fact that my windows headers may not be considered to be system
>> headers since they aren't in a preinstalled location. I know that gcc
>> can be more lax about redefine symbols in some situations when dealing
>> with system headers. Maybe that's it.
>Looks like it. The w32api headers are system headers so -isystem rather
>than -idirafter should show a better result without requiring any of the
>source file changes.
Maybe I can use -isystem with ccwraper. I'd previously gotten things
working without the wrapper, using idirafter so that's what I stuck
with. However, the wrapper may now allow just always including the
windows headers last.
>Especially having to define _WIN32 in winlean.h and winsup.h looks
>pretty wrong. I would also like to keep the ifndef/define brackets in
>the headers since
> #ifndef _CYGWIN_IF_H_
> #define _CYGWIN_IF_H_
>can be tested for in other headers while #pragma once can not.
I think that testing for "BLAH_DECLARED" for individual definitions is a
much better way to see if something is defined than relying on an
implementation detail like "_CYGWIN_IF_H". Those are not supposed to be
a published interface. In theory anyone could change those to something
and they would have been within their rights to do that. I always felt
that it was wrong to be testing for those guards, even when I was doing
However, I won't check those changes in.
More information about the Cygwin-patches