ports/109675: [MAINTAINER UPDATE] lang/xotcl 1.5.3

Martin Matuska martin at matuska.org
Wed Feb 28 13:30:07 UTC 2007


>Number:         109675
>Category:       ports
>Synopsis:       [MAINTAINER UPDATE] lang/xotcl 1.5.3
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Wed Feb 28 13:30:06 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:
Changes to the port:
- removed WITH_THREADS and WITH_AOLSERVER from OPTIONS
- added support for threaded build (WITH_THREADS), prepared for xotcl-thread slave port
- added support for tcl85, removed tcl83 from CATEGORIES
- prepared for www/aolserver-xotcl slave module (AOLSERVER_XOTCL knob)

Tested with tinderbox:
http://tinderbox.vx.sk/logs/6.2-FreeBSD-amd64/xotcl-1.5.3_2.log

>How-To-Repeat:
>Fix:
diff -Nbur lang/xotcl.orig/Makefile lang/xotcl/Makefile
--- lang/xotcl.orig/Makefile	Wed Feb 28 11:39:21 2007
+++ lang/xotcl/Makefile	Wed Feb 28 14:05:32 2007
@@ -7,35 +7,49 @@
 
 PORTNAME=	xotcl
 PORTVERSION=	1.5.3
-PORTREVISION=	1
-CATEGORIES=	lang tcl83 tcl84
+PORTREVISION=	2
+CATEGORIES=	lang tcl84
 MASTER_SITES=	http://media.wu-wien.ac.at/download/
+PKGNAMESUFFIX?=	${THREADS_SUFFIX}
 
 MAINTAINER=	martin at matuska.org
 COMMENT=	Object-oriented scripting language based on Tcl
 
-GNU_CONFIGURE=	yes
-USE_TCL=	yes
-USE_TCL_BUILD=	yes
-ALL_TARGET=	all test-nohttp
+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
+
+USE_TCL=	${USE_TCL_VER}
+USE_TCL_BUILD=	${USE_TCL_VER}
 INSTALL_TARGET=	install
-USE_LDCONFIG=	yes
+ALL_TARGET=	all test-nohttp
 USE_GMAKE=	yes
 PLIST_SUB+=	PORTVERSION=${PORTVERSION}
 
+.if !defined(AOLSERVER_XOTCL)
+USE_LDCONFIG=	${PREFIX}/xotcl${PORTVERSION}
+GNU_CONFIGURE=	yes
+
 OPTIONS=	ACTIWEB		"Include actiweb"		on \
-		AOLSERVER	"AOL server module"		off \
-		THREADS		"Force threaded build"		off \
 		TUTORIAL	"Install XOTcl tutorial" 	off
-
-CONFIGURE_ARGS+=	--exec-prefix=${PREFIX} \
-			--libdir=${PREFIX}/lib \
-			--with-tcl=${TCL_LIBDIR} \
-			--with-tclinclude=${TCL_INCLUDEDIR}/generic/ \
-			--with-xotclsh
+.else
+AOLSERVERBASE?=	${LOCALBASE}/aolserver
+.endif
 
 .include <bsd.port.pre.mk>
 
+.if defined(AOLSERVER_XOTCL)
+RUN_DEPENDS+=		${LOCALBASE}/aolserver/bin/init.tcl:${PORTSDIR}/www/aolserver \
+			${LOCALBASE}/lib/xotcl${PORTVERSION}/xotclConfig.sh:${PORTSDIR}/lang/xotcl-thread
+PLIST=			${WRKDIR}/pkg-plist.aolserver
+PLIST_FILES=		${AOLSERVERBASE:S/${LOCALBASE}\///}/modules/tcl/xotcl.tcl
+LATEST_LINK=		aolserver-xotcl
+NO_BUILD=		yes
+WITH_THREADS=		yes
+.endif
+
 .if defined(WITH_ACTIWEB)
 CONFIGURE_ARGS+=	--with-actiweb --with-gdbm=${LOCALBASE}/include,${LOCALBASE}/lib
 LIB_DEPENDS+=		gdbm.3:${PORTSDIR}/databases/gdbm
@@ -44,34 +58,61 @@
 PLIST_SUB+=	ACTIWEB="@comment "
 .endif
 
-.if defined(WITH_AOLSERVER)
-BUILD_DEPENDS+=		${LOCALBASE}/aolserver/bin/init.tcl:${PORTSDIR}/www/aolserver
-RUN_DEPENDS+=		${BUILD_DEPENDS}
-PLIST_SUB+=		AOLSERVER=""
-INSTALL_TARGET+=	install-aol
-.else
-PLIST_SUB+=		AOLSERVER="@comment "
-.endif
-
 .if defined(WITH_TUTORIAL)
 PLIST_SUB+=	TUTORIAL=""
 .else
 PLIST_SUB+=	TUTORIAL="@comment "
 .endif
 
-.if defined(WITH_THREADS)
-TCL_THREADED!=	${ECHO_CMD} 'puts [array names tcl_platform -exact threaded]' | ${TCLSH}
-.if empty(TCL_THREADED)
-IGNORE=		WITH_THREADS option is selected. You need Tcl with threads to use this port. Please install Tcl with WITH_THREADS defined or from lang/tcl84-thread port and try again.
+INSTALL_TARGET+=	install-shells
+
+.if !defined(AOLSERVER_XOTCL) && !defined(NO_INSTALL_MANPAGES)
+MAN1=			xotclsh.1
 .endif
+
+. if exists(${TCLSH})
+_TCL_IS_THREADED!= ${ECHO_CMD} 'puts [array names tcl_platform -exact threaded]' | ${TCLSH} || return 0
+.  if !defined(TCL_WITH_THREADS) && !defined(WITH_THREADS) && !empty(_TCL_IS_THREADED)
+TCL_WITH_THREADS=	yes
+.  endif
+. endif
+
+.if defined(TCL_WITH_THREADS) || defined(WITH_THREADS)
+.  if defined(_TCL_IS_THREADED) && empty(_TCL_IS_THREADED)
+IGNORE= threaded build is required. You need Tcl with threads to use this port. Please install Tcl with WITH_THREADS defined or from lang/tcl84-thread port and try again
+.  endif
 CONFIGURE_ARGS+=	--enable-threads
+.  if !defined(AOLSERVER_XOTCL)
+THREADS_SUFFIX=		-threads
+.  endif
+USE_TCL=	${USE_TCL_VER}-thread
+USE_TCL_BUILD=	${USE_TCL_VER}-thread
+.include "${PORTSDIR}/Mk/bsd.tcl.mk"
+.  else
+CONFIGURE_ARGS+=	--disable-threads
 .endif
 
-INSTALL_TARGET+=	install-shells
-.if !defined(NO_INSTALL_MANPAGES)
-MAN1=			xotclsh.1
+LATEST_LINK?=	xotcl${THREADS_SUFFIX}
+
+CONFIGURE_ARGS+=	--exec-prefix=${PREFIX} \
+			--libdir=${PREFIX}/lib \
+			--with-tcl=${TCL_LIBDIR} \
+			--with-tclinclude=${TCL_INCLUDEDIR}/generic/ \
+			--with-xotclsh
+
+.if !defined(AOLSERVER_XOTCL) # Install for aolserver module
+pre-configure:
+. if defined(TCL_WITH_THREADS) || defined(WITH_THREADS)
+	@${ECHO_CMD} "*************************************************"
+	@${ECHO_CMD} "NOTICE: XOTcl will be built with threads support."
+	@${ECHO_CMD} "*************************************************"
+. endif
+.else # installation for aolserver module
+do-install:
+	@${INSTALL_DATA} ${WRKSRC}/generic/aol-xotcl.tcl ${AOLSERVERBASE}/modules/tcl/xotcl.tcl
 .endif
 
+.if !defined(AOLSERVER_XOTCL) # Aolserver module has no post-install
 post-install:
 .if defined(WITH_TUTORIAL)
 	${MKDIR} ${EXAMPLESDIR}/tutorial/html ${EXAMPLESDIR}/tutorial/pdf
@@ -91,5 +132,6 @@
 .endif
 .if !defined(NO_INSTALL_MANPAGES)
 	${INSTALL_MAN} ${WRKSRC}/man/xotclsh.1 ${PREFIX}/man/man1/
+.endif
 .endif
 .include <bsd.port.post.mk>
diff -Nbur lang/xotcl.orig/pkg-plist lang/xotcl/pkg-plist
--- lang/xotcl.orig/pkg-plist	Wed Feb 28 11:39:21 2007
+++ lang/xotcl/pkg-plist	Wed Feb 28 14:14:48 2007
@@ -72,7 +72,6 @@
 %%ACTIWEB%%lib/xotclsdbm1.2/pkgIndex.tcl
 %%ACTIWEB%%lib/xotclgdbm1.2/libxotclgdbm1.2.so
 %%ACTIWEB%%lib/xotclgdbm1.2/pkgIndex.tcl
-%%AOLSERVER%%aolserver/modules/tcl/xotcl.tcl
 bin/xotclsh
 include/xotcl%%PORTVERSION%%/xotcl.h
 include/xotcl%%PORTVERSION%%/xotclDecls.h
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list