summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHank Leininger <hlein@korelogic.com>2020-08-02 16:21:40 -0600
committerSam James <sam@gentoo.org>2020-08-14 23:23:32 +0000
commit74cf47dd94181c32254ce87aa89de3e360db6922 (patch)
tree47ca6c14834c35b633aa573957ecce38fbdbac19 /dev-ml/camomile
parentdev-ml/ocaml-gettext: ocaml-4.09 compat fixes (diff)
downloadgentoo-74cf47dd94181c32254ce87aa89de3e360db6922.tar.gz
gentoo-74cf47dd94181c32254ce87aa89de3e360db6922.tar.bz2
gentoo-74cf47dd94181c32254ce87aa89de3e360db6922.zip
dev-ml/camomile: ocaml-4.09 compat fixes
Existing ebuild will not build with ocaml-4.09, only with older versions that have an outstanding GLSA (202007-48). ocaml-4.09 is being stabilized now. This commit just uses the existing workaround/fix in b.g.o and updates the ebuild to EAPI=7. Note that EAPI7 required modifying an existing patch so it will apply with -p1; should still work with the old ebuild that uses epatch. Updated to address feedback in https://github.com/gentoo/gentoo/pull/16964 Signed-off-by: Hank Leininger <hlein@korelogic.com> Closes: https://bugs.gentoo.org/704102 Bug: https://bugs.gentoo.org/708696 Package-Manager: Portage-3.0.0, Repoman-2.3.23 Closes: https://github.com/gentoo/gentoo/pull/16964 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-ml/camomile')
-rw-r--r--dev-ml/camomile/camomile-0.8.5-r2.ebuild47
-rw-r--r--dev-ml/camomile/files/ocaml-unsafe-string.patch13
-rw-r--r--dev-ml/camomile/files/ocaml405.patch12
3 files changed, 66 insertions, 6 deletions
diff --git a/dev-ml/camomile/camomile-0.8.5-r2.ebuild b/dev-ml/camomile/camomile-0.8.5-r2.ebuild
new file mode 100644
index 000000000000..437035c55c9e
--- /dev/null
+++ b/dev-ml/camomile/camomile-0.8.5-r2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib eutils
+
+DESCRIPTION="Camomile is a comprehensive Unicode library for ocaml"
+HOMEPAGE="https://github.com/yoriyuki/Camomile/wiki"
+SRC_URI="https://github.com/yoriyuki/Camomile/releases/download/rel-${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug +ocamlopt"
+
+PATCHES=( "${FILESDIR}"/ocaml-unsafe-string.patch )
+
+RDEPEND="
+ >=dev-lang/ocaml-3.10.2:=[ocamlopt?]
+ dev-ml/camlp4:=
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+
+ if has_version '>=dev-lang/ocaml-4.05_beta'; then
+ eapply "${FILESDIR}/ocaml405.patch"
+ fi
+}
+
+src_configure() {
+ econf $(use_enable debug)
+}
+
+src_compile() {
+ emake -j1 byte unidata unimaps charmap_data locale_data
+ if use ocamlopt; then
+ emake -j1 opt
+ fi
+}
+
+src_install() {
+ dodir /usr/bin
+ findlib_src_install DATADIR="${D}/usr/share" BINDIR="${D}/usr/bin"
+}
diff --git a/dev-ml/camomile/files/ocaml-unsafe-string.patch b/dev-ml/camomile/files/ocaml-unsafe-string.patch
new file mode 100644
index 000000000000..49139d61ada4
--- /dev/null
+++ b/dev-ml/camomile/files/ocaml-unsafe-string.patch
@@ -0,0 +1,13 @@
+--- a/Makefile.in 2013-09-15 02:48:38.000000000 -0500
++++ b/Makefile.in 2020-07-03 00:43:13.639039206 -0500
+@@ -48,8 +48,8 @@
+ OCAMLMKLIB = @OCAMLMKLIB@
+
+ # compiler options
+-BOPTIONS = @DEBUG@ @ASSERT@
+-OOPTIONS = @COPTIONS@ @PROFILE@ @ASSERT@
++BOPTIONS =@DEBUG@ @ASSERT@ -unsafe-string
++OOPTIONS =@COPTIONS@ @PROFILE@ @ASSERT@ -unsafe-string
+
+ #
+ PACKAGE = camomile
diff --git a/dev-ml/camomile/files/ocaml405.patch b/dev-ml/camomile/files/ocaml405.patch
index 3fec6955a27c..9648708f669f 100644
--- a/dev-ml/camomile/files/ocaml405.patch
+++ b/dev-ml/camomile/files/ocaml405.patch
@@ -12,10 +12,10 @@ Date: Fri Feb 24 22:30:23 2017 -0500
(see MPR#7414, GPR#929). This commit adds enough annotations to avoid
such underspecified variables in functors.
-diff --git a/Camomile/internal/unimap.ml b/Camomile/internal/unimap.ml
+diff --git a/internal/unimap.ml b/internal/unimap.ml
index b6fdbde..6a7cc30 100644
---- a/Camomile/internal/unimap.ml
-+++ b/Camomile/internal/unimap.ml
+--- a/internal/unimap.ml
++++ b/internal/unimap.ml
@@ -58,7 +58,7 @@ val of_name : string -> t
end
@@ -25,10 +25,10 @@ index b6fdbde..6a7cc30 100644
type mapping = {no_char : int; tbl : Tbl31.Bytes.t}
-diff --git a/Camomile/public/uCharInfo.ml b/Camomile/public/uCharInfo.ml
+diff --git a/public/uCharInfo.ml b/public/uCharInfo.ml
index 69bf141..6a0337a 100644
---- a/Camomile/public/uCharInfo.ml
-+++ b/Camomile/public/uCharInfo.ml
+--- a/public/uCharInfo.ml
++++ b/public/uCharInfo.ml
@@ -298,7 +298,7 @@ val load_composition_exclusion_tbl : unit -> UCharTbl.Bool.t
end