Re: [MinGW-w64]Build gdb/ctf.c failed

Kai Tietz
2013-03-25T12:43:04Z

2013/3/25 Eli Zaretskii <eliz@gnu.org>:
>> Date: Mon, 25 Mar 2013 10:15:14 +0100
>> From: Kai Tietz <ktietz70@googlemail.com>
>> Cc: asmwarrior@gmail.com, tromey@redhat.com, yao@codesourcery.com,
>> gdb-patches@sourceware.org
>>
>> >> You are driveling ...
>> >
>> > Very mature. Thanks a lot.
>>
>> Be welcome.
>
> I'm not, actually.
>
>> Sorry, but I want to insist on such apparent things. I am wondering
>> about your arguments, due you should know better.
>
> I have no idea what I "should know better". If you wonder about my
> arguments, you can always ask for clarifications. We are both
> writing in a language that isn't our first one, so misunderstanding is
> much more probable than anything else.

Well, some of this might be caused by foreign tongue. What I meant by
... well let me say confused instead of "drivel" ... its English
meaning is more harsh as I wanted to say:

First cite of your reply within that thread I want to reference is:

"Is mkdir declared in MinGW64 unistd.h? If so, can you please show its
declaration from unistd.h?

Also, what other headers are included in MinGW64 unistd.h?

I dislike using Windows-specific headers in general source files.
MinGW unistd.h (which is absent from MS SDK's) was created for that
very purpose. If MinGW64 is breaking that, IMO it's a MinGW64 bug
that needs to be reported to them, while we look for the cleanest way
of fixing this annoyance."

So, you claimed MinGW-w64 did something wrong ... well, if we wouldn't
declare mkdir here, indeed it would be worth a bug-report ...

And then you ware asking the following question to Asmwarrior:
"Isn't _mkdir also declared in io.h?"

Well, so I assume that you are meaning _mkdir in first offensive cite,
as this function was actual used by Yao Qi's patch.

After you got the reply by Yao Qi you wrote:
"Too bad. Gratuitous differences between the different MinGW variants
are likely to become maintenance headaches in the long run. Like in
this case."

So what differences you were talking about? The function mkdir is
declared for MinGW.org, and for MinGW-w64. It is the POSIX compliant
API name and both ventures are declaring it in an POSIX-helper header.
So you mean yet _mkdir?

The few mingw posix extensions are there in order to make porting a
bit easier. if you want to use a posix function, include the
corresponding posix header; if you want to a MS API, use the header MS
defines the function/interface lives in. it wouldn't really help
portability (in either direction) to support including a posix header,
and getting a MS API function, so mingw doesn't lay its headers that
way. The header io.h isn't a POSIX one, and therefore you should just
expect what actual is documented by vendor (in msdn) for it and not
what one implementation mightz does.

Kai