make-w32
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Bug report: Compile with Microsoft and Intel compiler


From: Jerker Bäck
Subject: RE: Bug report: Compile with Microsoft and Intel compiler
Date: Wed, 27 Apr 2005 06:09:20 +0200

Hello Eli
Thanks for your time and effort to look at my report. I'm working on a reply
on all the questions. Meanwhile:

The critical errors are the local redefines of CRT functions - this must be
solved to at least get make.exe built at all. The missing header direct.h is
also needed. All CRT functions are defined only once in the headers. The
design of MS CRT is almost the same as in the early DOS-days.

Quick answer2

1) For a complete accurate access to any questions on the Microsoft C
runtime library, please look here:
http://msdn.microsoft.com/library/en-us/vclib/html/vcrefRunTimeLibraryRefere
nce.asp

2) On function calls into the Win32 platform, the right place to look is the
Win32 platform SDK. Unfortunately Microsoft have "messed" up the
documentation on recent releases and rearranged parts so things are not so
easy to find any more. MSDN is huge so the best thing to do is search.
Beware so you don't end up in the Mobile (Windows CE) Win32 platform. Anyway
things that concern GNU make would probably be about the Windows Base
Services (I/O and memory management) which will be found her:
http://msdn.microsoft.com/library/en-us/dnanchor/html/anch_winbaseservices.a
sp. 

A content page:
http://msdn.microsoft.com/library/en-us/sdkintro/sdkintro/contents_of_the_pl
atform_sdk.asp

3) Lets forget about __cdecl. This support is not vital. I just pointed out
how it could be implemented in the current code. Useful maybe for someone
else also? However, I do still think that is only a minor issue to add this
support. Note: This is a compiler switch and is only affecting how the
compiler arrange the function calls in the executable being built. You only
have to care about this in case you are NOT using __cdecl calling
convention. More info can be found here:
http://msdn.microsoft.com/library/en-us/vclang/html/_core_Calling_Convention
s_Topics.asp, an IMAGE like this might spread some light:
http://msdn.microsoft.com/library/en-us/vclang/html/_core_Results_of_Calling
_Example.asp.

4) Also, please understand that the I/O and memory management used in the C
runtime library is actually handled by the Win32 platform. The CRT is only a
general basic compatibility layer. For complete file and memory handling you
need to call directly into Win32. Things like file security, hardlinks,
mount points, virtual memory mapped files etc. will only be accessible
there. Mixing these two techniques would not be a good idea.

Jerker







reply via email to

[Prev in Thread] Current Thread [Next in Thread]