tags 360436 patch
thanks

On Sun, Apr 02, 2006 at 12:36:19PM +0200, Kurt Roeckx wrote:
> Your package is failing to build with the following error:
> odbc.c: At top level:
> odbc.c:215: error: conflicting types for 'SQLDescribeParam'
> /usr/include/sqlext.h:1851: error: previous declaration of 'SQLDescribeParam' 
> w
> as here
> odbc.c:226: error: conflicting types for 'SQLExtendedFetch'
> /usr/include/sqlext.h:1858: error: previous declaration of 'SQLExtendedFetch' 
> w
> as here
> odbc.c:352: error: conflicting types for 'SQLSetPos'
> /usr/include/sqlext.h:1928: error: previous declaration of 'SQLSetPos' was 
> here
> odbc.c:405: error: conflicting types for 'SQLBindParameter'
> /usr/include/sqlext.h:1959: error: previous declaration of 'SQLBindParameter' 
> w
> as here
> [...]

Attached is a patch for this bug which fixes these 64-bit issues by using
the ODBC 3.52-specific 64-bit types.  Upstream may prefer to support earlier
versions of the ODBC driver manager for compatibility purposes, but this
should be sufficient for Debian.

Note that the change to the SQLParamOptions prototype is based on a pending
fix to unixodbc which I will be uploading shortly; currently mdbtools will
still FTBFS with this patch because of this API-incompatible change in
unixodbc, but it's a change that seems to be needed for complete 64-bit
compatibility so I'm going to be pushing it into unstable as soon as I can
review the impact to other ODBC-using packages.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
[EMAIL PROTECTED]                                   http://www.debian.org/
diff -u mdbtools-0.5.99.0.6pre1.0.20051109/debian/changelog 
mdbtools-0.5.99.0.6pre1.0.20051109/debian/changelog
--- mdbtools-0.5.99.0.6pre1.0.20051109/debian/changelog
+++ mdbtools-0.5.99.0.6pre1.0.20051109/debian/changelog
@@ -1,3 +1,10 @@
+mdbtools (0.5.99.0.6pre1.0.20051109-2.2) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Fix 64-bit issues with the ODBC support.  Closes: #360436.
+
+ -- Steve Langasek <[EMAIL PROTECTED]>  Sat, 25 Mar 2006 16:47:56 -0800
+
 mdbtools (0.5.99.0.6pre1.0.20051109-2.1) unstable; urgency=low
 
   * NMU
only in patch2:
unchanged:
--- mdbtools-0.5.99.0.6pre1.0.20051109.orig/src/odbc/odbc.c
+++ mdbtools-0.5.99.0.6pre1.0.20051109/src/odbc/odbc.c
@@ -209,7 +209,7 @@
     SQLHSTMT           hstmt,
     SQLUSMALLINT       ipar,
     SQLSMALLINT FAR   *pfSqlType,
-    SQLUINTEGER FAR   *pcbParamDef,
+    SQLULEN FAR       *pcbParamDef,
     SQLSMALLINT FAR   *pibScale,
     SQLSMALLINT FAR   *pfNullable)
 {
@@ -220,8 +220,8 @@
 SQLRETURN SQL_API SQLExtendedFetch(
     SQLHSTMT           hstmt,
     SQLUSMALLINT       fFetchType,
-    SQLINTEGER         irow,
-    SQLUINTEGER FAR   *pcrow,
+    SQLROWOFFSET       irow,
+    SQLROWSETSIZE FAR *pcrow,
     SQLUSMALLINT FAR  *rgfRowStatus)
 {
 struct _hstmt *stmt = (struct _hstmt *) hstmt;
@@ -296,8 +296,8 @@
 
 SQLRETURN SQL_API SQLParamOptions(
     SQLHSTMT           hstmt,
-    SQLUINTEGER        crow,
-    SQLUINTEGER FAR   *pirow)
+    SQLULEN            crow,
+    SQLULEN FAR       *pirow)
 {
        TRACE("SQLParamOptions");
        return SQL_SUCCESS;
@@ -346,7 +346,7 @@
 
 SQLRETURN SQL_API SQLSetPos(
     SQLHSTMT           hstmt,
-    SQLUSMALLINT       irow,
+    SQLSETPOSIROW      irow,
     SQLUSMALLINT       fOption,
     SQLUSMALLINT       fLock)
 {
@@ -397,11 +397,11 @@
     SQLSMALLINT        fParamType,
     SQLSMALLINT        fCType,
     SQLSMALLINT        fSqlType,
-    SQLUINTEGER        cbColDef,
+    SQLULEN            cbColDef,
     SQLSMALLINT        ibScale,
     SQLPOINTER         rgbValue,
-    SQLINTEGER         cbValueMax,
-    SQLINTEGER FAR    *pcbValue)
+    SQLLEN             cbValueMax,
+    SQLLEN FAR        *pcbValue)
 {
 struct _hstmt *stmt;
 
@@ -501,8 +501,8 @@
     SQLUSMALLINT       icol,
     SQLSMALLINT        fCType,
     SQLPOINTER         rgbValue,
-    SQLINTEGER         cbValueMax,
-    SQLINTEGER FAR    *pcbValue)
+    SQLLEN             cbValueMax,
+    SQLLEN FAR        *pcbValue)
 {
        struct _hstmt *stmt = (struct _hstmt *) hstmt;
        struct _sql_bind_info *cur, *newitem;
@@ -593,7 +593,7 @@
     SQLSMALLINT        cbColNameMax,
     SQLSMALLINT FAR   *pcbColName,
     SQLSMALLINT FAR   *pfSqlType,
-    SQLUINTEGER FAR   *pcbColDef, /* precision */
+    SQLULEN FAR       *pcbColDef, /* precision */
     SQLSMALLINT FAR   *pibScale,
     SQLSMALLINT FAR   *pfNullable)
 {
@@ -648,7 +648,7 @@
     SQLPOINTER         rgbDesc,
     SQLSMALLINT        cbDescMax,
     SQLSMALLINT FAR   *pcbDesc,
-    SQLINTEGER FAR    *pfDesc)
+    SQLLEN FAR        *pfDesc)
 {
        int namelen, i;
        struct _hstmt *stmt;
@@ -968,7 +968,7 @@
 
 SQLRETURN SQL_API SQLRowCount(
     SQLHSTMT           hstmt,
-    SQLINTEGER FAR    *pcrow)
+    SQLLEN FAR        *pcrow)
 {
 struct _hstmt *stmt=(struct _hstmt *)hstmt;
 
@@ -1001,10 +1001,10 @@
     SQLUSMALLINT       ipar,
     SQLSMALLINT        fCType,
     SQLSMALLINT        fSqlType,
-    SQLUINTEGER        cbParamDef,
+    SQLULEN            cbParamDef,
     SQLSMALLINT        ibScale,
     SQLPOINTER         rgbValue,
-    SQLINTEGER FAR     *pcbValue)
+    SQLLEN FAR        *pcbValue)
 {
        TRACE("SQLSetParam");
        return SQL_SUCCESS;
@@ -1124,8 +1124,8 @@
     SQLUSMALLINT       icol,
     SQLSMALLINT        fCType,
     SQLPOINTER         rgbValue,
-    SQLINTEGER         cbValueMax,
-    SQLINTEGER FAR    *pcbValue)
+    SQLLEN             cbValueMax,
+    SQLLEN     FAR    *pcbValue)
 {
        struct _hstmt *stmt;
        struct _hdbc *dbc;
@@ -1429,7 +1429,7 @@
 SQLRETURN SQL_API SQLPutData(
     SQLHSTMT           hstmt,
     SQLPOINTER         rgbValue,
-    SQLINTEGER         cbValue)
+    SQLLEN             cbValue)
 {
        TRACE("SQLPutData");
        return SQL_SUCCESS;
@@ -1438,7 +1438,7 @@
 SQLRETURN SQL_API SQLSetConnectOption(
     SQLHDBC            hdbc,
     SQLUSMALLINT       fOption,
-    SQLUINTEGER        vParam)
+    SQLULEN            vParam)
 {
        TRACE("SQLSetConnectOption");
        return SQL_SUCCESS;
@@ -1447,7 +1447,7 @@
 SQLRETURN SQL_API SQLSetStmtOption(
     SQLHSTMT           hstmt,
     SQLUSMALLINT       fOption,
-    SQLUINTEGER        vParam)
+    SQLROWCOUNT        vParam)
 {
        TRACE("SQLSetStmtOption");
        return SQL_SUCCESS;

Attachment: signature.asc
Description: Digital signature

Reply via email to