summaryrefslogtreecommitdiff
path: root/textproc/tclExpat
diff options
context:
space:
mode:
authorJames E. Housley <jeh@FreeBSD.org>2001-02-13 12:59:35 +0000
committerJames E. Housley <jeh@FreeBSD.org>2001-02-13 12:59:35 +0000
commitc88e11f89652f120373f04427f40737138c98e1e (patch)
tree54f61fc4a90dd71b0da354414fad23e7f2d1b575 /textproc/tclExpat
parentUpgrade to 2.3.3. (diff)
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>
Notes
Notes: svn path=/head/; revision=38304
Diffstat (limited to 'textproc/tclExpat')
-rw-r--r--textproc/tclExpat/Makefile49
-rw-r--r--textproc/tclExpat/distinfo1
-rw-r--r--textproc/tclExpat/files/Makefile27
-rw-r--r--textproc/tclExpat/files/patch-aa159
-rw-r--r--textproc/tclExpat/files/pkgIndex.tcl.in1
-rw-r--r--textproc/tclExpat/pkg-comment1
-rw-r--r--textproc/tclExpat/pkg-descr15
-rw-r--r--textproc/tclExpat/pkg-plist6
8 files changed, 259 insertions, 0 deletions
diff --git a/textproc/tclExpat/Makefile b/textproc/tclExpat/Makefile
new file mode 100644
index 000000000000..7cde397c5850
--- /dev/null
+++ b/textproc/tclExpat/Makefile
@@ -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>
diff --git a/textproc/tclExpat/distinfo b/textproc/tclExpat/distinfo
new file mode 100644
index 000000000000..6c50d0f16911
--- /dev/null
+++ b/textproc/tclExpat/distinfo
@@ -0,0 +1 @@
+MD5 (TclExpat-1.1.tar.gz) = 8f736513ddad94b58e07b564679151fa
diff --git a/textproc/tclExpat/files/Makefile b/textproc/tclExpat/files/Makefile
new file mode 100644
index 000000000000..14d2ccc80f79
--- /dev/null
+++ b/textproc/tclExpat/files/Makefile
@@ -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>
diff --git a/textproc/tclExpat/files/patch-aa b/textproc/tclExpat/files/patch-aa
new file mode 100644
index 000000000000..fc02fab82863
--- /dev/null
+++ b/textproc/tclExpat/files/patch-aa
@@ -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;
+ }
diff --git a/textproc/tclExpat/files/pkgIndex.tcl.in b/textproc/tclExpat/files/pkgIndex.tcl.in
new file mode 100644
index 000000000000..45d58352376a
--- /dev/null
+++ b/textproc/tclExpat/files/pkgIndex.tcl.in
@@ -0,0 +1 @@
+package ifneeded expat 1.1 {load "PREFIX/lib/libtclexpat.so"}
diff --git a/textproc/tclExpat/pkg-comment b/textproc/tclExpat/pkg-comment
new file mode 100644
index 000000000000..0082b0c532ab
--- /dev/null
+++ b/textproc/tclExpat/pkg-comment
@@ -0,0 +1 @@
+The TCL interface to Expat library
diff --git a/textproc/tclExpat/pkg-descr b/textproc/tclExpat/pkg-descr
new file mode 100644
index 000000000000..fb66abf2fa70
--- /dev/null
+++ b/textproc/tclExpat/pkg-descr
@@ -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
diff --git a/textproc/tclExpat/pkg-plist b/textproc/tclExpat/pkg-plist
new file mode 100644
index 000000000000..8b6745347dc0
--- /dev/null
+++ b/textproc/tclExpat/pkg-plist
@@ -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