aboutsummaryrefslogtreecommitdiff
path: root/devel/ocaml-camljava
diff options
context:
space:
mode:
authorIon-Mihai Tetcu <itetcu@FreeBSD.org>2006-08-04 15:02:57 +0000
committerIon-Mihai Tetcu <itetcu@FreeBSD.org>2006-08-04 15:02:57 +0000
commit04eac202d3d75207b7e793b7a3d2c5279daefa08 (patch)
tree728b28f18dbc226e5cc69f9901959b1893ce9568 /devel/ocaml-camljava
parenteb278d67b2429da67aadb7fb6c4f49e2f78323ef (diff)
downloadports-04eac202d3d75207b7e793b7a3d2c5279daefa08.tar.gz
ports-04eac202d3d75207b7e793b7a3d2c5279daefa08.zip
Notes
Diffstat (limited to 'devel/ocaml-camljava')
-rw-r--r--devel/ocaml-camljava/Makefile49
-rw-r--r--devel/ocaml-camljava/distinfo3
-rw-r--r--devel/ocaml-camljava/pkg-descr19
-rw-r--r--devel/ocaml-camljava/pkg-plist8
4 files changed, 79 insertions, 0 deletions
diff --git a/devel/ocaml-camljava/Makefile b/devel/ocaml-camljava/Makefile
new file mode 100644
index 000000000000..800da4d3a516
--- /dev/null
+++ b/devel/ocaml-camljava/Makefile
@@ -0,0 +1,49 @@
+# New ports collection makefile for: camljava
+# Date created: 2006-07-31
+# Whom: Stanislav Sedov <ssedov@mbsd.msk.ru>
+#
+# $MBSDlabs$
+# $FreeBSD$
+#
+
+PORTNAME= camljava
+PORTVERSION= 0.3
+CATEGORIES= devel java
+MASTER_SITES= http://caml.inria.fr/distrib/bazar-ocaml/
+PKGNAMEPREFIX= ocaml-
+
+MAINTAINER= ssedov@mbsd.msk.ru
+COMMENT= An OCaml-Java library interface
+
+USE_OCAML= yes
+USE_JAVA= yes
+JAVA_VERSION= 1.4+
+
+.include <bsd.port.pre.mk>
+.include "${PORTSDIR}/lang/ocaml/bsd.ocaml.mk"
+
+post-extract:
+ @${REINPLACE_CMD} -e "s,^\(JAVAC=\).*,\1${JAVAC},g" \
+ -e "s,^\(JDKHOME=\).*,\1${JAVA_HOME},g" \
+ -e "s,include/linux,include/freebsd,g" \
+ -e "s,^CFLAGS=.*,#\&,g" \
+ -e "s,^\(CC=\).*,#\&,g" \
+ -e "s,i386,${ARCH},g" \
+ ${WRKSRC}/Makefile.config
+
+ ${REINPLACE_CMD} \
+ -e "s,^\(OCAMLLIB=\).*,\1${PREFIX}/lib/ocaml,g" \
+ -e "/^install/,/^$$/s,\([ \t]*\)cp,\1${INSTALL_DATA},g" \
+ ${WRKSRC}/lib/Makefile
+
+pre-install:
+.if !exists(${PREFIX}/lib/ocaml)
+ ${MKDIR} ${PREFIX}/lib/ocaml
+ @${ECHO_CMD} "@dirrm lib/ocaml" >> ${TMPPLIST}
+.endif
+
+test:
+ @${ECHO_CMD} "Testing IDL library"
+ cd ${WRKSRC}/test && ${SETENV} ${MAKE_ENV} ${MAKE} all
+
+.include <bsd.port.post.mk>
diff --git a/devel/ocaml-camljava/distinfo b/devel/ocaml-camljava/distinfo
new file mode 100644
index 000000000000..b772f3b437a4
--- /dev/null
+++ b/devel/ocaml-camljava/distinfo
@@ -0,0 +1,3 @@
+MD5 (camljava-0.3.tar.gz) = 7e119bbb1cdea6bba327bd9cceb6751c
+SHA256 (camljava-0.3.tar.gz) = d0652df5d5f4ccbbedd31a32583976fbe281bc581654784cc2618fde02c711c4
+SIZE (camljava-0.3.tar.gz) = 16049
diff --git a/devel/ocaml-camljava/pkg-descr b/devel/ocaml-camljava/pkg-descr
new file mode 100644
index 000000000000..f1bb9c5e47b3
--- /dev/null
+++ b/devel/ocaml-camljava/pkg-descr
@@ -0,0 +1,19 @@
+This is a very preliminary release of CamlJava, an OCaml/Java
+interface based on the following schema:
+
+ Caml/C interface JNI (Java Native Interface)
+ Caml <------------------> C <-----------------------------> Java
+
+Currently, CamlJava provides a low-level, weakly-typed OCaml interface
+very similar to the JNI. Java object references are mapped to an
+abstract type, and various JNI-like operations are provided to allow
+Java method invocation, field access, and more. A basic callback
+facility (allowing Java code to invoke methods on Caml objects) is
+also provided, although some stub Java code must be written by hand.
+
+In the future, a higher-level, strongly-typed interface will be
+provided, whereas Java classes are mapped directly to Caml classes.
+This raises fairly delicate type mapping issues, though, so don't hold
+your breath.
+
+WWW: http://caml.inria.fr/
diff --git a/devel/ocaml-camljava/pkg-plist b/devel/ocaml-camljava/pkg-plist
new file mode 100644
index 000000000000..ba1ea92ab86d
--- /dev/null
+++ b/devel/ocaml-camljava/pkg-plist
@@ -0,0 +1,8 @@
+lib/ocaml/camljava/jni.cma
+lib/ocaml/camljava/jni.cmi
+lib/ocaml/camljava/jni.cmxa
+lib/ocaml/camljava/jni.a
+lib/ocaml/camljava/libcamljni.a
+lib/ocaml/camljava/jni.mli
+lib/ocaml/camljava/camljava.jar
+@dirrm lib/ocaml/camljava