Took some advice from alex re: w32api headers. Use ..._DEFINED to override items in the standard headers for different wordsize host. wrc almost working on 64-bit host. Modified: trunk/reactos/tools/wrc/newstruc.c Modified: trunk/reactos/tools/wrc/wrc.mak Modified: trunk/reactos/w32api/include/windef.h Modified: trunk/reactos/w32api/include/winnt.h _____
Modified: trunk/reactos/tools/wrc/newstruc.c --- trunk/reactos/tools/wrc/newstruc.c 2005-09-15 04:57:51 UTC (rev 17855) +++ trunk/reactos/tools/wrc/newstruc.c 2005-09-15 05:58:49 UTC (rev 17856) @@ -325,8 +325,11 @@
{ type |= FL_SIZEBE | FL_OS2; } - else + else + { + fprintf(stderr, "bisizel %d bosizel %d b4sizel %d\n", bisizel, bosizel, b4sizel); yyerror("Invalid bitmap format, bih->biSize = %ld", bih->biSize); + }
switch(type) { _____
Modified: trunk/reactos/tools/wrc/wrc.mak --- trunk/reactos/tools/wrc/wrc.mak 2005-09-15 04:57:51 UTC (rev 17855) +++ trunk/reactos/tools/wrc/wrc.mak 2005-09-15 05:58:49 UTC (rev 17856) @@ -54,6 +54,9 @@
WRC_HOST_CFLAGS = -I$(WRC_BASE) $(TOOLS_CFLAGS) \ -D__USE_W32API -DWINE_UNICODE_API= \ + -DDWORD="unsigned int" -DDWORD_DEFINED \ + -DLONG="int" -DULONG="unsigned int" \ + -DPULONG="unsigned int *" -DLONG_DEFINED \ -Dwchar_t="unsigned short" -D_WCHAR_T_DEFINED \ -I$(UNICODE_BASE) -I$(WPP_BASE) \ -Iinclude/wine -Iinclude -Iw32api/include _____
Modified: trunk/reactos/w32api/include/windef.h --- trunk/reactos/w32api/include/windef.h 2005-09-15 04:57:51 UTC (rev 17855) +++ trunk/reactos/w32api/include/windef.h 2005-09-15 05:58:49 UTC (rev 17856) @@ -222,7 +222,11 @@
#define _finally __finally #endif
-typedef unsigned long DWORD; +#ifndef DWORD_DEFINED +#define DWORD_DEFINED + typedef unsigned long DWORD; +#endif//DWORD_DEFINED + typedef int WINBOOL,*PWINBOOL,*LPWINBOOL; /* FIXME: Is there a good solution to this? */ #ifndef XFree86Server _____
Modified: trunk/reactos/w32api/include/winnt.h --- trunk/reactos/w32api/include/winnt.h 2005-09-15 04:57:51 UTC (rev 17855) +++ trunk/reactos/w32api/include/winnt.h 2005-09-15 05:58:49 UTC (rev 17856) @@ -52,11 +52,14 @@
#endif typedef char CHAR; typedef short SHORT; -typedef long LONG; +#ifndef LONG_DEFINED +#define LONG_DEFINED + typedef long LONG; + typedef unsigned long ULONG,*PULONG; +#endif//LONG_DEFINED typedef char CCHAR, *PCCHAR; typedef unsigned char UCHAR,*PUCHAR; typedef unsigned short USHORT,*PUSHORT; -typedef unsigned long ULONG,*PULONG; typedef char *PSZ;
typedef void *PVOID,*LPVOID;