The JUMP PostGIS driver plugin allows reading from and writing to a PostGIS database. WWW: http://www.jump-project.org/
PR ports/68052 needs to go before this one :)
Sam, Same advice as for ports/68052, the correct syntax for Java support would be: USE_JAVA= yes JAVA_VERSION= 1.4+ Again, feel free to ask me for any further information that you can't find in the Porter's handbook. Herve
Patch to fix java variables and use ECHO_MSG. --- Makefile.orig Mon Aug 9 01:11:35 2004 +++ Makefile Mon Aug 9 01:11:23 2004 @@ -18,7 +18,8 @@ RUN_DEPENDS= jumpgis:${PORTSDIR}/graphics/jumpgis TARGET_DIR= ${PREFIX}/jumpgis -USE_JAVA= 1.4+ +USE_JAVA= yes +JAVA_VERSION= 1.3+ USE_ZIP= yes USE_REINPLACE= yes NO_BUILD= yes @@ -29,10 +30,10 @@ @${UNZIP_CMD} -q ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} -d ${WRKSRC} do-install: - @${ECHO_CMD} "---> Installing JAR files" + @${ECHO_MSG} "---> Installing JAR files" ${INSTALL_DATA} ${WRKSRC}/lib/ext/postgisdriver-1.1.0.jar ${TARGET_DIR}/lib/ext/ ${INSTALL_DATA} ${WRKSRC}/lib/ext/pg74jdbc3.jar ${TARGET_DIR}/lib/ - @${ECHO_CMD} "---> Fixing CLASSPATH in ${PREFIX}/bin/jumpgis" + @${ECHO_MSG} "---> Fixing CLASSPATH in ${PREFIX}/bin/jumpgis" [ -e ${PREFIX}/bin/jumpgis ] && ${GREP} 'CLASSPATH=.*pg74jdbc3.jar' ${PREFIX}/bin/jumpgis || ${REINPLACE_CMD} 's/CLASSPATH=.*/&:$$LIB\/pg74jdbc3.jar/g' ${PREFIX}/bin/jumpgis && ${RM} ${PREFIX}/bin/jumpgis.bak .include <bsd.port.mk>
The REINPLACE to fix the jumpgis CLASSPATH fails after the port was installed once. Add some parantheses to make things work the way I intended:
State Changed From-To: open->feedback Warning: this port changes the script ${PREFIX}/bin/jumpgis which has been installed by another port (graphics/jumpgis). Then, graphics/jumpgis won't deinstall cleanly: you should write a pkg-deinstall script to put ${PREFIX}/bin/jumpgis back to its initial state after you have deinstalled jumpgis-postgis.
On Tue, 2004-08-17 at 07:14, Thierry Thomas wrote: > Then, graphics/jumpgis won't deinstall cleanly: you should > write a pkg-deinstall script to put ${PREFIX}/bin/jumpgis > back to its initial state after you have deinstalled > jumpgis-postgis. The following patch (against all prior stuff in this PR) does the trick. pkg-install edits the classpath by adding a line in the jumpgis startup script; pkg-deinstall removes that line when this port (jumpgis-postgis) is deinstalled. --- Makefile.orig Sat Oct 2 17:26:11 2004 +++ Makefile Sun Oct 3 00:19:07 2004 @@ -31,9 +31,12 @@ do-install: @${ECHO_MSG} "---> Installing JAR files" + ${MKDIR} ${TARGET_DIR}/lib/ext + ${CHMOD} 0755 ${TARGET_DIR}/lib/ext ${INSTALL_DATA} ${WRKSRC}/lib/ext/postgisdriver-1.1.0.jar ${TARGET_DIR}/lib/ext/ ${INSTALL_DATA} ${WRKSRC}/lib/ext/pg74jdbc3.jar ${TARGET_DIR}/lib/ - @${ECHO_MSG} "---> Fixing CLASSPATH in ${PREFIX}/bin/jumpgis" - [ -e ${PREFIX}/bin/jumpgis ] && ${GREP} 'CLASSPATH=.*pg74jdbc3.jar' ${PREFIX}/bin/jumpgis || ( ${REINPLACE_CMD} 's/CLASSPATH=.*/&:$$LIB\/pg74jdbc3.jar/g' ${PREFIX}/bin/jumpgis && ${RM} ${PREFIX}/bin/jumpgis.bak ) +post-install: + @${SETENV} PKG_PREFIX="${PREFIX}" ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL + .include <bsd.port.mk> --- /dev/null Sun Oct 3 00:44:00 2004 +++ pkg-install Sun Oct 3 00:12:23 2004 @@ -0,0 +1,11 @@ +#!/bin/sh +# $FreeBSD$ + +if [ x$2 != xPOST-INSTALL ]; then + exit +fi + +echo Fixing CLASSPATH in ${PKG_PREFIX}/bin/jumpgis + +sed -i '.bak' 's,CLASSPATH=.*,&\ +CLASSPATH=$CLASSPATH:$LIB/pg74jdbc3.jar,g' ${PKG_PREFIX}/bin/jumpgis && rm ${PKG_PREFIX}/bin/jumpgis.bak --- /dev/null Sun Oct 3 00:44:00 2004 +++ pkg-deinstall Sun Oct 3 00:21:24 2004 @@ -0,0 +1,12 @@ +#!/bin/sh +# $FreeBSD$ + +if [ x$2 != xDEINSTALL ]; then + exit +fi + +echo Restoring CLASSPATH in ${PKG_PREFIX}/bin/jumpgis + +grep -v '^CLASSPATH=$CLASSPATH:$LIB/pg74jdbc3.jar$' ${PKG_PREFIX}/bin/jumpgis > ${PKG_PREFIX}/bin/jumpgis.new +cat ${PKG_PREFIX}/bin/jumpgis.new > ${PKG_PREFIX}/bin/jumpgis +rm ${PKG_PREFIX}/bin/jumpgis.new
State Changed From-To: feedback->open Feedback received, thanks!
Argh, those patches got wrapped. They should be: --- Makefile.orig Sat Oct 2 17:26:11 2004 +++ Makefile Sun Oct 3 00:19:07 2004 @@ -31,9 +31,12 @@ do-install: @${ECHO_MSG} "---> Installing JAR files" + ${MKDIR} ${TARGET_DIR}/lib/ext + ${CHMOD} 0755 ${TARGET_DIR}/lib/ext ${INSTALL_DATA} ${WRKSRC}/lib/ext/postgisdriver-1.1.0.jar ${TARGET_DIR}/lib/ext/ ${INSTALL_DATA} ${WRKSRC}/lib/ext/pg74jdbc3.jar ${TARGET_DIR}/lib/ - @${ECHO_MSG} "---> Fixing CLASSPATH in ${PREFIX}/bin/jumpgis" - [ -e ${PREFIX}/bin/jumpgis ] && ${GREP} 'CLASSPATH=.*pg74jdbc3.jar' ${PREFIX}/bin/jumpgis || ( ${REINPLACE_CMD} 's/CLASSPATH=.*/&:$$LIB\/pg74jdbc3.jar/g' ${PREFIX}/bin/jumpgis && ${RM} ${PREFIX}/bin/jumpgis.bak ) +post-install: + @${SETENV} PKG_PREFIX="${PREFIX}" ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL + .include <bsd.port.mk> --- /dev/null Sun Oct 3 00:44:00 2004 +++ pkg-install Sun Oct 3 00:12:23 2004 @@ -0,0 +1,11 @@ +#!/bin/sh +# $FreeBSD$ + +if [ x$2 != xPOST-INSTALL ]; then + exit +fi + +echo Fixing CLASSPATH in ${PKG_PREFIX}/bin/jumpgis + +sed -i '.bak' 's,CLASSPATH=.*,&\ +CLASSPATH=$CLASSPATH:$LIB/pg74jdbc3.jar,g' ${PKG_PREFIX}/bin/jumpgis && rm ${PKG_PREFIX}/bin/jumpgis.bak --- /dev/null Sun Oct 3 00:44:00 2004 +++ pkg-deinstall Sun Oct 3 00:21:24 2004 @@ -0,0 +1,12 @@ +#!/bin/sh +# $FreeBSD$ + +if [ x$2 != xDEINSTALL ]; then + exit +fi + +echo Restoring CLASSPATH in ${PKG_PREFIX}/bin/jumpgis + +grep -v '^CLASSPATH=$CLASSPATH:$LIB/pg74jdbc3.jar$' ${PKG_PREFIX}/bin/jumpgis > ${PKG_PREFIX}/bin/jumpgis.new +cat ${PKG_PREFIX}/bin/jumpgis.new > ${PKG_PREFIX}/bin/jumpgis +rm ${PKG_PREFIX}/bin/jumpgis.new
Responsible Changed From-To: freebsd-ports-bugs->hq I'll handle this. BTW, could you please resubmit a shar of the latest version of the port?
New shar. Seems my PRs always end up looking as messy as my desk :) # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # jumpgis-postgis/Makefile # jumpgis-postgis/distinfo # jumpgis-postgis/pkg-deinstall # jumpgis-postgis/pkg-descr # jumpgis-postgis/pkg-install # jumpgis-postgis/pkg-plist # echo x - jumpgis-postgis/Makefile sed 's/^X//' >jumpgis-postgis/Makefile << 'END-of-jumpgis-postgis/Makefile' X# New ports collection makefile for: JUMP PostGIS plugin X# Date created: June 25 2004 X# Whom: Sam Lawrance <boris@brooknet.com.au> X# X# $FreeBSD$ X# X XPORTNAME= jumpgis-postgis XPORTVERSION= 1.1.0 XCATEGORIES= graphics databases java XMASTER_SITES= http://postgis.refractions.net/ XDISTNAME= postgisdriver-${PORTVERSION} XEXTRACT_SUFX= .zip X XMAINTAINER= boris@brooknet.com.au XCOMMENT= JUMP support for reading and writing a PostGIS database X XRUN_DEPENDS= jumpgis:${PORTSDIR}/graphics/jumpgis X XTARGET_DIR= ${PREFIX}/jumpgis XUSE_JAVA= yes XJAVA_VERSION= 1.3+ XUSE_ZIP= yes XUSE_REINPLACE= yes XNO_BUILD= yes X Xdo-extract: X @${MKDIR} ${WRKDIR} X @${MKDIR} ${WRKSRC} X @${UNZIP_CMD} -q ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} -d ${WRKSRC} X Xdo-install: X @${ECHO_MSG} "---> Installing JAR files" X ${MKDIR} ${TARGET_DIR}/lib/ext X ${CHMOD} 0755 ${TARGET_DIR}/lib/ext X ${INSTALL_DATA} ${WRKSRC}/lib/ext/postgisdriver-1.1.0.jar ${TARGET_DIR}/lib/ext/ X ${INSTALL_DATA} ${WRKSRC}/lib/ext/pg74jdbc3.jar ${TARGET_DIR}/lib/ X Xpost-install: X @${SETENV} PKG_PREFIX="${PREFIX}" ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL X X.include <bsd.port.mk> END-of-jumpgis-postgis/Makefile echo x - jumpgis-postgis/distinfo sed 's/^X//' >jumpgis-postgis/distinfo << 'END-of-jumpgis-postgis/distinfo' XMD5 (postgisdriver-1.1.0.zip) = cd5e5e588e87f25dee1043c8cd9912ce XSIZE (postgisdriver-1.1.0.zip) = 239876 END-of-jumpgis-postgis/distinfo echo x - jumpgis-postgis/pkg-deinstall sed 's/^X//' >jumpgis-postgis/pkg-deinstall << 'END-of-jumpgis-postgis/pkg-deinstall' X#!/bin/sh X# $FreeBSD$ X Xif [ x$2 != xDEINSTALL ]; then X exit Xfi X Xecho Restoring CLASSPATH in ${PKG_PREFIX}/bin/jumpgis X Xgrep -v '^CLASSPATH=$CLASSPATH:$LIB/pg74jdbc3.jar$' ${PKG_PREFIX}/bin/jumpgis > ${PKG_PREFIX}/bin/jumpgis.new Xcat ${PKG_PREFIX}/bin/jumpgis.new > ${PKG_PREFIX}/bin/jumpgis Xrm ${PKG_PREFIX}/bin/jumpgis.new X#!/bin/sh X# $FreeBSD$ X Xif [ x$2 != xDEINSTALL ]; then X exit Xfi X Xecho Restoring CLASSPATH in ${PKG_PREFIX}/bin/jumpgis X Xgrep -v '^CLASSPATH=$CLASSPATH:$LIB/pg74jdbc3.jar$' ${PKG_PREFIX}/bin/jumpgis > ${PKG_PREFIX}/bin/jumpgis.new Xcat ${PKG_PREFIX}/bin/jumpgis.new > ${PKG_PREFIX}/bin/jumpgis Xrm ${PKG_PREFIX}/bin/jumpgis.new END-of-jumpgis-postgis/pkg-deinstall echo x - jumpgis-postgis/pkg-descr sed 's/^X//' >jumpgis-postgis/pkg-descr << 'END-of-jumpgis-postgis/pkg-descr' XThe JUMP PostGIS driver plugin allows reading from and writing to a XPostGIS database. X XWWW: http://www.jump-project.org/ END-of-jumpgis-postgis/pkg-descr echo x - jumpgis-postgis/pkg-install sed 's/^X//' >jumpgis-postgis/pkg-install << 'END-of-jumpgis-postgis/pkg-install' X#!/bin/sh X# $FreeBSD$ X Xif [ x$2 != xPOST-INSTALL ]; then X exit Xfi X Xecho Fixing CLASSPATH in ${PKG_PREFIX}/bin/jumpgis X Xsed -i '.bak' 's,CLASSPATH=.*,&\ XCLASSPATH=$CLASSPATH:$LIB/pg74jdbc3.jar,g' ${PKG_PREFIX}/bin/jumpgis && rm ${PKG_PREFIX}/bin/jumpgis.bak X#!/bin/sh X# $FreeBSD$ X Xif [ x$2 != xPOST-INSTALL ]; then X exit Xfi X Xecho Fixing CLASSPATH in ${PKG_PREFIX}/bin/jumpgis X Xsed -i '.bak' 's,CLASSPATH=.*,&\ XCLASSPATH=$CLASSPATH:$LIB/pg74jdbc3.jar,g' ${PKG_PREFIX}/bin/jumpgis && rm ${PKG_PREFIX}/bin/jumpgis.bak END-of-jumpgis-postgis/pkg-install echo x - jumpgis-postgis/pkg-plist sed 's/^X//' >jumpgis-postgis/pkg-plist << 'END-of-jumpgis-postgis/pkg-plist' Xjumpgis/lib/ext/postgisdriver-1.1.0.jar Xjumpgis/lib/pg74jdbc3.jar END-of-jumpgis-postgis/pkg-plist exit
State Changed From-To: open->closed Commited with some modifications: - Use NO_WRKSUBDIR rather than using a custom do-extract rule - Removed unneeded EXTRACT_SUFFIX (USE_ZIP is self-sufficient) - Added some "" in pkg-[de]install scripts Thanks for your contribution.