ports/109690: [UPDATE] www/tdom

Martin Matuska martin at matuska.org
Wed Feb 28 16:30:12 UTC 2007


>Number:         109690
>Category:       ports
>Synopsis:       [UPDATE] www/tdom
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Wed Feb 28 16:30:11 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Martin Matuska
>Release:        FreeBSD 6.2-RELEASE i386
>Organization:
>Environment:
System: FreeBSD 6.2-RELEASE i386 amd64
>Description:
Update of tdom-0.8.0:
- added support for non-threaded tcl (if installed)
- added support for tcl85 via USE_TCL_VER=85
- added tcl84 to CATEGORIES list
- added readme and html documentation

Tested with tinderbox:
http://tinderbox.vx.sk/logs/6.2-FreeBSD-amd64/tDOM-threads-0.8.0_1.log

I would like to takeover maintainership for this port.

>How-To-Repeat:
>Fix:
diff -Nbur www/tdom.orig/Makefile www/tdom/Makefile
--- www/tdom.orig/Makefile	Wed Jul 27 13:44:45 2005
+++ www/tdom/Makefile	Wed Feb 28 17:22:22 2007
@@ -7,8 +7,10 @@
 
 PORTNAME=	tDOM
 PORTVERSION=	0.8.0
+PORTREVISION=	1
 CATEGORIES=	www
 MASTER_SITES=	http://www.tdom.org/files/
+PKGNAMESUFFIX?=	-threads
 
 MAINTAINER=	aldert at nooitgedagt.net
 COMMENT=	High performance XML data processing with Tcl (ARGS for OpenACS)
@@ -16,39 +18,67 @@
 WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}/unix
 TDOMBASE=	${PREFIX}/lib/tdom${PORTVERSION}
 
-LIB_DEPENDS+=	tcl84.1:${PORTSDIR}/lang/tcl84-thread
+USE_TCL_VER?=	84
+
+.if ${USE_TCL_VER} != 84 && ${USE_TCL_VER} != 85
+IGNORE=		supported values for USE_TCL_VER are only 84 and 85
+.endif
+
+# by default we want a threaded build
+USE_TCL=	${USE_TCL_VER}-thread
+USE_TCL_BUILD=	${USE_TCL_VER}-thread
 
 USE_GMAKE=	yes
 HAS_CONFIGURE=	yes
 CONFIGURE_SCRIPT=	../configure
-CONFIGURE_ARGS=	--enable-threads --disable-tdomalloc --with-tcl=${LOCALBASE}/lib/tcl8.4 \
-		--with-tclinclude=${LOCALBASE}/include/tcl8.4  --prefix=${PREFIX}
 
-INSTALLS_SHLIB=	YES
-LDCONFIG_DIRS+=	${TDOMBASE}
+USE_LDCONFIG=	${TDOMBASE}
 
 PLIST_SUB+=	PORTVERSION=${PORTVERSION}
 
-pre-configure:
-	@${ECHO_CMD}
-	@${ECHO_CMD} "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
-	@${ECHO_CMD} " Please make sure that you either have lang/tcl84-thread or "
-	@${ECHO_CMD} " no tcl84 installed before you add this port "
-	@${ECHO_CMD} "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
-	@${ECHO_CMD}
-
-post-configure:
-	@if ${GREP} -qs 'enable-threads requested, but attempting building against' ${WRKSRC}/config.log ; then \
-		${ECHO_CMD} "" && \
-		${ECHO_CMD} " =====================================================" && \
-		${ECHO_CMD} " You need ${PORTSDIR}/lang/tcl84-thread but you appear " && \
-		${ECHO_CMD} " to have the non-threaded TCL version installed." && \
-		${ECHO_CMD} " =====================================================" && \
-		${ECHO_CMD} "" && \
-		${FALSE}; \
-	fi
-
 MANN=		dom.n domDoc.n domNode.n expat.n expatapi.n tdomcmd.n tnc.n
 MANCOMPRESSED=	no
 
-.include <bsd.port.mk>
+DOCS=		CHANGES LICENSE README README.AOL
+HTMLDOCS=	category-index.html dom.html domDoc.html domNode.html \
+		expat.html expatapi.html index.html keyword-index.html \
+		tdomcmd.html tnc.html
+
+.include <bsd.port.pre.mk>
+
+.if exists(${TCLSH})
+_TCL_IS_THREADED!=	${ECHO_CMD} 'puts [array names tcl_platform -exact threaded]' | ${TCLSH} || return 0
+. if empty(_TCL_IS_THREADED)
+# Check if a threaded build is forced
+.  if defined(TCL_WITH_THREADS) || defined(WITH_THREADS)
+IGNORE=	tcl with threads is required. Please install tcl with WITH_THREADS defined or from lang/tcl${USE_TCL} port and try again
+.  else
+# Installed tcl is not threaded, so set correct dependencies
+CONFIGURE_ARGS+=	--disable-threads
+PKGNAMESUFFIX=
+USE_TCL=${USE_TCL_VER}
+USE_TCL_BUILD=${USE_TCL_VER}
+.include "${PORTSDIR}/Mk/bsd.tcl.mk"
+.  endif
+. else
+CONFIGURE_ARGS+=	--enable-threads
+. endif
+.else
+CONFIGURE_ARGS+=	--enable-threads
+.endif
+
+CONFIGURE_ARGS+=	-disable-tdomalloc --with-tcl=${TCL_LIBDIR} \
+		--with-tclinclude=${TCL_INCLUDEDIR}  --prefix=${PREFIX}
+
+post-install:
+.if !defined(NOPORTDOCS)
+	@${MKDIR} ${DOCSDIR}/html
+. for FILE in ${DOCS}
+	@${INSTALL_DATA} ${WRKSRC}/../${FILE} ${DOCSDIR}/${FILE}
+. endfor
+. for FILE in ${HTMLDOCS}
+	@${INSTALL_DATA} ${WRKSRC}/../doc/${FILE} ${DOCSDIR}/html/${FILE}
+. endfor
+.endif
+
+.include <bsd.port.post.mk>
diff -Nbur www/tdom.orig/pkg-plist www/tdom/pkg-plist
--- www/tdom.orig/pkg-plist	Wed Jul 27 13:44:45 2005
+++ www/tdom/pkg-plist	Wed Feb 28 16:37:19 2007
@@ -3,4 +3,20 @@
 lib/tdom%%PORTVERSION%%/pkgIndex.tcl
 lib/tdom%%PORTVERSION%%/tdom.tcl
 lib/tdomConfig.sh
+%%PORTDOCS%%%%DOCSDIR%%/html/category-index.html
+%%PORTDOCS%%%%DOCSDIR%%/html/dom.html
+%%PORTDOCS%%%%DOCSDIR%%/html/domDoc.html
+%%PORTDOCS%%%%DOCSDIR%%/html/domNode.html
+%%PORTDOCS%%%%DOCSDIR%%/html/expat.html
+%%PORTDOCS%%%%DOCSDIR%%/html/expatapi.html
+%%PORTDOCS%%%%DOCSDIR%%/html/index.html
+%%PORTDOCS%%%%DOCSDIR%%/html/keyword-index.html
+%%PORTDOCS%%%%DOCSDIR%%/html/tdomcmd.html
+%%PORTDOCS%%%%DOCSDIR%%/html/tnc.html
+%%PORTDOCS%%%%DOCSDIR%%/CHANGES
+%%PORTDOCS%%%%DOCSDIR%%/LICENSE
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/README.AOL
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/html
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
 @dirrm lib/tdom%%PORTVERSION%%
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list