ports/76216: [ Update ] databases/myodbc to 3.51.10

Sergey Prikhodko sergey at network-asp.biz
Thu Jan 13 19:00:53 UTC 2005


>Number:         76216
>Category:       ports
>Synopsis:       [ Update ] databases/myodbc to 3.51.10
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jan 13 19:00:51 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Sergey Prikhodko
>Release:        FreeBSD 5.2.1-RELEASE-p11 i386
>Organization:
Network-ASP
>Environment:
System: FreeBSD network-asp.biz 5.2.1-RELEASE-p11 FreeBSD 5.2.1-RELEASE-p11 #2: Tue Oct 5 11:23:05 EEST 2004 root at network-asp.biz:/usr/obj/usr/src/sys/RKERNEL i386

>Description:

>How-To-Repeat:

>Fix:
	- Update to 3.51.10
	- Fix building with iodbc driver
	- Add building of thread-safe lib
	- Using ${MASTER_SITE_MYSQL}
	- Take mainteintership

--- patch-myodbc begins here ---
diff -ruN myodbc.orig/Makefile myodbc/Makefile
--- myodbc.orig/Makefile	Thu Nov 25 04:00:17 2004
+++ myodbc/Makefile	Thu Jan 13 18:02:06 2005
@@ -6,48 +6,49 @@
 #
 
 PORTNAME=	myodbc
-PORTVERSION=	3.51.06
+PORTVERSION=	3.51.10
 CATEGORIES=	databases
-MASTER_SITES=	http://mysql.paco.net/Downloads/MyODBC3/ \
-		ftp://sunsite.dk/mirrors/mysql/Downloads/MyODBC/ \
-		ftp://ftp.sunet.se/pub/unix/databases/relational/mysql/Downloads/MyODBC/
+MASTER_SITES=	${MASTER_SITE_MYSQL}
+MASTER_SITE_SUBDIR=MyODBC3
 DISTNAME=	MyODBC-${PORTVERSION}
 
-MAINTAINER=	ports at FreeBSD.org
+MAINTAINER=	sergey at network-asp.biz
 COMMENT=	ODBC driver for MySQL
 
-BROKEN=		Does not compile
-
-USE_MYSQL=	yes
-
-USE_GMAKE=	yes
+USE_MYSQL=		yes
+USE_GMAKE=		yes
 USE_LIBTOOL_VER=	13
-INSTALLS_SHLIB=	yes
-CONFIGURE_ARGS=	--with-mysql-libs=${LOCALBASE}/lib/mysql \
-		--with-mysql-includes=${LOCALBASE}/include/mysql
+INSTALLS_SHLIB=		yes
+CONFIGURE_ENV+=		LIBS="-L${LOCALBASE}/lib -lltdl -lpub"
+CONFIGURE_ARGS+=	--with-mysql-path=${LOCALBASE} --without-samples \
+			--disable-gui --enable-test=no
+
+BUILD_DEPENDS+=		${LOCALBASE}/lib/libpub.a:${PORTSDIR}/devel/publib
+LIB_DEPENDS+=		ltdl.4:${PORTSDIR}/devel/libltdl15
 
-PORTDOCS=	INSTALL README
+PORTDOCS=	README
 
 # MyODBC needs an ODBC driver manager to be installed, and it supports both
 # iODBC and unixODBC.  The following variable may be set at built-time to
 # either "iodbc" or "unixodbc", with the former being the default:
 DRIVER_MANAGER?=	iodbc
 
+CONFIGURE_ARGS+=	
 .if ${DRIVER_MANAGER} == "unixodbc"
 CONFIGURE_ARGS+=	--with-odbc-ini=${LOCALBASE}/etc/odbc.ini \
-			--with-unixODBC=${LOCALBASE} \
-			--without-samples
+			--with-unixODBC=${LOCALBASE}
 LIB_DEPENDS+=		odbc.1:${PORTSDIR}/databases/unixODBC
 .else	# assume we're using iodbc
 LIB_DEPENDS+=		iodbc.3:${PORTSDIR}/databases/libiodbc
-CONFIGURE_ARGS+=	--with-odbc-ini=${LOCALBASE}/etc/libiodbc/odbc.ini
+EXTRA_PATCHES=		${PATCHDIR}/myodbc-iodbc-patch
+CONFIGURE_ARGS+=	--with-iODBC=${LOCALBASE} \
+			--with-iodbc-includes=${LOCALBASE}/include \
+			--with-iodbc-libs=${LOCALBASE}/lib \
+			--with-odbc-ini=${LOCALBASE}/etc/libiodbc/odbc.ini
 .endif
 
-pre-fetch:
-	@${ECHO}
-	@${ECHO} "This software works with MySQL 3.x and 4.0."
-	@${ECHO} "Building against MySQL version 4.1 or 5.0 is not yet supported."
-	@${ECHO}
+PKGNAMESUFFIX=	-${DRIVER_MANAGER}-mysql${MYSQL_VER}
+COMMENT+=	${MYSQL_VER} / ${DRIVER_MANAGER}
 
 # Allow a new value of ODBCVER to be set at build-time
 .if defined(ODBCVER)
@@ -66,9 +67,9 @@
 post-install:
 .if !defined(NOPORTDOCS)
 	@ ${MKDIR} ${DOCSDIR}
-# Install the INSTALL file as well, since it describes how to set up odbc.ini
-	@ ${INSTALL_DATA} ${WRKSRC}/INSTALL ${DOCSDIR}
 	@ ${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR}
 .endif
+	[ -f ${PREFIX}/lib/libmyodbc3.so.0 ] || ${LN} -s ${PREFIX}/lib/libmyodbc3.so ${PREFIX}/lib/libmyodbc3.so.0
+	[ -f ${PREFIX}/lib/libmyodbc3_r.so.0 ] || ${LN} -s ${PREFIX}/lib/libmyodbc3_r.so ${PREFIX}/lib/libmyodbc3_r.so.0
 
 .include <bsd.port.mk>
diff -ruN myodbc.orig/distinfo myodbc/distinfo
--- myodbc.orig/distinfo	Sat Apr 10 14:08:07 2004
+++ myodbc/distinfo	Wed Jan 12 06:50:22 2005
@@ -1,2 +1,2 @@
-MD5 (MyODBC-3.51.06.tar.gz) = 5a59b4f01592fc9ec96e985bc7d6aada
-SIZE (MyODBC-3.51.06.tar.gz) = 322059
+MD5 (MyODBC-3.51.10.tar.gz) = 95e123c9edfdc7afe27cd7d03fd853c7
+SIZE (MyODBC-3.51.10.tar.gz) = 963532
diff -ruN myodbc.orig/files/myodbc-iodbc-patch myodbc/files/myodbc-iodbc-patch
--- myodbc.orig/files/myodbc-iodbc-patch	Thu Jan  1 00:00:00 1970
+++ myodbc/files/myodbc-iodbc-patch	Wed Jan 12 06:39:16 2005
@@ -0,0 +1,430 @@
+--- driver/cursor.c.orig	Tue Nov  2 06:03:57 2004
++++ driver/cursor.c	Sun Jan  2 18:43:32 2005
+@@ -410,7 +410,7 @@
+   MYSQL_ROW   row_data= result->data_cursor->data + nSrcCol;
+   NET	      *net=&stmt->dbc->mysql.net;
+   SQLCHAR     *to= net->buff;
+-  SQLINTEGER  length;
++  SQLLEN      length;
+ 
+   /* Copy row buffer data to statement */
+   param.used= 1;
+@@ -722,14 +722,14 @@
+ 				  DYNAMIC_STRING *dynQuery)
+ {
+   PARAM_BIND  param;
+-  SQLUINTEGER transfer_length,precision,display_size;
+-  SQLINTEGER  length;
++  SQLULEN     transfer_length,precision,display_size;
++  SQLLEN      length;
+   uint	      ncol, ignore_count= 0;
+   MYSQL_FIELD *field;
+   MYSQL_RES   *result= stmt->result;
+   BIND	      *bind;
+   NET	      *net=&stmt->dbc->mysql.net;
+-  SQLINTEGER  *pcbValue;
++  SQLLEN      *pcbValue;
+ 
+   dynstr_append_mem(dynQuery," SET ",5);
+ 
+@@ -997,7 +997,7 @@
+   MYSQL_RES    *result= stmt->result;
+   SQLUINTEGER  insert_count= 1;
+   SQLUINTEGER  count= 0;
+-  SQLINTEGER   length;
++  SQLLEN       length;
+   NET	       *net;
+   SQLUSMALLINT ncol;
+   SQLCHAR      *to;
+@@ -1031,7 +1031,7 @@
+ 
+       for (ncol= 0; ncol < result->field_count; ncol++)
+       {
+-	SQLUINTEGER transfer_length,precision,display_size;
++	SQLULEN      transfer_length,precision,display_size;
+ 	MYSQL_FIELD *field= mysql_fetch_field_direct(result,ncol);
+ 	BIND	    *bind= stmt->bind+ncol;
+ 
+--- driver/execute.c.orig	Tue Nov  2 06:03:57 2004
++++ driver/execute.c	Mon Jan 10 22:17:10 2005
+@@ -664,15 +664,15 @@
+ 
+ SQLRETURN SQL_API SQLNativeSql(SQLHDBC hdbc,
+ 			       SQLCHAR FAR *szSqlStrIn,
+-			       SQLINTEGER cbSqlStrIn,
++			       SQLINTEGER  cbSqlStrIn,
+ 			       SQLCHAR FAR *szSqlStr,
+-			       SQLINTEGER cbSqlStrMax,
++			       SQLINTEGER  cbSqlStrMax,
+ 			       SQLINTEGER FAR *pcbSqlStr)
+ {
+   ulong offset= 0;
+   DBUG_ENTER("SQLNativeSql");
+   DBUG_RETURN_STATUS(copy_lresult(SQL_HANDLE_DBC, hdbc,
+-				  szSqlStr,cbSqlStrMax,pcbSqlStr,
++				  szSqlStr,(SQLLEN)cbSqlStrMax,(SQLLEN FAR *)pcbSqlStr,
+ 				  (char*) szSqlStrIn, cbSqlStrIn,0L,0L,
+ 				  &offset,0));
+ }
+@@ -717,7 +717,7 @@
+ */
+ 
+ SQLRETURN SQL_API SQLPutData(SQLHSTMT hstmt, SQLPOINTER rgbValue,
+-			     SQLINTEGER cbValue)
++			     SQLLEN cbValue)
+ {
+   STMT FAR *stmt= (STMT FAR*) hstmt;
+   PARAM_BIND *param;
+--- driver/myodbc3.h.orig	Tue Nov  2 06:03:57 2004
++++ driver/myodbc3.h	Sun Jan  2 18:05:53 2005
+@@ -227,11 +227,11 @@
+ 
+ typedef struct stmt_options
+ {
+-  SQLUINTEGER	   bind_type,rows_in_set,cursor_type;
+-  SQLUINTEGER	   *paramProcessedPtr;
+-  SQLUINTEGER	   *rowsFetchedPtr;
+-  SQLUINTEGER	   simulateCursor;
+-  SQLINTEGER	   max_length,max_rows, *bind_offset;
++  SQLULEN	   bind_type,rows_in_set,cursor_type;
++  SQLULEN	   *paramProcessedPtr;
++  SQLULEN	   *rowsFetchedPtr;
++  SQLULEN	   simulateCursor;
++  SQLLEN	   max_length,max_rows, *bind_offset;
+   SQLUSMALLINT	   *paramStatusPtr;
+   SQLUSMALLINT	   *rowStatusPtr;
+   SQLUSMALLINT	   *rowOperationPtr;
+@@ -284,8 +284,8 @@
+   MYSQL_FIELD	  *field;
+   SQLSMALLINT	  fCType;
+   SQLPOINTER	  rgbValue;
+-  SQLINTEGER	  cbValueMax;
+-  SQLINTEGER FAR  *pcbValue;
++  SQLLEN	  cbValueMax;
++  SQLLEN FAR  *pcbValue;
+   LIST		  list;
+ } BIND;
+ 
+@@ -297,7 +297,7 @@
+   SQLSMALLINT SqlType,CType;
+   gptr	      buffer;
+   char	      *pos_in_query,*value;
+-  SQLINTEGER  ValueMax,*actual_len,value_length;
++  SQLLEN      ValueMax,*actual_len,value_length;
+   bool	      alloced,used;
+   bool	      real_param_done;
+ } PARAM_BIND;
+--- driver/myutil.h.orig	Tue Nov  2 06:03:57 2004
++++ driver/myutil.h	Sun Jan  2 18:25:14 2005
+@@ -94,13 +94,13 @@
+ char *insert_param(MYSQL *mysql, char *to,PARAM_BIND *param);
+ char *add_to_buffer(NET *net,char *to,char *from,ulong length);
+ SQLRETURN copy_lresult(SQLSMALLINT HandleType, SQLHANDLE handle,
+-		       SQLCHAR FAR *rgbValue, SQLINTEGER cbValueMax,
+-		       SQLINTEGER FAR *pcbValue, char *src,
++		       SQLCHAR FAR *rgbValue, SQLLEN cbValueMax,
++		       SQLLEN FAR *pcbValue, char *src,
+ 		       long src_length, long max_length,
+ 		       long fill_length,ulong *offset,my_bool binary_data);
+ SQLRETURN copy_binary_result(SQLSMALLINT HandleType, SQLHANDLE handle,
+-			     SQLCHAR FAR *rgbValue, SQLINTEGER cbValueMax,
+-			     SQLINTEGER FAR *pcbValue, char *src,
++			     SQLCHAR FAR *rgbValue, SQLLEN cbValueMax,
++			     SQLLEN FAR *pcbValue, char *src,
+ 			     ulong src_length, ulong max_length,
+ 			     ulong *offset);
+ SQLRETURN set_dbc_error(DBC FAR *dbc, char *state,const char *message,uint errcode);
+@@ -112,13 +112,13 @@
+ SQLRETURN SQL_API my_SQLBindParameter(SQLHSTMT hstmt,SQLUSMALLINT ipar,
+ 				      SQLSMALLINT fParamType,
+ 				      SQLSMALLINT fCType, SQLSMALLINT fSqlType,
+-				      SQLUINTEGER cbColDef,
++				      SQLULEN cbColDef,
+ 				      SQLSMALLINT ibScale,
+ 				      SQLPOINTER  rgbValue,
+-				      SQLINTEGER cbValueMax,
+-				      SQLINTEGER FAR *pcbValue);
++				      SQLLEN cbValueMax,
++				      SQLLEN FAR *pcbValue);
+ SQLRETURN SQL_API my_SQLExtendedFetch(SQLHSTMT hstmt, SQLUSMALLINT fFetchType,
+-				      SQLINTEGER irow, SQLUINTEGER FAR *pcrow,
++				      SQLLEN irow, SQLULEN FAR *pcrow,
+ 				      SQLUSMALLINT FAR *rgfRowStatus, bool upd_status);
+ SQLRETURN copy_stmt_error(STMT FAR *src, STMT FAR *dst);
+ int unireg_to_c_datatype(MYSQL_FIELD *field);
+--- driver/options.c.orig	Sat Dec  4 15:17:25 2004
++++ driver/options.c	Mon Jan 10 22:17:44 2005
+@@ -140,7 +140,7 @@
+     break;
+ 
+   case SQL_ATTR_ROW_BIND_OFFSET_PTR:
+-    options->bind_offset= (SQLINTEGER *)ValuePtr;
++    options->bind_offset= (SQLLEN *)ValuePtr;
+     break;
+ 
+   case 1226:/* MS SQL Server Extension */
+@@ -572,7 +572,7 @@
+     break;
+ 
+   case SQL_ATTR_PARAMS_PROCESSED_PTR: /* need to support this ....*/
+-    options->paramProcessedPtr= (SQLUINTEGER *)ValuePtr;
++    options->paramProcessedPtr= (SQLULEN *)ValuePtr;
+     break;
+ 
+   case SQL_ATTR_PARAMSET_SIZE:
+@@ -601,11 +601,11 @@
+     break;
+ 
+   case SQL_ATTR_ROWS_FETCHED_PTR:
+-    options->rowsFetchedPtr= (SQLUINTEGER *)ValuePtr;
++    options->rowsFetchedPtr= (SQLULEN *)ValuePtr;
+     break;
+ 
+   case SQL_ATTR_SIMULATE_CURSOR:
+-    options->simulateCursor= (SQLUINTEGER)ValuePtr;
++    options->simulateCursor= (SQLULEN)ValuePtr;
+     break;
+ 
+     /*
+@@ -670,7 +670,7 @@
+     break;
+ 
+   case SQL_ATTR_PARAMSET_SIZE:
+-    *(SQLUINTEGER *)ValuePtr= 1;
++    *(SQLULEN *)ValuePtr= 1;
+     break;
+ 
+   case SQL_ATTR_ROW_ARRAY_SIZE:
+@@ -744,7 +744,7 @@
+ */
+ 
+ SQLRETURN SQL_API SQLSetConnectOption(SQLHDBC hdbc, SQLUSMALLINT fOption,
+-				      SQLUINTEGER  vParam)
++				      SQLULEN  vParam)
+ {
+   SQLRETURN result= SQL_SUCCESS;
+   DBUG_ENTER("SQLSetConnectOption");
+@@ -776,7 +776,7 @@
+ */
+ 
+ SQLRETURN SQL_API SQLSetStmtOption(SQLHSTMT hstmt,SQLUSMALLINT fOption,
+-				   SQLUINTEGER vParam)
++				   SQLULEN vParam)
+ {
+   SQLRETURN result= SQL_SUCCESS;
+   DBUG_ENTER("SQLSetStmtOption");
+--- driver/prepare.c.orig	Tue Nov  2 06:03:57 2004
++++ driver/prepare.c	Sun Jan  2 17:22:27 2005
+@@ -168,11 +168,11 @@
+ 		    SQLSMALLINT fParamType __attribute__((unused)),
+ 		    SQLSMALLINT fCType,
+ 		    SQLSMALLINT fSqlType,
+-		    SQLUINTEGER cbColDef __attribute__((unused)),
++		    SQLULEN cbColDef __attribute__((unused)),
+ 		    SQLSMALLINT ibScale __attribute__((unused)),
+ 		    SQLPOINTER	rgbValue,
+-		    SQLINTEGER cbValueMax,
+-		    SQLINTEGER FAR *pcbValue)
++		    SQLLEN cbValueMax,
++		    SQLLEN FAR *pcbValue)
+ {
+   STMT FAR *stmt= (STMT FAR*) hstmt;
+   PARAM_BIND param;
+@@ -234,9 +234,9 @@
+ SQLRETURN SQL_API
+ SQLBindParameter(SQLHSTMT hstmt,SQLUSMALLINT ipar, SQLSMALLINT fParamType,
+ 		 SQLSMALLINT fCType, SQLSMALLINT fSqlType,
+-		 SQLUINTEGER cbColDef, SQLSMALLINT ibScale,
+-		 SQLPOINTER rgbValue, SQLINTEGER cbValueMax,
+-		 SQLINTEGER FAR *pcbValue)
++		 SQLULEN cbColDef, SQLSMALLINT ibScale,
++		 SQLPOINTER rgbValue, SQLLEN cbValueMax,
++		 SQLLEN FAR *pcbValue)
+ {
+   return my_SQLBindParameter(hstmt, ipar, fParamType, fCType, fSqlType,
+ 			     cbColDef, ibScale, rgbValue, cbValueMax,
+@@ -254,7 +254,7 @@
+ SQLDescribeParam(SQLHSTMT hstmt,
+ 		 SQLUSMALLINT ipar __attribute__((unused)),
+ 		 SQLSMALLINT FAR *pfSqlType,
+-		 SQLUINTEGER FAR *pcbColDef,
++		 SQLULEN FAR *pcbColDef,
+ 		 SQLSMALLINT FAR *pibScale __attribute__((unused)),
+ 		 SQLSMALLINT FAR *pfNullable)
+ {
+@@ -276,8 +276,8 @@
+ */
+ 
+ SQLRETURN SQL_API
+-SQLParamOptions(SQLHSTMT hstmt, SQLUINTEGER crow,
+-		SQLUINTEGER FAR *pirow __attribute__((unused)))
++SQLParamOptions(SQLHSTMT hstmt, SQLULEN crow,
++		SQLULEN FAR *pirow __attribute__((unused)))
+ {
+   DBUG_ENTER("SQLParamOptions");
+ 
+@@ -317,7 +317,7 @@
+ SQLRETURN SQL_API
+ SQLSetScrollOptions(SQLHSTMT hstmt,
+ 		    SQLUSMALLINT fConcurrency __attribute__((unused)),
+-		    SQLINTEGER crowKeyset __attribute__((unused)),
++		    SQLLEN crowKeyset __attribute__((unused)),
+ 		    SQLUSMALLINT crowRowset)
+ {
+   STMT FAR *stmt= (STMT FAR*) hstmt;
+--- driver/results.c.orig	Thu Nov  4 00:22:23 2004
++++ driver/results.c	Sun Jan  2 18:18:44 2005
+@@ -54,8 +54,8 @@
+ 
+ SQLRETURN SQL_API sql_get_data(STMT *stm,SQLSMALLINT fCType,MYSQL_FIELD *field,
+ 			       SQLPOINTER rgbValue,
+-			       SQLINTEGER  cbValueMax,
+-			       SQLINTEGER FAR *pcbValue,
++			       SQLLEN     cbValueMax,
++			       SQLULEN FAR *pcbValue,
+ 			       char *value,uint length);
+ 
+ /*!
+@@ -215,7 +215,7 @@
+ 	       SQLSMALLINT cbColNameMax,
+ 	       SQLSMALLINT FAR *pcbColName,
+ 	       SQLSMALLINT FAR *pfSqlType,
+-	       SQLUINTEGER FAR *pcbColDef,
++	       SQLULEN FAR *pcbColDef,
+ 	       SQLSMALLINT FAR *pibScale,
+ 	       SQLSMALLINT FAR *pfNullable)
+ {
+@@ -544,7 +544,7 @@
+ 		SQLPOINTER  CharacterAttributePtr,
+ 		SQLSMALLINT BufferLength,
+ 		SQLSMALLINT *StringLengthPtr,
+-		SQLPOINTER  NumericAttributePtr)
++		SQLLEN *NumericAttributePtr)
+ {
+   return get_col_attr(StatementHandle, ColumnNumber,
+ 		      FieldIdentifier, CharacterAttributePtr,
+@@ -563,7 +563,7 @@
+ 		 SQLUSMALLINT fDescType,
+ 		 SQLPOINTER rgbDesc, SQLSMALLINT cbDescMax,
+ 		 SQLSMALLINT FAR *pcbDesc,
+-		 SQLINTEGER FAR *pfDesc)
++		 SQLLEN FAR *pfDesc)
+ {
+   DBUG_ENTER("SQLColAttributes");
+   DBUG_RETURN_STATUS(get_col_attr(hstmt, icol, fDescType, rgbDesc,
+@@ -579,7 +579,7 @@
+ SQLRETURN SQL_API
+ SQLBindCol(SQLHSTMT hstmt, SQLUSMALLINT icol,
+ 	   SQLSMALLINT fCType, SQLPOINTER rgbValue,
+-	   SQLINTEGER  cbValueMax, SQLINTEGER FAR *pcbValue)
++	   SQLLEN  cbValueMax, SQLLEN FAR *pcbValue)
+ {
+   BIND *bind;
+   STMT FAR *stmt= (STMT FAR*) hstmt;
+@@ -708,7 +708,7 @@
+ SQLRETURN SQL_API
+ SQLGetData(SQLHSTMT hstmt,SQLUSMALLINT icol,
+ 	   SQLSMALLINT fCType,SQLPOINTER rgbValue,
+-	   SQLINTEGER cbValueMax, SQLINTEGER FAR *pcbValue)
++	   SQLLEN cbValueMax, SQLLEN FAR *pcbValue)
+ {
+   STMT FAR *stmt= (STMT FAR*) hstmt;
+   SQLRETURN result;
+@@ -774,8 +774,8 @@
+ 	     SQLSMALLINT    fCType,
+ 	     MYSQL_FIELD    *field,
+ 	     SQLPOINTER     rgbValue,
+-	     SQLINTEGER     cbValueMax,
+-	     SQLINTEGER FAR *pcbValue,
++	     SQLLEN         cbValueMax,
++	     SQLULEN FAR    *pcbValue,
+ 	     char	    *value,
+ 	     uint	    length)
+ {
+@@ -1017,7 +1017,7 @@
+   or an SQL_UPDATE or SQL_DELETE operation in SQLSetPos
+ */
+ 
+-SQLRETURN SQL_API SQLRowCount(SQLHSTMT hstmt, SQLINTEGER FAR *pcrow)
++SQLRETURN SQL_API SQLRowCount(SQLHSTMT hstmt, SQLLEN FAR *pcrow)
+ {
+   STMT FAR *stmt= (STMT FAR*) hstmt;
+   DBUG_ENTER("SQLRowCount");
+@@ -1043,7 +1043,7 @@
+ */
+ SQLRETURN SQL_API
+ my_SQLExtendedFetch(SQLHSTMT hstmt, SQLUSMALLINT fFetchType,
+-		    SQLINTEGER irow, SQLUINTEGER FAR *pcrow,
++		    SQLLEN irow, SQLULEN FAR *pcrow,
+ 		    SQLUSMALLINT FAR *rgfRowStatus, bool upd_status)
+ {
+   ulong rows_to_fetch;
+@@ -1053,7 +1053,7 @@
+   STMT FAR *stmt= (STMT FAR*) hstmt;
+   MYSQL_ROW values= 0;
+   MYSQL_ROW_OFFSET save_position;
+-  SQLUINTEGER dummy_pcrow;
++  SQLULEN dummy_pcrow;
+   DBUG_ENTER("SQLExtendedFetch");
+ 
+   LINT_INIT(save_position);
+@@ -1229,7 +1229,7 @@
+ 				      (char*) bind->rgbValue + offset : 0),
+ 				     bind->cbValueMax,
+ 				     (bind->pcbValue ?
+-				      (SQLINTEGER*) ((char*) bind->pcbValue +
++				      (SQLLEN*) ((char*) bind->pcbValue +
+ 						     pcb_offset) : 0),
+ 				     *values,
+ 				     (lengths ? *lengths : *values ?
+@@ -1293,8 +1293,8 @@
+ 
+ SQLRETURN SQL_API
+ SQLExtendedFetch(SQLHSTMT hstmt,SQLUSMALLINT fFetchType,
+-		 SQLINTEGER irow,
+-		 SQLUINTEGER FAR *pcrow,
++		 SQLLEN irow,
++		 SQLULEN FAR *pcrow,
+ 		 SQLUSMALLINT FAR *rgfRowStatus)
+ {
+   return my_SQLExtendedFetch(hstmt, fFetchType, irow,
+@@ -1312,7 +1312,7 @@
+ SQLRETURN SQL_API
+ SQLFetchScroll(SQLHSTMT    StatementHandle,
+ 	       SQLSMALLINT FetchOrientation,
+-	       SQLINTEGER  FetchOffset)
++	       SQLLEN  FetchOffset)
+ {
+   SQLRETURN result;
+   STMT_OPTIONS *options= &((STMT FAR *)StatementHandle)->stmt_options;
+--- driver/utility.c.orig	Sat Dec  4 15:17:25 2004
++++ driver/utility.c	Sun Jan  2 18:33:17 2005
+@@ -231,14 +231,14 @@
+ 
+ SQLRETURN
+ copy_lresult(SQLSMALLINT HandleType, SQLHANDLE Handle,
+-	     SQLCHAR FAR *rgbValue, SQLINTEGER cbValueMax,
+-	     SQLINTEGER FAR *pcbValue,char *src,long src_length,
++	     SQLCHAR FAR *rgbValue, SQLLEN cbValueMax,
++	     SQLLEN FAR *pcbValue,char *src,long src_length,
+ 	     long max_length,long fill_length,ulong *offset,
+ 	     my_bool binary_data)
+ {
+   char *dst= (char*) rgbValue;
+   ulong length;
+-  SQLINTEGER arg_length;
++  SQLLEN arg_length;
+ 
+   if (src && src_length == SQL_NTS)
+     src_length= strlen(src);
+@@ -304,8 +304,8 @@
+ 
+ SQLRETURN
+ copy_binary_result(SQLSMALLINT HandleType, SQLHANDLE Handle,
+-		   SQLCHAR FAR *rgbValue,SQLINTEGER cbValueMax,
+-		   SQLINTEGER FAR *pcbValue,char *src,ulong src_length,
++		   SQLCHAR FAR *rgbValue,SQLLEN cbValueMax,
++		   SQLLEN FAR *pcbValue,char *src,ulong src_length,
+ 		   ulong max_length,ulong *offset)
+ {
+   char *dst= (char*) rgbValue;
diff -ruN myodbc.orig/files/patch-driver::connect.c myodbc/files/patch-driver::connect.c
--- myodbc.orig/files/patch-driver::connect.c	Thu Jan  1 00:00:00 1970
+++ myodbc/files/patch-driver::connect.c	Thu Jan 13 17:54:22 2005
@@ -0,0 +1,13 @@
+--- driver/connect.c.orig	Thu Jan 13 17:53:25 2005
++++ driver/connect.c	Thu Jan 13 17:54:18 2005
+@@ -834,8 +834,8 @@
+       if (!KEY_STMT)
+         KEY_STMT= (char*) my_strdup("", MYF(MY_WME));
+ 
+-      if (fDriverCompletion == SQL_DRIVER_PROMPT ||
+-      ((fDriverCompletion == SQL_DRIVER_COMPLETE ||
++      if (
++      ((fDriverCompletion == SQL_DRIVER_PROMPT ||fDriverCompletion == SQL_DRIVER_COMPLETE ||
+         fDriverCompletion == SQL_DRIVER_COMPLETE_REQUIRED) &&
+        (!KEY_DSN && !fDriver)))
+         fPrompt= TRUE;
diff -ruN myodbc.orig/pkg-plist myodbc/pkg-plist
--- myodbc.orig/pkg-plist	Sun Nov 14 04:00:22 2004
+++ myodbc/pkg-plist	Tue Jan 11 05:54:59 2005
@@ -1,4 +1,10 @@
-lib/libmyodbc3-3.51.06.so
+lib/libmyodbc3-3.51.10.so
 lib/libmyodbc3.a
 lib/libmyodbc3.la
 lib/libmyodbc3.so
+lib/libmyodbc3.so.0
+lib/libmyodbc3_r-3.51.10.so
+lib/libmyodbc3_r.a
+lib/libmyodbc3_r.la
+lib/libmyodbc3_r.so
+lib/libmyodbc3_r.so.0
--- patch-myodbc ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list