diff options
author | itetcu <itetcu@FreeBSD.org> | 2006-09-04 23:27:12 +0800 |
---|---|---|
committer | itetcu <itetcu@FreeBSD.org> | 2006-09-04 23:27:12 +0800 |
commit | 972e3a3c57469f23f009079a771cb02d4cb6c36c (patch) | |
tree | 562d753ebec0adaa4e619660d8ea654e90d2b424 /lang/ocaml-camlidl | |
parent | 94b648e13320bb5278fb53425ca1bfade16dfb52 (diff) | |
download | freebsd-ports-gnome-972e3a3c57469f23f009079a771cb02d4cb6c36c.tar.gz freebsd-ports-gnome-972e3a3c57469f23f009079a771cb02d4cb6c36c.tar.zst freebsd-ports-gnome-972e3a3c57469f23f009079a771cb02d4cb6c36c.zip |
CamlIDL is a stub code generator and COM binding for Objective Caml.
CamlIDL comprises two parts:
* A stub code generator that generates the C stub code required for the
Caml/C interface, based on an MIDL specification. (MIDL stands for Microsoft's
Interface Description Language; it looks like C header files with some extras
annotations, plus a notion of object interfaces that look like C++ classess
without inheritance.)
* A (currently small) library of functions and tools to import COM
components in Caml applications, and export Caml code as COM components.
WWW: http://caml.inria.fr/pub/old_caml_site/camlidl/
PR: ports/101100
Submitted by: Stanislav Sedov <ssedov at mbsd.msk.ru>
Diffstat (limited to 'lang/ocaml-camlidl')
-rw-r--r-- | lang/ocaml-camlidl/Makefile | 66 | ||||
-rw-r--r-- | lang/ocaml-camlidl/distinfo | 6 | ||||
-rw-r--r-- | lang/ocaml-camlidl/pkg-descr | 14 | ||||
-rw-r--r-- | lang/ocaml-camlidl/pkg-plist | 24 |
4 files changed, 110 insertions, 0 deletions
diff --git a/lang/ocaml-camlidl/Makefile b/lang/ocaml-camlidl/Makefile new file mode 100644 index 000000000000..898d973b0cc6 --- /dev/null +++ b/lang/ocaml-camlidl/Makefile @@ -0,0 +1,66 @@ +# New ports collection makefile for: camlidl +# Date created: 2006-07-31 +# Whom: Stanislav Sedov <ssedov@mbsd.msk.ru> +# +# $MBSDlabs$ +# $FreeBSD$ +# + +PORTNAME= camlidl +PORTVERSION= 1.05 +CATEGORIES= lang +MASTER_SITES= http://caml.inria.fr/distrib/bazar-ocaml/ +PKGNAMEPREFIX= ocaml- +DISTFILES= ${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX} \ + ${PORTNAME}-${PORTVERSION}.doc.html.tar.gz +EXTRACT_ONLY= ${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX} + +MAINTAINER= ssedov@mbsd.msk.ru +COMMENT= A stub code generator for using C/C++ libraries from ocaml + +USE_OCAML= yes +USE_OCAMLWASH= yes + +DOCSDIR= ${PREFIX}/share/doc/ocaml/${PORTNAME} + +.include <bsd.port.pre.mk> +.include "${PORTSDIR}/lang/ocaml/bsd.ocaml.mk" + +post-extract: + @${REINPLACE_CMD} -e "s,^\(OCAMLLIB=\).*,\1${PREFIX}/lib/ocaml,g" \ + -e "s,^\(BINDIR=\).*,\1${PREFIX}/bin,g" \ + -e "s,^CFLAGS=.*,#\&,g" \ + -e "s,^\(CPP=\).*,\1/usr/bin/cpp,g" \ + ${WRKSRC}/config/Makefile.unix + + @${REINPLACE_CMD} -e \ + "/^install/,/^$$/s,\([ \t]*\)cp,\1${INSTALL_SCRIPT},g" \ + ${WRKSRC}/compiler/Makefile + + @${REINPLACE_CMD} -e \ + "/^install/,/^$$/s,\([ \t]*\)cp,\1${INSTALL_DATA},g" \ + ${WRKSRC}/lib/Makefile ${WRKSRC}/runtime/Makefile.unix + + @${LN} -sf ${WRKSRC}/config/Makefile.unix ${WRKSRC}/config/Makefile + +pre-install: +.if !exists(${PREFIX}/lib/ocaml/caml) + ${MKDIR} ${PREFIX}/lib/ocaml/caml +.endif + +post-install: +.if !defined(NOPORTDOCS) + ${MKDIR} ${DOCSDIR} + ${TAR} -C ${DOCSDIR} -xf \ + ${_DISTDIR}/${PORTNAME}-${PORTVERSION}.doc.html.tar.gz + ${CHOWN} -R ${SHAREOWN}:${SHAREGRP} ${DOCSDIR} + ${FIND} ${DOCSDIR}/ -type f -exec ${CHMOD} ${SHAREMODE} {} \; +.endif + +test: + @${ECHO_CMD} "Testing IDL library" + @${REINPLACE_CMD} -e "s,^\(CCPP=\).*,\1${CXX},g" \ + ${WRKSRC}/tests/Makefile + cd ${WRKSRC}/tests && ${SETENV} ${MAKE_ENV} ${MAKE} all + +.include <bsd.port.post.mk> diff --git a/lang/ocaml-camlidl/distinfo b/lang/ocaml-camlidl/distinfo new file mode 100644 index 000000000000..8c66d6ffa23f --- /dev/null +++ b/lang/ocaml-camlidl/distinfo @@ -0,0 +1,6 @@ +MD5 (camlidl-1.05.tar.gz) = 4cfb863bc3cbdc1af2502042c45cc675 +SHA256 (camlidl-1.05.tar.gz) = 857ed5bd3b2f99c62813070e1a5b4b6375e837c6815f4ad956baeb6f8c660311 +SIZE (camlidl-1.05.tar.gz) = 100640 +MD5 (camlidl-1.05.doc.html.tar.gz) = b7c7dad3ba62ddcc0f687bdebe295126 +SHA256 (camlidl-1.05.doc.html.tar.gz) = 00ac7822ec73cb3cb5cb23b5d34879436366d979887eb3a312e1adcae8c1c32c +SIZE (camlidl-1.05.doc.html.tar.gz) = 45945 diff --git a/lang/ocaml-camlidl/pkg-descr b/lang/ocaml-camlidl/pkg-descr new file mode 100644 index 000000000000..59b380c6fd03 --- /dev/null +++ b/lang/ocaml-camlidl/pkg-descr @@ -0,0 +1,14 @@ +CamlIDL is a stub code generator and COM binding for Objective Caml. + +CamlIDL comprises two parts: + + * A stub code generator that generates the C stub code required for the +Caml/C interface, based on an MIDL specification. (MIDL stands for Microsoft's +Interface Description Language; it looks like C header files with some extras +annotations, plus a notion of object interfaces that look like C++ classess +without inheritance.) + + * A (currently small) library of functions and tools to import COM +components in Caml applications, and export Caml code as COM components. + +WWW: http://caml.inria.fr/pub/old_caml_site/camlidl/ diff --git a/lang/ocaml-camlidl/pkg-plist b/lang/ocaml-camlidl/pkg-plist new file mode 100644 index 000000000000..40640ce90cdf --- /dev/null +++ b/lang/ocaml-camlidl/pkg-plist @@ -0,0 +1,24 @@ +bin/camlidl +lib/ocaml/caml/camlidlruntime.h +lib/ocaml/com.a +lib/ocaml/com.cma +lib/ocaml/com.cmi +lib/ocaml/com.cmxa +lib/ocaml/libcamlidl.a +%%PORTDOCS%%%%DOCSDIR%%/htmlman/contents_motif.gif +%%PORTDOCS%%%%DOCSDIR%%/htmlman/index.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/main.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/main001.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/main002.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/main003.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/main004.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/main005.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/main006.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/main007.html +%%PORTDOCS%%%%DOCSDIR%%/htmlman/next_motif.gif +%%PORTDOCS%%%%DOCSDIR%%/htmlman/previous_motif.gif +%%PORTDOCS%%@dirrm %%DOCSDIR%%/htmlman +%%PORTDOCS%%@dirrm %%DOCSDIR%% +%%PORTDOCS%%@dirrmtry share/doc/ocaml +@dirrmtry lib/ocaml/caml +@dirrmtry lib/ocaml |