Bug 64059 - Update of port databases/myodbc to latest production release (3.51.06)
Summary: Update of port databases/myodbc to latest production release (3.51.06)
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-03-10 18:30 UTC by Sergey Prihodko
Modified: 2004-04-10 15:08 UTC (History)
0 users

See Also:


Attachments
myodbc.port.sh (2.95 KB, text/plain)
2004-03-10 18:30 UTC, Sergey Prihodko
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Prihodko 2004-03-10 18:30:18 UTC
	
	Current version of myodbc is outdated (2.50.39). Latest release on 
	mysql.com is 3.51.06.

Fix: Below is all port files need to compile myodbc
Comment 1 Mark Linimon freebsd_committer freebsd_triage 2004-03-17 12:37:56 UTC
State Changed
From-To: open->feedback

Does the maintainer approve of this change?  (He does not appear 
to have been Cc:ed)
Comment 2 ebakke 2004-03-22 16:49:42 UTC
Here's an updated port for MyODBC 3.51.06.

This version is configurable to link against mysql-client 3.2.3 or 4.0.
Versions 4.1 and 5.0 are not supported yet
To make this port better, it would be nice if it could autodetect the 
installed mysql-client version.  I will add that to it when I have time, but 
for now the port relies on environment variables to decide which version to 
use.

If there are any problems with this version, please feel free to fix them.  I 
am in the process of moving, and will be offline from Wednesday afternon 24 
March (CET) until some time in April.  This email address will be inactive 
from the same date.

Originally submitted by: sergey@migsoft.com.ua
Slightly modified by: myself (ebakke@trolltech.com)

diff -ruN myodbc.old/Makefile myodbc/Makefile
--- myodbc.old/Makefile	Mon Mar 15 10:39:46 2004
+++ myodbc/Makefile	Mon Mar 22 17:39:48 2004
@@ -1,15 +1,14 @@
 # New ports collection makefile for:	MyODBC
-# Date created:				24 Oct 2000
-# Whom:					ebakke@trolltech.com
+# Date created:				22 Mar 2004
+# Whom:					sergey@migsoft.com.ua
 #
-# $FreeBSD: ports/databases/myodbc/Makefile,v 1.9 2004/03/14 06:16:09 ade Exp 
$
+# $FreeBSD:
 #
 
-PORTNAME=	myodbc
-PORTVERSION=	2.50.39
-PORTREVISION=	1
+PORTNAME=	myodbc
+PORTVERSION=	3.51.06
 CATEGORIES=	databases
-MASTER_SITES=	http://www.mysql.com/Downloads/MyODBC/ \
+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/
 DISTNAME=	MyODBC-${PORTVERSION}
@@ -17,10 +16,14 @@
 MAINTAINER=	ebakke@trolltech.com
 COMMENT=	ODBC driver for MySQL
 
+.if defined(WITH_MYSQL323)
 LIB_DEPENDS=	mysqlclient.10:${PORTSDIR}/databases/mysql323-client
+.else
+LIB_DEPENDS=	mysqlclient.12:${PORTSDIR}/databases/mysql40-client
+.endif
 
 USE_GMAKE=	yes
-USE_LIBTOOL_VER=	13
+USE_LIBTOOL=	yes
 CONFIGURE_ARGS=	--with-mysql-libs=${LOCALBASE}/lib/mysql \
 		--with-mysql-includes=${LOCALBASE}/include/mysql
 
@@ -37,6 +40,19 @@
 LIB_DEPENDS+=		iodbc.3:${PORTSDIR}/databases/libiodbc
 CONFIGURE_ARGS+=	--with-odbc-ini=${LOCALBASE}/etc/libiodbc/odbc.ini
 .endif
+
+pre-fetch:
+	@${ECHO}
+	@${ECHO} "By default, this port will link to mysql-client 4.0."
+	@${ECHO} "If you want to use another client versions,"
+	@${ECHO} "specify one of the following variables either on"
+	@${ECHO} "the command line or in the environment:"
+	@${ECHO}
+	@${ECHO} "Variable		Depend on"
+	@${ECHO} "WITH_MYSQL323		mysql323-client"
+	@${ECHO}
+	@${ECHO} "Building against version 4.1 or 5.0 is not yet supported"
+	@${ECHO}
 
 # Allow a new value of ODBCVER to be set at build-time
 .if defined(ODBCVER)
diff -ruN myodbc.old/README.html myodbc/README.html
--- myodbc.old/README.html	Sat Mar  6 20:49:43 2004
+++ myodbc/README.html	Thu Jan  1 01:00:00 1970
@@ -1,30 +0,0 @@
-<html>
-<title> The FreeBSD Ports Collection (databases/myodbc)</title>
-<head><h1> The FreeBSD Ports Collection ("databases/myodbc")</h1> </head> 
<hr>
-<body>
-
-<p>You are now in the directory for the port "databases/myodbc" (package name 
"myodbc-2.50.39").
-
-<p>This is the one-line description for this port:
-
-<p><hr><p>
-ODBC driver for MySQL
-<p><hr>
-
-<p>Please read the "<a href="pkg-descr">description file</a>" for a
-longer description.
-
-<p>Go to the <a href="../../README.html">top of the ports tree</a> for
-a summary on how to use the ports collection.
-
-<p>
-This port requires package(s) "XFree86-libraries-4.2.1_5 expat-1.95.5 
freetype2-2.1.2_1 gettext-0.11.5_1 glib-1.2.10_8 gmake-3.80 gtk-1.2.10_9 
imake-4.2.0_1 libiconv-1.8_2 libiodbc-3.0.5_1 libtool-1.3.4_4 
mysql-client-3.23.54 perl-5.6.1_11 pkgconfig-0.13.0" to build.
-<p>
-This port requires package(s) "XFree86-libraries-4.2.1_5 expat-1.95.5 
freetype2-2.1.2_1 gettext-0.11.5_1 glib-1.2.10_8 gtk-1.2.10_9 imake-4.2.0_1 
libiconv-1.8_2 libiodbc-3.0.5_1 mysql-client-3.23.54 perl-5.6.1_11 
pkgconfig-0.13.0" to run.
-
-<p><hr><p>
-<a href="../README.html"> Go up one level</a>
-|
-<a href="../../README.html"> Go to top of ports tree</a>
-</body>
-</html>
diff -ruN myodbc.old/distinfo myodbc/distinfo
--- myodbc.old/distinfo	Sat Mar  6 20:49:43 2004
+++ myodbc/distinfo	Mon Mar 22 15:33:27 2004
@@ -1 +1,2 @@
-MD5 (MyODBC-2.50.39.tar.gz) = 30765641c87b7fc2c2c67dcf1cb85d7a
+MD5 (MyODBC-3.51.06.tar.gz) = 5a59b4f01592fc9ec96e985bc7d6aada
+SIZE (MyODBC-3.51.06.tar.gz) = 322059
diff -ruN myodbc.old/files/patch-info.c myodbc/files/patch-info.c
--- myodbc.old/files/patch-info.c	Sat Mar  6 20:49:43 2004
+++ myodbc/files/patch-info.c	Thu Jan  1 01:00:00 1970
@@ -1,34 +0,0 @@
---- info.c.orig	Thu Sep 20 02:04:08 2001
-+++ info.c	Tue Feb  5 10:57:03 2002
-@@ -171,11 +171,13 @@
-     *pcbInfoValue=(SQLSMALLINT) (strmake((char*) 
rgbInfoValue,"Y",cbInfoValueMax)
- 			   - (char*) rgbInfoValue);
-     break;
-+#if (ODBCVER < 0x0300)
- #ifdef SQL_MAX_IDENTIFIER_LEN
-   case SQL_MAX_IDENTIFIER_LEN:
-     *((SQLUSMALLINT*) rgbInfoValue)=NAME_LEN;
-     break;
- #endif
-+#endif
-   case SQL_CONCAT_NULL_BEHAVIOR:
-     *((SQLSMALLINT*) rgbInfoValue)=SQL_CB_NULL;
-     *pcbInfoValue=sizeof(SQLSMALLINT);
-@@ -188,7 +190,7 @@
- #ifdef SQL_CURSOR_SENSITIVITY
-   case SQL_CURSOR_SENSITIVITY:
-     *((SQLUINTEGER*) rgbInfoValue)=SQL_UNSPECIFIED;
--    break
-+    break;
- #endif
-   case SQL_DEFAULT_TXN_ISOLATION:
-     *((long*) rgbInfoValue)= DEFAULT_TXN_ISOLATION;
-@@ -411,7 +413,7 @@
-     *pcbInfoValue=sizeof(long);
-     break;
- #if (ODBCVER >= 0x0300)
--  case SQL_MAX_IDENTIFIER_LENGTH:
-+  case SQL_MAX_IDENTIFIER_LEN:
-     *((long*) rgbInfoValue)=NAME_LEN;
-     *pcbInfoValue=sizeof(long);
-     break;
diff -ruN myodbc.old/files/patch-results.c myodbc/files/patch-results.c
--- myodbc.old/files/patch-results.c	Sat Mar  6 20:49:43 2004
+++ myodbc/files/patch-results.c	Thu Jan  1 01:00:00 1970
@@ -1,19 +0,0 @@
---- results.c	4 Dec 2001 18:47:05 -0000	1.1
-+++ results.c	2 Mar 2002 18:18:21 -0000	1.2
-@@ -743,14 +743,14 @@
-   case SQL_C_SBIGINT:
-   {
-     if (rgbValue)
--      *((longlong*) rgbValue)= atoll(value);
-+      *((longlong*) rgbValue)= strtoll(value, NULL, 10);
-     *pcbValue=sizeof(longlong);
-     break;
-   }
-   case SQL_C_UBIGINT:
-   {
-     if (rgbValue)
--      *((ulonglong*) rgbValue)= (ulonglong) atoll(value);
-+      *((ulonglong*) rgbValue)= strtoull(value, NULL, 10);
-     *pcbValue=sizeof(ulonglong);
-     break;
-   }
diff -ruN myodbc.old/pkg-descr myodbc/pkg-descr
--- myodbc.old/pkg-descr	Sat Mar  6 20:49:43 2004
+++ myodbc/pkg-descr	Mon Mar 22 15:33:27 2004
@@ -1,3 +1,3 @@
 MyODBC is an ODBC driver for interfacing to MySQL databases.
 
 - Erik H. Bakke
diff -ruN myodbc.old/pkg-plist myodbc/pkg-plist
--- myodbc.old/pkg-plist	Sat Mar  6 20:49:43 2004
+++ myodbc/pkg-plist	Mon Mar 22 17:14:55 2004
@@ -1,5 +1,8 @@
-%%PORTDOCS%%share/doc/myodbc/INSTALL
-%%PORTDOCS%%share/doc/myodbc/README
-lib/libmyodbc-2.50.39.so
-lib/libmyodbc.so
-%%PORTDOCS%%@dirrm share/doc/myodbc
+lib/libmyodbc3-3.51.06.so
+lib/libmyodbc3.la
+lib/libmyodbc3.so
+%%PORTDOCS%%share/doc/myodbc3/INSTALL
+%%PORTDOCS%%share/doc/myodbc3/README
+share/nls/POSIX
+share/nls/en_US.US-ASCII
+%%PORTDOCS%%@dirrm share/doc/myodbc3

-- 
Erik H. Bakke
Comment 3 ebakke 2004-03-22 20:02:00 UTC
This patch should take care of the problem.
(The change is the addition of the CFLAGS+= line)

diff -ruN myodbc.old/Makefile myodbc/Makefile
--- myodbc.old/Makefile	Mon Mar 15 10:39:46 2004
+++ myodbc/Makefile	Mon Mar 22 20:59:27 2004
@@ -1,15 +1,14 @@
 # New ports collection makefile for:	MyODBC
-# Date created:				24 Oct 2000
-# Whom:					ebakke@trolltech.com
+# Date created:				22 Mar 2004
+# Whom:					sergey@migsoft.com.ua
 #
-# $FreeBSD: ports/databases/myodbc/Makefile,v 1.9 2004/03/14 06:16:09 ade Exp 
$
+# $FreeBSD:
 #
 
 PORTNAME=	myodbc
-PORTVERSION=	2.50.39
-PORTREVISION=	1
+PORTVERSION=	3.51.06
 CATEGORIES=	databases
-MASTER_SITES=	http://www.mysql.com/Downloads/MyODBC/ \
+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/
 DISTNAME=	MyODBC-${PORTVERSION}
@@ -17,13 +16,19 @@
 MAINTAINER=	ebakke@trolltech.com
 COMMENT=	ODBC driver for MySQL
 
+.if defined(WITH_MYSQL323)
 LIB_DEPENDS=	mysqlclient.10:${PORTSDIR}/databases/mysql323-client
+.else
+LIB_DEPENDS=	mysqlclient.12:${PORTSDIR}/databases/mysql40-client
+.endif
 
 USE_GMAKE=	yes
-USE_LIBTOOL_VER=	13
+USE_LIBTOOL=	yes
 CONFIGURE_ARGS=	--with-mysql-libs=${LOCALBASE}/lib/mysql \
 		--with-mysql-includes=${LOCALBASE}/include/mysql
 
+CFLAGS+= -D_BSD_WCHAR_T_DEFINED_
+
 # 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:
@@ -37,6 +42,19 @@
 LIB_DEPENDS+=		iodbc.3:${PORTSDIR}/databases/libiodbc
 CONFIGURE_ARGS+=	--with-odbc-ini=${LOCALBASE}/etc/libiodbc/odbc.ini
 .endif
+
+pre-fetch:
+	@${ECHO}
+	@${ECHO} "By default, this port will link to mysql-client 4.0."
+	@${ECHO} "If you want to use another client versions,"
+	@${ECHO} "specify one of the following variables either on"
+	@${ECHO} "the command line or in the environment:"
+	@${ECHO}
+	@${ECHO} "Variable		Depend on"
+	@${ECHO} "WITH_MYSQL323		mysql323-client"
+	@${ECHO}
+	@${ECHO} "Building against version 4.1 or 5.0 is not yet supported"
+	@${ECHO}
 
 # Allow a new value of ODBCVER to be set at build-time
 .if defined(ODBCVER)
diff -ruN myodbc.old/README.html myodbc/README.html
--- myodbc.old/README.html	Sat Mar  6 20:49:43 2004
+++ myodbc/README.html	Thu Jan  1 01:00:00 1970
@@ -1,30 +0,0 @@
-<html>
-<title> The FreeBSD Ports Collection (databases/myodbc)</title>
-<head><h1> The FreeBSD Ports Collection ("databases/myodbc")</h1> </head> 
<hr>
-<body>
-
-<p>You are now in the directory for the port "databases/myodbc" (package name 
"myodbc-2.50.39").
-
-<p>This is the one-line description for this port:
-
-<p><hr><p>
-ODBC driver for MySQL
-<p><hr>
-
-<p>Please read the "<a href="pkg-descr">description file</a>" for a
-longer description.
-
-<p>Go to the <a href="../../README.html">top of the ports tree</a> for
-a summary on how to use the ports collection.
-
-<p>
-This port requires package(s) "XFree86-libraries-4.2.1_5 expat-1.95.5 
freetype2-2.1.2_1 gettext-0.11.5_1 glib-1.2.10_8 gmake-3.80 gtk-1.2.10_9 
imake-4.2.0_1 libiconv-1.8_2 libiodbc-3.0.5_1 libtool-1.3.4_4 
mysql-client-3.23.54 perl-5.6.1_11 pkgconfig-0.13.0" to build.
-<p>
-This port requires package(s) "XFree86-libraries-4.2.1_5 expat-1.95.5 
freetype2-2.1.2_1 gettext-0.11.5_1 glib-1.2.10_8 gtk-1.2.10_9 imake-4.2.0_1 
libiconv-1.8_2 libiodbc-3.0.5_1 mysql-client-3.23.54 perl-5.6.1_11 
pkgconfig-0.13.0" to run.
-
-<p><hr><p>
-<a href="../README.html"> Go up one level</a>
-|
-<a href="../../README.html"> Go to top of ports tree</a>
-</body>
-</html>
diff -ruN myodbc.old/distinfo myodbc/distinfo
--- myodbc.old/distinfo	Sat Mar  6 20:49:43 2004
+++ myodbc/distinfo	Mon Mar 22 17:47:49 2004
@@ -1 +1,2 @@
-MD5 (MyODBC-2.50.39.tar.gz) = 30765641c87b7fc2c2c67dcf1cb85d7a
+MD5 (MyODBC-3.51.06.tar.gz) = 5a59b4f01592fc9ec96e985bc7d6aada
+SIZE (MyODBC-3.51.06.tar.gz) = 322059
diff -ruN myodbc.old/files/patch-info.c myodbc/files/patch-info.c
--- myodbc.old/files/patch-info.c	Sat Mar  6 20:49:43 2004
+++ myodbc/files/patch-info.c	Mon Mar 22 17:47:49 2004
@@ -1,34 +0,0 @@
---- info.c.orig	Thu Sep 20 02:04:08 2001
-+++ info.c	Tue Feb  5 10:57:03 2002
-@@ -171,11 +171,13 @@
-     *pcbInfoValue=(SQLSMALLINT) (strmake((char*) 
rgbInfoValue,"Y",cbInfoValueMax)
- 			   - (char*) rgbInfoValue);
-     break;
-+#if (ODBCVER < 0x0300)
- #ifdef SQL_MAX_IDENTIFIER_LEN
-   case SQL_MAX_IDENTIFIER_LEN:
-     *((SQLUSMALLINT*) rgbInfoValue)=NAME_LEN;
-     break;
- #endif
-+#endif
-   case SQL_CONCAT_NULL_BEHAVIOR:
-     *((SQLSMALLINT*) rgbInfoValue)=SQL_CB_NULL;
-     *pcbInfoValue=sizeof(SQLSMALLINT);
-@@ -188,7 +190,7 @@
- #ifdef SQL_CURSOR_SENSITIVITY
-   case SQL_CURSOR_SENSITIVITY:
-     *((SQLUINTEGER*) rgbInfoValue)=SQL_UNSPECIFIED;
--    break
-+    break;
- #endif
-   case SQL_DEFAULT_TXN_ISOLATION:
-     *((long*) rgbInfoValue)= DEFAULT_TXN_ISOLATION;
-@@ -411,7 +413,7 @@
-     *pcbInfoValue=sizeof(long);
-     break;
- #if (ODBCVER >= 0x0300)
--  case SQL_MAX_IDENTIFIER_LENGTH:
-+  case SQL_MAX_IDENTIFIER_LEN:
-     *((long*) rgbInfoValue)=NAME_LEN;
-     *pcbInfoValue=sizeof(long);
-     break;
diff -ruN myodbc.old/files/patch-results.c myodbc/files/patch-results.c
--- myodbc.old/files/patch-results.c	Sat Mar  6 20:49:43 2004
+++ myodbc/files/patch-results.c	Mon Mar 22 17:47:49 2004
@@ -1,19 +0,0 @@
---- results.c	4 Dec 2001 18:47:05 -0000	1.1
-+++ results.c	2 Mar 2002 18:18:21 -0000	1.2
-@@ -743,14 +743,14 @@
-   case SQL_C_SBIGINT:
-   {
-     if (rgbValue)
--      *((longlong*) rgbValue)= atoll(value);
-+      *((longlong*) rgbValue)= strtoll(value, NULL, 10);
-     *pcbValue=sizeof(longlong);
-     break;
-   }
-   case SQL_C_UBIGINT:
-   {
-     if (rgbValue)
--      *((ulonglong*) rgbValue)= (ulonglong) atoll(value);
-+      *((ulonglong*) rgbValue)= strtoull(value, NULL, 10);
-     *pcbValue=sizeof(ulonglong);
-     break;
-   }
diff -ruN myodbc.old/pkg-plist myodbc/pkg-plist
--- myodbc.old/pkg-plist	Sat Mar  6 20:49:43 2004
+++ myodbc/pkg-plist	Mon Mar 22 17:47:49 2004
@@ -1,5 +1,8 @@
-%%PORTDOCS%%share/doc/myodbc/INSTALL
-%%PORTDOCS%%share/doc/myodbc/README
-lib/libmyodbc-2.50.39.so
-lib/libmyodbc.so
-%%PORTDOCS%%@dirrm share/doc/myodbc
+lib/libmyodbc3-3.51.06.so
+lib/libmyodbc3.la
+lib/libmyodbc3.so
+%%PORTDOCS%%share/doc/myodbc3/INSTALL
+%%PORTDOCS%%share/doc/myodbc3/README
+share/nls/POSIX
+share/nls/en_US.US-ASCII
+%%PORTDOCS%%@dirrm share/doc/myodbc3

-- 
Erik H. Bakke
Comment 4 Pav Lucistnik freebsd_committer freebsd_triage 2004-04-10 15:08:18 UTC
State Changed
From-To: feedback->closed

Committed, thanks you both!