PATCH - winnt.h move non-standard language IDs to wine/port.h

Alexandre Julliard julliard at
Fri Aug 22 11:12:19 CDT 2003

"Dimitrie O. Paun" <dpaun at> writes:

> I think this will make the mingw work a lot simpler. And in general, it
> will make things a lot more explicit in terms of what is standard and
> what is a Wine extension, and this is good.
> Do we get the go ahead? :)

No, actually the more I think about it the less I like it. The problem
with that approach is that if an app uses wine/extensions.h, not only
you can't it build under Windows without somehow obtaining the Wine
header first, but once you compile it it will use all sorts of
extensions that won't work under Windows.

IMO it's better to leave the extensions in the normal headers and make
the code deal with missing definitions in case you are building under
Windows. So instead of importing the definition of say LANG_GAELIC
from some Wine header, you wrap that code in a #ifdef LANG_GAELIC, and
then the app can build and run correctly both on Windows and Wine. We
could also wrap the extensions with #ifndef WINE_NO_EXTENSIONS in our
headers so that you can define that symbol when building under Wine to
make sure your code is portable.

Alexandre Julliard
julliard at

More information about the wine-devel mailing list