New Port: textproc/tclExpat

This is the TCL interface to the Expat library. I updated it to link
against the modern Expat, as installed by the expat2 port.

PR:		22879
Submitted by:	Mikhail Teterin <mi@aldan.algebra.com>
This commit is contained in:
James E. Housley 2001-02-13 12:59:35 +00:00
parent 2d692e0197
commit c88e11f896
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=38304
17 changed files with 519 additions and 0 deletions

View file

@ -133,6 +133,7 @@
SUBDIR += sgmltools-lite SUBDIR += sgmltools-lite
SUBDIR += sgrep SUBDIR += sgrep
SUBDIR += sp SUBDIR += sp
SUBDIR += tclExpat
SUBDIR += tdtd.el SUBDIR += tdtd.el
SUBDIR += texi2html SUBDIR += texi2html
SUBDIR += textutils SUBDIR += textutils

View file

@ -0,0 +1,49 @@
# Ports collection Makefile for: TclExpat
# Date created: Nov 16 2000
# Whom: mi@aldan.algebra.com
#
# $FreeBSD$
#
PORTNAME= TclExpat
PORTVERSION= 1.1
CATEGORIES= textproc tcl83
MASTER_SITES= http://www.zveno.com/in-tclxml/
MAINTAINER= mi@aldan.algebra.com
LIB_DEPENDS= tcl${TCL_DVER}:${PORTSDIR}/lang/tcl${TCL_DVER} \
expat:${PORTSDIR}/textproc/expat2
INSTALLS_SHLIB= yes
TCL_VERSION= 8.3
TCL_DVER= ${TCL_VERSION:S/.//}
PLIST_SUB+= TCL_VERSION=${TCL_VERSION}
MAKEFILE= ${FILESDIR}/Makefile
# Remove the old version of expat bundled with the package:
post-extract:
${RM} -rf ${WRKSRC}/expat
post-patch:
${PERL} -pi -e 's/TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION == 0/TCL_MAJOR_VERSION >= 8/;' \
-e 's/xmlparse.h/expat.h/;' ${WRKSRC}/tclexpat.c
test: build
${LN} -sf libtclexpat.so ${WRKSRC}/tclexpat.so
cd ${WRKSRC} && tclsh${TCL_VERSION} test-break.tcl
cd ${WRKSRC} && tclsh${TCL_VERSION} test-continue.tcl
cd ${WRKSRC} && tclsh${TCL_VERSION} test-error.tcl
post-install:
${MKDIR} ${LOCALBASE}/lib/tcl${TCL_VERSION}/${PORTNAME}
${SED} 's|PREFIX|${PREFIX}|' < ${FILESDIR}/pkgIndex.tcl.in > \
${LOCALBASE}/lib/tcl${TCL_VERSION}/${PORTNAME}/pkgIndex.tcl
.if !defined(NOPORTDOCS)
${MKDIR} ${LOCALBASE}/share/doc/${PORTNAME}
${INSTALL_DATA} ${WRKSRC}/README ${LOCALBASE}/share/doc/${PORTNAME}/
.endif
.include <bsd.port.mk>

View file

@ -0,0 +1 @@
MD5 (TclExpat-1.1.tar.gz) = 8f736513ddad94b58e07b564679151fa

View file

@ -0,0 +1,27 @@
#
# $FreeBSD$
#
SRCS= tclexpat.c
LIB= tclexpat
SHLIB_MAJOR?= 1
SHLIB_MINOR?= 1
INTERNALLIB= static library is useless
LIBDIR= ${LOCALBASE}/lib
TCL_VERSION?= 8.3
TCL_DVER?= ${TCL_VERSION:S/.//}
CFLAGS= -I${LOCALBASE}/include/tcl${TCL_VERSION} -I${LOCALBASE}/include -Wall -Werror
LDADD+= -L${LOCALBASE}/lib -lexpat
USE_STUBS!= . ${LOCALBASE}/lib/tcl${TCL_VERSION}/tclConfig.sh; echo $$TCL_SUPPORTS_STUBS
.if ${USE_STUBS} == "1"
LDADD+= -ltclstub${TCL_DVER}
CFLAGS+=-DUSE_TCL_STUBS
.else
LDADD+= -ltcl${TCL_DVER}
.endif
.include <bsd.lib.mk>

View file

@ -0,0 +1,159 @@
This are mostly fixes for warnings, which show up when built with -Wall...
-mi
--- tclexpat.c Wed Nov 15 20:13:35 2000
+++ tclexpat.c Wed Nov 15 20:53:43 2000
@@ -74,14 +74,14 @@
-static void * (TclExpatElementStartHandler) _ANSI_ARGS_((void *userdata,
+static void (TclExpatElementStartHandler) _ANSI_ARGS_((void *userdata,
const XML_Char *name,
const XML_Char **atts));
-static void * (TclExpatElementEndHandler) _ANSI_ARGS_((void *userData,
+static void (TclExpatElementEndHandler) _ANSI_ARGS_((void *userData,
const XML_Char *name));
-static void * (TclExpatCharacterDataHandler) _ANSI_ARGS_((void *userData,
+static void (TclExpatCharacterDataHandler) _ANSI_ARGS_((void *userData,
const XML_Char *s,
int len));
-static void * (TclExpatProcessingInstructionHandler) _ANSI_ARGS_((void *userData,
+static void (TclExpatProcessingInstructionHandler) _ANSI_ARGS_((void *userData,
const XML_Char *target,
const XML_Char *data));
-static void * (TclExpatExternalEntityRefHandler) _ANSI_ARGS_((XML_Parser parser,
+static int (TclExpatExternalEntityRefHandler) _ANSI_ARGS_((XML_Parser parser,
const XML_Char *openEntityNames,
@@ -90,6 +90,6 @@
const XML_Char *publicId));
-static void * (TclExpatDefaultHandler) _ANSI_ARGS_ ((void *userData,
+static void (TclExpatDefaultHandler) _ANSI_ARGS_ ((void *userData,
const XML_Char *s,
int len));
-static void * (TclExpatUnparsedDeclHandler) _ANSI_ARGS_ ((void *userData,
+static void (TclExpatUnparsedDeclHandler) _ANSI_ARGS_ ((void *userData,
const XML_Char *entityname,
@@ -99,3 +99,3 @@
const XML_Char *notationName));
-static void * (TclExpatNotationDeclHandler) _ANSI_ARGS_ ((void *userData,
+static void (TclExpatNotationDeclHandler) _ANSI_ARGS_ ((void *userData,
const XML_Char *notationName,
@@ -108,3 +108,3 @@
-#if (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION == 0)
+#if (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION == 0) && !defined(Tcl_GetString)
@@ -269,3 +269,2 @@
{
- int len;
@@ -286,18 +285,18 @@
XML_SetElementHandler(expat->parser,
- (XML_StartElementHandler) TclExpatElementStartHandler,
- (XML_EndElementHandler) TclExpatElementEndHandler);
+ TclExpatElementStartHandler,
+ TclExpatElementEndHandler);
XML_SetCharacterDataHandler(expat->parser,
- (XML_CharacterDataHandler) TclExpatCharacterDataHandler);
+ TclExpatCharacterDataHandler);
XML_SetProcessingInstructionHandler(expat->parser,
- (XML_ProcessingInstructionHandler) TclExpatProcessingInstructionHandler);
+ TclExpatProcessingInstructionHandler);
XML_SetDefaultHandler(expat->parser,
- (XML_DefaultHandler) TclExpatDefaultHandler);
+ TclExpatDefaultHandler);
XML_SetUnparsedEntityDeclHandler(expat->parser,
- (XML_UnparsedEntityDeclHandler) TclExpatUnparsedDeclHandler);
+ TclExpatUnparsedDeclHandler);
XML_SetNotationDeclHandler(expat->parser,
- (XML_NotationDeclHandler) TclExpatNotationDeclHandler);
+ TclExpatNotationDeclHandler);
XML_SetExternalEntityRefHandler(expat->parser,
- (XML_ExternalEntityRefHandler) TclExpatExternalEntityRefHandler);
+ TclExpatExternalEntityRefHandler);
XML_SetUnknownEncodingHandler(expat->parser,
- (XML_UnknownEncodingHandler) TclExpatUnknownEncodingHandler,
+ TclExpatUnknownEncodingHandler,
(void *) expat);
@@ -329,3 +328,2 @@
{
- int len;
@@ -359,3 +357,3 @@
TclExpatInfo *expat = (TclExpatInfo *) clientData;
- char *method, *data;
+ char *data;
int len, index, result = TCL_OK;
@@ -797,3 +795,3 @@
-static void *
+static void
TclExpatElementStartHandler(userData, name, atts)
@@ -879,3 +877,3 @@
-static void *
+static void
TclExpatElementEndHandler(userData, name)
@@ -949,3 +947,3 @@
-static void *
+static void
TclExpatCharacterDataHandler(userData, s, len)
@@ -1008,3 +1006,3 @@
-static void *
+static void
TclExpatProcessingInstructionHandler(userData, target, data)
@@ -1068,3 +1066,3 @@
-static void *
+static void
TclExpatDefaultHandler(userData, s, len)
@@ -1127,3 +1125,3 @@
-static void *
+static void
TclExpatUnparsedDeclHandler(userData, entityname, base, systemId, publicId, notationName)
@@ -1201,3 +1199,3 @@
-static void *
+static void
TclExpatNotationDeclHandler(userData, notationName, base, systemId, publicId)
@@ -1281,11 +1279,14 @@
TclExpatInfo *expat = (TclExpatInfo *) encodingHandlerData;
+#if 0
Tcl_Obj *cmdPtr;
int result;
+#endif
Tcl_SetResult(expat->interp, "not implemented", NULL);
- return 0;
+ return 1;
+#if 0
if (expat->unknownencodingcommand == NULL ||
expat->status != TCL_OK) {
- return;
+ return 1;
}
@@ -1319,3 +1320,4 @@
- return;
+ return 0;
+#endif
}
@@ -1338,3 +1340,3 @@
-static void *
+static int
TclExpatExternalEntityRefHandler(parser, openEntityNames, base, systemId, publicId)
@@ -1352,3 +1354,3 @@
expat->status != TCL_OK) {
- return;
+ return 0;
}
@@ -1383,3 +1385,3 @@
- return;
+ return 1;
}

View file

@ -0,0 +1 @@
package ifneeded expat 1.1 {load "PREFIX/lib/libtclexpat.so"}

View file

@ -0,0 +1 @@
The TCL interface to Expat library

View file

@ -0,0 +1,15 @@
From the README:
A Tcl interface to expat.
Steve Ball, Zveno Pty Ltd.
This package provides a Tcl interface to James Clark's expat library.
It creates a Tcl package, called "expat", which defines a single
new Tcl command "expat".
WWW: http://www.zveno.com/zm.cgi/in-tclxml/
This port ignores the old expat distribution bundled with the software
and links the library against the latest installed by the expat2 port.
-mi

View file

@ -0,0 +1,6 @@
lib/tcl%%TCL_VERSION%%/TclExpat/pkgIndex.tcl
@dirrm lib/tcl%%TCL_VERSION%%/TclExpat
lib/libtclexpat.so.1.1
lib/libtclexpat.so
%%PORTDOCS%%share/doc/TclExpat/README
%%PORTDOCS%%@dirrm share/doc/TclExpat

49
textproc/tclxml/Makefile Normal file
View file

@ -0,0 +1,49 @@
# Ports collection Makefile for: TclExpat
# Date created: Nov 16 2000
# Whom: mi@aldan.algebra.com
#
# $FreeBSD$
#
PORTNAME= TclExpat
PORTVERSION= 1.1
CATEGORIES= textproc tcl83
MASTER_SITES= http://www.zveno.com/in-tclxml/
MAINTAINER= mi@aldan.algebra.com
LIB_DEPENDS= tcl${TCL_DVER}:${PORTSDIR}/lang/tcl${TCL_DVER} \
expat:${PORTSDIR}/textproc/expat2
INSTALLS_SHLIB= yes
TCL_VERSION= 8.3
TCL_DVER= ${TCL_VERSION:S/.//}
PLIST_SUB+= TCL_VERSION=${TCL_VERSION}
MAKEFILE= ${FILESDIR}/Makefile
# Remove the old version of expat bundled with the package:
post-extract:
${RM} -rf ${WRKSRC}/expat
post-patch:
${PERL} -pi -e 's/TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION == 0/TCL_MAJOR_VERSION >= 8/;' \
-e 's/xmlparse.h/expat.h/;' ${WRKSRC}/tclexpat.c
test: build
${LN} -sf libtclexpat.so ${WRKSRC}/tclexpat.so
cd ${WRKSRC} && tclsh${TCL_VERSION} test-break.tcl
cd ${WRKSRC} && tclsh${TCL_VERSION} test-continue.tcl
cd ${WRKSRC} && tclsh${TCL_VERSION} test-error.tcl
post-install:
${MKDIR} ${LOCALBASE}/lib/tcl${TCL_VERSION}/${PORTNAME}
${SED} 's|PREFIX|${PREFIX}|' < ${FILESDIR}/pkgIndex.tcl.in > \
${LOCALBASE}/lib/tcl${TCL_VERSION}/${PORTNAME}/pkgIndex.tcl
.if !defined(NOPORTDOCS)
${MKDIR} ${LOCALBASE}/share/doc/${PORTNAME}
${INSTALL_DATA} ${WRKSRC}/README ${LOCALBASE}/share/doc/${PORTNAME}/
.endif
.include <bsd.port.mk>

1
textproc/tclxml/distinfo Normal file
View file

@ -0,0 +1 @@
MD5 (TclExpat-1.1.tar.gz) = 8f736513ddad94b58e07b564679151fa

View file

@ -0,0 +1,27 @@
#
# $FreeBSD$
#
SRCS= tclexpat.c
LIB= tclexpat
SHLIB_MAJOR?= 1
SHLIB_MINOR?= 1
INTERNALLIB= static library is useless
LIBDIR= ${LOCALBASE}/lib
TCL_VERSION?= 8.3
TCL_DVER?= ${TCL_VERSION:S/.//}
CFLAGS= -I${LOCALBASE}/include/tcl${TCL_VERSION} -I${LOCALBASE}/include -Wall -Werror
LDADD+= -L${LOCALBASE}/lib -lexpat
USE_STUBS!= . ${LOCALBASE}/lib/tcl${TCL_VERSION}/tclConfig.sh; echo $$TCL_SUPPORTS_STUBS
.if ${USE_STUBS} == "1"
LDADD+= -ltclstub${TCL_DVER}
CFLAGS+=-DUSE_TCL_STUBS
.else
LDADD+= -ltcl${TCL_DVER}
.endif
.include <bsd.lib.mk>

View file

@ -0,0 +1,159 @@
This are mostly fixes for warnings, which show up when built with -Wall...
-mi
--- tclexpat.c Wed Nov 15 20:13:35 2000
+++ tclexpat.c Wed Nov 15 20:53:43 2000
@@ -74,14 +74,14 @@
-static void * (TclExpatElementStartHandler) _ANSI_ARGS_((void *userdata,
+static void (TclExpatElementStartHandler) _ANSI_ARGS_((void *userdata,
const XML_Char *name,
const XML_Char **atts));
-static void * (TclExpatElementEndHandler) _ANSI_ARGS_((void *userData,
+static void (TclExpatElementEndHandler) _ANSI_ARGS_((void *userData,
const XML_Char *name));
-static void * (TclExpatCharacterDataHandler) _ANSI_ARGS_((void *userData,
+static void (TclExpatCharacterDataHandler) _ANSI_ARGS_((void *userData,
const XML_Char *s,
int len));
-static void * (TclExpatProcessingInstructionHandler) _ANSI_ARGS_((void *userData,
+static void (TclExpatProcessingInstructionHandler) _ANSI_ARGS_((void *userData,
const XML_Char *target,
const XML_Char *data));
-static void * (TclExpatExternalEntityRefHandler) _ANSI_ARGS_((XML_Parser parser,
+static int (TclExpatExternalEntityRefHandler) _ANSI_ARGS_((XML_Parser parser,
const XML_Char *openEntityNames,
@@ -90,6 +90,6 @@
const XML_Char *publicId));
-static void * (TclExpatDefaultHandler) _ANSI_ARGS_ ((void *userData,
+static void (TclExpatDefaultHandler) _ANSI_ARGS_ ((void *userData,
const XML_Char *s,
int len));
-static void * (TclExpatUnparsedDeclHandler) _ANSI_ARGS_ ((void *userData,
+static void (TclExpatUnparsedDeclHandler) _ANSI_ARGS_ ((void *userData,
const XML_Char *entityname,
@@ -99,3 +99,3 @@
const XML_Char *notationName));
-static void * (TclExpatNotationDeclHandler) _ANSI_ARGS_ ((void *userData,
+static void (TclExpatNotationDeclHandler) _ANSI_ARGS_ ((void *userData,
const XML_Char *notationName,
@@ -108,3 +108,3 @@
-#if (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION == 0)
+#if (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION == 0) && !defined(Tcl_GetString)
@@ -269,3 +269,2 @@
{
- int len;
@@ -286,18 +285,18 @@
XML_SetElementHandler(expat->parser,
- (XML_StartElementHandler) TclExpatElementStartHandler,
- (XML_EndElementHandler) TclExpatElementEndHandler);
+ TclExpatElementStartHandler,
+ TclExpatElementEndHandler);
XML_SetCharacterDataHandler(expat->parser,
- (XML_CharacterDataHandler) TclExpatCharacterDataHandler);
+ TclExpatCharacterDataHandler);
XML_SetProcessingInstructionHandler(expat->parser,
- (XML_ProcessingInstructionHandler) TclExpatProcessingInstructionHandler);
+ TclExpatProcessingInstructionHandler);
XML_SetDefaultHandler(expat->parser,
- (XML_DefaultHandler) TclExpatDefaultHandler);
+ TclExpatDefaultHandler);
XML_SetUnparsedEntityDeclHandler(expat->parser,
- (XML_UnparsedEntityDeclHandler) TclExpatUnparsedDeclHandler);
+ TclExpatUnparsedDeclHandler);
XML_SetNotationDeclHandler(expat->parser,
- (XML_NotationDeclHandler) TclExpatNotationDeclHandler);
+ TclExpatNotationDeclHandler);
XML_SetExternalEntityRefHandler(expat->parser,
- (XML_ExternalEntityRefHandler) TclExpatExternalEntityRefHandler);
+ TclExpatExternalEntityRefHandler);
XML_SetUnknownEncodingHandler(expat->parser,
- (XML_UnknownEncodingHandler) TclExpatUnknownEncodingHandler,
+ TclExpatUnknownEncodingHandler,
(void *) expat);
@@ -329,3 +328,2 @@
{
- int len;
@@ -359,3 +357,3 @@
TclExpatInfo *expat = (TclExpatInfo *) clientData;
- char *method, *data;
+ char *data;
int len, index, result = TCL_OK;
@@ -797,3 +795,3 @@
-static void *
+static void
TclExpatElementStartHandler(userData, name, atts)
@@ -879,3 +877,3 @@
-static void *
+static void
TclExpatElementEndHandler(userData, name)
@@ -949,3 +947,3 @@
-static void *
+static void
TclExpatCharacterDataHandler(userData, s, len)
@@ -1008,3 +1006,3 @@
-static void *
+static void
TclExpatProcessingInstructionHandler(userData, target, data)
@@ -1068,3 +1066,3 @@
-static void *
+static void
TclExpatDefaultHandler(userData, s, len)
@@ -1127,3 +1125,3 @@
-static void *
+static void
TclExpatUnparsedDeclHandler(userData, entityname, base, systemId, publicId, notationName)
@@ -1201,3 +1199,3 @@
-static void *
+static void
TclExpatNotationDeclHandler(userData, notationName, base, systemId, publicId)
@@ -1281,11 +1279,14 @@
TclExpatInfo *expat = (TclExpatInfo *) encodingHandlerData;
+#if 0
Tcl_Obj *cmdPtr;
int result;
+#endif
Tcl_SetResult(expat->interp, "not implemented", NULL);
- return 0;
+ return 1;
+#if 0
if (expat->unknownencodingcommand == NULL ||
expat->status != TCL_OK) {
- return;
+ return 1;
}
@@ -1319,3 +1320,4 @@
- return;
+ return 0;
+#endif
}
@@ -1338,3 +1340,3 @@
-static void *
+static int
TclExpatExternalEntityRefHandler(parser, openEntityNames, base, systemId, publicId)
@@ -1352,3 +1354,3 @@
expat->status != TCL_OK) {
- return;
+ return 0;
}
@@ -1383,3 +1385,3 @@
- return;
+ return 1;
}

View file

@ -0,0 +1 @@
package ifneeded expat 1.1 {load "PREFIX/lib/libtclexpat.so"}

View file

@ -0,0 +1 @@
The TCL interface to Expat library

15
textproc/tclxml/pkg-descr Normal file
View file

@ -0,0 +1,15 @@
From the README:
A Tcl interface to expat.
Steve Ball, Zveno Pty Ltd.
This package provides a Tcl interface to James Clark's expat library.
It creates a Tcl package, called "expat", which defines a single
new Tcl command "expat".
WWW: http://www.zveno.com/zm.cgi/in-tclxml/
This port ignores the old expat distribution bundled with the software
and links the library against the latest installed by the expat2 port.
-mi

View file

@ -0,0 +1,6 @@
lib/tcl%%TCL_VERSION%%/TclExpat/pkgIndex.tcl
@dirrm lib/tcl%%TCL_VERSION%%/TclExpat
lib/libtclexpat.so.1.1
lib/libtclexpat.so
%%PORTDOCS%%share/doc/TclExpat/README
%%PORTDOCS%%@dirrm share/doc/TclExpat