aboutsummaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authorMikhail Teterin <mi@FreeBSD.org>2002-02-15 07:34:07 +0000
committerMikhail Teterin <mi@FreeBSD.org>2002-02-15 07:34:07 +0000
commitdaa8cb06f00b9558795f1028a6e661fb43ffe666 (patch)
tree8f6b82127b9767b676e72b573a665a5349295c36 /devel
parent3a8c644cc8178d9a113eae682cfeae562600eaa2 (diff)
downloadports-daa8cb06f00b9558795f1028a6e661fb43ffe666.tar.gz
ports-daa8cb06f00b9558795f1028a6e661fb43ffe666.zip
Notes
Diffstat (limited to 'devel')
-rw-r--r--devel/Makefile1
-rw-r--r--devel/tcl-trf/Makefile53
-rw-r--r--devel/tcl-trf/distinfo1
-rw-r--r--devel/tcl-trf/files/patch-buggytests36
-rw-r--r--devel/tcl-trf/files/patch-configure21
-rw-r--r--devel/tcl-trf/files/patch-crypt25
-rw-r--r--devel/tcl-trf/files/patch-haval109
-rw-r--r--devel/tcl-trf/files/patch-loadman53
-rw-r--r--devel/tcl-trf/files/patch-md2128
-rw-r--r--devel/tcl-trf/files/patch-md5dig193
-rw-r--r--devel/tcl-trf/files/patch-mkin70
-rw-r--r--devel/tcl-trf/files/patch-reftocrc14
-rw-r--r--devel/tcl-trf/files/patch-sha197
-rw-r--r--devel/tcl-trf/files/patch-sha1132
-rw-r--r--devel/tcl-trf/files/patch-test38
-rw-r--r--devel/tcl-trf/pkg-comment1
-rw-r--r--devel/tcl-trf/pkg-descr12
-rw-r--r--devel/tcl-trf/pkg-plist80
18 files changed, 1164 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 19aa00fe965c..b83e6964b373 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -644,6 +644,7 @@
SUBDIR += t1lib
SUBDIR += tcl-memchan
SUBDIR += tcl-neo
+ SUBDIR += tcl-trf
SUBDIR += tclcheck
SUBDIR += tclcl
SUBDIR += tclgetopts
diff --git a/devel/tcl-trf/Makefile b/devel/tcl-trf/Makefile
new file mode 100644
index 000000000000..d88c8566d552
--- /dev/null
+++ b/devel/tcl-trf/Makefile
@@ -0,0 +1,53 @@
+# New ports collection makefile for: tcl-Trf
+# Date created: May 22, 2000
+# Whom: Mikhail Teterin <mi@aldan.algebra.com>
+#
+# $FreeBSD$
+#
+
+PORTNAME= Trf
+PORTVERSION= 2.1p2
+CATEGORIES= devel tcl83
+MASTER_SITES= http://www.oche.de/~akupries/soft/trf/download/
+PKGNAMEPREFIX= tcl-
+DISTNAME= trf${PORTVERSION}
+
+MAINTAINER= mi@aldan.algebra.com
+
+BUILD_DEPENDS= tclsh${TCL_VER}:${PORTSDIR}/lang/tcl${TCL_VER:S/.//}
+
+USE_BZIP2= yes
+
+ALL_TARGET= all test
+MAKE_ARGS+= -j2
+
+TCL_VER?= 8.3
+DDIR= ${PREFIX}/lib/tcl${TCL_VER}/Trf
+
+MAKE_ENV+= TCL_VER=${TCL_VER} MKDIR="${MKDIR}" \
+ INSTALL_DATA="${INSTALL_DATA}"
+
+HAS_CONFIGURE= yes
+CONFIGURE_ARGS= --with-tcl=${LOCALBASE}/lib/tcl${TCL_VER} \
+ --with-tclinclude=${LOCALBASE}/include/tcl${TCL_VER} \
+ --enable-static-zlib --enable-static-bzlib \
+ --enable-static-md5
+CONFIGURE_ENV+= CFLAGS_OPTIMIZE="${CFLAGS}"
+
+post-install:
+ ${LN} -sf ${SHLIB_NAME} ${PREFIX}/lib/${SHLIB_LINK}
+.ifndef(NOPORTDOCS)
+ ${RM} -f ${WRKSRC}/doc/html/*.orig
+ ${MKDIR} ${DOCSDIR}
+ ${CP} -pR ${WRKSRC}/doc/html/* ${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/doc/painless-guide-to-crc.txt ${DOCSDIR}
+.endif
+
+.include <bsd.port.mk>
+
+.if exists(${WRKSRC}/${MAKEFILE})
+SHLIB_NAME!= ${MAKE} -f ${WRKSRC}/${MAKEFILE} -V Trf_LIB_FILE
+SHLIB_LINK= ${SHLIB_NAME:C/\.so\..*/.so/}
+.endif
+
+PLIST_SUB+= SHLIB_NAME=${SHLIB_NAME} SHLIB_LINK=${SHLIB_LINK}
diff --git a/devel/tcl-trf/distinfo b/devel/tcl-trf/distinfo
new file mode 100644
index 000000000000..8863dc1e3b46
--- /dev/null
+++ b/devel/tcl-trf/distinfo
@@ -0,0 +1 @@
+MD5 (trf2.1p2.tar.bz2) = 4332afc167f7d1b3a90b942c30424491
diff --git a/devel/tcl-trf/files/patch-buggytests b/devel/tcl-trf/files/patch-buggytests
new file mode 100644
index 000000000000..be903aebd68d
--- /dev/null
+++ b/devel/tcl-trf/files/patch-buggytests
@@ -0,0 +1,36 @@
+
+***************************************************************
+
+ This patch-set "fixes" the three tests, which fail
+ for the reasons unknown to me. The failures may, in
+ fact, be justified, but the software author is yet
+ to get back to me with his opinion.
+
+ -mi
+
+***************************************************************
+
+--- tests/base64.test Fri Jul 9 14:36:32 1999
++++ tests/base64.test Fri Feb 15 02:01:22 2002
+@@ -57,5 +57,5 @@
+ close $ma
+ list [string length $data] $data
+-} {4 hell}
++} {3 hel}
+
+
+@@ -69,4 +69,3 @@
+ close $ma
+ list [string length $data] $data
+-} {9 {aGVsbG8=
+-}}
++} {4 aGVs}
+--- tests/transform.test Tue Aug 21 01:51:33 2001
++++ tests/transform.test Fri Feb 15 02:03:07 2002
+@@ -74,5 +74,5 @@
+
+ set tracevar
+-} [82 {create/write-0 create/read-0 query/ratio-0 query/maxRead-0 read-17 query/maxRead-0 flush/read-0 flush/write-0 delete/write-0 delete/read-0} {create/write-0 create/read-0 query/ratio-0 query/maxRead-0 read-17 query/maxRead-0 flush/read-0 query/maxRead-0 flush/write-0 delete/write-0 delete/read-0}]
++} [82 {create/write-0 create/read-0 query/ratio-0 query/maxRead-0 read-17 query/maxRead-0 flush/write-0 flush/read-0 delete/write-0 delete/read-0} {create/write-0 create/read-0 query/ratio-0 query/maxRead-0 read-17 query/maxRead-0 flush/read-0 query/maxRead-0 flush/write-0 delete/write-0 delete/read-0}]
+
+
diff --git a/devel/tcl-trf/files/patch-configure b/devel/tcl-trf/files/patch-configure
new file mode 100644
index 000000000000..d93f84590cda
--- /dev/null
+++ b/devel/tcl-trf/files/patch-configure
@@ -0,0 +1,21 @@
+--- configure Tue Aug 21 01:52:30 2001
++++ configure Fri Feb 8 11:52:30 2002
+@@ -2658,7 +2658,7 @@
+
+ if test "${SHARED_BUILD}" = "1" ; then
+- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING} ${SHLIB_CFLAGS}'
++ CFLAGS='${CFLAGS_WARNING} ${SHLIB_CFLAGS}'
+ else
+- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING}'
++ CFLAGS='${CFLAGS_WARNING}'
+ fi
+
+@@ -2690,6 +2690,6 @@
+ ;;
+ *)
+- MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(\$@_OBJECTS)"
+- MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(\$@_OBJECTS) \${SHLIB_LDFLAGS} \${SHLIB_LD_LIBS}"
++ MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(.ALLSRC)"
++ MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(.ALLSRC) \${SHLIB_LDFLAGS} \${SHLIB_LD_LIBS}"
+ ;;
+ esac
diff --git a/devel/tcl-trf/files/patch-crypt b/devel/tcl-trf/files/patch-crypt
new file mode 100644
index 000000000000..ce817a2dbd58
--- /dev/null
+++ b/devel/tcl-trf/files/patch-crypt
@@ -0,0 +1,25 @@
+--- generic/crypt.c Sat Nov 18 17:42:31 2000
++++ generic/crypt.c Fri Feb 8 11:59:47 2002
+@@ -112,4 +112,6 @@
+ */
+
++char *crypt_md5(const char *pw, const char *salt); /* Live in -lscrypt */
++
+ static int
+ TrfMd5CryptObjCmd (notUsed, interp, objc, objv)
+@@ -128,8 +130,4 @@
+ Tcl_Obj* res;
+
+- if (TrfLoadMD5 (interp) != TCL_OK) {
+- return TCL_ERROR;
+- }
+-
+ if (objc != 3) {
+ Tcl_AppendResult (interp,
+@@ -159,5 +157,5 @@
+
+ TrfLock;
+- res = Tcl_NewStringObj ((char*) md5f.crypt (passwd, salt_b) + 3, -1);
++ res = Tcl_NewStringObj (crypt_md5(passwd, salt_b) + 3, -1);
+ TrfUnlock;
+
diff --git a/devel/tcl-trf/files/patch-haval b/devel/tcl-trf/files/patch-haval
new file mode 100644
index 000000000000..9478732e95f8
--- /dev/null
+++ b/devel/tcl-trf/files/patch-haval
@@ -0,0 +1,109 @@
+--- generic/haval.c Wed Aug 9 15:13:17 2000
++++ generic/haval.c Fri Feb 8 11:07:48 2002
+@@ -59,8 +59,8 @@
+ sizeof (CTX_TYPE),
+ DIGEST_SIZE,
+- MDHaval_Start,
++ haval_start,
+ MDHaval_Update,
+- MDHaval_UpdateBuf,
+- MDHaval_Final,
++ haval_hash,
++ haval_end,
+ NULL
+ };
+@@ -94,30 +94,4 @@
+ *------------------------------------------------------*
+ *
+- * MDHaval_Start --
+- *
+- * ------------------------------------------------*
+- * Initialize the internal state of the message
+- * digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDHaval_Start (context)
+-VOID* context;
+-{
+- haval_start ((CTX_TYPE*) context);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+ * MDHaval_Update --
+ *
+@@ -145,63 +119,2 @@
+ haval_hash ((CTX_TYPE*) context, &buf, 1);
+ }
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDHaval_UpdateBuf --
+- *
+- * ------------------------------------------------*
+- * Update the internal state of the message digest
+- * generator for a character buffer.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDHaval_UpdateBuf (context, buffer, bufLen)
+-VOID* context;
+-unsigned char* buffer;
+-int bufLen;
+-{
+- haval_hash ((CTX_TYPE*) context, (unsigned char*) buffer, bufLen);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDHaval_Final --
+- *
+- * ------------------------------------------------*
+- * Generate the digest from the internal state of
+- * the message digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDHaval_Final (context, digest)
+-VOID* context;
+-VOID* digest;
+-{
+- haval_end ((CTX_TYPE*) context, (unsigned char*) digest);
+-}
+-
+-/*
+- * External code from here on.
+- */
+-
+-#include "haval.1996/haval.c" /* THREADING: import of one constant var, read-only => safe */
diff --git a/devel/tcl-trf/files/patch-loadman b/devel/tcl-trf/files/patch-loadman
new file mode 100644
index 000000000000..1561632dbb6d
--- /dev/null
+++ b/devel/tcl-trf/files/patch-loadman
@@ -0,0 +1,53 @@
+--- generic/loadman.h Tue Mar 27 08:08:31 2001
++++ generic/loadman.h Fri Feb 8 11:31:51 2002
+@@ -48,8 +48,7 @@
+
+ #ifdef HAVE_MD2_H
+-# ifdef OPENSSL_SUB
+-# include <openssl/md2.h>
+-# else
+-# include <md2.h>
++# include <md2.h>
++# ifndef MD2_DIGEST_LENGTH
++# define MD2_DIGEST_LENGTH 16
+ # endif
+ #else
+@@ -58,15 +57,10 @@
+
+ #ifdef HAVE_SHA_H
+-# ifdef OPENSSL_SUB
+-# include <openssl/sha.h>
+-# else
+-# include <sha.h>
+-# endif
++# include <sha.h>
+ #else
+ # include "../compat/sha.h"
+ #endif
+
+-#include "../md5-crypt/md5.h"
+-
++#include <md5.h>
+
+ #ifdef TCL_STORAGE_CLASS
+@@ -87,4 +81,5 @@
+ */
+
++#if 0
+ typedef struct Md2Functions {
+ long loaded;
+@@ -114,7 +109,4 @@
+ } sha1Functions;
+
+-
+-
+-
+ /* Global variables containing the vectors declared above. 99% of the time they
+ * are read, but during load a write is required, which has to be protected by
+@@ -125,4 +117,6 @@
+ EXTERN md5Functions md5f; /* THREADING: serialize initialization */
+ EXTERN sha1Functions sha1f; /* THREADING: serialize initialization */
++
++#endif
+
+
diff --git a/devel/tcl-trf/files/patch-md2 b/devel/tcl-trf/files/patch-md2
new file mode 100644
index 000000000000..9f9cad1cbe2f
--- /dev/null
+++ b/devel/tcl-trf/files/patch-md2
@@ -0,0 +1,128 @@
+--- generic/md2.c Wed Aug 9 15:13:17 2000
++++ generic/md2.c Fri Feb 8 10:43:36 2002
+@@ -30,11 +30,6 @@
+ #include "loadman.h"
+
+-/*
+- * Generator description
+- * ---------------------
+- *
+- * The MD2 alogrithm is used to compute a cryptographically strong
+- * message digest.
+- */
++#include <sys/types.h>
++#include <md2.h>
+
+ #define DIGEST_SIZE (MD2_DIGEST_LENGTH)
+@@ -59,9 +54,9 @@
+ sizeof (CTX_TYPE),
+ DIGEST_SIZE,
+- MDmd2_Start,
++ MD2Init,
+ MDmd2_Update,
+- MDmd2_UpdateBuf,
++ MD2Update,
+ MDmd2_Final,
+- MDmd2_Check
++ NULL
+ };
+
+@@ -94,30 +89,4 @@
+ *------------------------------------------------------*
+ *
+- * MDmd2_Start --
+- *
+- * ------------------------------------------------*
+- * Initialize the internal state of the message
+- * digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDmd2_Start (context)
+-VOID* context;
+-{
+- md2f.init ((MD2_CTX*) context);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+ * MDmd2_Update --
+ *
+@@ -143,33 +112,5 @@
+ unsigned char buf = character;
+
+- md2f.update ((MD2_CTX*) context, &buf, 1);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDmd2_UpdateBuf --
+- *
+- * ------------------------------------------------*
+- * Update the internal state of the message digest
+- * generator for a character buffer.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDmd2_UpdateBuf (context, buffer, bufLen)
+-VOID* context;
+-unsigned char* buffer;
+-int bufLen;
+-{
+- md2f.update ((MD2_CTX*) context, (unsigned char*) buffer, bufLen);
++ MD2Update ((MD2_CTX*) context, &buf, 1);
+ }
+
+@@ -198,31 +139,4 @@
+ VOID* digest;
+ {
+- md2f.final ((unsigned char*) digest, (MD2_CTX*) context);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDmd2_Check --
+- *
+- * ------------------------------------------------*
+- * Do global one-time initializations of the message
+- * digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * Loads the shared library containing the
+- * MD2 functionality
+- *
+- * Result:
+- * A standard Tcl error code.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static int
+-MDmd2_Check (interp)
+-Tcl_Interp* interp;
+-{
+- return TrfLoadMD2 (interp);
++ MD2Final ((unsigned char*) digest, (MD2_CTX*) context);
+ }
diff --git a/devel/tcl-trf/files/patch-md5dig b/devel/tcl-trf/files/patch-md5dig
new file mode 100644
index 000000000000..557a90d7806f
--- /dev/null
+++ b/devel/tcl-trf/files/patch-md5dig
@@ -0,0 +1,193 @@
+--- generic/md5dig.c Wed Aug 9 15:13:17 2000
++++ generic/md5dig.c Fri Feb 15 00:41:42 2002
+@@ -29,5 +29,5 @@
+
+ #include "loadman.h"
+-
++#include <md5.h>
+ /*
+ * Generator description
+@@ -38,7 +38,4 @@
+ */
+
+-#define MD5_CTX struct md5_ctx
+-#define MD5_CTXP (struct md5_ctx*)
+-
+ #ifndef OTP
+ #define DIGEST_SIZE (16)
+@@ -72,9 +69,9 @@
+ sizeof (CTX_TYPE),
+ DIGEST_SIZE,
+- MDmd5_Start,
++ MD5Init,
+ MDmd5_Update,
+- MDmd5_UpdateBuf,
++ MD5Update,
+ MDmd5_Final,
+- MDmd5_Check
++ NULL,
+ };
+
+@@ -111,38 +108,4 @@
+ *------------------------------------------------------*
+ *
+- * MDmd5_Start --
+- *
+- * ------------------------------------------------*
+- * Initialize the internal state of the message
+- * digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDmd5_Start (context)
+-VOID* context;
+-{
+- /* MD5Init ((MD5_CTX*) context);*/
+- md5f.init (MD5_CTXP context);
+-
+-#ifdef TRF_DEBUG
+- {
+- MD5_CTX* c = MD5_CTXP context;
+- PRINT ("Init ABCD = %d %d %d %d\n", c->A, c->B, c->C, c->D); FL;
+- }
+-#endif
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+ * MDmd5_Update --
+ *
+@@ -168,52 +131,5 @@
+ unsigned char buf = character;
+
+- /* MD5Update ((MD5_CTX*) context, &buf, 1); */
+-
+- md5f.update (&buf, 1, MD5_CTXP context);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDmd5_UpdateBuf --
+- *
+- * ------------------------------------------------*
+- * Update the internal state of the message digest
+- * generator for a character buffer.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDmd5_UpdateBuf (context, buffer, bufLen)
+-VOID* context;
+-unsigned char* buffer;
+-int bufLen;
+-{
+- /* MD5Update ((MD5_CTX*) context, (unsigned char*) buffer, bufLen);*/
+-
+- PRTSTR ("update by %d (%s)\n", bufLen, buffer);
+-#ifdef TRF_DEBUG
+- {
+- MD5_CTX* c = MD5_CTXP context;
+- PRINT ("Upd1 ABCD = %d %d %d %d\n", c->A, c->B, c->C, c->D); FL;
+- }
+-#endif
+-
+- md5f.update ((unsigned char*) buffer, bufLen, MD5_CTXP context);
+-
+-#ifdef TRF_DEBUG
+- {
+- MD5_CTX* c = MD5_CTXP context;
+- PRINT ("Upd2 ABCD = %d %d %d %d\n", c->A, c->B, c->C, c->D); FL;
+- }
+-#endif
++ MD5Update ((MD5_CTX*) context, &buf, 1);
+ }
+
+@@ -243,6 +159,5 @@
+ {
+ #ifndef OTP
+- /* MD5Final ((unsigned char*) digest, (MD5_CTX*) context); */
+- md5f.final (MD5_CTXP context, (unsigned char*) digest);
++ MD5Final ((unsigned char*) digest, (MD5_CTX*) context);
+ #else
+ int i;
+@@ -250,5 +165,5 @@
+
+ /* MD5Final ((unsigned char*) result, (MD5_CTX*) context);*/
+- md5f.final (MD5_CTXP context, (unsigned char*) result);
++ MD5Final ((unsigned char*) result, (MD5_CTX*) context);
+
+ for (i = 0; i < 8; i++)
+@@ -265,54 +180,2 @@
+ #endif
+ }
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDmd5_Check --
+- *
+- * ------------------------------------------------*
+- * Do global one-time initializations of the message
+- * digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * Loads the shared library containing the
+- * SHA1 functionality
+- *
+- * Result:
+- * A standard Tcl error code.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static int
+-MDmd5_Check (interp)
+-Tcl_Interp* interp;
+-{
+-#ifdef MD5_STATIC_BUILD
+- return TCL_OK;
+-#else
+- return TrfLoadMD5 (interp);
+-#endif
+-}
+-
+-/* Import the MD5 code in case of static linkage.
+- */
+-#ifdef MD5_STATIC_BUILD
+-/*
+- * External code from here on.
+- */
+-
+-#ifndef OTP
+-#include "../md5-crypt/md5.c" /* THREADING: import of one constant var, read-only => safe */
+-#endif
+-
+-md5Functions md5f = {
+- 0,
+- md5_init_ctx,
+- md5_process_bytes,
+- md5_finish_ctx,
+- 0, /* no crypt code! */
+-};
+-
+-#endif
diff --git a/devel/tcl-trf/files/patch-mkin b/devel/tcl-trf/files/patch-mkin
new file mode 100644
index 000000000000..8a146e7e044e
--- /dev/null
+++ b/devel/tcl-trf/files/patch-mkin
@@ -0,0 +1,70 @@
+--- Makefile.in Tue Aug 21 01:52:21 2001
++++ Makefile.in Fri Feb 15 01:37:36 2002
+@@ -34,5 +34,5 @@
+ #========================================================================
+
+-lib_BINARIES = $(Trf_LIB_FILE) $(Trf_STUB_LIB_FILE) $(MD5_LIB_FILE)
++lib_BINARIES = $(Trf_LIB_FILE) $(Trf_STUB_LIB_FILE)
+ BINARIES = $(lib_BINARIES)
+
+@@ -82,4 +82,5 @@
+ $(TRF_GENSRCDIR)/md5dig.c \
+ $(TRF_GENSRCDIR)/haval.c \
++ $(TRF_GENSRCDIR)/haval.1996/haval.c \
+ $(TRF_GENSRCDIR)/sha.c \
+ $(TRF_GENSRCDIR)/adler.c \
+@@ -125,5 +126,4 @@
+ TRF_BASE_OBJ = @DL_OBJS@ bz2lib.$(OBJEXT) \
+ zlib.$(OBJEXT) \
+- loadman.$(OBJEXT) \
+ init.$(OBJEXT) \
+ registry.$(OBJEXT) \
+@@ -157,4 +157,5 @@
+ md5dig.$(OBJEXT) \
+ haval.$(OBJEXT) \
++ haval-1996.$(OBJEXT) \
+ sha.$(OBJEXT) \
+ adler.$(OBJEXT) \
+@@ -191,5 +192,5 @@
+ #========================================================================
+
+-Trf_LIB_FILE = @Trf_LIB_FILE@
++Trf_LIB_FILE = libTrf2.so.1
+ $(Trf_LIB_FILE)_OBJECTS = $(Trf_OBJECTS)
+
+@@ -301,5 +302,5 @@
+ SHLIB_LD = @SHLIB_LD@
+ SHLIB_LDFLAGS = @SHLIB_LDFLAGS@
+-SHLIB_LD_LIBS = @SHLIB_LD_LIBS@
++SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ -lmd
+ STLIB_LD = @STLIB_LD@
+ TCL_BIN_DIR = @TCL_BIN_DIR@
+@@ -346,5 +347,5 @@
+ LIBS = @LIBS@
+ AR = ar
+-CFLAGS = @CFLAGS@
++CFLAGS += @CFLAGS@
+ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+
+@@ -431,5 +432,5 @@
+
+ check: test
+-test:
++test: $(Trf_LIB_FILE)
+ LD_LIBRARY_PATH="$(srcdir):../tea/:$(ZLIB_LIB_DIR):$(SSL_LIB_DIR)"; \
+ export LD_LIBRARY_PATH; \
+@@ -612,4 +613,7 @@
+ $(COMPILE) -c `@CYGPATH@ $(TRF_GENSRCDIR)/haval.c` -o $@
+
++haval-1996.o: $(TRF_GENSRCDIR)/haval.1996/haval.c
++ $(COMPILE) -c `@CYGPATH@ $(TRF_GENSRCDIR)/haval.1996/haval.c` -o $@
++
+ sha.$(OBJEXT): $(TRF_GENSRCDIR)/sha.c
+ $(COMPILE) -c `@CYGPATH@ $(TRF_GENSRCDIR)/sha.c` -o $@
+@@ -755,5 +759,5 @@
+ done
+ if test "x$(MAKE_LIB)" = "x$(MAKE_SHARED_LIB)"; then \
+- $(TCLSH_PROG) mkIndex.tcl $(lib_BINARIES); \
++ $(TCLSH_PROG) mkIndex.tcl $(Trf_LIB_FILE); \
+ fi
+
diff --git a/devel/tcl-trf/files/patch-reftocrc b/devel/tcl-trf/files/patch-reftocrc
new file mode 100644
index 000000000000..ea0a3c380841
--- /dev/null
+++ b/devel/tcl-trf/files/patch-reftocrc
@@ -0,0 +1,14 @@
+This adds a link to the painless-guide-to-crc.txt -- a text document
+bundled in with the Trf distribution. Someone browsing the doc directory
+will most likely see the index.html file, and it might be useful if this
+document is referenced from it.
+
+ -mi
+
+--- doc/html/index.html Tue Aug 21 01:52:27 2001
++++ doc/html/index.html Fri Feb 15 02:19:50 2002
+@@ -10,3 +10,3 @@
+ <hr>
+-<p align=center><font size=7><b>[</b></font> <a href="sitemap.html">Sitemap</a> <font size=7><b>]</b></font> &#160;&#160;&#160;&#160;&#160; <font size=7><b>[</b></font> <a href="trf_news.html">News</a><font size=7><b>|</b></font> <a href="trf_changelog.html">ChangeLog</a><font size=7><b>|</b></font> <a href="trf_intro.html">Introduction</a><font size=7><b>|</b></font> <a href="trf_where.html">Download</a><font size=7><b>|</b></font> <a href="trf_ack.html">Acknowledgements, Disclaimer</a><font size=7><b>|</b></font> <a href="trf_danger.html">Danger!</a><font size=7><b>|</b></font> <a href="trf_install.html">Installation</a><font size=7><b>|</b></font> <a href="trf_cmds.html">Commands</a><font size=7><b>|</b></font> <a href="trf_capi.html">C API</a><font size=7><b>|</b></font> <a href="trf_copyrights.html">Copyrights</a><font size=7><b>|</b></font> <a href="trf_future.html">Future work</a> <font size=7><b>]</b></font></p>
++<p align=center><font size=7><b>[</b></font> <a href="sitemap.html">Sitemap</a> <font size=7><b>]</b></font> &#160;&#160;&#160;&#160;&#160; <font size=7><b>[</b></font> <a href="trf_news.html">News</a><font size=7><b>|</b></font> <a href="trf_changelog.html">ChangeLog</a><font size=7><b>|</b></font> <a href="trf_intro.html">Introduction</a><font size=7><b>|</b></font> <a href="trf_where.html">Download</a><font size=7><b>|</b></font> <a href="trf_ack.html">Acknowledgements, Disclaimer</a><font size=7><b>|</b></font> <a href="trf_danger.html">Danger!</a><font size=7><b>|</b></font> <a href="trf_install.html">Installation</a><font size=7><b>|</b></font> <a href="trf_cmds.html">Commands</a><font size=7><b>|</b></font> <a href="trf_capi.html">C API</a><font size=7><b>|</b></font> <a href="trf_copyrights.html">Copyrights</a><font size=7><b>|</b></font> <a href="trf_future.html">Future work</a> <font size=7><b>|</b></font> <A href="painless-guide-to-crc.txt">Painless Guide to CRC</A> <font size=7><b>]</b></font></p>
+ <hr>
diff --git a/devel/tcl-trf/files/patch-sha b/devel/tcl-trf/files/patch-sha
new file mode 100644
index 000000000000..74979787b75d
--- /dev/null
+++ b/devel/tcl-trf/files/patch-sha
@@ -0,0 +1,197 @@
+--- generic/sha.c Wed Aug 9 15:13:18 2000
++++ generic/sha.c Fri Feb 8 11:22:17 2002
+@@ -30,34 +30,6 @@
+ #include "transformInt.h"
+
+-#ifndef WORDS_BIGENDIAN
+-#define LITTLE_ENDIAN
+-#endif
+-
+-#include "sha/sha.h"
+-
+-/*
+- * Generator description
+- * ---------------------
+- *
+- * The SHA alogrithm is used to compute a cryptographically strong
+- * message digest.
+- */
+-
+-#define DIGEST_SIZE (SHA_DIGESTSIZE)
+-#define CTX_TYPE sha_trf_info
+-#define CHUNK_SIZE 256
+-
+-/* We cannot use SHA_INFO directly as context cause 'sha_update' handles
+- * a chunk smaller then CHUNK_SIZE bytes correct if and only if it is
+- * the last chunk. This forces us to buffer the incoming bytes till a chunk
+- * is complete before doing an update.
+- */
+-
+-typedef struct _sha_trf_info {
+- SHA_INFO s;
+- unsigned short count;
+- unsigned char buf [CHUNK_SIZE]; /* SHA block */
+-} sha_trf_info;
+-
++#include <sys/types.h>
++#include <sha.h>
+
+ /*
+@@ -76,9 +48,9 @@
+ static Trf_MessageDigestDescription mdDescription = { /* THREADING: constant, read-only => safe */
+ "sha",
+- sizeof (CTX_TYPE),
+- DIGEST_SIZE,
+- MDsha_Start,
++ sizeof (SHA_CTX),
++ SHA_DIGEST_LENGTH,
++ SHA_Init,
+ MDsha_Update,
+- MDsha_UpdateBuf,
++ SHA_Update,
+ MDsha_Final,
+ NULL
+@@ -113,33 +85,4 @@
+ *------------------------------------------------------*
+ *
+- * MDsha_Start --
+- *
+- * ------------------------------------------------*
+- * Initialize the internal state of the message
+- * digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDsha_Start (context)
+-VOID* context;
+-{
+- sha_trf_info* s = (sha_trf_info*) context;
+-
+- memset (s, '\0', sizeof (sha_trf_info));
+- sha_init (&s->s);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+ * MDsha_Update --
+ *
+@@ -163,79 +106,7 @@
+ unsigned int character;
+ {
+- sha_trf_info* s = (sha_trf_info*) context;
+-
+- s->buf [s->count] = character;
+- s->count ++;
++ unsigned char buf = character;
+
+- if (s->count == CHUNK_SIZE) {
+- sha_update (&s->s, s->buf, s->count);
+- s->count = 0;
+- }
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDsha_UpdateBuf --
+- *
+- * ------------------------------------------------*
+- * Update the internal state of the message digest
+- * generator for a character buffer.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDsha_UpdateBuf (context, buffer, bufLen)
+-VOID* context;
+-unsigned char* buffer;
+-int bufLen;
+-{
+- sha_trf_info* s = (sha_trf_info*) context;
+-
+- if ((s->count + bufLen) < CHUNK_SIZE) {
+- /*
+- * Not enough for full chunk. Remember incoming
+- * data and wait for another call containing more data.
+- */
+-
+- memcpy ((VOID*) (s->buf + s->count), (VOID*) buffer, bufLen);
+- s->count += bufLen;
+- } else {
+- /*
+- * Complete chunk with incoming data, update digest,
+- * then use all chunks contained in the buffer. Remember
+- * an incomplete chunk and wait for further calls.
+- */
+-
+- int k = CHUNK_SIZE - s->count;
+-
+- if (k < CHUNK_SIZE) {
+- memcpy ((VOID*) (s->buf + s->count), (VOID*) buffer, k);
+-
+- sha_update (&s->s, s->buf, CHUNK_SIZE);
+-
+- buffer += k;
+- bufLen -= k;
+- } /* k == CHUNK_SIZE => internal buffer was empty, so skip it entirely */
+-
+- while (bufLen > CHUNK_SIZE) {
+- sha_update (&s->s, buffer, CHUNK_SIZE);
+-
+- buffer += CHUNK_SIZE;
+- bufLen -= CHUNK_SIZE;
+- }
+-
+- s->count = bufLen;
+- if (bufLen > 0)
+- memcpy ((VOID*) s->buf, (VOID*) buffer, bufLen);
+- }
++ SHA_Update ((SHA_CTX*)context, &buf, 1);
+ }
+
+@@ -264,26 +135,4 @@
+ VOID* digest;
+ {
+- sha_trf_info* s = (sha_trf_info*) context;
+-
+- if (s->count > 0) {
+- sha_update (&s->s, s->buf, s->count);
+- }
+-
+- sha_final (&s->s);
+-
+-#ifndef WORDS_BIGENDIAN
+- Trf_FlipRegisterLong (s->s.digest, SHA_DIGESTSIZE);
+-#endif
+-
+- memcpy (digest, s->s.digest, SHA_DIGESTSIZE);
++ SHA_Final(digest, context);
+ }
+-
+-/*
+- * External code from here on.
+- *
+- * To make smaller object code, but run a little slower, don't use UNROLL_LOOPS.
+- * To use NIST's modified SHA of 7/11/94, define USE_MODIFIED_SHA
+- */
+-
+-#define UNROLL_LOOPS
+-#include "sha/sha.c"
diff --git a/devel/tcl-trf/files/patch-sha1 b/devel/tcl-trf/files/patch-sha1
new file mode 100644
index 000000000000..bbef27a6e702
--- /dev/null
+++ b/devel/tcl-trf/files/patch-sha1
@@ -0,0 +1,132 @@
+--- generic/sha1.c Wed Aug 9 15:13:18 2000
++++ generic/sha1.c Fri Feb 8 10:39:46 2002
+@@ -30,4 +30,7 @@
+ #include "loadman.h"
+
++#include <sys/types.h>
++#include <sha.h>
++
+ /*
+ * Generator description
+@@ -67,9 +70,9 @@
+ sizeof (CTX_TYPE),
+ DIGEST_SIZE,
+- MDsha1_Start,
++ SHA1_Init,
+ MDsha1_Update,
+- MDsha1_UpdateBuf,
++ SHA1_Update,
+ MDsha1_Final,
+- MDsha1_Check
++ NULL
+ };
+
+@@ -106,30 +109,4 @@
+ *------------------------------------------------------*
+ *
+- * MDsha1_Start --
+- *
+- * ------------------------------------------------*
+- * Initialize the internal state of the message
+- * digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDsha1_Start (context)
+-VOID* context;
+-{
+- sha1f.init ((SHA_CTX*) context);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+ * MDsha1_Update --
+ *
+@@ -155,33 +132,5 @@
+ unsigned char buf = character;
+
+- sha1f.update ((SHA_CTX*) context, &buf, 1);
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDsha1_UpdateBuf --
+- *
+- * ------------------------------------------------*
+- * Update the internal state of the message digest
+- * generator for a character buffer.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * As of the called procedure.
+- *
+- * Result:
+- * None.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static void
+-MDsha1_UpdateBuf (context, buffer, bufLen)
+-VOID* context;
+-unsigned char* buffer;
+-int bufLen;
+-{
+- sha1f.update ((SHA_CTX*) context, (unsigned char*) buffer, bufLen);
++ SHA1_Update ((SHA_CTX*) context, &buf, 1);
+ }
+
+@@ -211,9 +160,9 @@
+ {
+ #ifndef OTP
+- sha1f.final ((unsigned char*) digest, (SHA_CTX*) context);
++ SHA1_Final ((unsigned char*) digest, (SHA_CTX*) context);
+ #else
+ unsigned int result[SHA_DIGEST_LENGTH / sizeof (char)];
+
+- sha1f.final ((unsigned char*) result, (SHA_CTX*) context);
++ SHA1_Final ((unsigned char*) result, (SHA_CTX*) context);
+
+ result[0] ^= result[2];
+@@ -224,30 +173,3 @@
+ memcpy ((VOID *) digest, (VOID *) result, DIGEST_SIZE);
+ #endif
+-}
+-
+-/*
+- *------------------------------------------------------*
+- *
+- * MDsha1_Check --
+- *
+- * ------------------------------------------------*
+- * Do global one-time initializations of the message
+- * digest generator.
+- * ------------------------------------------------*
+- *
+- * Sideeffects:
+- * Loads the shared library containing the
+- * SHA1 functionality
+- *
+- * Result:
+- * A standard Tcl error code.
+- *
+- *------------------------------------------------------*
+- */
+-
+-static int
+-MDsha1_Check (interp)
+-Tcl_Interp* interp;
+-{
+- return TrfLoadSHA1 (interp);
+ }
diff --git a/devel/tcl-trf/files/patch-test b/devel/tcl-trf/files/patch-test
new file mode 100644
index 000000000000..5b385963ffb0
--- /dev/null
+++ b/devel/tcl-trf/files/patch-test
@@ -0,0 +1,38 @@
+This patch-set makes the ``all'' script fail if any of the test scripts
+report an error...
+
+ -mi
+
+--- tests/all Wed Feb 5 15:51:13 1997
++++ tests/all Fri Feb 15 00:52:39 2002
+@@ -10,2 +10,5 @@
+ source $i
+ }
++
++puts stderr "$errors error(s)"
++exit $errors
+--- tests/defs Sat Sep 25 15:04:01 1999
++++ tests/defs Fri Feb 15 00:51:56 2002
+@@ -300,6 +300,8 @@
+
+ proc test {name description script answer args} {
+- global VERBOSE TESTS testConfig
+-
++ global VERBOSE TESTS testConfig errors
++ if {![info exist errors]} {
++ set errors 0
++ }
+ if {[string compare $TESTS ""] != 0} {
+ set ok 0
+@@ -362,4 +364,5 @@
+ print_verbose $name $description $constraints $script \
+ $code $result
++ incr errors
+ } elseif {[string compare $result $answer] == 0} {
+ if {$VERBOSE} {
+@@ -378,4 +381,5 @@
+ puts stdout "$answer"
+ puts stdout "---- $name FAILED"
++ incr errors
+ }
+ }
diff --git a/devel/tcl-trf/pkg-comment b/devel/tcl-trf/pkg-comment
new file mode 100644
index 000000000000..0b9e264543c3
--- /dev/null
+++ b/devel/tcl-trf/pkg-comment
@@ -0,0 +1 @@
+Data conversion, digests, compression, error-correction for Tcl
diff --git a/devel/tcl-trf/pkg-descr b/devel/tcl-trf/pkg-descr
new file mode 100644
index 000000000000..206ba55ae371
--- /dev/null
+++ b/devel/tcl-trf/pkg-descr
@@ -0,0 +1,12 @@
+This is a loadable extension to Tcl providing commands for data
+conversion, message digests, zlib based compression, error-correction,
+channel-based manipulation of binary data. Trf extends the language at
+the C-level with so-called ``transformer''-procedures. With the help of
+some patches (*) to the core the package is able to intercept all
+read/write operations on designated channels, thus giving it the ability
+to transform the buffer contents as desired. This allows things like
+transparent encryption, compression, charset recoding, etc. Build upon
+this framework (and as proof of concept) a collection of tcl-level
+commands was implemented.
+
+WWW: http://www.oche.de/~akupries/soft/trf/
diff --git a/devel/tcl-trf/pkg-plist b/devel/tcl-trf/pkg-plist
new file mode 100644
index 000000000000..d1e094659584
--- /dev/null
+++ b/devel/tcl-trf/pkg-plist
@@ -0,0 +1,80 @@
+lib/%%SHLIB_NAME%%
+lib/%%SHLIB_LINK%%
+lib/libTrfstub21.a
+lib/Trf/pkgIndex.tcl
+include/trfDecls.h
+include/transform.h
+@dirrm lib/Trf
+%%PORTDOCS%%share/doc/Trf/capi/Trf_CheckOptions.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_ClearCtrlBlock.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_ConverterOptions.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_CreateCtrlBlock.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_CreateOptions.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_DeleteCtrlBlock.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_DeleteOptions.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_FlipRegisterLong.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_FlipRegisterShort.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_FlushTransformation.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_Init.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_InitStubs.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_IsInitialized.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_LoadLibrary.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_MDCheck.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_MDFinal.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_MDStart.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_MDUpdate.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_MDUpdateBuf.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_QueryMaxRead.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_QueryOptions.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_Register.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_RegisterMessageDigest.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_SafeInit.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_SeekQueryOptions.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_SetObjOption.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_SetOption.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_ShiftRegister.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_TransformBuffer.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_TransformCharacter.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_WriteProc.html
+%%PORTDOCS%%share/doc/Trf/capi/Trf_XorBuffer.html
+%%PORTDOCS%%@dirrm share/doc/Trf/capi
+%%PORTDOCS%%share/doc/Trf/img/chan.gif
+%%PORTDOCS%%share/doc/Trf/img/logo-120x181.gif
+%%PORTDOCS%%share/doc/Trf/img/smiley16.gif
+%%PORTDOCS%%share/doc/Trf/img/trfchan.gif
+%%PORTDOCS%%share/doc/Trf/img/trfchan2.gif
+%%PORTDOCS%%share/doc/Trf/img/up.gif
+%%PORTDOCS%%@dirrm share/doc/Trf/img
+%%PORTDOCS%%share/doc/Trf/index.html
+%%PORTDOCS%%share/doc/Trf/painless-guide-to-crc.txt
+%%PORTDOCS%%share/doc/Trf/sitemap.html
+%%PORTDOCS%%share/doc/Trf/trf_ack.html
+%%PORTDOCS%%share/doc/Trf/trf_bdist.html
+%%PORTDOCS%%share/doc/Trf/trf_binio.html
+%%PORTDOCS%%share/doc/Trf/trf_bz2.html
+%%PORTDOCS%%share/doc/Trf/trf_capi.html
+%%PORTDOCS%%share/doc/Trf/trf_changelog.html
+%%PORTDOCS%%share/doc/Trf/trf_cmac.html
+%%PORTDOCS%%share/doc/Trf/trf_cmds.html
+%%PORTDOCS%%share/doc/Trf/trf_compile.html
+%%PORTDOCS%%share/doc/Trf/trf_conv.html
+%%PORTDOCS%%share/doc/Trf/trf_copyrights.html
+%%PORTDOCS%%share/doc/Trf/trf_ctea.html
+%%PORTDOCS%%share/doc/Trf/trf_cunix.html
+%%PORTDOCS%%share/doc/Trf/trf_cwin.html
+%%PORTDOCS%%share/doc/Trf/trf_danger.html
+%%PORTDOCS%%share/doc/Trf/trf_future.html
+%%PORTDOCS%%share/doc/Trf/trf_install.html
+%%PORTDOCS%%share/doc/Trf/trf_intro.html
+%%PORTDOCS%%share/doc/Trf/trf_logo.html
+%%PORTDOCS%%share/doc/Trf/trf_md.html
+%%PORTDOCS%%share/doc/Trf/trf_misc.html
+%%PORTDOCS%%share/doc/Trf/trf_news.html
+%%PORTDOCS%%share/doc/Trf/trf_patch.html
+%%PORTDOCS%%share/doc/Trf/trf_seek.html
+%%PORTDOCS%%share/doc/Trf/trf_ssleay.html
+%%PORTDOCS%%share/doc/Trf/trf_techintro.html
+%%PORTDOCS%%share/doc/Trf/trf_transform.html
+%%PORTDOCS%%share/doc/Trf/trf_where.html
+%%PORTDOCS%%share/doc/Trf/trf_zip.html
+%%PORTDOCS%%@dirrm share/doc/Trf