Bug 70374 - New port: textproc/redland-bindings - Language bindings for the redland rdf library'
Summary: New port: textproc/redland-bindings - Language bindings for the redland rdf l...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-08-12 19:00 UTC by Russell Cloran
Modified: 2004-12-23 07:49 UTC (History)
0 users

See Also:


Attachments
file.shar (7.26 KB, text/plain)
2004-08-12 19:00 UTC, Russell Cloran
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Russell Cloran 2004-08-12 19:00:41 UTC
The Redland RDF parser package (textproc/redland) recently forked into two
packages -- one for the core library, and another for the bindings for
various languages. This port is for the language bindings for redland.

The textproc/redland port may itself have to be updated/changed, as
redland-bindings requires librdf.la to build the Java component (possibly
Ruby or TCL too, unable to test), and this is not installed by the
textproc/redland port currently. I will work on a new redland port soon.

The OPTIONS part of this port could probably be improved by somebody with
more knowledge on the subject than I (this is my first attempt at writing a
port), but I see that there are fairly recent discussions on the mailing
lists regarding using OPTIONS together with WITH_ -> USE_

I will be actively using this software on FreeBSD for a number of years to
come, and will happily act as the port maintainer.

Russell
Comment 1 russell 2004-08-12 21:47:51 UTC
Hi,

I kinda botched that one, and put up a non-working port. I don't really
know what to do about the .la installed. The suggestion was to look at
http://www.freebsd.org/gnome/docs/porting.html but I don't see anything
about getting rid of the .la. I guess for Java stuff I should add a
USE_LIBTOOL_VER=15.

# 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:
#
#	redland-bindings
#	redland-bindings/pkg-descr
#	redland-bindings/Makefile
#	redland-bindings/pkg-plist
#	redland-bindings/distinfo
#	redland-bindings/files
#	redland-bindings/files/patch-configure-java
#
echo c - redland-bindings
mkdir -p redland-bindings > /dev/null 2>&1
echo x - redland-bindings/pkg-descr
sed 's/^X//' >redland-bindings/pkg-descr <<
'END-of-redland-bindings/pkg-descr'
XRedland is a library that provides a high-level interface for RDF
allowing
Xthe model to be stored, queried and manipulated. This package provides
a
Xnumber of bindings for various languages for the Redland library.
X
XWWW: http://www.redland.opensource.ac.uk/bindings/
X
X- Russell Cloran
Xrussell@rucus.ru.ac.za
END-of-redland-bindings/pkg-descr
echo x - redland-bindings/Makefile
sed 's/^X//' >redland-bindings/Makefile <<
'END-of-redland-bindings/Makefile'
X# New ports collection makefile for:	redland-bindings
X# Date created:		2004-08-10
X# Whom:			Russell Cloran <russell@rucus.ru.ac.za>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	redland-bindings
XPORTVERSION=	0.9.18.1
XCATEGORIES=	textproc
XMASTER_SITES=	http://www.redland.opensource.ac.uk/dist/snapshots/source/ \
X		${MASTER_SITE_SOURCEFORGE}
X
XMAINTAINER=	russell@rucus.ru.ac.za
XCOMMENT=	Language bindings for the Redland package
X
X#OPTIONS=	JAVA "Add Java bindings" off \
X#		PERL "Add Perl bindings" off \
X#		PHP "Add PHP bindings" off \
X#		PYTHON "Add Python bindings" off \
X#		RUBY "Add Ruby bindings" off \
X#		TCL "Add TCL bindings" off
XLIB_DEPENDS=	rdf.0:${PORTSDIR}/textproc/redland
X.if defined(WITH_JAVA)
XBUILD_DEPENDS=	${LOCALBASE}/lib/librdf.la:${PORTSDIR}/textproc/redland
X.endif
X
X.if defined(WITH_JAVA)
XUSE_JAVA=	1.3+
XCONFIGURE_ARGS+=	--with-java --with-jdk=${JAVA_HOME}
XPLIST_SUB+=	WITH_JAVA=""
X.else
XPLIST_SUB+=	WITH_JAVA="@comment "
X.endif
X.if defined(WITH_PERL)
XUSE_PERL5=	yes
XCONFIGURE_ARGS+=	--with-perl
XPLIST_SUB+=	WITH_PERL=""
XMAN3=	RDF::Redland.3 \
X	RDF::Redland::Iterator.3 \
X	RDF::Redland::Model.3 \
X	RDF::Redland::Node.3 \
X	RDF::Redland::Parser.3 \
X	RDF::Redland::Query.3 \
X	RDF::Redland::QueryResults.3 \
X	RDF::Redland::RSS.3 \
X	RDF::Redland::Serializer.3 \
X	RDF::Redland::Statement.3 \
X	RDF::Redland::Storage.3 \
X	RDF::Redland::Stream.3 \
X	RDF::Redland::URI.3
X.else
XPLIST_SUB+=	WITH_PERL="@comment "
X.endif
X.if defined(WITH_PHP)
XUSE_PHP=	yes
XUSE_PHP_BUILD=	yes
XCONFIGURE_ARGS+=	--with-php
XPLIST_SUB+=	WITH_PHP=""
X.else
XPLIST_SUB+=	WITH_PHP="@comment "
X.endif
X.if defined(WITH_PYTHON)
XUSE_PYTHON=	yes
XCONFIGURE_ARGS+=	--with-python
XPLIST_SUB+=	WITH_PYTHON=""
X.else
XPLIST_SUB+=	WITH_PYTHON="@comment "
X.endif
X.if defined(WITH_RUBY)
XUSE_RUBY=	yes
XCONFIGURE_ARGS+=	--with-ruby
XPLIST_SUB+=	WITH_RUBY=""
X.else
XPLIST_SUB+=	WITH_RUBY="@comment "
X.endif
X.if defined(WITH_TCL)
X.if defined(WITH_TCL83)
XTCL_SHORT_V=	83
XTCL_LONG_V=	8.3
X.else
XTCL_SHORT_V=	84
XTCL_LONG_V=	8.4
X.endif
XPLIST_SUB+=	WITH_TCL=""
XPLIST_SUB+=	TCL_DIR="lib/tcl/${TCL_LONG_V}"
XCONFIGURE_ARGS+=	--with-tcltk=${LOCALBASE}/bin/tclsh${TCL_LONG_V}
XLIB_DEPENDS+=	tcl${TCL_SHORT_V}:${PORTSDIR}/lang/tcl${TCL_SHORT_V}
X.else
XPLIST_SUB+=	WITH_TCL="@comment "
X.endif
X
XGNU_CONFIGURE=	yes
X
Xpre-everything::
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "**********************************************"
X	@${ECHO_MSG} "The following make variables can be set to"
X	@${ECHO_MSG} "enable various languages"
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "WITH_JAVA   - Java bindings"
X	@${ECHO_MSG} "WITH_PERL   - Perl module"
X	@${ECHO_MSG} "WITH_PHP    - PHP extension"
X	@${ECHO_MSG} "WITH_PYTHON - Python extension"
X	@${ECHO_MSG} "WITH_RUBY   - Ruby bindings"
X	@${ECHO_MSG} "WITH_TCL    - TCL bindings"
X	@${ECHO_MSG} "**********************************************"
X	@${ECHO_MSG} ""
X
Xpost-configure::
X	@${TOUCH} ${WRKSRC}/java/core_wrap.c
X	@${TOUCH} ${WRKSRC}/java/org/librdf/redland/core.java
X	@${TOUCH} ${WRKSRC}/java/org/librdf/redland/core.java.in
X	@${TOUCH} ${WRKSRC}/perl/CORE_wrap.c
X	@${TOUCH} ${WRKSRC}/perl/lib/RDF/Redland/CORE.pm
X	@${TOUCH} ${WRKSRC}/perl/lib/RDF/Redland/CORE.pm
X	@${TOUCH} ${WRKSRC}/php/redland_wrap.c
X	@${TOUCH} ${WRKSRC}/python/Redland_wrap.c
X	@${TOUCH} ${WRKSRC}/ruby/redland_wrap.c
X	@${TOUCH} ${WRKSRC}/tcl/Redland_wrap.c
X
X.include <bsd.port.mk>
END-of-redland-bindings/Makefile
echo x - redland-bindings/pkg-plist
sed 's/^X//' >redland-bindings/pkg-plist <<
'END-of-redland-bindings/pkg-plist'
X@comment $FreeBSD$
X%%WITH_JAVA%%lib/java/librdf-java.a
X@comment %%WITH_JAVA%%lib/java/librdf-java.la
X%%WITH_JAVA%%lib/java/librdf-java.so
X%%WITH_JAVA%%lib/java/librdf-java.so.0
X%%WITH_JAVA%%share/java/librdf-java.jar
X%%WITH_JAVA%%@dirrm lib/java
X%%WITH_JAVA%%@dirrm share/java
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/CORE.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Iterator.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Model.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Node.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Parser.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Query.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/QueryResults.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/RSS.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Serializer.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Statement.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Storage.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/Stream.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/RDF/Redland/URI.pm
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/RDF/Redland/CORE.bs
X%%WITH_PERL%%%%SITE_PERL%%/%%PERL_ARCH%%/auto/RDF/Redland/CORE.so
X%%WITH_PHP%%%%PHP_EXT_DIR%%/redland.so
X%%WITH_PHP%%@dirrm %%PHP_EXT_DIR%%
X%%WITH_PYTHON%%%%PYTHON_SITELIBDIR%%/Redland.so
X%%WITH_PYTHON%%%%PYTHON_SITELIBDIR%%/RDF.py
X%%WITH_PYTHON%%@dirrm %%PYTHON_SITELIBDIR%%
X%%WITH_PYTHON%%@dirrm %%PYTHON_SITELIBDIR%%
X%%WITH_RUBY%%%%RUBY_SITEARCHLIBDIR%%/redland.so
X%%WITH_TCL%%%%TCL_DIR%%/Redland.so
END-of-redland-bindings/pkg-plist
echo x - redland-bindings/distinfo
sed 's/^X//' >redland-bindings/distinfo <<
'END-of-redland-bindings/distinfo'
XMD5 (redland-bindings-0.9.18.1.tar.gz) =
19f99c04da51705e8b1db5c969151af3
XSIZE (redland-bindings-0.9.18.1.tar.gz) = 650845
END-of-redland-bindings/distinfo
echo c - redland-bindings/files
mkdir -p redland-bindings/files > /dev/null 2>&1
echo x - redland-bindings/files/patch-configure-java
sed 's/^X//' >redland-bindings/files/patch-configure-java <<
'END-of-redland-bindings/files/patch-configure-java'
X--- configure~	2004-08-11 09:03:29.649228648 +0200
X+++ configure	2004-08-11 09:03:29.655227736 +0200
X@@ -20463,11 +20463,11 @@
X       done
X     done
X   else
X-    jdkinc=$jdkdir/include
X+    jdkinc=$jdk/include
X   fi
X 
X   if test "X$jdk" != X -a -r $jdkinc/jni.h; then
X-    inc2=`find $jdkinc -type d | grep -v "$jdkinc\$" | head -1`
X+    inc2=`find $jdkinc -type d | grep -v "$jdkinc\$" | head -n 1`
X     JDK_INCLUDES="-I$jdkinc"
X     if test -r $inc2/jni_md.h; then
X       JDK_INCLUDES="$JDK_INCLUDES -I$inc2"
END-of-redland-bindings/files/patch-configure-java
exit
Comment 2 Herve Quiroz freebsd_committer freebsd_triage 2004-08-16 15:18:40 UTC
Russell,

With bsd.java.mk 2.0, the correct syntax for Java support in your port
would be:

USE_JAVA=	yes
JAVA_VERSION=	1.3+

You may find documentation on the subject in [1] or [2]. Feel free to
ask me if you have any further question.

Herve

[1] Updating Java ports to bsd.java.mk 2.0
http://www.freebsd.org/cgi/query-pr.cgi?pr=70219

[2] Porter's handbook - Using Java
http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/using-java.html
Comment 3 Edwin Groothuis freebsd_committer freebsd_triage 2004-12-23 07:49:33 UTC
State Changed
From-To: open->closed

Committed, thanks!