summaryrefslogtreecommitdiff
path: root/dev-ml/ppx_tools
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ml/ppx_tools')
-rw-r--r--dev-ml/ppx_tools/Manifest7
-rw-r--r--dev-ml/ppx_tools/files/ocaml404.patch47
-rw-r--r--dev-ml/ppx_tools/metadata.xml11
-rw-r--r--dev-ml/ppx_tools/ppx_tools-5.0.4.03.0.ebuild33
-rw-r--r--dev-ml/ppx_tools/ppx_tools-5.0.4.05.0.ebuild29
5 files changed, 127 insertions, 0 deletions
diff --git a/dev-ml/ppx_tools/Manifest b/dev-ml/ppx_tools/Manifest
new file mode 100644
index 000000000000..2dc7dfd5e717
--- /dev/null
+++ b/dev-ml/ppx_tools/Manifest
@@ -0,0 +1,7 @@
+AUX ocaml404.patch 2031 SHA256 607ae0fc6356f51c09dd8ca10d767fd176050c2e5f4971b38bc4506b9a2e43ba SHA512 507bda106d25a92718aae1b0e95103d481cbe18624f80a59af6b3e884594c1d18b0c15b51f014b1af39b09a5264272f92ee8d18dcca37e7595964f85241c141a WHIRLPOOL 38bcb37d2843e8dfb5d6caaf1053cb6501f9f6c6abcaed85afffba6fb1bca1de85cb67705529b3c94b4e119cf70d4ce2da60f96ca28e53ce89f8c3216ba6cb1a
+DIST ppx_tools-5.0.4.03.0.tar.gz 17209 SHA256 2cd990ef36145c35b0fd2cfaadc379cf032dd0987c07bea094d4437277d573e5 SHA512 d1867b084885704757f390b6f6ca8b5d7702f0476149d99ea227f98230ab35d57f5c4aa779881231a0a77cfd1861255118fa2551a49ab85553f63e9aab9baae4 WHIRLPOOL a74a30397ec858d3be478c85d7e4b54f065e35d6a95b95cca0a49049eb167e23892088620d9cdb59d81b598be0ebe3a1be123928768e21186f710ad81a5b8118
+DIST ppx_tools-5.0.4.05.0.tar.gz 17893 SHA256 031e05e2f98fd77a412cff00f19262e186b0c8a1804fece06d2af05e37a563b7 SHA512 33b4420500a2b5880e770f8fdf2b37ef08e52ff84f96f955c6321492de906568979feccb1b2b477b1117619ba28edd8d3e0f178c5684f0dc43c6ed56266c4d64 WHIRLPOOL a48ed77f05d7cc52fa40a4a017b689c34695bf267b74dd438a7da7d1c30a5709de6e01a1dffaa110086b5ed410689189fee45686502a6a0d70de71be9a8b1d86
+EBUILD ppx_tools-5.0.4.03.0.ebuild 808 SHA256 43da43e9ee1a531b47752097c5d68c67a51f69e2c2408db325fa61d147e10a57 SHA512 0ac1bb42288129bc1060b0bbb230a4a4becd88a439105936ac9c1dc2f7d4dff5305b76893fc25394bf3bd5bf58f306214cb1d3bf8c9a62c022518607ee0e4d67 WHIRLPOOL c896406729cd4fb04decc7a1964dd37c6fe01840c5aecfa4af8a4efdfb68e1da33b918b92c2b9cdd899d767690280bd57f633228ce682df88fac9652821891dc
+EBUILD ppx_tools-5.0.4.05.0.ebuild 711 SHA256 5d166dfae9d051d586896a7b269985429f183214b31bb4269e813ae8ca693693 SHA512 298f93f131a3194c0fdfd4cbbf75a4f148290273d579816f398a0551cde42ff48620d0ecc02d5c0ac0ee349a91d867ceca2c6eef5a9f030527ec03329cb5ca36 WHIRLPOOL 80ba7bd8edd8ba7ee20dce4447fd4514e2eba1a18dafc2c619bd062f75ea6089078fc7b4158ee7da034ad4a751842c57544abd1d79a27eb01775bcf5b27bf1c1
+MISC ChangeLog 1866 SHA256 d01f067c0deee1ae4e1c497c4843f48c93e26a1eef79b3030136777911da514e SHA512 0e8c986c92456f824765bc90d3f87e77a93cfb0c0f14c59f587326031f5a3ce7a90007551dd0d508f5851ec0a71a70a6630b14ad01f9385e63f406b4ef48d215 WHIRLPOOL f51be9d71547c0346c02f60fe50df628f9ddad766902c23b031d04a3e00829d47196e4eae88fa8051eea45cefce6466ee6d9694f7844b3730b5ed2059c8709a1
+MISC metadata.xml 343 SHA256 87064e375d2727a76537d55f44c370f77943cfcf9d407f450da087f5a5260e5b SHA512 af6d8ea7cea8aee25e51afdd9b2f6a8353467a67089121d3dfddef55ae48b31f8f3e539cea90455d0044dba784ca21b6af4be8eb55a455c97827b7277ac37aff WHIRLPOOL 553fa13a5dda0864af3b41ec8cf54641c921535654694695ab54eca4cab5f80eed9f4bd44db84805b480d9aa1e3a13dfeb79fb9a3dfc3dfa9db92cd9eabd3646
diff --git a/dev-ml/ppx_tools/files/ocaml404.patch b/dev-ml/ppx_tools/files/ocaml404.patch
new file mode 100644
index 000000000000..8a2ccee071e4
--- /dev/null
+++ b/dev-ml/ppx_tools/files/ocaml404.patch
@@ -0,0 +1,47 @@
+Index: ppx_tools-5.0-4.03.0/ast_mapper_class.ml
+===================================================================
+--- ppx_tools-5.0-4.03.0.orig/ast_mapper_class.ml
++++ ppx_tools-5.0-4.03.0/ast_mapper_class.ml
+@@ -335,6 +335,7 @@ module P = struct
+ | Ppat_unpack s -> unpack ~loc ~attrs (map_loc sub s)
+ | Ppat_exception p -> exception_ ~loc ~attrs (sub # pat p)
+ | Ppat_extension x -> extension ~loc ~attrs (sub # extension x)
++ | Ppat_open (l, p) -> open_ ~loc ~attrs (map_loc sub l) (sub # pat p)
+ end
+
+ module CE = struct
+Index: ppx_tools-5.0-4.03.0/genlifter.ml
+===================================================================
+--- ppx_tools-5.0-4.03.0.orig/genlifter.ml
++++ ppx_tools-5.0-4.03.0/genlifter.ml
+@@ -49,8 +49,8 @@ module Main : sig end = struct
+ let rec gen ty =
+ if Hashtbl.mem printed ty then ()
+ else let tylid = Longident.parse ty in
+- let (_, td) =
+- try Env.lookup_type tylid env
++ let td =
++ try Env.find_type (Env.lookup_type tylid env) env
+ with Not_found ->
+ Format.eprintf "** Cannot resolve type %s@." ty;
+ exit 2
+Index: ppx_tools-5.0-4.03.0/rewriter.ml
+===================================================================
+--- ppx_tools-5.0-4.03.0.orig/rewriter.ml
++++ ppx_tools-5.0-4.03.0/rewriter.ml
+@@ -92,13 +92,13 @@ let () =
+ | `Struct ->
+ let pstr = Parse.implementation lexer in
+ let pstr = Pparse.apply_rewriters (* ~restore:true *) ~tool_name:!tool_name
+- Config.ast_impl_magic_number pstr in
++ Pparse.Structure pstr in
+ Pprintast.structure fmt pstr;
+ Format.pp_print_newline fmt ()
+ | `Sig ->
+ let psig = Parse.interface lexer in
+ let psig = Pparse.apply_rewriters (* ~restore:true *) ~tool_name:!tool_name
+- Config.ast_intf_magic_number psig in
++ Pparse.Signature psig in
+ Pprintast.signature fmt psig;
+ Format.pp_print_newline fmt ())
+ with exn ->
diff --git a/dev-ml/ppx_tools/metadata.xml b/dev-ml/ppx_tools/metadata.xml
new file mode 100644
index 000000000000..56d1f00f232a
--- /dev/null
+++ b/dev-ml/ppx_tools/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>Gentoo ML Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">alainfrisch/ppx_tools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ml/ppx_tools/ppx_tools-5.0.4.03.0.ebuild b/dev-ml/ppx_tools/ppx_tools-5.0.4.03.0.ebuild
new file mode 100644
index 000000000000..b77cef7d6d73
--- /dev/null
+++ b/dev-ml/ppx_tools/ppx_tools-5.0.4.03.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit findlib versionator eutils
+
+MY_PV=$(replace_version_separator 2 '+')
+DESCRIPTION="Tools for authors of ppx rewriters"
+HOMEPAGE="https://github.com/alainfrisch/ppx_tools"
+SRC_URI="https://github.com/alainfrisch/ppx_tools/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc"
+IUSE="+ocamlopt"
+
+DEPEND=">=dev-lang/ocaml-4.03.0:=[ocamlopt?]"
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${PN}-$(replace_version_separator 2 '-')"
+
+src_prepare() {
+ has_version '>=dev-lang/ocaml-4.04_beta' && epatch "${FILESDIR}/ocaml404.patch"
+}
+
+src_compile() {
+ emake -j1 $(usex ocamlopt "" "ARCH=none")
+}
+
+src_install() {
+ findlib_src_install
+ dodoc README.md
+}
diff --git a/dev-ml/ppx_tools/ppx_tools-5.0.4.05.0.ebuild b/dev-ml/ppx_tools/ppx_tools-5.0.4.05.0.ebuild
new file mode 100644
index 000000000000..2ec6b114e829
--- /dev/null
+++ b/dev-ml/ppx_tools/ppx_tools-5.0.4.05.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit findlib versionator eutils
+
+MY_PV=$(replace_version_separator 2 '+')
+DESCRIPTION="Tools for authors of ppx rewriters"
+HOMEPAGE="https://github.com/alainfrisch/ppx_tools"
+SRC_URI="https://github.com/alainfrisch/ppx_tools/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc"
+IUSE="+ocamlopt"
+
+DEPEND=">=dev-lang/ocaml-4.05_beta:=[ocamlopt?]"
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${PN}-$(replace_version_separator 2 '-')"
+
+src_compile() {
+ emake -j1 $(usex ocamlopt "" "ARCH=none")
+}
+
+src_install() {
+ findlib_src_install
+ dodoc README.md
+}