Hi Viktor,
Yes, NTDDI_VERSION is the (best? only?) way to detect
platform SDK version.
The only problem is that MinGW does not use NTDDI_VERSION, it uses _WIN32_WINNT.
At least in my versions of MinGW. :)
Best regards,
--
Xavi
El 28/02/2010 17:18, Viktor Szakáts escribió:
In the beginning of hbsocket.c you can see .-
...
#elif defined( HB_OS_WIN )
# if defined( __WATCOMC__ )
# if ( NTDDI_VERSION>= 0x06000000 )
# define HB_HAS_INET_PTON
# define HB_HAS_INET_NTOP
# endif
# define HB_HAS_SOCKADDR_STORAGE
/* # define HB_HAS_INET6 */
# elif defined( __MINGW32__ )
# define HB_HAS_SOCKADDR_STORAGE
# elif defined( __POCC__ )&& !defined( __XCC__ )
# define HB_HAS_SOCKADDR_STORAGE
# endif
# define HB_IS_INET_NTOA_MT_SAFE
...
Please, see the use of NTDDI_VERSION.
Yes, NTDDI_VERSION is the (best? only?) way to detect
platform SDK version.
I think that yes .-
http://msdn.microsoft.com/en-us/library/aa450087.aspx
Even better.
__MINGW32__ and __MINGW64__ they are both compiler 's built-in macros.
Is defined in mingwce?
IMO this is not relevant, there is no reason to be
compiler specific here. This is general HB_OS_WIN
issue. If you want to guard against WinCE, us
HB_OS_WIN_CE Harbour macro.
Sorry, I meant that if defined __MINGW64__ also is defined __MINGW32__ I don't
know in wingwce.
Yes, __MINGW32__ is defined in all mingw editions. (see in src\common\hbver.c)
For x64 and WinCE we have HB_WIN_OS_64 and HB_OS_WIN_CE
Harbour macros.
[ Viktor Please could you send plain text posts, are much easier to read. ]
Okay, sorry, I'm on gmail now, toggled it to plain text.
Brgds,
Viktor
_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour