Re: Generated Headers - Quite the Can of Worms
Vin Shelton <[email protected]>
| Newsgroups | gmane.emacs.xemacs.beta |
|---|---|
| Message-ID | <CACeGjnWZwNxQq6B5BH5kPZCZ6+sEaXngXD+Bi+rYPj4HKGgroQ@mail.gmail.com> |
Dear Henry et al, Right off the bat I want to apologize for my tone in last night's email. Yesterday was long and I was very tired when I wrote that. Henry - thanks for your excellent work on getting a 64-bit XEmacs to work on Cygwin! Yay! On Fri, Mar 27, 2015 at 11:03 AM, Henry S. Thompson <[email protected]> wrote: > Vin Shelton writes: > >> First the good news - with your patches applied, I succeeded in building a >> 64-bit cygwin XEmacs executable. > > Good news, yes, thanks for pressing ahead! Thank you for all you have done. >> 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). > > So, what compiler are you using at this point -- some MS compiler, or > are we talking mingw here? This is Visual Studio 6. Building with a newer version of VS will require a whole 'nother set of work. Mingw (either 32 or 64) remains a dream for the future - ideally we could cross-compile using one of those compilers. Still dreaming. :-) >> 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. > > Hmm. I suspect a combination of my bad memory and unfamiliarity with > the overall build architecture is to blame, but I didn't think your > should have to run that at all, should you? No, but I had compile difficulties building a Windows native (XP, 32-bit) executable with your new intl-auto-encap files, so I decided to see if regenerating the intl-auto-encap files made a difference. > If you did, it should be part of configure, right? I will have to try harder to understand the > division of labour. The Windows native build does not use configure. See nt/config.inc and nt/xemacs.mak if you're curious (and you have a strong stomach - MS nmake syntax is not for the weak). In general, we could treat the intl-auto-encap files like configure - we check them in, but people who are sufficiently interested should be able to regenerate them. Prior to the most recent w32api changes, the intl-auto-encap files had not been updated for years. > >> 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' > > Can you send a copy of your intl-auto-encap-win32.h, so I can look at > what is different? Sorry if I misled you, but I don't think it makes any difference. Using your intl-auto-encap-win32.h, here is what I see: C:\Cyg_opt\src\xemacs-cygwin-test\nt>nmake -f xemacs.mak Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. 1 file(s) copied. 'hg' is not recognized as an internal or external command, operable program or batch file. vcversion.c WARNING: Compiling without dependency information. Creating C:\Cyg_opt\src\xemacs-cygwin-test\lib-src\config.values -------------------------------------------------------------------- OS version: Microsoft Windows XP [Version 5.1.2600] OS: Windows_NT XEmacs 21.5-b34 "kale" configured for `i586-pc-win32'. Building XEmacs using "NMAKE". Building XEmacs using make flags " ". Building XEmacs in source tree "C:\\Cyg_opt\\src\\xemacs-cygwin-test". For src, using compiler "cl -nologo -W3 -DSTRICT -Zi -Od -MD -c -TP -IC:\Cyg _opt\src\xemacs-cygwin-test\nt\inc -IC:\Cyg_opt\src\xemacs-cygwin-test\src -I"C :/XEmacsBuild/lib\xpm-3.4k" -I"C:/XEmacsBuild/lib\xpm-3.4k\lib" -I"C:/XEmacsBuil d/lib/giflib-4.1.6\include" -I"C:/XEmacsBuild/lib/libpng-1.2.46" -I"C:/XEmacsBui ld/lib/zlib" -I"C:/XEmacsBuild/lib/tiff-3.9.5\libtiff" -I"C:/XEmacsBuild/lib\jpe g-8c" -I"C:/XEmacsBuild/lib/zlib" -DHAVE_MS_WINDOWS -DHAVE_MENUBARS -DHAVE_SCRO LLBARS -DHAVE_TOOLBARS -DHAVE_WIDGETS -DHAVE_DIALOGS -DHAVE_XPM -DFOR_MSW -DHAVE _GIF -DHAVE_PNG -DHAVE_TIFF -DHAVE_JPEG -DHAVE_ZLIB -DHAVE_NATIVE_SOUND -DMULE - DERROR_CHECK_ALL -DPDUMP -DSYSTEM_MALLOC -DDEBUG_XEMACS -D_DEBUG -DWIN32_LEAN_A ND_MEAN -DWIN32_NATIVE -Demacs -DHAVE_CONFIG_H -DPATH_VERSION=\"21.5-b34\" -DPATH_PROGNAME=\"xemacs\" -DEMACS_VERSION =\"21.5-b34\" -DEMACS_PROGNAME=\"xemacs\" -DSHEBANG_PROGNAME=\"xemacs -script\" -DSTACK_TRACE_EYE_CATCHER=xemacs_21_5_b34_i586_pc_win32 -DPATH_PREFIX= \""c:\\Program Files\\XEmacs\\XEmacs-21.5-b34"\" -DEMACS_MAJOR_VERSION=21 -DEM ACS_MINOR_VERSION=5 -DEMACS_BETA_VERSION=34 -DXEMACS_CODENAME=\""kale"\" -DX EMACS_EXTRA_NAME=\"""\" -DPATH_LATE_PACKAGE_DIRECTORIES=\""C:/XEmacs"\" -DEMAC S_CONFIGURATION=\"i586-pc-win32\"". For lib-src, using compiler "cl -nologo -W3 -DSTRICT -Zi -Od -MD -IC:\Cyg_opt \src\xemacs-cygwin-test\lib-src -IC:\Cyg_opt\src\xemacs-cygwin-test\src -DHAVE_C ONFIG_H -DWIN32_NATIVE -DPATH_VERSION=\"21.5-b34\" -DPATH_PROGNAME =\"xemacs\" -DEMACS_VERSION=\"21.5-b34\" -DEMACS_PROGNAME=\"xemacs\" -DSHEBANG_PROGNAME=\"xemacs-script\" -DSTACK_TRACE_ EYE_CATCHER=xemacs_21_5_b34_i586_pc_win32". Compiling as C++. Installing XEmacs in "c:\\Program Files\\XEmacs\\XEmacs-21.5-b34". Package path is "C:/XEmacs". Compiling in support for Microsoft Windows native GUI. Compiling in international (MULE) support. Compiling in support for XPM images. Compiling in support for GIF images. Compiling in support for PNG images. Compiling in support for TIFF images. Compiling in support for JPEG images. Compiling in support for GZIP compression/decompression. Compiling in support for toolbars. Compiling in support for dialogs. Compiling in support for widgets. Compiling in support for native sounds. Using portable dumper. Using system malloc. Using DLL version of C runtime library. Compiling in extra internal error-checking. NOTE: --------------------------------------------------------- NOTE: Compiling in support for runtime error-checking. NOTE: XEmacs will run noticeably more slowly as a result. NOTE: Error-checking is on by default for XEmacs beta releases. NOTE: --------------------------------------------------------- Compiling in debugging support (no slowdown). -------------------------------------------------------------------- set COPYCMD=/y 1 file(s) copied. set COPYCMD=/y 1 File(s) copied set COPYCMD=/y 1 File(s) copied make-dump-id.c etags.c getopt.c getopt1.c regex.c Generating Code... hexl.c i.c winclient.c make-docfile.c mmencode.c movemail.c pop.c getopt.c getopt1.c regex.c Generating Code... sorted-doc.c minitar.c console-msw.c C:\Cyg_opt\src\xemacs-cygwin-test\src\intl-auto-encap-win32.h(105) : error C2146 : syntax error : missing ';' before identifier 'qxeSHGetNewLinkInfo' C:\Cyg_opt\src\xemacs-cygwin-test\src\intl-auto-encap-win32.h(105) : error C2501 : 'WINBOOL' : missing storage-class or type specifiers C:\Cyg_opt\src\xemacs-cygwin-test\src\intl-auto-encap-win32.h(105) : fatal error C1004: unexpected end of file found NMAKE: fatal error U1077: 'cl' : return code '0x2' Stop. Thanks for thinking about this. - Vin