diff options
author | steve <steve@FreeBSD.org> | 2000-07-17 03:57:01 +0800 |
---|---|---|
committer | steve <steve@FreeBSD.org> | 2000-07-17 03:57:01 +0800 |
commit | 311e82d24e9d84eb72346b14840e9dd12a8e4c14 (patch) | |
tree | 88771601dbfd885ac08b9eb108652f793fe3ebb5 /databases/mysqltcl | |
parent | 635546d9ae6d6267e7182e7fb79c9175bc177b81 (diff) | |
download | freebsd-ports-graphics-311e82d24e9d84eb72346b14840e9dd12a8e4c14.tar.gz freebsd-ports-graphics-311e82d24e9d84eb72346b14840e9dd12a8e4c14.tar.zst freebsd-ports-graphics-311e82d24e9d84eb72346b14840e9dd12a8e4c14.zip |
Update to use Tcl version 8.3.
PR: 19874
Submitted by: maintainer
Diffstat (limited to 'databases/mysqltcl')
-rw-r--r-- | databases/mysqltcl/Makefile | 6 | ||||
-rw-r--r-- | databases/mysqltcl/files/Makefile.bsd | 2 | ||||
-rw-r--r-- | databases/mysqltcl/files/patch-aa | 169 | ||||
-rw-r--r-- | databases/mysqltcl/files/patch-ab | 2 | ||||
-rw-r--r-- | databases/mysqltcl/pkg-descr | 3 |
5 files changed, 174 insertions, 8 deletions
diff --git a/databases/mysqltcl/Makefile b/databases/mysqltcl/Makefile index 254c55c0a06..22676ba3352 100644 --- a/databases/mysqltcl/Makefile +++ b/databases/mysqltcl/Makefile @@ -7,15 +7,15 @@ PORTNAME= mysqltcl PORTVERSION= 1.53 -CATEGORIES= databases tcl80 -MASTER_SITES= http://www.mysql.com/Contrib/ +CATEGORIES= databases tcl83 +MASTER_SITES= http://www.mysql.com/Downloads/Contrib/ MAINTAINER= mi@aldan.algebra.com LIB_DEPENDS= mysqlclient.6:${PORTSDIR}/databases/mysql322-client \ ${TCL_NODOT}:${PORTSDIR}/lang/${TCL_NODOT} -TCL_VERSION?= tcl8.0 +TCL_VERSION?= tcl8.3 TCL_NODOT= ${TCL_VERSION:S/.//} SQL_DIR= ${PREFIX}/lib/${TCL_VERSION}/mysqltcl PLIST_SUB+= TCL_VERSION=${TCL_VERSION} LIB_NAME=${LIB_NAME} diff --git a/databases/mysqltcl/files/Makefile.bsd b/databases/mysqltcl/files/Makefile.bsd index 72cd0fc6890..a4e6e10047a 100644 --- a/databases/mysqltcl/files/Makefile.bsd +++ b/databases/mysqltcl/files/Makefile.bsd @@ -4,7 +4,7 @@ SHLIB_MINOR= 0 SRCS = mysqltcl.c CFLAGS += -I${PREFIX}/include/${TCL_VERSION}/ -CFLAGS += -I${PREFIX}/include/mysql/ +CFLAGS += -I${PREFIX}/include/mysql/ -Wall LDADD += -L${PREFIX}/lib -l${TCL_NODOT} LDADD += -L${PREFIX}/lib/mysql -lmysqlclient diff --git a/databases/mysqltcl/files/patch-aa b/databases/mysqltcl/files/patch-aa index bcc0f0ac895..a801304bc85 100644 --- a/databases/mysqltcl/files/patch-aa +++ b/databases/mysqltcl/files/patch-aa @@ -1,9 +1,172 @@ ---- mysqltcl.c.orig Mon Jul 6 11:35:17 1998 -+++ mysqltcl.c Wed Sep 1 01:27:44 1999 -@@ -743,5 +743,5 @@ +--- mysqltcl.c Mon Jul 6 11:35:17 1998 ++++ mysqltcl.c Wed Jul 12 17:46:20 2000 +@@ -34,7 +34,7 @@ + #include <string.h> + #include <ctype.h> + #include <unistd.h> +- ++#include <stdlib.h> + + #define MYSQL_HANDLES 15 /* Default number of handles available. */ + #define MYSQL_BUFF_SIZE 1024 /* Conversion buffer size for various needs. */ +@@ -60,7 +60,7 @@ + #define MYSQL_HPREFIX_LEN 5 + + /* Array for status info, and its elements. */ +-static char *MysqlStatusArr = "mysqlstatus"; ++#define MysqlStatusArr "mysqlstatus" + #define MYSQL_STATUS_CODE "code" + #define MYSQL_STATUS_CMD "command" + #define MYSQL_STATUS_MSG "message" +@@ -686,7 +686,6 @@ + Mysqltcl_Init (interp) + Tcl_Interp *interp; + { +- int i; + char nbuf[MYSQL_SMALL_SIZE]; + + /* +@@ -742,7 +739,7 @@ + * If this message appears you must change the source code and recompile. */ if (strlen (MysqlHandlePrefix) == MYSQL_HPREFIX_LEN) - return TCL_OK; + return Tcl_PkgProvide(interp, "mysql", "1.53"); else { + fprintf (stderr, "*** mysqltcl (mysqltcl.c): handle prefix inconsistency!\n") ; +@@ -921,13 +917,13 @@ + + if ((MysqlHandle[hand].result = mysql_store_result (MysqlHandle[hand].mysql)) == NULL) + { +- (void)strcpy (interp->result, "-1") ; ++ Tcl_SetObjResult(interp, Tcl_NewIntObj(-1)); + } + else + { + MysqlHandle[hand].res_count = mysql_num_rows (MysqlHandle[hand].result) ; + MysqlHandle[hand].col_count = mysql_num_fields (MysqlHandle[hand].result) ; +- (void)sprintf (interp->result, "%d", MysqlHandle[hand].res_count) ; ++ Tcl_SetObjResult(interp, Tcl_NewIntObj(MysqlHandle[hand].res_count)); + } + + return TCL_OK; +@@ -1073,7 +1069,7 @@ + MysqlHandle[hand].res_count = total - row; + } + +- (void)sprintf (interp->result, "%d", MysqlHandle[hand].res_count) ; ++ Tcl_SetObjResult(interp, Tcl_NewIntObj(MysqlHandle[hand].res_count)); + return TCL_OK; + } + +@@ -1244,7 +1240,7 @@ + { + case MYSQL_INFNAME_OPT: + case MYSQL_INFNAMEQ_OPT: +- strcpy (interp->result, MysqlHandle[hand].database) ; ++ Tcl_SetResult(interp, MysqlHandle[hand].database, TCL_STATIC); + break ; + case MYSQL_INFTABLES_OPT: + if ((list = mysql_list_tables (MysqlHandle[hand].mysql,(char*)NULL)) == NULL) +@@ -1259,7 +1255,7 @@ + break ; + case MYSQL_INFHOST_OPT: + case MYSQL_INFHOSTQ_OPT: +- strcpy (interp->result, MysqlHandle[hand].host) ; ++ Tcl_SetResult(interp, MysqlHandle[hand].host, TCL_STATIC); + break ; + case MYSQL_INFLIST_OPT: + if ((list = mysql_list_dbs (MysqlHandle[hand].mysql,(char*)NULL)) == NULL) +@@ -1299,8 +1295,6 @@ + int count ; + int hand ; + int idx ; +- MYSQL_RES* list ; +- MYSQL_ROW row ; + + + /* We can't fully check the handle at this stage. */ +@@ -1342,19 +1336,20 @@ + { + case MYSQL_RESROWS_OPT: + case MYSQL_RESROWSQ_OPT: +- sprintf (interp->result, "%d", MysqlHandle[hand].res_count) ; ++ count = MysqlHandle[hand].res_count; + break ; + case MYSQL_RESCOLS_OPT: + case MYSQL_RESCOLSQ_OPT: +- sprintf (interp->result, "%d", MysqlHandle[hand].col_count) ; ++ count = MysqlHandle[hand].col_count; + break ; + case MYSQL_RESCUR_OPT: + case MYSQL_RESCURQ_OPT: +- sprintf (interp->result, "%d", mysql_num_rows (MysqlHandle[hand].result) +- - MysqlHandle[hand].res_count) ; ++ count = mysql_num_rows (MysqlHandle[hand].result) ++ - MysqlHandle[hand].res_count; + default: +- ; ++ return TCL_OK; /* none of the above -- return without touching result */ + } ++ Tcl_SetObjResult(interp, Tcl_NewIntObj(count)); + return TCL_OK ; + } + +@@ -1500,8 +1495,12 @@ + int hi; + char* hp ; + int numeric ; +- char* res ; +- ++ register short res; ++ ++ static const char *states[] = { ++ "NOT_A_HANDLE", "UNCONNECTED", "CONNECTED", "IN_USE", "RESULT_PENDING" ++ }; ++ + if (mysql_prologue(interp, argc, argv, 2, NULL, "?-numeric? handle") < 0) + return TCL_ERROR; + +@@ -1511,17 +1510,18 @@ + hp = (numeric)?argv[2]:argv[1] ; + + if (HSYNTAX(hp,hi) < 0) +- res = (numeric)?"0":"NOT_A_HANDLE" ; ++ res = 0; + else if (MysqlHandle[hi].connection == 0) +- res = (numeric)?"1":"UNCONNECTED" ; ++ res = 1; + else if (MysqlHandle[hi].database[0] == '\0') +- res = (numeric)?"2":"CONNECTED" ; ++ res = 2; + else if (MysqlHandle[hi].result == NULL) +- res = (numeric)?"3":"IN_USE" ; ++ res = 3; + else +- res = (numeric)?"4":"RESULT_PENDING" ; ++ res = 4; + +- (void)strcpy (interp->result, res) ; ++ if (numeric) Tcl_SetObjResult(interp, Tcl_NewIntObj(res)); ++ else Tcl_SetResult(interp, (char *)states[res], TCL_STATIC); + return TCL_OK ; + } + +@@ -1543,7 +1543,6 @@ + char **argv; + { + int hand; +- char* res ; + MYSQL* mysql; + + if ((hand = mysql_prologue(interp, argc, argv, 2, get_handle_conn, +@@ -1552,7 +1551,7 @@ + + mysql = MysqlHandle[hand].mysql; + +- (void)sprintf (interp->result, "%d", mysql_insert_id(mysql)) ; ++ Tcl_SetObjResult(interp, Tcl_NewIntObj(mysql_insert_id(mysql))); + + return TCL_OK; + } diff --git a/databases/mysqltcl/files/patch-ab b/databases/mysqltcl/files/patch-ab index 9f8e5dee372..3a4ff690298 100644 --- a/databases/mysqltcl/files/patch-ab +++ b/databases/mysqltcl/files/patch-ab @@ -1,4 +1,4 @@ ---- mysqltcl.n.orig Mon Jul 6 12:04:27 1998 +--- mysqltcl.n Mon Jul 6 12:04:27 1998 +++ mysqltcl.n Wed Sep 1 01:52:23 1999 @@ -36,2 +36,5 @@ MySQLTcl - MySQL server access commands for Tcl diff --git a/databases/mysqltcl/pkg-descr b/databases/mysqltcl/pkg-descr index bdc1aaccd8a..f9033353063 100644 --- a/databases/mysqltcl/pkg-descr +++ b/databases/mysqltcl/pkg-descr @@ -10,3 +10,6 @@ From the package man-page: left as it was when I started to work with this interface (a patch of msqltcl-1.50). However, I have tried to replace appropriate occurrences of msql by MySQL. + +This port makes use of some of the Tcl-8.x niceties, but more on that +front can be done. |