summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2012-07-11 10:40:46 +0000
committerwiz <wiz@pkgsrc.org>2012-07-11 10:40:46 +0000
commitfc989e67aca6bb1c074f8654c4ad38c629bf0f8c (patch)
treed57ddd06721748d0f5c6ac12d6b0d44f62d0dde8 /www
parent028fd0b57b4f0a523f96cdeedec8be77cbf1f175 (diff)
downloadpkgsrc-fc989e67aca6bb1c074f8654c4ad38c629bf0f8c.tar.gz
Update to 2.1, provided by Jaap Boender. Remove BROKEN.
===== 2.1 (2012-06-02) ===== * Rename and split Ocsigen_pervasives into Ocsigen_lib and Ocsigen_lib_base * Adapt to lower-case module names in TyXML ===== 2.0.4 (2012-03-08) ===== * Fix licencing problems of staticmod icons * Server: ** Add a notification for connections closed by the client ===== 2.0.3 (2012-01-31) ===== * Staticmod: add a "cache" option * Cgimod: fix use of old $1 notation instead of \1 * Fix problem with etags, post and safari * Add charset to content served as something/xml * Licence of polytable and ocsigen_cache changed from GPL to LGPL ===== 2.0.2 (2011-11-18) ===== * Server: ** The command line options where not parsed when the server was not compiled with -linkall. ** Improve error messages when the log firectory is not present. ** Add a Cross-Origin Resource Sharing extension. * Libraries: ** Allow Ocsigen_sender.{Html5,Xhtml}_content to choose the returned content type (close #53). ** Ocsigen_extensions.get_port: do not return the actual request port if an Host HTTP header is present. ===== 2.0.1 (2011-09-28) ===== * Directory listing: do not use URL encoding for displaying the current path in HTML. ===== 2.0 (2011-09-20) ===== * Small fixes in documentation. ===== 2.0-rc1 (2011-07-15) ===== * Fix installation without dbm * Option to compile without preemptive threads * Get rid of C stubs: they are now included in Ocaml standard library * Log files are opened with the right UID ===== 1.91 (2011-04-08) ===== * Split the ocsigen package in three : tyxml, ocsigenserver and eliom * Rename into ocsigenserver * Revproxy, Accesscontrol: Handling {{{X-Forwarded-For}}} and {{{X-Forwarded-Proto}}} headers * HTTP parser rewrited ===== 1.90 ===== * New module {{{Eliom_client}}} for client/server Eliom programs using js_of_ocaml. * Eliom client: calling a service from client side code. * Eliom: Services taking Caml values as parameters. * Eliom: services sending Caml values. * Eliom: new implementation of forms and links to be compatible with client side programs. * Eliom: sp parameter has been removed (now using Lwt's thread storage) * Eliom: {{{Eliom_predefmod}}} renamed {{{Eliom_output}}} * Eliom: New module {{{Eliom_output.Customize}}} to create your own register functions from another registration module * Eliom: Module {{{Eliom_sessions}}} replaced by {{{Eliom_state}}}, {{{Eliom_request_info}}} and {{{Eliom_config}}}. * Eliom: new implementation of user cookies. * Eliom: Client process cookies. Like usual browser cookies but for one client side process. * Eliom: Client process server side state data. Like session data but for one client side process. * Eliom: Client process session services. * Eliom: Session group data. Like session data but for all sessions in a session group. * Eliom: Session group services. * Eliom: session replaced by a more general concept of "server side state". States have a scope: client process, session or group of sessions. * Eliom: session tables and request cache now deprecated, replaced by //Eliom references// * Eliom client: Possible to call another service without stopping the client side program, with bookmark support and back button support. * New extension Comet to allow server -> client communication. * Eliom: client/server communication channels. * Eliom: client/server reactive programming using React. * Eliom client: syntax extension for separating client and server code. * Eliom: New module Eliom_output.Eliom_appl for registering pages that belong to the same Eliom application. * Eliom client: syntax extension and wrapping/unwrapping mechanism to access server side values in client side code. * Eliom client: Relinking the DOM on client side after loading a (portion of) page. This allows to use directly nodes created on server side in client side code. * Eliom client: XHR redirections for Eliom applications. * Eliom: safe unmarshaling of caml values sent by client side programs * Xhtml: Xhtml5 support * Atom module and Pubsubhubbub * OpenID support * SVG module * Documentation: New tutorial * Documentation: New Eliom manual * //and many other things ...// ===== 1.3.4 ===== * Eliom: Now supporting list of lists in service parameters ===== 1.3.3 (2010-06-13) ===== * Eliom: Fix some typos in Eliom's tutorial stylesheet * Server: Fix usage of {{{accept_n}}} to avoid file descriptor leakage * XHTML: Adding missing elements and attributes in XHTML.M * Cleaning Ocsigen_cache * Eliom: Fixing actions with uploads ===== 1.3.2 (2010-04-30) ===== * Add dummy findlib packages ocsigen.xhtml*, that depend on ocsigen_xhtml*, for compatibility with previous versions. These packages might be removed in a future (major) release. * Port to Lwt 2.1.0 ===== 1.3.1 (2010-04-23) ===== * Split out ocsigen_xhtml findlib package * Configuration file: when no protocol is specified in {{{<port>}}}, listen on IPv6 (if possible) and IPv4 (always) ===== 1.3.0 (2010-01-22) ===== * Server: Each request now has a polymorphic data table (called //request cache//), where you can store the data you want to keep during the whole page generation. * Eliom: actions now return {{{()}}}. Use the request cache to send information to fallbacks. * Eliom: CSRF-safe coservices * Eliom: the number of sessions without group by IP address is now limited * Eliom: efficient implementation of limitation of sessions by groups (or now IP) for large limits * Eliom: the number of anonymous coservices by session is now limited * Eliom: the number of anonymous coservices without session by IP address is now limited * Eliom: now possible to unregister services * Eliom: New (very) experimental module {{{Eliom_obrowser}}} to use Eliom with Obrowser * Eliom: Now possible to have constant parts in suffixes to allow URLS like {{{/param1/something/param2}}} * Eliom: services with optional suffixes * Eliom: form towards a service with suffix: it is now possible to choose whether you want the redirection towards the suffix form or not * Eliom: lists and sets in suffixes * Eliom: Now possible to create services sending custom HTTP header values or customizing the content-type * Eliom: New notion: "Non localized parameters". Can be sent to any service. * Eliom: changing the order of parameters for user type form widgets * Eliom: changing the order of parameters for user type form widgets * Eliom: Eliom_tools.menu and hierarchical_menu now compare the URL strings (was: compare the service) * Eliom: textarea now take a string (was pcdata) * Eliom: The type of the iterator for lists in parameters has changed * Eliom: New options in configuration file to set session timeouts * Server: now possible to give the config file name to reload server command * Server: now possible to do a "graceful shutdown" of the server using the "shutdown" server command * Server: now possible to add custom commands for the command pipe * Server: EXPERIMENTAL now possible to observe HTTP headers before sending the result * Xhtmlpp: the parsing now fails if a quotation for an Xhtml element contains superfluous elements. (This can cause the parsing of previously incorrect code to fail) * Staticmod/Eliom: attempting to access a file whose name contains a NULL character will result in a 403. * Server: HTTP headers containing newlines are now properly escaped. * Server: correct missing xmlns in Xhtml DTD * Server: now send last-modified and etag headers when returning a 403 * Server: Now accepting several requests at a time (as explained in "Accept()able strategies" by Tim Brecht & all) * Rewritemod: more rewriting possibilities (still very basic) * Eliom menus are now more robust when finding which item is active * Fixed handling of incorrectly-sized multipart requests. Thanks to Mauricio Fernandez for noticing the bug * Upload directory and maximum file size can now be configured on a per-site basis * Renamed the field of Ocsigen_http_frame.t * Javascript events support in Xhtml.M ; Thanks to john @ 5070.info for the patch ===== 1.2.2 (2009-10-17) ===== * Add react and lwt.unix to the list of built-in findlib packages ===== 1.2.1 (2009-09-26) ===== * Lwt 2.0 compatibility: ** Adapt to Lwt.t/Lwt.u splitting ** fix Makefile to deal with lwt.unix findlib package * Fix ocsipersist-dbm Makefile * Fix for pcre-ocaml 6.0.0 * Fix typo regarding --stubdir in configure script ===== 1.2.0 (2009-03-25) ===== * Native code version now compiled by default * Now possible to link extensions and Eliom modules statically, for example to use a native code server on platforms where native dynlink is not supported * Server: Partial requests implemented (Range HTTP header) * Build C stubs into a shared library so that bytecode executables may be not linked in custom mode; new {{{--stubdir}}} option in {{{configure}}} script * Eliom: non-attached services now called "named non-attached coservices" and created using {{{Eliom_services.new_coservice'}}} with the optional {{{name}}} parameter * Eliom: now possible to create named attached coservices using the optional {{{name}}} parameter * Eliom: now possible to write libraries for Eliom sites, loaded inside {{{<host>}}}, but not generating any page * Eliom and server: EXPERIMENTAL now possible to make extensions that can use Eliom's data * XHTML.M's pretty printer: now possible to set the DOCTYPE manually * Eliom: now possible to set manually the DOCTYPE when registering an XHTML.M service * Redirectmod and Revproxy: now possible to do more complex rewriting * Accesscontrol: add support for {{{<port>}}} and {{{<ssl>}}} conditions * Config file: {{{aliases}}} attribute now called {{{hostfilter}}} * Revproxy and Redirectmod: now possible to filter on server, port and protocol * New extension extendconfiguration to allow dynamic changes in the configuration (mimetypes, charsets, followsymnlink, directory listing, ...) * Server: new module {{{LocalFiles}}} factoring the common parts for sending static files (with Eliom and staticmod for example), while checking that the files can safely be sent. * Now possible to use XHTML pretty printers without Ocsigen, using the {{{xhtmlpretty.cma}}} library * Add {{{Ocsigen_lib.register_exn_printer}}}, better error messages * Now possible to use the same configuration file in native code and in bytecode (.cmo/.cma filenames are internally translated to .cmxs) * Signature of Ocsigen_extensions.register_extension is now more complete and more lightweight * Userconf: the options set in the local .userconf file are kept in the enclosing {{{<site>}}} tag * Server: possibility to ignore or to supply an alternative command-line * Ocsigen_http_client: timeout when the distant server does not exists * OCaml versions < 3.10 are not supported anymore * Extensions are now much more strict w.r.t. the syntax of configuration files * Staticmod: accessing a directory for which indexing is disallowed returns an error 404 (instead of a 403 previously) ===== 1.1.0 (2008-07-15) ===== * Lwt removed (now distributed separately) * {{{XHTML.M}}} pretty printer: fixing pretty printing of empty tags (for browser compatibility) * Eliom_duce: New pretty printer for XHTML fixing pretty printing of empty tags * Eliom: secure sessions, secure services, (absolute) https links/forms, and using secure cookies * Eliom: Adding special "void action", without any parameters * Eliom: {{{Eliom_predefmod.Redirections}}} now called {{{Eliom_predefmod.String_redirection}}}, and adding new module {{{Eliom_predefmod.Redirection}}} that use GET services without parameters as data type. * Eliom and XHTML.M: Small changes of types in interfaces * Eliom: New session ID generator * Eliom: Adding types {{{int32}}} and {{{int64}}} for parameters and forms * Eliom: Adding functions {{{lwt_get_form}}} and {{{lwt_post_form}}} for creating forms using cooperative functions * Eliom and Staticmod: now possible to give GET parameters to static pages * Eliom: Bugfix in Makefiles for native code version * Eliom forms: Adding missing types in interfaces * Eliom_tools: current page is now optional in menus * Userconf and Eliom: there was a bug when loading both Eliom and Userconf together * Reverse Proxy: Now sending content length when available * Web server: The default content-type is now {{{application/octet-stream}}} * Creating and installing a cma file for all Ocsigen libraries not installed elsewhere * Ocsipersist-dbm: fixing bug when removing data * Deflatemod: fixing memory leak * And small bugfixes in XHTML.M, Eliom, ... ===== 1.0.0 (2008-04-01) ===== * Config file: findlib integration * Eliom and Ocsigen: changing namespace convention for modules * Access control: simplification of config file syntax * Eliom: Allowing (module dependent) parameters for registration functions * New xhtml output without pretty printing * Web server: Bugfix in HTTP/1.0 with keep-alive * Reverse proxy: Bugfix GET parameters were wrong * Reverse proxy: Bugfix memory consumption when the connection was closed by client ===== 0.99.5 (2008-01-11) ===== * Revproxy: pipelining of requests * Access control: simplification, generalization of filters and syntax changes in config file * Eliom: EXPERIMENTAL session groups * Eliom: non-attached services * Eliomduce: new functor {{{SubXhtml}}} for creating registration modules * Eliomduce: new module Eliomducetools with same features as Eliomtools, but for Eliomduce * Web server: now possible to split the configuration file into several files using the {{{<extconf/>}}} option. * Web server: now possible to have {{{<site>}}} option inside another {{{<site>}}} in configuration files, and the the first one is optional * Web server: EXPERIMENTAL user configuration files, with restricted possibilities (for security reasons) * Web server: IPv6 support * Deflatemod: now possible to filter on file extensions * Eliom: new option to keep GET non-attached parameters or not when doing a POST form towards a non-attached coservice. * Eliom: bugfix path of session cookies * Eliom: bugfix POST non-attached coservices called from a page with non-attached GET parameters were not found. * Lwt: now catching exceptions raised after timeouts * Cgimod: bufixes in path handling * Web server: bugfix - some files were not closed ===== 0.99.4 (2007-11-21) ===== * Ocsigen: Changes in the extension mechanism. The extensions are not tried in the order in which they are loaded any more, but in the order in which the options are specified for each site in the configuration file. * New experimental extension: access control * A few small enhancements ** Eliom: internal cookie management rewritten (+ bugfix) ** Eliom: Small changes in function names ** Eliom: now retry all extensions after actions (not only Eliom) ** Eliom: cleaning {{{Eliommod}}} interface ** Ocsigen server: Internal changes in server (removing "send" functions, debug messages lazier) ** Lwt: Adding a few functions in {{{Lwt_chan}}} interface ** Staticmod: Allowing to personalize default error pages for HTTP errors ** Ocsipersist (dbm and sqlite): better handling of database errors ** XHTML: New pretty printer for xhtml using streams (up to 15% speedup on requests) ** XHTML: Allowing any value for {{{<link>}}} rel attribute (for example {{{shortcut icon}}}). ===== 0.99.3 (2007-11-07) ===== * Ocsigen: New module Deflatemod to compress data before sending to the browser. * Ocsigen: EXPERIMENTAL - New module Revproxy (reverse proxy). * Eliom: New session mechanism, with the ability to name the sessions and thus have several sessions for the same site. * Eliom: Now possible to have one site with session inside a subdirectory of another one. * Lwt: New module {{{Lwt_timeout}}} to implement timeouts, new module {{{Lwt_chan}}}, new module {{{Lwt_mutex}}}, new function {{{Lwt_unix.abort}}} to make all threads waiting on a file descriptor abort with an exception. * Ocsigen: New implementation of lots of Web server internals. Better management of Ocsigen's streams, file descriptors, exceptions, timeouts ... * A lot of enhancements and bug fixes: ** Eliom: Single {{{<select>}}} now always return one parameter ({{{`Opt}}} replaced by {{{`One}}}, and the first item is selected by default to prevent selecting nothing with some browsers). ** Eliom: More secure cookies. ** Eliom: new version of the tutorial. ** Eliom splitted in several modules. ** Eliom: Nurpawiki example now called Miniwiki. ** Eliom: {{{any_...}}} form widgets now called {{{raw_...}}} ** Eliom: {{{~url}}} parameter (for {{{new_service}}}, etc.) now called {{{~path}}}. ** Eliom: Bugfix escaping characters in URL was wrong ** Eliom: Adding a new parameter {{{~prefix}}} to {{{new_external_service}}} for the scheme and server name. Not encoded. ** Eliom: Eliomboxes now called Eliomtools, with new widget "hierarchical menu" for sites with sections and subsections. ** Eliom: Adding {{{Eliompredefmod.Streamlist}}}. ** Ocsigen: EXPERIMENTAL - now possible to do HTTP requests. ** Ocsigen: New module Redirectmod to define HTTP redirections in the config file. ** Ocsigen: Make possible to create new kind of extensions to filter the output (for ex compression) ** Ocsigen: Bugfix - HEAD requests were broken in 0.99.2 ** Ocsigen: Bugfix - HTTP errors were sometimes sending a body in respond to a HEAD request. ** Ocsigen: Now sending 403 when upload is forbidden ** Ocsigen: HTTP headers {{{If-Match}}}, {{{If-None-Match}}}, {{{If-Unmodified-Since}}} implemented ** Cgimod: Bugfix - HEAD requests were sending an error 500. ** Cgimod: Bugfix - Some file descriptors were not closed. ** Cgimod: Implementing a timeout on CGI scripts. ===== 0.99.2 (2007-08-21) ===== * Eliom: New implementation of forms. All missing cases implemented, and more possibilities, such as untyped forms. * Ocsipersist: New implementation of Ocsipersist using SQLite instead of DBM. (You can still use the old one). * Cgimod: EXPERIMENTAL - New extension for using CGI scripts with Ocsigen (including PHP through CGI). * Staticmod: Allowing to have several static directories for one site. * Staticmod: Allowing to list the content of directories. * Ocsigen: HTTP Header "Transfer-Encoding: chunked" implemented for sending or receiving data without knowing the Content-Length * Ocsigen: Bugfix in preemptive.ml when lots of simultaneous connections * Ocsigen: Improvements in the extension mechanism * Ocsigen: New file extensiontemplate.ml: an example explaining how to write your own extensions * Ocsigen: Bugfix - fixing limitation of simultaneous connections * Eliom: Bugfix - type of {{{all_suffix_string}}} was wrong in {{{eliom.mli}}}. * Eliom: GET Services do not answer any more to POST requests without parameters. ===== 0.99.1 (2007-05-15) ===== * Eliom: Now possible to set an exception handler for the whole site to personalize error pages (404, 500, etc.) * Eliom: Now possible to register main services after initialization * Eliom: Unifying {{{register}}} and {{{register_public}}}. Use the optional {{{~sp}}} parameter to register during session. * Eliom: Idem for all functions {{{..._during_init}}} and {{{..._during_session}}} * Eliom: Functions to remove data from tables * Ocsigen: Debug mode: the exception is printed on the error page * Ocsigen: Bugfix in {{{Preemptive.detach}}} when used with {{{Lwt_unix.run}}} * Ocsigen: Bugfix - launching ocsidbm for MacOS * Eliom: Bugfix - GC of sessions and session data * Eliom: Bugfix - GET actions were not working properly ===== 0.99.0 (2007-05-05) ===== * EXPERIMENTAL: Native code support. It is now possible to use Ocsigen in native code. BUT: to use that, you need a modified version of OCaml, that allows dynlinking of native code modules (natdynlink branch in OCaml's CVS, by Alain Frisch). * OCaml 3.10 support (syntax extension with new Camlp4) * The functor Ocsigen.Make (add new types of pages for Ocsigenmod) is now divided into two functors, one for "register" functions, and one for forms and links (if needed). * New module for dynamic page creation called Eliom. Ocsigenmod is now deprecated but is still in the distribution. Eliom is based on Ocsigenmod. * Eliom: replacing auxiliary services by coservices. Coservices may have GET or (and) POST state parameter. * Eliom: adding notion of non-attached coservices. They can take GET or POST parameters. * Eliom: Creation of a new module {{{Actions}}}. It is possible to register actions on main services, coservices (attached or not). * Eliom: Removing the old actions (use new actions towards non-attached coservices instead) * Eliom: New module {{{Unit}}} for actions without reload * Eliom: New module {{{Redirections}}} to register redirection pages. * Eliom: New module {{{Files}}} to register services that send files. * Eliom: New module {{{Any}}} to register services that choose what they send. * Eliom: New module {{{Blocks to register services that send a box of type body content. * Eliom: Module {{{Text}}} replaced by {{{HtmlText}}}, and adding {{{CssText}}} and {{{Text}}} (for any content type). * Eliom: Bugfix - Typing errors of parameters are now catched only if the names of parameters fit exactly. * Eliom: {{{register_service}}} now called {{{register}}}. * Eliom: EXPERIMENTAL Fallbacks can now get a "Session expired" from previous pages and actions may send informations to the page generated (using exception). * Eliom: Now possible to pre-apply services (to make links or to be used as fallbacks for coservices) * Eliom: services can now set their own cookies * Eliom: Disposable coservices (coservices that you can use only n times) * Eliom: Nurpawiki: example of Wiki written by Janne Hellsten * Eliom: New handling of URLs with suffixes * Ocsigen: New module Ocsipersist for persistent data, using its own DBM server (ocsidbm) * Eliom: Persistent sessions using Ocsipersist * Eliom: Timeouts for sessions * Eliom: Timeouts for coservices * Ocsigen: It is now possible to give parameters to extensions in configuration file. * Ocsigen: Simplifying parsing of configuration file (could be improved). * Ocsigen: EXPERIMENTAL It is now possible to reload the modules without stoping the server. * Staticmod: Rewriting of URLs using regular expressions.
Diffstat (limited to 'www')
-rw-r--r--www/ocsigen/INSTALL15
-rw-r--r--www/ocsigen/Makefile86
-rw-r--r--www/ocsigen/PLIST314
-rw-r--r--www/ocsigen/PLIST.camlzip5
-rw-r--r--www/ocsigen/PLIST.sqlite5
-rw-r--r--www/ocsigen/distinfo12
-rw-r--r--www/ocsigen/options.mk26
-rw-r--r--www/ocsigen/patches/patch-Makefile54
-rw-r--r--www/ocsigen/patches/patch-aa111
-rw-r--r--www/ocsigen/patches/patch-ab75
-rw-r--r--www/ocsigen/patches/patch-src_Makefile13
11 files changed, 344 insertions, 372 deletions
diff --git a/www/ocsigen/INSTALL b/www/ocsigen/INSTALL
new file mode 100644
index 00000000000..15417f933ea
--- /dev/null
+++ b/www/ocsigen/INSTALL
@@ -0,0 +1,15 @@
+# $NetBSD: INSTALL,v 1.1 2012/07/11 10:40:46 wiz Exp $
+
+OCSIGEN_USER="@OCSIGEN_USER@"
+OCSIGEN_GROUP="@OCSIGEN_GROUP@"
+COMMANDPIPE="@VARBASE@/run/ocsigen_command"
+
+case ${STAGE} in
+POST-INSTALL)
+ ${MKDIR} `dirname ${DESTDIR}${COMMANDPIPE}`
+ [ -p ${DESTDIR}${COMMANDPIPE} ] || \
+ { mkfifo ${DESTDIR}${COMMANDPIPE}; \
+ ${CHMOD} 660 ${DESTDIR}${COMMANDPIPE}; \
+ ${CHOWN} -R ${OCSIGEN_USER}:${OCSIGEN_GROUP} ${DESTDIR}${COMMANDPIPE}; }
+ ;;
+esac
diff --git a/www/ocsigen/Makefile b/www/ocsigen/Makefile
index 0a667a371fb..3380ae5e151 100644
--- a/www/ocsigen/Makefile
+++ b/www/ocsigen/Makefile
@@ -1,60 +1,80 @@
-# $NetBSD: Makefile,v 1.6 2012/03/03 00:14:07 wiz Exp $
+# $NetBSD: Makefile,v 1.7 2012/07/11 10:40:46 wiz Exp $
#
-DISTNAME= ocsigen-0.6.0
-PKGREVISION= 4
+VERSION= 2.1
+PKGNAME= ocsigen-${VERSION}
+DISTNAME= ocsigenserver-${VERSION}
CATEGORIES= www
MASTER_SITES= http://www.ocsigen.org/download/
MAINTAINER= jaapb@kerguelen.org
HOMEPAGE= http://www.ocsigen.org/
COMMENT= Web programming framework for OCaml
+LICENSE= gnu-lgpl-v2.1
-BROKEN= Does not support ocaml>=3.10
+PKG_DESTDIR_SUPPORT= user-destdir
DEPENDS+= ocaml-findlib-[0-9]*:../../devel/ocaml-findlib
-DEPENDS+= ocamlnet-[0-9]*:../../net/ocamlnet
+DEPENDS+= ocaml-react-[0-9]*:../../devel/ocaml-react
+DEPENDS+= ocaml-text-[0-9]*:../../textproc/ocaml-text
+DEPENDS+= ocaml-tyxml>=2.1:../../textproc/ocaml-tyxml
-BUILD_DEFS+= VARBASE
+OCSIGEN_USER?= ${APACHE_USER}
+OCSIGEN_GROUP?= ${APACHE_GROUP}
+PKG_GROUPS= ${OCSIGEN_GROUP}
+PKG_USERS= ${OCSIGEN_USER}:${OCSIGEN_GROUP}
+PKG_GROUPS_VARS+= OCSIGEN_GROUP
+PKG_USERS_VARS+= OCSIGEN_USER
+
+BUILD_DEFS+= APACHE_USER APACHE_GROUP OCSIGEN_USER OCSIGEN_GROUP VARBASE
+FILES_SUBST+= OCSIGEN_USER=${OCSIGEN_USER:Q} \
+ OCSIGEN_GROUP=${OCSIGEN_GROUP:Q} \
+ VARBASE=${VARBASE:Q}
HAS_CONFIGURE= yes
-USE_LANGUAGES= c
-CONFIGURE_ARGS= --enable-bytecode \
- --disable-newocamlnet \
- --disable-debug \
+CONFIGURE_ARGS= --disable-debug \
+ --temproot ${DESTDIR} \
--prefix ${PREFIX} \
- --bindir bin \
- --libdir share/examples \
- --mandir ${PKGMANDIR}/man1 \
- --docdir share/doc \
- --sysconfdir ${PKG_SYSCONFDIR}/ocsigen \
- --logdir ${VARBASE}/ocsigen \
- --staticpagesdir share/ocsigen/www \
+ --bindir ${PREFIX}/bin \
+ --libdir ${PREFIX}/lib/ocaml/site-lib \
+ --mandir ${PREFIX}/${PKGMANDIR}/man1 \
+ --docdir ${PREFIX}/share/doc \
+ --sysconfdir ${PREFIX}/share/examples/ocsigen \
+ --staticpagesdir ${PREFIX}/share/ocsigen/www \
--uploaddir /tmp \
- --ocsigen-user www \
- --ocsigen-group www
-CONF_FILES+= ${PREFIX}/share/examples/ocsigen/ocsigen.conf \
- ${PKG_SYSCONFDIR}/ocsigen/ocsigen.conf
-USE_TOOLS+= gmake
-BUILD_TARGET= all
-BUILDLINK_API_DEPENDS.ocaml+= ocaml>=3.09
-INSTALL_TARGET= fullinstall
-MAKE_ENV= EGDIR=${PREFIX}/share/examples/ocsigen
+ --ocsigen-user ${OCSIGEN_USER} \
+ --ocsigen-group ${OCSIGEN_GROUP} \
+ --logdir ${VARBASE}/log/ocsigen \
+ --datadir ${VARBASE}/lib/ocsigen \
+ --commandpipe ${VARBASE}/run/ocsigen_command
-PKG_USERS+= www
-PKG_GROUPS+= www
-OWN_DIRS+= ${VARBASE}/ocsigen
-OWN_DIRS_PERMS+= ${VARBASE}/ocsigen www www 0755
+MAKE_JOBS_SAFE= no
-post-extract:
- rm ${WRKSRC}/baselib/ocsiconfig.ml
+.if (${MACHINE_ARCH} == "i386") || (${MACHINE_ARCH} == "powerpc") || \
+ (${MACHINE_ARCH} == "sparc") || (${MACHINE_ARCH} == "x86_64")
+CONFIGURE_ARGS+= --enable-natdynlink
+BUILDLINK_API_DEPENDS.ocaml+= ocaml>=3.12.0
+PLIST_SUBST+= OPT=""
+.else
+CONFIGURE_ARGS+= --disable-natdynlink
+PLIST_SUBST+= OPT="@comment "
+.endif
+
+CONF_FILES+= ${DESTDIR}${PREFIX}/share/examples/ocsigen/ocsigenserver.conf.sample \
+ ${PKG_SYSCONFDIR}/ocsigenserver/ocsigenserver.conf
+USE_TOOLS+= gmake
+USE_LANGUAGES= c
pre-install:
- mkdir -p ${PKG_SYSCONFDIR}/ocsigen
+ ${RM} -rf ${DESTDIR}/${PREFIX}/lib/ocaml/site-lib/ocsigenserver
+ ${MKDIR} ${DESTDIR}/${PREFIX}/lib/ocaml/site-lib
.include "options.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../lang/ocaml/buildlink3.mk"
.include "../../devel/pcre-ocaml/buildlink3.mk"
.include "../../security/ocaml-ssl/buildlink3.mk"
+.include "../../security/ocaml-cryptokit/buildlink3.mk"
+.include "../../net/ocamlnet/buildlink3.mk"
+.include "../../devel/ocaml-lwt/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/www/ocsigen/PLIST b/www/ocsigen/PLIST
index 0736ed933f4..bb5e3abb701 100644
--- a/www/ocsigen/PLIST
+++ b/www/ocsigen/PLIST
@@ -1,139 +1,177 @@
-@comment $NetBSD: PLIST,v 1.2 2009/06/14 22:00:29 joerg Exp $
-@unexec %D/libexec/ocaml-findlib-register del %D/lib/ocaml/site-lib/ocsigen
-bin/ocsigen
-lib/ocaml/site-lib/ocsigen/META
-lib/ocaml/site-lib/ocsigen/lwt.cmi
-lib/ocaml/site-lib/ocsigen/lwt_unix.cmi
-lib/ocaml/site-lib/ocsigen/messages.cmi
-lib/ocaml/site-lib/ocsigen/monitoring.cmo
-lib/ocaml/site-lib/ocsigen/ocsigen.cmi
-lib/ocaml/site-lib/ocsigen/ocsigenboxes.cmi
-lib/ocaml/site-lib/ocsigen/ocsigenmod.cma
-lib/ocaml/site-lib/ocsigen/parseconfig.cmi
-lib/ocaml/site-lib/ocsigen/predefined_senders.cmi
-lib/ocaml/site-lib/ocsigen/preemptive.cmi
-lib/ocaml/site-lib/ocsigen/simplexmlparser.cmi
-lib/ocaml/site-lib/ocsigen/staticmod.cmi
-lib/ocaml/site-lib/ocsigen/staticmod.cmo
-lib/ocaml/site-lib/ocsigen/tutorial.cmi
-lib/ocaml/site-lib/ocsigen/tutorial.cmo
-lib/ocaml/site-lib/ocsigen/xHTML.cmi
-lib/ocaml/site-lib/ocsigen/xML.cmi
-lib/ocaml/site-lib/ocsigen/xhtml.cma
-lib/ocaml/site-lib/ocsigen/xhtmlsyntax.cma
-lib/ocaml/site-lib/ocsigen/xhtmltypes.cmi
-man/man1/ocsigen.1
-share/doc/ocsigen/lwt/Lwt.html
-share/doc/ocsigen/lwt/Lwt_unix.html
-share/doc/ocsigen/lwt/index.html
-share/doc/ocsigen/lwt/index_attributes.html
-share/doc/ocsigen/lwt/index_class_types.html
-share/doc/ocsigen/lwt/index_classes.html
-share/doc/ocsigen/lwt/index_exceptions.html
-share/doc/ocsigen/lwt/index_methods.html
-share/doc/ocsigen/lwt/index_module_types.html
-share/doc/ocsigen/lwt/index_modules.html
-share/doc/ocsigen/lwt/index_types.html
-share/doc/ocsigen/lwt/index_values.html
-share/doc/ocsigen/lwt/style.css
-share/doc/ocsigen/lwt/type_Lwt.html
-share/doc/ocsigen/lwt/type_Lwt_unix.html
-share/doc/ocsigen/oc/Extensions.html
-share/doc/ocsigen/oc/Messages.html
-share/doc/ocsigen/oc/Ocsigen.Make.html
-share/doc/ocsigen/oc/Ocsigen.OCSIGENSIG.html
-share/doc/ocsigen/oc/Ocsigen.PAGES.html
-share/doc/ocsigen/oc/Ocsigen.Text.html
-share/doc/ocsigen/oc/Ocsigen.Xhtml.html
-share/doc/ocsigen/oc/Ocsigen.html
-share/doc/ocsigen/oc/Ocsigenboxes.html
-share/doc/ocsigen/oc/Parseconfig.html
-share/doc/ocsigen/oc/Predefined_senders.html
-share/doc/ocsigen/oc/Simplexmlparser.ExprOrPatt.html
-share/doc/ocsigen/oc/Simplexmlparser.html
-share/doc/ocsigen/oc/XHTML.M.html
-share/doc/ocsigen/oc/XHTML.M_01_00.html
-share/doc/ocsigen/oc/XHTML.M_01_01.html
-share/doc/ocsigen/oc/XHTML.T.BASE.html
-share/doc/ocsigen/oc/XHTML.T.Basic_Forms.html
-share/doc/ocsigen/oc/XHTML.T.Basic_Tables.html
-share/doc/ocsigen/oc/XHTML.T.FORMS.html
-share/doc/ocsigen/oc/XHTML.T.HYPERTEXT.html
-share/doc/ocsigen/oc/XHTML.T.IMAGE.html
-share/doc/ocsigen/oc/XHTML.T.LINK.html
-share/doc/ocsigen/oc/XHTML.T.LIST.html
-share/doc/ocsigen/oc/XHTML.T.METAINFORMATION.html
-share/doc/ocsigen/oc/XHTML.T.PRESENTATION.html
-share/doc/ocsigen/oc/XHTML.T.SPECIAL.html
-share/doc/ocsigen/oc/XHTML.T.STRUCTURE.html
-share/doc/ocsigen/oc/XHTML.T.STYLE_SHEET.html
-share/doc/ocsigen/oc/XHTML.T.TABLES.html
-share/doc/ocsigen/oc/XHTML.T.TEXT.html
-share/doc/ocsigen/oc/XHTML.T.html
-share/doc/ocsigen/oc/XHTML.T_01_00.html
-share/doc/ocsigen/oc/XHTML.T_01_01.html
-share/doc/ocsigen/oc/XHTML.html
-share/doc/ocsigen/oc/code_VALMessages.access.html
-share/doc/ocsigen/oc/code_VALMessages.accesslog.html
-share/doc/ocsigen/oc/code_VALMessages.bip.html
-share/doc/ocsigen/oc/code_VALMessages.console.html
-share/doc/ocsigen/oc/code_VALMessages.debug.html
-share/doc/ocsigen/oc/code_VALMessages.debug_noel.html
-share/doc/ocsigen/oc/code_VALMessages.errlog.html
-share/doc/ocsigen/oc/code_VALMessages.error.html
-share/doc/ocsigen/oc/code_VALMessages.log_aux.html
-share/doc/ocsigen/oc/code_VALMessages.lwtbip.html
-share/doc/ocsigen/oc/code_VALMessages.open_files.html
-share/doc/ocsigen/oc/code_VALMessages.warning.html
-share/doc/ocsigen/oc/index.html
-share/doc/ocsigen/oc/index_attributes.html
-share/doc/ocsigen/oc/index_class_types.html
-share/doc/ocsigen/oc/index_classes.html
-share/doc/ocsigen/oc/index_exceptions.html
-share/doc/ocsigen/oc/index_methods.html
-share/doc/ocsigen/oc/index_module_types.html
-share/doc/ocsigen/oc/index_modules.html
-share/doc/ocsigen/oc/index_types.html
-share/doc/ocsigen/oc/index_values.html
-share/doc/ocsigen/oc/style.css
-share/doc/ocsigen/oc/type_Extensions.html
-share/doc/ocsigen/oc/type_Messages.html
-share/doc/ocsigen/oc/type_Ocsigen.Make.html
-share/doc/ocsigen/oc/type_Ocsigen.OCSIGENSIG.html
-share/doc/ocsigen/oc/type_Ocsigen.PAGES.html
-share/doc/ocsigen/oc/type_Ocsigen.Text.html
-share/doc/ocsigen/oc/type_Ocsigen.Xhtml.html
-share/doc/ocsigen/oc/type_Ocsigen.html
-share/doc/ocsigen/oc/type_Ocsigenboxes.html
-share/doc/ocsigen/oc/type_Parseconfig.html
-share/doc/ocsigen/oc/type_Predefined_senders.html
-share/doc/ocsigen/oc/type_Simplexmlparser.ExprOrPatt.html
-share/doc/ocsigen/oc/type_Simplexmlparser.html
-share/doc/ocsigen/oc/type_XHTML.M.html
-share/doc/ocsigen/oc/type_XHTML.M_01_00.html
-share/doc/ocsigen/oc/type_XHTML.M_01_01.html
-share/doc/ocsigen/oc/type_XHTML.T.BASE.html
-share/doc/ocsigen/oc/type_XHTML.T.Basic_Forms.html
-share/doc/ocsigen/oc/type_XHTML.T.Basic_Tables.html
-share/doc/ocsigen/oc/type_XHTML.T.FORMS.html
-share/doc/ocsigen/oc/type_XHTML.T.HYPERTEXT.html
-share/doc/ocsigen/oc/type_XHTML.T.IMAGE.html
-share/doc/ocsigen/oc/type_XHTML.T.LINK.html
-share/doc/ocsigen/oc/type_XHTML.T.LIST.html
-share/doc/ocsigen/oc/type_XHTML.T.METAINFORMATION.html
-share/doc/ocsigen/oc/type_XHTML.T.PRESENTATION.html
-share/doc/ocsigen/oc/type_XHTML.T.SPECIAL.html
-share/doc/ocsigen/oc/type_XHTML.T.STRUCTURE.html
-share/doc/ocsigen/oc/type_XHTML.T.STYLE_SHEET.html
-share/doc/ocsigen/oc/type_XHTML.T.TABLES.html
-share/doc/ocsigen/oc/type_XHTML.T.TEXT.html
-share/doc/ocsigen/oc/type_XHTML.T.html
-share/doc/ocsigen/oc/type_XHTML.T_01_00.html
-share/doc/ocsigen/oc/type_XHTML.T_01_01.html
-share/doc/ocsigen/oc/type_XHTML.html
+@comment $NetBSD: PLIST,v 1.3 2012/07/11 10:40:46 wiz Exp $
+@unexec %D/libexec/ocaml-findlib-register del %D/lib/ocaml/site-lib/ocsigenserver
+bin/ocsigenserver
+${OPT}bin/ocsigenserver.opt
+share/examples/ocsigen/ocsigenserver.conf
+share/examples/ocsigen/ocsigenserver.conf.sample
+lib/ocaml/site-lib/ocsigenserver/META
+${OPT}lib/ocaml/site-lib/ocsigenserver/baselib.a
+lib/ocaml/site-lib/ocsigenserver/baselib.cma
+${OPT}lib/ocaml/site-lib/ocsigenserver/baselib.cmxa
+lib/ocaml/site-lib/ocsigenserver/extensions/accesscontrol.cmi
+lib/ocaml/site-lib/ocsigenserver/extensions/accesscontrol.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/accesscontrol.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/accesscontrol.cmxs
+lib/ocaml/site-lib/ocsigenserver/extensions/accesscontrol.mli
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/accesscontrol.o
+lib/ocaml/site-lib/ocsigenserver/extensions/authbasic.cmi
+lib/ocaml/site-lib/ocsigenserver/extensions/authbasic.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/authbasic.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/authbasic.cmxs
+lib/ocaml/site-lib/ocsigenserver/extensions/authbasic.mli
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/authbasic.o
+lib/ocaml/site-lib/ocsigenserver/extensions/cgimod.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/cgimod.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/cgimod.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/cgimod.o
+${OPT}lib/ocaml/site-lib/ocsigenserver/donotparsecommandline.a
+lib/ocaml/site-lib/ocsigenserver/donotparsecommandline.cma
+${OPT}lib/ocaml/site-lib/ocsigenserver/donotparsecommandline.cmxa
+${OPT}lib/ocaml/site-lib/ocsigenserver/donotparsecommandline.cmxs
+lib/ocaml/site-lib/ocsigenserver/extensions/extendconfiguration.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/extendconfiguration.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/extendconfiguration.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/extendconfiguration.o
+lib/ocaml/site-lib/ocsigenserver/extensions/extensiontemplate.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/extensiontemplate.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/extensiontemplate.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/extensiontemplate.o
+lib/ocaml/site-lib/ocsigenserver/framepp.cmi
+lib/ocaml/site-lib/ocsigenserver/framepp.mli
+${OPT}lib/ocaml/site-lib/ocsigenserver/http.a
+lib/ocaml/site-lib/ocsigenserver/http.cma
+${OPT}lib/ocaml/site-lib/ocsigenserver/http.cmxa
+lib/ocaml/site-lib/ocsigenserver/http_headers.cmi
+lib/ocaml/site-lib/ocsigenserver/http_headers.mli
+@comment ${OPT}lib/ocaml/site-lib/ocsigenserver/libocsigenserver.a
+${OPT}lib/ocaml/site-lib/ocsigenserver/ocsigenserver.a
+lib/ocaml/site-lib/ocsigenserver/ocsigenserver.cma
+${OPT}lib/ocaml/site-lib/ocsigenserver/ocsigenserver.cmxa
+lib/ocaml/site-lib/ocsigenserver/extensions/ocsigen_comet.cmi
+lib/ocaml/site-lib/ocsigenserver/extensions/ocsigen_comet.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsigen_comet.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsigen_comet.cmxs
+lib/ocaml/site-lib/ocsigenserver/extensions/ocsigen_comet.mli
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsigen_comet.o
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist-dbm.a
+lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist-dbm.cma
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist-dbm.cmxa
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist-dbm.cmxs
+lib/ocaml/site-lib/ocsigenserver/ocsigen_cache.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_cache.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_charset_mime.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_charset_mime.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_config.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_config.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_cookies.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_cookies.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/ocsigen_cookies.cmx
+lib/ocaml/site-lib/ocsigenserver/ocsigen_cookies.mli
+${OPT}lib/ocaml/site-lib/ocsigenserver/ocsigen_cookies.o
+lib/ocaml/site-lib/ocsigenserver/ocsigen_extensions.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_extensions.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_getcommandline.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_getcommandline.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_headers.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_headers.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_http_client.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_http_client.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_http_com.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_http_com.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_http_frame.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_http_frame.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_lib.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_lib.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_lib_base.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_lib_base.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/ocsigen_lib_base.cmx
+lib/ocaml/site-lib/ocsigenserver/ocsigen_lib_base.mli
+${OPT}lib/ocaml/site-lib/ocsigenserver/ocsigen_lib_base.o
+lib/ocaml/site-lib/ocsigenserver/ocsigen_loader.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_loader.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_local_files.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_local_files.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_messages.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_messages.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_parseconfig.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_parseconfig.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_senders.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_senders.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_server.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_server.mli
+lib/ocaml/site-lib/ocsigenserver/ocsigen_stream.cmi
+lib/ocaml/site-lib/ocsigenserver/ocsigen_stream.mli
+lib/ocaml/site-lib/ocsigenserver/extensions/cors.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/cors.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/cors.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/cors.o
+lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist.cmi
+lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist.mli
+lib/ocaml/site-lib/ocsigenserver/extensions/outputfilter.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/outputfilter.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/outputfilter.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/outputfilter.o
+${OPT}lib/ocaml/site-lib/ocsigenserver/parsecommandline.a
+lib/ocaml/site-lib/ocsigenserver/parsecommandline.cma
+${OPT}lib/ocaml/site-lib/ocsigenserver/parsecommandline.cmxa
+${OPT}lib/ocaml/site-lib/ocsigenserver/parsecommandline.cmxs
+lib/ocaml/site-lib/ocsigenserver/polytables.cmi
+lib/ocaml/site-lib/ocsigenserver/polytables.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/polytables.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/polytables.cmxs
+lib/ocaml/site-lib/ocsigenserver/polytables.mli
+${OPT}lib/ocaml/site-lib/ocsigenserver/polytables.o
+lib/ocaml/site-lib/ocsigenserver/extensions/redirectmod.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/redirectmod.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/redirectmod.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/redirectmod.o
+lib/ocaml/site-lib/ocsigenserver/extensions/revproxy.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/revproxy.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/revproxy.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/revproxy.o
+lib/ocaml/site-lib/ocsigenserver/extensions/rewritemod.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/rewritemod.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/rewritemod.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/rewritemod.o
+lib/ocaml/site-lib/ocsigenserver/server_main.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/server_main.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/server_main.o
+lib/ocaml/site-lib/ocsigenserver/extensions/staticmod.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/staticmod.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/staticmod.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/staticmod.o
+lib/ocaml/site-lib/ocsigenserver/extensions/userconf.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/userconf.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/userconf.cmxs
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/userconf.o
+@comment lib/ocaml/site-lib/ocsigenserver/dllocsigenserver.so
+lib/ocaml/site-lib/ocsigenserver/extensions/ocsidbm
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsidbm.opt
+man/man1/ocsigenserver.1
share/examples/ocsigen/mime.types
-share/examples/ocsigen/monitoring.cmo
-share/examples/ocsigen/ocsigen.conf
-share/examples/ocsigen/tutorial.cmi
-share/examples/ocsigen/tutorial.cmo
-@exec %D/libexec/ocaml-findlib-register add %D/lib/ocaml/site-lib/ocsigen
+share/ocsigen/www/index.html
+share/ocsigen/www/ocsigenstuff/back.png
+share/ocsigen/www/ocsigenstuff/cdimage.png
+share/ocsigen/www/ocsigenstuff/deb.png
+share/ocsigen/www/ocsigenstuff/dvi.png
+share/ocsigen/www/ocsigenstuff/folder_open.png
+share/ocsigen/www/ocsigenstuff/html.png
+share/ocsigen/www/ocsigenstuff/image.png
+share/ocsigen/www/ocsigenstuff/ocsigen5.png
+share/ocsigen/www/ocsigenstuff/pdf.png
+share/ocsigen/www/ocsigenstuff/postscript.png
+share/ocsigen/www/ocsigenstuff/readme.png
+share/ocsigen/www/ocsigenstuff/rpm.png
+share/ocsigen/www/ocsigenstuff/sound.png
+share/ocsigen/www/ocsigenstuff/source_c.png
+share/ocsigen/www/ocsigenstuff/source_java.png
+share/ocsigen/www/ocsigenstuff/source_pl.png
+share/ocsigen/www/ocsigenstuff/source_py.png
+share/ocsigen/www/ocsigenstuff/style.css
+share/ocsigen/www/ocsigenstuff/tar.png
+share/ocsigen/www/ocsigenstuff/tex.png
+share/ocsigen/www/ocsigenstuff/tgz.png
+share/ocsigen/www/ocsigenstuff/txt.png
+share/ocsigen/www/ocsigenstuff/unknown.png
+share/ocsigen/www/ocsigenstuff/video.png
+@exec %D/libexec/ocaml-findlib-register add %D/lib/ocaml/site-lib/ocsigenserver
diff --git a/www/ocsigen/PLIST.camlzip b/www/ocsigen/PLIST.camlzip
new file mode 100644
index 00000000000..565caac2991
--- /dev/null
+++ b/www/ocsigen/PLIST.camlzip
@@ -0,0 +1,5 @@
+@comment $NetBSD: PLIST.camlzip,v 1.1 2012/07/11 10:40:46 wiz Exp $
+lib/ocaml/site-lib/ocsigenserver/extensions/deflatemod.cmo
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/deflatemod.cmx
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/deflatemod.cmxs
+lib/ocaml/site-lib/ocsigenserver/extensions/deflatemod.o
diff --git a/www/ocsigen/PLIST.sqlite b/www/ocsigen/PLIST.sqlite
new file mode 100644
index 00000000000..0f743c54c22
--- /dev/null
+++ b/www/ocsigen/PLIST.sqlite
@@ -0,0 +1,5 @@
+@comment $NetBSD: PLIST.sqlite,v 1.1 2012/07/11 10:40:46 wiz Exp $
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist-sqlite.a
+lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist-sqlite.cma
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist-sqlite.cmxa
+${OPT}lib/ocaml/site-lib/ocsigenserver/extensions/ocsipersist-sqlite.cmxs
diff --git a/www/ocsigen/distinfo b/www/ocsigen/distinfo
index 254bd12d24d..46f7d28bd2a 100644
--- a/www/ocsigen/distinfo
+++ b/www/ocsigen/distinfo
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.1.1.1 2007/04/10 20:24:43 tonio Exp $
+$NetBSD: distinfo,v 1.2 2012/07/11 10:40:47 wiz Exp $
-SHA1 (ocsigen-0.6.0.tar.gz) = f1be751468325dc322d11454e92b0cdc1165a0aa
-RMD160 (ocsigen-0.6.0.tar.gz) = 2b6b9d4dbcebfc2fa2f160a0cf5d246f3cc02635
-Size (ocsigen-0.6.0.tar.gz) = 984754 bytes
-SHA1 (patch-aa) = a6bc20b5d27b77261c7d08101a50a244c6ec88a8
-SHA1 (patch-ab) = 34afdaa574df350254c2685e9d198cce9b599f24
+SHA1 (ocsigenserver-2.1.tar.gz) = 91f8478f1a2b49814274b2456d5cb4de38be5f0d
+RMD160 (ocsigenserver-2.1.tar.gz) = a32552e49c8a0eaec5c01c9d95c54685df7b093e
+Size (ocsigenserver-2.1.tar.gz) = 1254537 bytes
+SHA1 (patch-Makefile) = 0b48726ccfb7dcbc8a2d9c9c0b3a09f6180e9036
+SHA1 (patch-src_Makefile) = e3d15afa20380eaa93f0bdb75ab6404c5c888e71
diff --git a/www/ocsigen/options.mk b/www/ocsigen/options.mk
index 3645899ca0d..6b4c519b509 100644
--- a/www/ocsigen/options.mk
+++ b/www/ocsigen/options.mk
@@ -1,17 +1,25 @@
-# $NetBSD: options.mk,v 1.1.1.1 2007/04/10 20:24:43 tonio Exp $
+# $NetBSD: options.mk,v 1.2 2012/07/11 10:40:47 wiz Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.ocsigen
-PKG_SUPPORTED_OPTIONS= ocamlduce
-
-.include "../../mk/bsd.prefs.mk"
+PKG_SUPPORTED_OPTIONS= sqlite camlzip
+PKG_SUGGESTED_OPTIONS= camlzip
.include "../../mk/bsd.options.mk"
-.if !empty(PKG_OPTIONS:Mocamlduce)
-DEPENDS+= ocamlduce>=3.09.3:../../lang/ocamlduce
-CONFIGURE_ARGS+= --enable-ocamlduce
-PLIST_SRC+= PLIST.ocamlduce
+.if !empty(PKG_OPTIONS:Msqlite)
+DEPENDS+= ocaml-sqlite3>=0.23.0:../../databases/ocaml-sqlite3
+CONFIGURE_ARGS+= --with-sqlite
+PLIST_SRC+= PLIST.sqlite
.else
-CONFIGURE_ARGS+= --disable-ocamlduce
+CONFIGURE_ARGS+= --without-sqlite
.endif
+
+.if !empty(PKG_OPTIONS:Mcamlzip)
+DEPENDS+= ocaml-zip-[0-9]*:../../archivers/ocaml-zip
+CONFIGURE_ARGS+= --with-camlzip
+PLIST_SRC+= PLIST.camlzip
+.else
+CONFIGURE_ARGS+= --without-camlzip
+.endif
+
PLIST_SRC+= PLIST
diff --git a/www/ocsigen/patches/patch-Makefile b/www/ocsigen/patches/patch-Makefile
new file mode 100644
index 00000000000..a1c9a9be1a4
--- /dev/null
+++ b/www/ocsigen/patches/patch-Makefile
@@ -0,0 +1,54 @@
+$NetBSD: patch-Makefile,v 1.1 2012/07/11 10:40:47 wiz Exp $
+
+Change makefile to conform to pkgsrc pkginstall framework
+--- Makefile.orig 2012-05-30 10:40:45.000000000 +0000
++++ Makefile
+@@ -66,34 +66,22 @@ install.byte: install.META.byte install.
+ install.opt: install.META.opt install.files
+
+ install.files:
+- ## Command pipe
+- $(INSTALL) -m 755 -d $(dir $(TEMPROOT)$(COMMANDPIPE))
+- [ -p $(TEMPROOT)$(COMMANDPIPE) ] || \
+- { mkfifo $(TEMPROOT)$(COMMANDPIPE); \
+- $(CHMOD) 660 $(TEMPROOT)$(COMMANDPIPE); \
+- $(CHOWN) -R $(OCSIGENUSER):$(OCSIGENGROUP) $(TEMPROOT)$(COMMANDPIPE); }
+ ## Configuration files
+ $(INSTALL) -m 755 -d $(TEMPROOT)$(CONFIGDIR)/conf.d
+ ${INSTALL} -m 644 ${PROJECTNAME}.conf.sample $(TEMPROOT)$(CONFIGDIR)/
+ [ -f $(TEMPROOT)$(CONFIGDIR)/$(PROJECTNAME).conf ] || \
+ { $(INSTALL) -m 644 $(PROJECTNAME).conf.sample \
+ $(TEMPROOT)$(CONFIGDIR)/$(PROJECTNAME).conf; }
+- -mv $(TEMPROOT)$(CONFIGDIR)/mime.types $(TEMPROOT)$(CONFIGDIR)/mime.types.old
+ ## Log directory
+ $(INSTALL) -m 644 src/files/mime.types $(TEMPROOT)$(CONFIGDIR)
+- $(INSTALL) -d -m 755 -o ${OCSIGENUSER} -g ${OCSIGENGROUP} \
+- $(TEMPROOT)$(LOGDIR)
++ $(INSTALL) -d -m 755 $(TEMPROOT)$(LOGDIR)
+ ## Static files
+- $(INSTALL) -d -m 755 -o ${OCSIGENUSER} -g ${OCSIGENGROUP} \
+- $(TEMPROOT)$(STATICPAGESDIR)
+- $(INSTALL) -d -m 750 -o ${OCSIGENUSER} -g ${OCSIGENGROUP} \
+- $(TEMPROOT)$(DATADIR)
+- $(INSTALL) -m 644 -o ${OCSIGENUSER} -g ${OCSIGENGROUP} \
+- local/var/www/*.html $(TEMPROOT)$(STATICPAGESDIR)
+- $(INSTALL) -d -m 755 -o ${OCSIGENUSER} -g ${OCSIGENGROUP} \
+- $(TEMPROOT)$(STATICPAGESDIR)/ocsigenstuff
+- $(INSTALL) -m 644 -o ${OCSIGENUSER} -g ${OCSIGENGROUP} \
+- local/var/www/ocsigenstuff/*.png local/var/www/ocsigenstuff/*.css \
++ $(INSTALL) -d -m 755 $(TEMPROOT)$(STATICPAGESDIR)
++ $(INSTALL) -d -m 750 $(TEMPROOT)$(DATADIR)
++ $(INSTALL) -m 644 local/var/www/*.html $(TEMPROOT)$(STATICPAGESDIR)
++ $(INSTALL) -d -m 755 $(TEMPROOT)$(STATICPAGESDIR)/ocsigenstuff
++ $(INSTALL) -m 644 local/var/www/ocsigenstuff/*.png \
++ local/var/www/ocsigenstuff/*.css \
+ $(TEMPROOT)$(STATICPAGESDIR)/ocsigenstuff
+ $(INSTALL) -d -m 755 $(TEMPROOT)$(MANDIR)
+ $(INSTALL) -m 644 src/files/${PROJECTNAME}.1 $(TEMPROOT)$(MANDIR)
+@@ -152,4 +140,4 @@ dist:
+
+ .PHONY: depend
+ depend:
+- ${MAKE} -C src depend
+\ No newline at end of file
++ ${MAKE} -C src depend
diff --git a/www/ocsigen/patches/patch-aa b/www/ocsigen/patches/patch-aa
deleted file mode 100644
index 664c0191663..00000000000
--- a/www/ocsigen/patches/patch-aa
+++ /dev/null
@@ -1,111 +0,0 @@
-$NetBSD: patch-aa,v 1.1.1.1 2007/04/10 20:24:43 tonio Exp $
-
---- configure.orig 2007-03-15 12:27:54.000000000 +0100
-+++ configure
-@@ -51,10 +51,14 @@ set_defaults () {
- libdir="/usr/local/lib"
- mandir="/usr/local/share/man/man1/"
- docdir="/usr/share/doc"
-+ sysconfdir="/etc"
-+ logdir=/var/log/ocsigen
- name="ocsigen"
- prefix="/"
- ocsigen_user="www-data"
- ocsigen_group="www-data"
-+ staticpagesdir="/var/www/$name"
-+ uploaddir="/tmp"
- }
-
- set_defaults
-@@ -132,6 +136,10 @@ print_options () {
- echo " --libdir $libdir"
- echo " --mandir $mandir"
- echo " --docdir $docdir"
-+ echo " --sysconfdir $sysconfdir"
-+ echo " --logdir $logdir"
-+ echo " --staticpagesdir $staticpagesdir"
-+ echo " --uploaddir $uploaddir"
- echo " --name $name"
- }
-
-@@ -174,6 +182,18 @@ _EOF_
- --docdir dir
- Install documentation in this directory
-
-+--sysconfdir dir
-+ Install system configuration files in this directory
-+
-+--logdir dir
-+ Install log files in this directory
-+
-+--staticpagesdir dir
-+ Serve static pages from this directory
-+
-+--uploaddir dir
-+ Put uploaded files in this directory
-+
- --name name
- The name of the server (and directory for the modules)
-
-@@ -266,6 +286,26 @@ while [ "$#" -gt 0 ]; do
- shift
- shift
- ;;
-+ --sysconfdir)
-+ sysconfdir="$2"
-+ shift
-+ shift
-+ ;;
-+ --logdir)
-+ logdir="$2"
-+ shift
-+ shift
-+ ;;
-+ --staticpagesdir)
-+ staticpagesdir="$2"
-+ shift
-+ shift
-+ ;;
-+ --uploaddir)
-+ uploaddir="$2"
-+ shift
-+ shift
-+ ;;
- --name)
- name="$2"
- shift
-@@ -322,9 +362,10 @@ fi
- ######################################################################
- # Check whether OCaml version is > 3.9
- version=`ocamlc -version`
--ocamlversion=`n1=${version:0:1}; \
-- n2=${version:2:2}; \
-- n3=${version:5}; \
-+ocamlversion=`n1=${version%%.[0-9][0-9].[0-9]}; \
-+ tail=${version##[0-9].}; \
-+ n2=${tail%%.[0-9]}; \
-+ n3=${tail##[0-9][0-9].}; \
- if [ $n1 = "3" ] && [ $n2 -le 9 ]; then \
- echo "OLD"; \
- else \
-@@ -426,16 +467,16 @@ OCSIGENGROUP=$ocsigen_user
- OCSIGENNAME=$name
-
- # ocsigen's logs:
--LOGDIR = /var/log/\$(OCSIGENNAME)
-+LOGDIR = $logdir
-
- # Config files:
--CONFIGDIR = /etc/\$(OCSIGENNAME)
-+CONFIGDIR = $sysconfdir
-
- # Where to put static pages:
--STATICPAGESDIR = /var/www/\$(OCSIGENNAME)
-+STATICPAGESDIR = $staticpagesdir
-
- # Default directory for file upload:
--UPLOADDIR = /tmp
-+UPLOADDIR = $uploaddir
-
- # Where to put Ocsigen documentation:
- DOCDIR = $docdir/\$(OCSIGENNAME)
diff --git a/www/ocsigen/patches/patch-ab b/www/ocsigen/patches/patch-ab
deleted file mode 100644
index e165a27ebee..00000000000
--- a/www/ocsigen/patches/patch-ab
+++ /dev/null
@@ -1,75 +0,0 @@
-$NetBSD: patch-ab,v 1.1.1.1 2007/04/10 20:24:43 tonio Exp $
-
---- Makefile.orig 2007-03-15 12:27:51.000000000 +0100
-+++ Makefile
-@@ -64,19 +64,19 @@ depend: xmlp4
-
- .PHONY: install fullinstall doc
- install:
-- mkdir -p $(PREFIX)/$(MODULEINSTALLDIR)
-+ mkdir -p $(MODULEINSTALLDIR)
- mkdir -p $(PREFIX)/$(EXAMPLESINSTALLDIR)
- $(MAKE) -C server install
- cat META.in | sed s/_VERSION_/`head -n 1 VERSION`/ > META
-- $(OCAMLFIND) install $(OCSIGENNAME) -destdir "$(PREFIX)/$(MODULEINSTALLDIR)" $(TOINSTALL)
-+ $(OCAMLFIND) install $(OCSIGENNAME) -destdir "$(MODULEINSTALLDIR)" $(TOINSTALL)
- install -m 644 $(EXAMPLES) $(PREFIX)/$(EXAMPLESINSTALLDIR)
- -rm META
-
-
- fullinstall: doc install
-- mkdir -p $(PREFIX)/$(CONFIGDIR)
-+ mkdir -p $(EGDIR)
- mkdir -p $(PREFIX)/$(STATICPAGESDIR)
-- -mv $(PREFIX)/$(CONFIGDIR)/ocsigen.conf $(PREFIX)/$(CONFIGDIR)/ocsigen.conf.old
-+# -mv $(EGDIR)/ocsigen.conf $(EGDIR)/ocsigen.conf.old
- cat files/ocsigen.conf \
- | sed s%_LOGDIR_%$(LOGDIR)%g \
- | sed s%_STATICPAGESDIR_%$(STATICPAGESDIR)%g \
-@@ -84,16 +84,16 @@ fullinstall: doc install
- | sed s%_OCSIGENUSER_%$(OCSIGENUSER)%g \
- | sed s%_OCSIGENGROUP_%$(OCSIGENGROUP)%g \
- | sed s%_MODULEINSTALLDIR_%$(MODULEINSTALLDIR)/$(OCSIGENNAME)%g \
-- > $(PREFIX)/$(CONFIGDIR)/ocsigen.conf
-- -mv $(PREFIX)/$(CONFIGDIR)/mime.types $(PREFIX)/$(CONFIGDIR)/mime.types.old
-- cp -f files/mime.types $(PREFIX)/$(CONFIGDIR)
-- mkdir -p $(PREFIX)/$(LOGDIR)
-- $(CHOWN) -R $(OCSIGENUSER):$(OCSIGENGROUP) $(PREFIX)/$(LOGDIR)
-+ > $(EGDIR)/ocsigen.conf
-+# -mv $(EGDIR)/mime.types $(EGDIR)/mime.types.old
-+ cp -f files/mime.types $(EGDIR)
-+ mkdir -p $(LOGDIR)
-+ $(CHOWN) -R $(OCSIGENUSER):$(OCSIGENGROUP) $(LOGDIR)
- $(CHOWN) -R $(OCSIGENUSER):$(OCSIGENGROUP) $(PREFIX)/$(STATICPAGESDIR)
-- chmod u+rwx $(PREFIX)/$(LOGDIR)
-- chmod a+rx $(PREFIX)/$(CONFIGDIR)
-- chmod a+r $(PREFIX)/$(CONFIGDIR)/ocsigen.conf
-- chmod a+r $(PREFIX)/$(CONFIGDIR)/mime.types
-+ chmod u+rwx $(LOGDIR)
-+ chmod a+rx $(EGDIR)
-+ chmod a+r $(EGDIR)/ocsigen.conf
-+ chmod a+r $(EGDIR)/mime.types
- mkdir -p $(PREFIX)/$(DOCDIR)
- install -d -m 755 $(PREFIX)/$(DOCDIR)/lwt
- install -d -m 755 $(PREFIX)/$(DOCDIR)/oc
-@@ -102,13 +102,13 @@ fullinstall: doc install
- install -m 644 doc/oc/* $(PREFIX)/$(DOCDIR)/oc
- chmod a+rx $(PREFIX)/$(DOCDIR)
- chmod a+r $(PREFIX)/$(DOCDIR)/*
-- [ -d /etc/logrotate.d ] && \
-- { mkdir -p ${PREFIX}/etc/logrotate.d ; \
-- cat files/logrotate.IN \
-- | sed s%LOGDIR%$(LOGDIR)%g \
-- | sed s%USER%$(OCSIGENUSER)%g \
-- | sed s%GROUP%$(OCSIGENGROUP)%g \
-- > $(PREFIX)/etc/logrotate.d/$(OCSIGENNAME); }
-+# [ -d /etc/logrotate.d ] && \
-+# { mkdir -p ${PREFIX}/etc/logrotate.d ; \
-+# cat files/logrotate.IN \
-+# | sed s%LOGDIR%$(LOGDIR)%g \
-+# | sed s%USER%$(OCSIGENUSER)%g \
-+# | sed s%GROUP%$(OCSIGENGROUP)%g \
-+# > $(PREFIX)/etc/logrotate.d/$(OCSIGENNAME); }
- install -d -m 755 $(PREFIX)/$(MANDIR)
- install -m 644 files/ocsigen.1 $(PREFIX)/$(MANDIR)
-
diff --git a/www/ocsigen/patches/patch-src_Makefile b/www/ocsigen/patches/patch-src_Makefile
new file mode 100644
index 00000000000..f1730b3cc98
--- /dev/null
+++ b/www/ocsigen/patches/patch-src_Makefile
@@ -0,0 +1,13 @@
+$NetBSD: patch-src_Makefile,v 1.1 2012/07/11 10:40:47 wiz Exp $
+
+patch to make destdir work
+--- src/Makefile.orig 2011-04-22 15:57:48.000000000 +0000
++++ src/Makefile
+@@ -117,6 +117,7 @@ raw_install:
+ $(OCAMLFIND) install $(PROJECTNAME) \
+ -destdir $(TEMPROOT)$(LIBDIR) \
+ -patch-version ${VERSION} \
++ -ldconf /dev/null \
+ ${INTF} $(INSTALL_IMPL) $(DOC) files/META
+ # Extensions
+ $(INSTALL) -m 755 -d $(TEMPROOT)${LIBDIR}/${PROJECTNAME}/extensions/