winefile: switch to UNICODE mode

Martin Fuchs martin-fuchs at gmx.net
Mon Jun 20 15:17:29 CDT 2005


Changelog:
switch winefile to UNICODE mode



Why did I declare a new macro $(PREINCL) and insert it into Make.rule.in ?
To allow inserting the include directory <include/msvcrt> before <include>.
Another way would be to change the following line in Make.rule.in and move 
$(EXTRAINCL) before -I$(TOPSRCDIR)/include:

INCLUDES     = -I$(SRCDIR) -I. $(EXTRAINCL) -I$(TOPSRCDIR)/include 
-I$(TOPOBJDIR)/include



Why did I remove the following from include/tchar.h?

#if defined(_UNICODE) || defined(_MBCS)
#error You must use msvcrt when building in Unicode/MBCS mode
#endif


Because it's just crazy - a few lines later _UNICODE and _MBCS are used to 
build the A/W mapping macros:

/*****************************************************************************
 * tchar mappings
 */
#ifndef _UNICODE
#  ifndef _MBCS
#    include <string.h>
#    define WINE_tchar_routine(std,mbcs,unicode) std
#  else
#    include <mbstring.h>
#    define WINE_tchar_routine(std,mbcs,unicode) mbcs
#  endif
#else /* _UNICODE */
#  include <wchar.h>
#  define WINE_tchar_routine(std,mbcs,unicode) unicode
#endif


If _UNICODE and _MBCS would not be allowed to be used in <tchar.h> at all, 
what would be the sense of the whole file?

-------------- next part --------------
A non-text attachment was scrubbed...
Name: winefile-unicode.patch
Type: text/x-diff
Size: 10559 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20050620/b82a8e6b/winefile-unicode.bin


More information about the wine-devel mailing list