Generated Headers - Quite the Can of Worms
Vin Shelton <[email protected]>
| Newsgroups | gmane.emacs.xemacs.beta |
|---|---|
| Message-ID | <CACeGjnX_PDpuZXG2=JQeYiubuG-kZsXVgw6LD5-Gw4KoKwQ1=g@mail.gmail.com> |
Henry - First the good news - with your patches applied, I succeeded in building a 64-bit cygwin XEmacs executable. Now the bad news - that patched XEmacs does not build under Windows native (at least on the 32-bit XP VM I use for Native Windows kits). The problem, as I know you suspect is the encapsulated unicode headers. Thanks for taking on the challenge of fixing up our interface to the w32api, BTW, but, as you know, it's a real bear. After running the make-mswin-unicode.pl script, I get a bunch of definitions that refer to WINBOOL, which is not a native Windows type. Here is the first such message: console-msw.c C:\Cyg_opt\src\xemacs-21.5-2015-03-26\src\intl-auto-encap-win32.h(105) : error C2146: syntax error : missing ';' before identifier 'qxeSHGetNewLinkInfo' C:\Cyg_opt\src\xemacs-21.5-2015-03-26\src\intl-auto-encap-win32.h(105) : error C2501: 'WINBOOL' : missing storage-class or type specifiers C:\Cyg_opt\src\xemacs-21.5-2015-03-26\src\intl-auto-encap-win32.h(105) : fatal error C1004: unexpected end of file found NMAKE: fatal error U1077: 'cl' : return code '0x2' I have tried 2 different approaches: defining WINBOOL and LONG_PTR and a few others in syswindows.h. In hindsight, this was the more fruitful approach, but not all the necessary source modules seem to include syswindows.h (the details escape me at this exact moment). My second and more braindead approach was to change each of the functions like SHGetNewLinkInfo from "yes" to "review". I did this for probably 10 functions, but I didn't achieve joy (or a clean compile) and this is, fundamentally not the right way to go. Any thoughts on how to get the WINBOOL, etc types defined for the native Windows build? Thanks, Vin