From: "Alexis Ballier" <aballier@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-ml/eliom/, dev-ml/eliom/files/
Date: Fri, 12 Aug 2016 11:05:22 +0000 (UTC) [thread overview]
Message-ID: <1470999833.6a42f01bcca5713a9f6a7c1ed81441c8213af56b.aballier@gentoo> (raw)
commit: 6a42f01bcca5713a9f6a7c1ed81441c8213af56b
Author: Alexis Ballier <aballier <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 12 11:02:07 2016 +0000
Commit: Alexis Ballier <aballier <AT> gentoo <DOT> org>
CommitDate: Fri Aug 12 11:03:53 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a42f01b
dev-ml/eliom: fix build with ocaml 4.03 and add missing dep on camlp4
Package-Manager: portage-2.3.0
.../{eliom-5.0.0.ebuild => eliom-5.0.0-r1.ebuild} | 9 +++-
dev-ml/eliom/files/camlp4.patch | 48 ++++++++++++++++++++++
dev-ml/eliom/files/oc43.patch | 37 +++++++++++++++++
3 files changed, 93 insertions(+), 1 deletion(-)
diff --git a/dev-ml/eliom/eliom-5.0.0.ebuild b/dev-ml/eliom/eliom-5.0.0-r1.ebuild
similarity index 88%
rename from dev-ml/eliom/eliom-5.0.0.ebuild
rename to dev-ml/eliom/eliom-5.0.0-r1.ebuild
index e0d8cb7..b5103a3 100644
--- a/dev-ml/eliom/eliom-5.0.0.ebuild
+++ b/dev-ml/eliom/eliom-5.0.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -26,11 +26,18 @@ RDEPEND=">=dev-lang/ocaml-4.00:=[ocamlopt?]
dev-ml/ocaml-ssl:=
>=dev-ml/lwt-2.5.0:=
dev-ml/calendar:=
+ dev-ml/camlp4:=
ppx? ( >=dev-ml/ppx_tools-0.99.3:= )"
DEPEND="${RDEPEND}
dev-ml/ocamlbuild
dev-ml/opam"
+src_prepare() {
+ if has_version '>=dev-lang/ocaml-4.03' ; then
+ epatch "${FILESDIR}/"{camlp4,oc43}.patch
+ fi
+}
+
src_compile() {
if use ocamlopt ; then
emake PPX=$(usex ppx true false) all
diff --git a/dev-ml/eliom/files/camlp4.patch b/dev-ml/eliom/files/camlp4.patch
new file mode 100644
index 0000000..59e94ab
--- /dev/null
+++ b/dev-ml/eliom/files/camlp4.patch
@@ -0,0 +1,48 @@
+commit f157a5b913451b85e8cfe7549c66e5c98669233b
+Author: Vasilis Papavasileiou <git@vasilis.airpost.net>
+Date: Wed Mar 2 14:23:02 2016 +0100
+
+ Compile against Camlp4 4.02+7
+
+diff --git a/src/syntax/pa_eliom_seed.ml b/src/syntax/pa_eliom_seed.ml
+index c101ff8..dc31caa 100644
+--- a/src/syntax/pa_eliom_seed.ml
++++ b/src/syntax/pa_eliom_seed.ml
+@@ -632,8 +632,26 @@ module Register(Id : sig val name: string end)(Pass : Pass) = struct
+ | None ->
+ Printf.ksprintf (Syntax_error.raise loc) fmt
+
+- module E2 = Camlp4.ErrorHandler.Register(Syntax_error)
+- DELETE_RULE Gram expr: "{"; TRY [label_expr_list; "}"] END;
++ module E2 = Camlp4.ErrorHandler.Register(Syntax_error) ;;
++
++ try
++ DELETE_RULE Gram expr: "{"; TRY [label_expr_list; "}"] END
++ with Camlp4.Struct.Grammar.Delete.Rule_not_found _ ->
++ (let test_record_field =
++ Gram.Entry.of_parser "record_field" (fun strm ->
++ let rec loop = function
++ | [] -> ()
++ | (UIDENT _, _) :: (KEYWORD ".", _) :: rest -> loop rest
++ | (LIDENT _, _) :: (KEYWORD "=", _) :: _ -> ()
++ | (LIDENT _, _) :: (KEYWORD ";", _) :: _ -> ()
++ | [LIDENT _, _] -> ()
++ | _ -> raise Stream.Failure
++ in
++ loop (Stream.npeek 100 strm))
++ in
++ DELETE_RULE Gram expr:
++ "{"; test_record_field; label_expr_list; "}" END) ;;
++
+ DELETE_RULE Gram expr: "{"; TRY [expr LEVEL "."; "with"]; label_expr_list; "}" END;
+
+ (* Extending syntax *)
+@@ -812,7 +830,7 @@ module Register(Id : sig val name: string end)(Pass : Pass) = struct
+ expr: LEVEL "simple"
+
+ [ [ KEYWORD "{"; lel = TRY [lel = label_expr_list; "}" -> lel] ->
+- <:expr< { $lel$ } >>
++ Ast.ExRec (_loc, lel, Ast.ExNil _loc)
+ | KEYWORD "{shared#";
+ typ = TRY [ typ = OPT ctyp; KEYWORD "{" -> typ];
+ opt_lvl = dummy_set_level_shared_value_expr ;
diff --git a/dev-ml/eliom/files/oc43.patch b/dev-ml/eliom/files/oc43.patch
new file mode 100644
index 0000000..07d2729
--- /dev/null
+++ b/dev-ml/eliom/files/oc43.patch
@@ -0,0 +1,37 @@
+Index: eliom-5.0.0/src/lib/eliom_lib.client.mli
+===================================================================
+--- eliom-5.0.0.orig/src/lib/eliom_lib.client.mli
++++ eliom-5.0.0/src/lib/eliom_lib.client.mli
+@@ -43,7 +43,6 @@ type 'a shared_value = 'a
+
+ val create_shared_value : 'a -> 'a client_value -> 'a shared_value
+
+-exception Eliom_Internal_Error of string
+
+ (** This exception is raised (in Lwt) on the client if a call to a
+ server function {% <<a_api subproject="server"|val
+Index: eliom-5.0.0/src/lib/eliom_lib.server.mli
+===================================================================
+--- eliom-5.0.0.orig/src/lib/eliom_lib.server.mli
++++ eliom-5.0.0/src/lib/eliom_lib.server.mli
+@@ -50,7 +50,6 @@ type +'a shared_value
+ *)
+ exception Client_value_creation_invalid_context of string
+
+-exception Eliom_Internal_Error of string
+
+ type file_info = Ocsigen_extensions.file_info
+
+Index: eliom-5.0.0/src/syntax/pa_include.ml
+===================================================================
+--- eliom-5.0.0.orig/src/syntax/pa_include.ml
++++ eliom-5.0.0/src/syntax/pa_include.ml
+@@ -27,7 +27,7 @@ module Make(Syntax : Camlp4.Sig.Camlp4Sy
+ class subst_type env = object (self)
+ inherit Ast.map as super
+ method sig_item si = match si with
+- | Ast.SgTyp (_loc, (Ast.TyDcl (_, lid, _, Ast.TyNil _, _)))
++ | Ast.SgTyp (_loc, rf, (Ast.TyDcl (_, lid, _, Ast.TyNil _, _)))
+ when List.mem_assoc lid env -> <:sig_item< >>
+ | si -> super#sig_item si
+ method ctyp ty = match ty with
next reply other threads:[~2016-08-12 11:05 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-12 11:05 Alexis Ballier [this message]
-- strict thread matches above, loose matches on Subject: below --
2016-12-19 12:54 [gentoo-commits] repo/gentoo:master commit in: dev-ml/eliom/, dev-ml/eliom/files/ Alexis Ballier
2016-10-10 14:03 Alexis Ballier
2016-08-12 12:47 Alexis Ballier
2016-03-01 18:47 Alexis Ballier
2016-01-19 12:18 Alexis Ballier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1470999833.6a42f01bcca5713a9f6a7c1ed81441c8213af56b.aballier@gentoo \
--to=aballier@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox