aboutsummaryrefslogtreecommitdiffstats
path: root/www
diff options
context:
space:
mode:
authorJohn Marino <marino@FreeBSD.org>2014-03-28 01:39:30 +0800
committerJohn Marino <marino@FreeBSD.org>2014-03-28 01:39:30 +0800
commit33ae985c0efe8adac9fb7c2d78c96ee82791fc55 (patch)
treed53b444f48b996b313230b830ff258b2c5aac596 /www
parent8e613c06bfbc05f50924fc3aa413a29959616ed5 (diff)
downloadfreebsd-ports-gnome-33ae985c0efe8adac9fb7c2d78c96ee82791fc55.tar.gz
freebsd-ports-gnome-33ae985c0efe8adac9fb7c2d78c96ee82791fc55.tar.zst
freebsd-ports-gnome-33ae985c0efe8adac9fb7c2d78c96ee82791fc55.zip
Add new Ocaml port: www/eliom
The initial version submitted in the PR was augmented by later changes seen in pkgsrc where the counterpart is maintained by the submitter. Note that due to a problem with bsd.ocaml.mk, the USE_OCAML_LDCONFIG option had to be disabled. This could be changed when the problem is resolved. == Eliom is a framework for programming web sites and client/server web applications. It uses very new concepts making programming very different from all other web programming tools, and allowing to write a complex web site in very few lines of code. WWW: http://ocsigen.org/eliom/ == PR: ports/176165 Submitted by: Jaap Boender Maintainer: Jaap Boender Stage support: Taken from pkgsrc
Diffstat (limited to 'www')
-rw-r--r--www/Makefile1
-rw-r--r--www/eliom/Makefile52
-rw-r--r--www/eliom/distinfo2
-rw-r--r--www/eliom/files/patch-src_Makefile17
-rw-r--r--www/eliom/files/patch-src_client15
-rw-r--r--www/eliom/files/patch-src_client_Makefile.filelist17
-rw-r--r--www/eliom/pkg-descr6
-rw-r--r--www/eliom/pkg-plist24
8 files changed, 134 insertions, 0 deletions
diff --git a/www/Makefile b/www/Makefile
index bf222f960c20..7a0b74b549a9 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -182,6 +182,7 @@
SUBDIR += egueb
SUBDIR += elgg
SUBDIR += elinks
+ SUBDIR += eliom
SUBDIR += elog
SUBDIR += emacs-w3m
SUBDIR += emacs-w3m-emacs21
diff --git a/www/eliom/Makefile b/www/eliom/Makefile
new file mode 100644
index 000000000000..b254fe45c2b4
--- /dev/null
+++ b/www/eliom/Makefile
@@ -0,0 +1,52 @@
+# Created by: Jaap Boender <jaapb@kerguelen.org>
+# $FreeBSD$
+
+PORTNAME= eliom
+PORTVERSION= 3.0.3
+CATEGORIES= www
+MASTER_SITES= http://ocsigen.org/download/
+
+MAINTAINER= jaapb@kerguelen.org
+COMMENT= Ocaml dynamic webpage generation library
+
+LICENSE= LGPL21_SSLEX
+LICENSE_NAME= Lesser GPL 2.1 with a special OpenSSL exception clause
+LICENSE_FILE= ${WRKSRC}/COPYING
+LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
+
+BUILD_DEPENDS= ${PORTREQS}
+RUN_DEPENDS= ${PORTREQS}
+
+DOCSDIR= ${PREFIX}/share/doc/ocaml/${PORTNAME}
+SA_DIR= ${PREFIX}/${OCAML_SITELIBDIR}
+
+# As of 27 March 2014, USE_OCAML_LDCONFIG and USE_OCAMLFIND_PLIST compete
+# for the same directores -- both add a removal step ot the TMPPLIST
+# automatically. The bsd.ocaml.mk file has to be fixed, then then former
+# can be used again. (alternatively we could provide a manually generated
+# complete pkg-plist and keep using ocaml's ldconfig)
+
+USES= gmake
+HAS_CONFIGURE= yes
+USE_OCAML= yes
+USE_OCAML_FINDLIB= yes
+USE_OCAMLFIND_PLIST= yes
+#USE_OCAML_LDCONFIG= yes
+CONFIGURE_ARGS= --temproot ${STAGEDIR} \
+ --prefix ${PREFIX} \
+ --libdir ${PREFIX}/lib/ocaml/site-lib \
+ --enable-natdynlink
+
+PORTREQS= ocaml-deriving-ocsigen>=0.3:${PORTSDIR}/devel/ocaml-deriving-ocsigen \
+ js_of_ocaml>=1.3.2:${PORTSDIR}/lang/js_of_ocaml \
+ ocsigen>=2.2:${PORTSDIR}/www/ocsigen \
+ ocaml-tyxml>=2.2:${PORTSDIR}/textproc/ocaml-tyxml \
+ ${SA_DIR}/react/react.a:${PORTSDIR}/devel/ocaml-react \
+ ${SA_DIR}/ssl/ssl.a:${PORTSDIR}/security/ocaml-ssl \
+ ${SA_DIR}/calendar/calendarLib.a:${PORTSDIR}/devel/ocaml-calendar \
+ ${SA_DIR}/cryptokit/cryptokit.a:${PORTSDIR}/security/ocaml-cryptokit
+
+do-configure:
+ (cd ${WRKSRC} && ${SH} ./configure ${CONFIGURE_ARGS})
+
+.include <bsd.port.mk>
diff --git a/www/eliom/distinfo b/www/eliom/distinfo
new file mode 100644
index 000000000000..3933049d28da
--- /dev/null
+++ b/www/eliom/distinfo
@@ -0,0 +1,2 @@
+SHA256 (eliom-3.0.3.tar.gz) = b598bfbfc37fb9164024df71352e74d26d6ce2095f89f3d52072b3f7334a5b86
+SIZE (eliom-3.0.3.tar.gz) = 743842
diff --git a/www/eliom/files/patch-src_Makefile b/www/eliom/files/patch-src_Makefile
new file mode 100644
index 000000000000..289d7d7fc0b9
--- /dev/null
+++ b/www/eliom/files/patch-src_Makefile
@@ -0,0 +1,17 @@
+$NetBSD: patch-src_Makefile,v 1.2 2012/12/15 16:18:42 jaapb Exp $
+
+Use correct BSD installation tools (JRM - modified)
+--- src/Makefile.orig 2012-12-13 16:16:17.000000000 +0000
++++ src/Makefile
+@@ -60,9 +60,8 @@ install: install.META install.man
+ ${MAKE} -C tools install
+
+ install.man: install.META
+- $(INSTALL) -m 755 -d $(TEMPROOT)$(MANDIR)/man1
+- $(INSTALL) -m 755 files/eliomc.1 $(TEMPROOT)$(MANDIR)/man1
+- $(INSTALL) -m 755 files/eliom-destillery.1 $(TEMPROOT)$(MANDIR)/man1
++ $(BSD_INSTALL_MAN) files/eliomc.1 $(TEMPROOT)$(MANDIR)/man1
++ $(BSD_INSTALL_MAN) files/eliom-destillery.1 $(TEMPROOT)$(MANDIR)/man1
+ ln -sf eliomc.1 $(TEMPROOT)$(MANDIR)/man1/js_of_eliom.1
+ ln -sf eliomc.1 $(TEMPROOT)$(MANDIR)/man1/eliomopt.1
+ ln -sf eliomc.1 $(TEMPROOT)$(MANDIR)/man1/eliomcp.1
diff --git a/www/eliom/files/patch-src_client b/www/eliom/files/patch-src_client
new file mode 100644
index 000000000000..89f1cf4e1ddc
--- /dev/null
+++ b/www/eliom/files/patch-src_client
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_client_Makefile,v 1.1 2012/08/12 17:47:43 wiz Exp $
+
+install library stub with proper permissions
+--- src/client/Makefile.orig 2012-06-11 12:46:54.000000000 +0000
++++ src/client/Makefile
+@@ -97,7 +97,8 @@ odoc: ${DOC:.mli=.odoc}
+
+ install: ${PREDEP}
+ ${INSTALL} -m 755 -d ${CLIENTDIR}
+- ${INSTALL} -m 644 ${INTF} ${IMPL} ${STUBS} ${DOC} ${CLIENTDIR}
++ ${INSTALL} -m 644 ${INTF} ${IMPL} ${DOC} ${STUBS} ${CLIENTDIR}
++ ${BSD_INSTALL_LIB} ${EXEC_STUBS} ${CLIENTDIR}
+
+ uninstall:
+ -rm -fr ${CLIENTDIR}
diff --git a/www/eliom/files/patch-src_client_Makefile.filelist b/www/eliom/files/patch-src_client_Makefile.filelist
new file mode 100644
index 000000000000..a37813ca0041
--- /dev/null
+++ b/www/eliom/files/patch-src_client_Makefile.filelist
@@ -0,0 +1,17 @@
+$NetBSD: patch-src_client_Makefile.filelist,v 1.1 2012/08/12 17:47:43 wiz Exp $
+
+install library stub with proper permissions
+--- src/client/Makefile.filelist.orig 2012-06-11 12:46:54.000000000 +0000
++++ src/client/Makefile.filelist
+@@ -21,8 +21,9 @@ NO_MLI := eliom_compatibility_2_1.cmi
+ IMPL := ${PROJECTNAME}_client.cma \
+ ${PROJECTNAME}_client_main.cmo \
+
+-STUBS := dlleliom_client.so \
+- libeliom_client.a \
++EXEC_STUBS := dlleliom_client.so
++
++STUBS := libeliom_client.a \
+ eliom_client.js \
+
+ NOP4 := eliom_lib.mli
diff --git a/www/eliom/pkg-descr b/www/eliom/pkg-descr
new file mode 100644
index 000000000000..a51ea2500c86
--- /dev/null
+++ b/www/eliom/pkg-descr
@@ -0,0 +1,6 @@
+Eliom is a framework for programming web sites and client/server web
+applications. It uses very new concepts making programming very different
+from all other web programming tools, and allowing to write a complex web
+site in very few lines of code.
+
+WWW: http://ocsigen.org/eliom/
diff --git a/www/eliom/pkg-plist b/www/eliom/pkg-plist
new file mode 100644
index 000000000000..51f0f21ac971
--- /dev/null
+++ b/www/eliom/pkg-plist
@@ -0,0 +1,24 @@
+bin/eliom-destillery
+bin/eliomc
+bin/eliomcp
+bin/eliomdep
+bin/eliomopt
+bin/js_of_eliom
+man/man1/eliom-destillery.1.gz
+man/man1/eliomc.1.gz
+man/man1/eliomcp.1.gz
+man/man1/eliomdep.1.gz
+man/man1/eliomopt.1.gz
+man/man1/js_of_eliom.1.gz
+share/eliom/destillery/basic/Makefile
+share/eliom/destillery/basic/Makefile.options
+share/eliom/destillery/basic/PROJECT_NAME.conf.in
+share/eliom/destillery/basic/PROJECT_NAME.eliom
+share/eliom/destillery/basic/README
+share/eliom/destillery/basic/static!css!PROJECT_NAME.css
+@dirrm share/eliom/destillery/basic
+@dirrm share/eliom/destillery
+@dirrm share/eliom
+@dirrm %%OCAML_SITELIBDIR%%/eliom/syntax
+@dirrm %%OCAML_SITELIBDIR%%/eliom/server
+@dirrm %%OCAML_SITELIBDIR%%/eliom/client