summaryrefslogtreecommitdiff
path: root/lang/ocaml-camlidl
diff options
context:
space:
mode:
authorAlexey Dokuchaev <danfe@FreeBSD.org>2018-09-27 15:44:56 +0000
committerAlexey Dokuchaev <danfe@FreeBSD.org>2018-09-27 15:44:56 +0000
commit721bc9fa4882ad41197425f692965bee36d2806d (patch)
treea57f68055c977e84e90103162138b1df69d59b25 /lang/ocaml-camlidl
parentx11-wm/xmonad: Update to 0.14. (diff)
- Resurrect and stagify `lang/ocaml-camlidl' port
- Fix spelling in the COMMENT and add LICENSE knobs - Pass maintainership to the submitter PR: 231568 Submitted by: Greg Kennedy
Notes
Notes: svn path=/head/; revision=480802
Diffstat (limited to 'lang/ocaml-camlidl')
-rw-r--r--lang/ocaml-camlidl/Makefile62
-rw-r--r--lang/ocaml-camlidl/distinfo5
-rw-r--r--lang/ocaml-camlidl/pkg-descr14
-rw-r--r--lang/ocaml-camlidl/pkg-plist19
4 files changed, 100 insertions, 0 deletions
diff --git a/lang/ocaml-camlidl/Makefile b/lang/ocaml-camlidl/Makefile
new file mode 100644
index 000000000000..ef6756446a63
--- /dev/null
+++ b/lang/ocaml-camlidl/Makefile
@@ -0,0 +1,62 @@
+# Created by: Stanislav Sedov <ssedov@mbsd.msk.ru>
+# $FreeBSD$
+
+PORTNAME= camlidl
+PORTVERSION= 1.05
+PORTREVISION= 2
+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= kennedy.greg@gmail.com
+COMMENT= Stub code generator for using C/C++ libraries from OCaml
+
+LICENSE= LGPL20 LGPL21
+LICENSE_COMB= dual
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USE_OCAML= yes
+
+MAKE_JOBS_UNSAFE= yes
+
+DOCSDIR= ${PREFIX}/share/doc/ocaml/${PORTNAME}
+
+OPTIONS_DEFINE= DOCS
+
+post-extract:
+ @${REINPLACE_CMD} -e "s,^\(OCAMLLIB=\).*,\1${STAGEDIR}${PREFIX}/lib/ocaml,g" \
+ -e "s,^\(BINDIR=\).*,\1${STAGEDIR}${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:
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/ocaml/caml
+
+post-install-DOCS-on:
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${GZCAT} ${_DISTDIR}/${PORTNAME}-${PORTVERSION}.doc.html.tar.gz \
+ | ${TAR} -C ${STAGEDIR}${DOCSDIR} -xf -
+ ${CHOWN} -R ${SHAREOWN}:${SHAREGRP} ${STAGEDIR}${DOCSDIR}
+ ${FIND} ${STAGEDIR}${DOCSDIR} -type f -exec ${CHMOD} ${SHAREMODE} {} \;
+
+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.mk>
diff --git a/lang/ocaml-camlidl/distinfo b/lang/ocaml-camlidl/distinfo
new file mode 100644
index 000000000000..10cc698f9e73
--- /dev/null
+++ b/lang/ocaml-camlidl/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1089725420
+SHA256 (camlidl-1.05.tar.gz) = 857ed5bd3b2f99c62813070e1a5b4b6375e837c6815f4ad956baeb6f8c660311
+SIZE (camlidl-1.05.tar.gz) = 100640
+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..5bd39063797a
--- /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..0fa54d28b20c
--- /dev/null
+++ b/lang/ocaml-camlidl/pkg-plist
@@ -0,0 +1,19 @@
+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