diff --git a/include/wine/unicode.h b/include/wine/unicode.h index d43f359dddd..f10c3948f10 100644 --- a/include/wine/unicode.h +++ b/include/wine/unicode.h @@ -27,6 +27,10 @@ #include #include +#ifndef WINE_UNICODE_API +#define WINE_UNICODE_API DECLSPEC_IMPORT +#endif + /* code page info common to SBCS and DBCS */ struct cp_info { @@ -95,13 +99,13 @@ static inline int is_dbcs_leadbyte( const union cptable *table, unsigned char ch static inline WCHAR tolowerW( WCHAR ch ) { - extern const WCHAR wine_casemap_lower[]; + extern WINE_UNICODE_API const WCHAR wine_casemap_lower[]; return ch + wine_casemap_lower[wine_casemap_lower[ch >> 8] + (ch & 0xff)]; } static inline WCHAR toupperW( WCHAR ch ) { - extern const WCHAR wine_casemap_upper[]; + extern WINE_UNICODE_API const WCHAR wine_casemap_upper[]; return ch + wine_casemap_upper[wine_casemap_upper[ch >> 8] + (ch & 0xff)]; } @@ -109,7 +113,7 @@ static inline WCHAR toupperW( WCHAR ch ) /* and the C2_* type in the high 4 bits */ static inline unsigned short get_char_typeW( WCHAR ch ) { - extern const unsigned short wine_wctype_table[]; + extern WINE_UNICODE_API const unsigned short wine_wctype_table[]; return wine_wctype_table[wine_wctype_table[ch >> 8] + (ch & 0xff)]; } diff --git a/include/winnt.h b/include/winnt.h index d2eebca33ce..2c8596ed038 100644 --- a/include/winnt.h +++ b/include/winnt.h @@ -41,8 +41,14 @@ #define WINE_UNUSED /* nothing */ #endif -#if defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_IA64) || defined(_M_AMD64)) && !defined(MIDL_PASS) -# define DECLSPEC_IMPORT __declspec(dllimport) +#if (defined(_M_IX86) || defined(_M_IA64) || defined(_M_AMD64) || defined(__MINGW32__)) && !defined(MIDL_PASS) +# if defined(_MSC_VER) +# define DECLSPEC_IMPORT __declspec(dllimport) +# elif defined(__MINGW32__) +# define DECLSPEC_IMPORT __attribute__((dllimport)) +# else +# define DECLSPEC_IMPORT +# endif #else # define DECLSPEC_IMPORT #endif diff --git a/libs/unicode/Makefile.in b/libs/unicode/Makefile.in index 1e2b0415938..087a453ffd4 100644 --- a/libs/unicode/Makefile.in +++ b/libs/unicode/Makefile.in @@ -4,7 +4,7 @@ SRCDIR = @srcdir@ VPATH = @srcdir@ LIBRARY = wine_unicode SOVERSION = 1 -EXTRADEFS = -D__WINESRC__ -DNO_LIBWINE_PORT +EXTRADEFS = -D__WINESRC__ -DNO_LIBWINE_PORT -DWINE_UNICODE_API="" CODEPAGES = \ 037 \