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