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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.