Re: Generated Headers - Quite the Can of Worms

[email protected] (Henry S. Thompson)
Newsgroups gmane.emacs.xemacs.beta
Message-ID <[email protected]>
Vin Shelton writes:

> I think Mats has patches to support VS2010 - Mats, can you post your
> patches?

I've installed it, found some patches here [1], making some progress
(but had to turn off gif and jpeg -- those libraries need to be
recompiled with VS2010 themselves I think), and got to the point where
temacs is launched.  That failed, but I think I have some
configuration issues still to be sorted.

About to go out of email contact for 24 hours, sorry for lack of
detail.

Diffs attached, against my old state, sorry no time to do better but
these are all simple. . .

ht

[1] http://permalink.gmane.org/gmane.emacs.xemacs.beta/27920


-- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 650-4587, e-mail: [email protected]
                       URL: http://www.ltg.ed.ac.uk/~ht/
 [mail from me _always_ has a .sig like this -- mail without it is forged spam]

_______________________________________________
XEmacs-Beta mailing list
[email protected]
http://lists.xemacs.org/mailman/listinfo/xemacs-beta
ht_vs2010.patch (text/x-patch, 5 KB)
diff -r 8f7523d95904 lib-src/make-mswin-unicode.pl
--- a/lib-src/make-mswin-unicode.pl	Fri Feb 27 17:48:44 2015 +0000
+++ b/lib-src/make-mswin-unicode.pl	Wed Apr 01 10:26:30 2015 -0700
@@ -182,8 +182,10 @@
 my $argmatch_re = "(?:($typetoken_re+)(${tok_ch}+)?(?: OPTIONAL)?)";
 # regexp matching a parenthesized argument list in a prototype
 my $args_re = "\\(((?:${ws_re}${arg_re}${ws_re},)*${ws_re}${arg_re}${ws_re})\\)";
-# regexp matching a return type in a protype
-my $rettype_re = "(SHSTDAPI_\\([${tok_ch} *]+\\)|${tok_ch}" . "[A-Za-z_0-9 \t\n\r\f]*?${tok_ch})";
+# regexp matching a return type in a protype -- this one from Vin
+my $rettype_re = "(SHSTDAPI_\\(${tok_ch}+${ws_re}\\*?\\)|${tok_ch}" .
+"[A-Za-z_0-9 \t\n\r\f]*?${tok_ch})";
+# HST "(SHSTDAPI_\\([${tok_ch} *]+\\)|${tok_ch}" . "[A-Za-z_0-9 \t\n\r\f]*?${tok_ch})";
 # regexp matching a function name
 my $funname_re = "(${tok_ch}+)";
 # Regexp matching a function prototype, $1 = rettype, $2 = name, $3 = args
diff -r 8f7523d95904 nt/xemacs.mak
--- a/nt/xemacs.mak	Fri Feb 27 17:48:44 2015 +0000
+++ b/nt/xemacs.mak	Wed Apr 01 10:26:30 2015 -0700
@@ -793,7 +793,7 @@
 INCLUDES=-I$(NT)\inc -I$(SRC) $(OPT_INCLUDES)
 
 DEFINES=$(OPT_DEFINES) \
-	-DWIN32_LEAN_AND_MEAN -DWIN32_NATIVE -Demacs \
+	-DWIN32_LEAN_AND_MEAN -DWIN32_NATIVE -Demacs -DNTDDI_VERSION=NTDDI_WIN2K -D_WIN32_WINNT=_WIN32_WINNT_WIN2K \
 	-DHAVE_CONFIG_H $(PROGRAM_DEFINES) $(PATH_DEFINES)
 
 CFLAGS_NO_OPT=-nologo -W3 -DSTRICT $(DEBUG_FLAGS_COMPILE)
diff -r 8f7523d95904 src/intl-auto-encap-win32.c
--- a/src/intl-auto-encap-win32.c	Fri Feb 27 17:48:44 2015 +0000
+++ b/src/intl-auto-encap-win32.c	Wed Apr 01 10:26:30 2015 -0700
@@ -2413,9 +2385,9 @@
 qxeReadConsole (HANDLE hConsoleInput, LPVOID lpBuffer, DWORD nNumberOfCharsToRead, LPDWORD lpNumberOfCharsRead, LPVOID lpReserved)
 {
   if (XEUNICODE_P)
-    return ReadConsoleW (hConsoleInput, lpBuffer, nNumberOfCharsToRead, lpNumberOfCharsRead, lpReserved);
-  else
-    return ReadConsoleA (hConsoleInput, lpBuffer, nNumberOfCharsToRead, lpNumberOfCharsRead, lpReserved);
+    return ReadConsoleW (hConsoleInput, lpBuffer, nNumberOfCharsToRead, lpNumberOfCharsRead, (PCONSOLE_READCONSOLE_CONTROL)lpReserved);
+  else
+    return ReadConsoleA (hConsoleInput, lpBuffer, nNumberOfCharsToRead, lpNumberOfCharsRead, (PCONSOLE_READCONSOLE_CONTROL)lpReserved);
 }
 
 WINBOOL
diff -r 8f7523d95904 src/intl-encap-win32.c
--- a/src/intl-encap-win32.c	Fri Feb 27 17:48:44 2015 +0000
+++ b/src/intl-encap-win32.c	Wed Apr 01 10:26:30 2015 -0700
@@ -225,7 +225,7 @@
 yes GetComputerName
 yes SetComputerName
 yes GetUserName
-yes LogonUser
+skip LogonUser HST_LPC...pblm_unused
 no GetCurrentHwProfile split-sized LPHW_PROFILE_INFO; NT 4.0+ only
 no GetVersionEx split-sized LPOSVERSIONINFO
 no CreateJobObject NT 5.0+ only
@@ -298,10 +298,10 @@
 yes LoadKeyboardLayout
 yes GetKeyboardLayoutName
 no CreateDesktop split-sized LPDEVMODE
-yes OpenDesktop
+skip OpenDesktop HST_LPC...pblm_unused
 split EnumDesktops DESKTOPENUMPROC // callback fun differs only in string pointer type
 override HWINSTA CreateWindowStationW(LPWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES); error arg 1, VS6 prototype, missing const
-yes OpenWindowStation
+skip OpenWindowStation HST_LPC...pblm_unused
 split EnumWindowStations WINSTAENUMPROC // callback fun differs only in string pointer type
 yes GetUserObjectInformation
 yes SetUserObjectInformation
@@ -381,8 +381,8 @@
 yes DrawTextEx NT 4.0+ only
 yes GrayString
 yes DrawState NT 4.0+ only
-yes TabbedTextOut
-yes GetTabbedTextExtent
+skip TabbedTextOut HST_LPC...pblm_unused
+skip GetTabbedTextExtent HST_LPC...pblm_unused
 yes SetProp
 yes GetProp
 yes RemoveProp
@@ -1299,7 +1299,7 @@
 
 split CreateProcessAsUser LPSTARTUPINFO
 split GetStartupInfo LPSTARTUPINFO
-review CreateProcess HST: new? -- needs review
+split CreateProcess LPSTARTUPINFO
 
 file SECURITYBASEAPI.H
 
diff -r 8f7523d95904 src/syswindows.h
--- a/src/syswindows.h	Fri Feb 27 17:48:44 2015 +0000
+++ b/src/syswindows.h	Wed Apr 01 10:26:30 2015 -0700
@@ -603,6 +603,49 @@
    intl-auto-encap-win32.[ch]. */
 typedef LPCVOID PCVOID;
 
+/* from Vin */
+
+typedef int WINBOOL;
+/*typedef intptr_t LONG_PTR;
+typedef uintptr_t ULONG_PTR;
+typedef uintptr_t DWORD_PTR;*/
+
+typedef ITEMIDLIST ITEMIDLIST_ABSOLUTE;
+
+typedef ITEMIDLIST_ABSOLUTE *PIDLIST_ABSOLUTE;
+typedef const ITEMIDLIST_ABSOLUTE *PCIDLIST_ABSOLUTE;
+
+/* Defined in w32api/winuser.h */
+#define GCLP_MENUNAME (-8)
+#define GCLP_HBRBACKGROUND (-10)
+#define GCLP_HCURSOR (-12)
+#define GCLP_HICON (-14)
+#define GCLP_HMODULE (-16)
+#define GCLP_WNDPROC (-24)
+#define GCLP_HICONSM (-34)
+#define GWLP_USERDATA (-21)
+#define GWLP_WNDPROC (-4)
+#define GWLP_HINSTANCE (-6)
+#define GWLP_HWNDPARENT (-8)
+#define GWLP_USERDATA (-21)
+#define GWLP_ID (-12)
+
+#define DWL_MSGRESULT 0
+#define DWL_DLGPROC 4
+#define DWL_USER 8
+
+#ifdef _WIN64
+
+#undef DWL_MSGRESULT
+#undef DWL_DLGPROC
+#undef DWL_USER
+#endif
+
+#define DWLP_MSGRESULT 0
+#define DWLP_DLGPROC DWLP_MSGRESULT + sizeof(LRESULT)
+#define DWLP_USER DWLP_DLGPROC + sizeof(DLGPROC)
+
+
 #endif /* CYGWIN_HEADERS */
 
 /* Not in VC 6 */
config.inc (application/octet-stream, 12.7 KB) - not displayed
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.