+++ /dev/null
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit eutils multilib findlib
-
-DESCRIPTION="A web framework to program client/server applications"
-HOMEPAGE="http://ocsigen.org/eliom/"
-SRC_URI="https://github.com/ocsigen/eliom/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1-with-linking-exception"
-SLOT="0/${PV}"
-KEYWORDS="~amd64"
-IUSE="doc +ocamlopt"
-
-RDEPEND=">=dev-lang/ocaml-4.00:=[ocamlopt?]
- >=dev-ml/js_of_ocaml-2.5-r1:=
- >=www-servers/ocsigenserver-2.5:=
- >=dev-ml/tyxml-3.6:=
- >=dev-ml/deriving-0.6:=
- dev-ml/reactiveData:=
- dev-ml/ocaml-ipaddr:=
- dev-ml/react:=
- dev-ml/ocaml-ssl:=
- >=dev-ml/lwt-2.5.0:=
- dev-ml/calendar:="
-DEPEND="${RDEPEND}
- dev-ml/opam"
-
-src_prepare() {
- epatch "${FILESDIR}/tyxml36.patch"
-}
-
-src_compile() {
- if use ocamlopt ; then
- emake all
- else
- emake byte
- fi
- use doc && emake doc
- emake man
-}
-
-src_install() {
- opam-installer \
- --prefix="${ED}/usr" \
- --libdir="${D}/$(ocamlc -where)" \
- --docdir="${ED}/usr/share/doc/${PF}" \
- --mandir="${ED}/usr/share/man" \
- || die
- dodoc CHANGES README
- if use doc ; then
- docinto client/html
- dodoc -r _build/src/lib/client/api.docdir/*
- docinto server/html
- dodoc -r _build/src/lib/server/api.docdir/*
- fi
-}
+++ /dev/null
-Backported from:
-
-commit e55552629e9affcaefbe9e0f36212fe3f385a780
-Author: Vasilis Papavasileiou <git@vasilis.airpost.net>
-Date: Thu Aug 6 13:23:29 2015 +0200
-
- update for new-style TyXML wrapping
-
-
-Index: eliom-4.2/src/lib/eliom_content.client.mli
-===================================================================
---- eliom-4.2.orig/src/lib/eliom_content.client.mli
-+++ eliom-4.2/src/lib/eliom_content.client.mli
-@@ -74,7 +74,7 @@ module Svg : sig
-
- (** Creation of reactive content *)
- module R : sig
-- module Raw : Svg_sigs.MakeWrapped(Tyxml_js.Xml_wrap)(Xml).T
-+ module Raw : Svg_sigs.Make(Eliom_content_core.Xml_wed).T
- with type +'a elt = 'a elt
- and type +'a attrib = 'a attrib
-
-@@ -397,7 +397,7 @@ module Html5 : sig
- val filter_attrib : 'a attrib -> bool React.signal -> 'a attrib
-
- (** Cf. {% <<a_api project="tyxml" | module Html5_sigs.T >> %}. *)
-- module Raw : Html5_sigs.MakeWrapped(Tyxml_js.Xml_wrap)(Xml)(Svg.R.Raw).T
-+ module Raw : Html5_sigs.Make(Eliom_content_core.Xml_wed)(Svg.R.Raw).T
- with type +'a elt = 'a elt
- and type +'a attrib = 'a attrib
-
-Index: eliom-4.2/src/lib/eliom_content_core.client.ml
-===================================================================
---- eliom-4.2.orig/src/lib/eliom_content_core.client.ml
-+++ eliom-4.2/src/lib/eliom_content_core.client.ml
-@@ -26,6 +26,7 @@ open Eliom_lib
-
- module Xml = struct
- include RawXML
-+ module W = Xml_wrap.NoWrap
- type 'a wrap = 'a
- type 'a list_wrap = 'a list
- type econtent =
-@@ -163,8 +164,9 @@ end
-
- module Xml_wed =
- struct
-- type 'a wrap = 'a Tyxml_js.Xml_wrap.t
-- type 'a list_wrap = 'a Tyxml_js.Xml_wrap.tlist
-+ module W = Tyxml_js.Xml_wrap
-+ type 'a wrap = 'a W.t
-+ type 'a list_wrap = 'a W.tlist
- type uri = Xml.uri
- let string_of_uri = Xml.string_of_uri
- let uri_of_string = Xml.uri_of_string
-@@ -250,7 +252,7 @@ module Svg = struct
- end
-
- module R = struct
-- module Raw = Svg_f.MakeWrapped(Tyxml_js.Xml_wrap)(Xml_wed)
-+ module Raw = Svg_f.Make(Xml_wed)
- include Raw
-
- end
-@@ -322,7 +324,7 @@ module Html5 = struct
-
- let node s = Xml.make_react s
-
-- module Raw = Html5_f.MakeWrapped(Tyxml_js.Xml_wrap)(Xml_wed)(Svg.R)
-+ module Raw = Html5_f.Make(Xml_wed)(Svg.R)
- let filter_attrib (name,a) on =
- let v = match a with
- | Xml.RA a -> Xml.RAReact (React.S.map (function
-Index: eliom-4.2/src/lib/eliom_content_core.client.mli
-===================================================================
---- eliom-4.2.orig/src/lib/eliom_content_core.client.mli
-+++ eliom-4.2/src/lib/eliom_content_core.client.mli
-@@ -22,6 +22,8 @@
-
- module Xml : sig
-
-+ module W : Xml_wrap.T with type 'a t = 'a and type 'a tlist = 'a list
-+
- type uri = string
- val uri_of_string : uri -> string
- val string_of_uri : string -> uri
-@@ -147,6 +149,8 @@ module Xml : sig
- val set_classes_of_elt : elt -> elt
- end
-
-+module Xml_wed : Xml_sigs.T with module W = Tyxml_js.Xml_wrap
-+
- (** Building SVG tree. *)
- module Svg : sig
-
-@@ -197,7 +201,7 @@ module Svg : sig
- (** Typed interface for building valid reactive SVG tree. *)
- module R : sig
-
-- module Raw : Svg_sigs.MakeWrapped(Tyxml_js.Xml_wrap)(Xml).T
-+ module Raw : Svg_sigs.Make(Xml_wed).T
- with type +'a elt = 'a elt
- and type +'a attrib = 'a attrib
-
-@@ -298,7 +302,7 @@ module Html5 : sig
-
- val filter_attrib : 'a attrib -> bool React.signal -> 'a attrib
-
-- module Raw : Html5_sigs.MakeWrapped(Tyxml_js.Xml_wrap)(Xml)(Svg.R.Raw).T
-+ module Raw : Html5_sigs.Make(Xml_wed)(Svg.R.Raw).T
- with type +'a elt = 'a elt
- and type +'a attrib = 'a attrib
-
-Index: eliom-4.2/src/lib/eliom_content_core.server.ml
-===================================================================
---- eliom-4.2.orig/src/lib/eliom_content_core.server.ml
-+++ eliom-4.2/src/lib/eliom_content_core.server.ml
-@@ -28,6 +28,7 @@ open Eliom_lib
-
- module Xml = struct
- include RawXML
-+ module W = Xml_wrap.NoWrap
- type 'a wrap = 'a
- type 'a list_wrap = 'a list
-