gentoo-overlay/x11-libs/wxGTK/files/wxGTK-2.8.10.1-odbc-defines.patch

39 lines
1.3 KiB
Diff
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unixODBC 2.2.14 defines SQLLEN and SQLULEN using the compiler typedef
declaration instead of preprocessor #define macro definition. This breaks
the preprocessor checks in this include file.cpp, causing the source to fall
back to older types instead, leading to compile time errors like this:
db.cpp:1636: error: cannot convert SQLINTEGER* to SQLLEN* for argument 6 to
SQLRETURN SQLGetData(void*, SQLUSMALLINT, SQLSMALLINT, void*, SQLLEN, SQLLEN*)
...
dbtable.cpp:592: error: cannot convert SQLUINTEGER* to SQLULEN* for argument 4 to
SQLRETURN SQLExtendedFetch(void*, SQLUSMALLINT, SQLLEN, SQLULEN*, SQLUSMALLINT*)
...
This change hard-wires the new names, breaking compatibility with ancient
(pre 2001) unixODBC versions. This change may break other ODBC implementations
but in Gentoo only unixODBC is supported.
References:
http://bugs.gentoo.org/310923
2010-03-23 Martin von Gagern
--- wxPython-src-2.6.4.0.orig/include/wx/db.h
+++ wxPython-src-2.6.4.0/include/wx/db.h
@@ -134,15 +134,6 @@ enum enumDummy {enumDum1};
#endif
#endif
-#ifndef _WIN64
-#ifndef SQLLEN
-#define SQLLEN SQLINTEGER
-#endif
-#ifndef SQLULEN
-#define SQLULEN SQLUINTEGER
-#endif
-#endif
-
const int wxDB_PATH_MAX = 254;
extern WXDLLIMPEXP_DATA_ODBC(wxChar const *) SQL_LOG_FILENAME;