summaryrefslogtreecommitdiff
path: root/dev-lang/ocaml
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-02-12 09:56:54 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-02-12 09:56:54 +0000
commitebc282ef4dfa408accac685565b8ee5f6faec119 (patch)
treec0a4f713228cda0ab17eed46f0bb7ca8cb8be2f6 /dev-lang/ocaml
parent6c8694a707151d59555b0e4e48235f085ce166c3 (diff)
gentoo auto-resync : 12:02:2023 - 09:56:54
Diffstat (limited to 'dev-lang/ocaml')
-rw-r--r--dev-lang/ocaml/Manifest2
-rw-r--r--dev-lang/ocaml/ocaml-4.14.1.ebuild100
2 files changed, 102 insertions, 0 deletions
diff --git a/dev-lang/ocaml/Manifest b/dev-lang/ocaml/Manifest
index 8328fba50989..1674a6973879 100644
--- a/dev-lang/ocaml/Manifest
+++ b/dev-lang/ocaml/Manifest
@@ -16,6 +16,7 @@ DIST ocaml-4.11.2.tar.gz 5075323 BLAKE2B bdc503d9a8d0e39dd11060febcd0287657b460e
DIST ocaml-4.12.1.tar.gz 5181696 BLAKE2B 9d21438e09b1a9680eabb65f5c78d9fe84459592ef7bb797a1933e5383f7b6d5cefffa8cdc184abc102417f5dbc0fca8ef624c9b560f89eaff6537544b5b395f SHA512 e942e5cf5530804690ec45c40936ad2acbb60e11279fc676e0f04181fe1855f84ee5c3cb9c337fc5d01f6ee0e7b2251a6c04f7de56d99c20bb62026dff6c5671
DIST ocaml-4.13.1.tar.gz 5323203 BLAKE2B f1dcb1601ebfa2a37351e3a466a7ca601518c2da403b01aeb182738a54d5887523ab554d747d6591cb09b07b417865e20907f7877117b2d2d069ef6c9edc0fae SHA512 da3434177438c852da53c0fda7bc2519adcda6384d97d45e44137ed0fd384ffb3da61958a7b51296edb3f88f5a5310ca71b6862f6d756aaa4012d1f54e5955f6
DIST ocaml-4.14.0.tar.gz 5494844 BLAKE2B f2f9142a95722c7fc5fda205ea6b951939f7d285963b8aa14dc157ac10202ef9d00c7590beabdc97ed83548d61e5ef28b60a360f1a492420a54f4e26dfbf89f0 SHA512 3c5e5b9f00bb109dd99b5f7b0078cf8663d4247e548f3e601d6b2a55582e04bb20f6de85005c4cf2f78ae9aaa449f5ca6f2bab2f6ce83eeb3aeb386e3f2fcc32
+DIST ocaml-4.14.1.tar.gz 5498436 BLAKE2B 6113283ab0f7ac39ade1f35a02c203a6956f8f4efa4f174daf53483c1d874613195c2705ca02760f0ff4abd9b37c91f8dec59c010ac8ae8731790cdd6f429673 SHA512 6340e145c7d11a1ee9fa1699fc6a8a6785f14ff9c05dca708cf278194642ec9b7c562d744d8b38e5dab74b88fa3a5760035e214f5f8fab8b233a344b035db8fb
DIST ocaml-patches-9.tar.bz2 1700 BLAKE2B 4e46b8fb490db28f815414e285f54e251394ea53e1d25c529bbea9f03e426fd19132b1e2c7c2be7d14983fceb4cad073d191b001f6da522fee4226371d4a2eca SHA512 cc19f9104fac69aecc5effa8cb772342e1fb61cdcd38ba0176efe04cf3d710b1c56d5178748f3bd29099af91fa684da432a8ef8d42de76dbd1b6954a255ea6c0
EBUILD ocaml-4.05.0-r9.ebuild 4370 BLAKE2B 22f915f38da08b3f98923f337dbe1a2ae25f2edaf73887f602c0d13047808bff8f5bcde68d7ac214f07da7d68d6c05a2f9520318d1cda041d54e37966b27c605 SHA512 111a2e4d4a18034a2d4580d19e4074fd4d6b60330e0af861062c4196c19027667d18e0361e1e73cdf9d46c31d06d66ce9a7ada36058fca168f634a891cdae861
EBUILD ocaml-4.09.0-r3.ebuild 2794 BLAKE2B 0a7e6b805915602875e3f323f97370a5f9345c2a1a9e30ed545922cfdd31c8d304d2e534b1ead1719b9be33f72c79c8383ca63fa45f2f62084f47c7cfd1e127c SHA512 b87052b9caea618b0024342e614859e68bb30b3426b31df313006a3c655be8b60e47ab9611c609307bacff610f0cc889e68db14e1c78bb820f33bcde8b32f5ee
@@ -24,4 +25,5 @@ EBUILD ocaml-4.11.2-r2.ebuild 2642 BLAKE2B 3639ba3300e16337b2b0d31b4bca1accad472
EBUILD ocaml-4.12.1.ebuild 2559 BLAKE2B 50f373f16833ba2783fa3f1758ce0678934b3be58d662b595440f8abf0f0179ea78781835303dadd583cedf412c08cb1799e54276237fae491cdd944615d9f98 SHA512 9f3ce96e0f69f6a11d431255709f0ea11f46bb80f43597d3b026a916191bc6e71671621720184e4d2ddb962dc45360a6d0541c68525720ea89e63b009acf57f8
EBUILD ocaml-4.13.1.ebuild 2522 BLAKE2B 8960f3e3ec99267b9a5673c7ab3765970ecbf1d1cd35500be26b7d0ec5d4e35c2c700b39179c2178f86b9f89fe9772d47f01ea70f925b6bfce048f7a799cbfba SHA512 390b1b201c9a3b9cebf6a17e4820224e7b321390801134a496ba45fe607a9af8b1417eb3d17cf52f41c5a70eef9d463182df392cb264e1243efbce90f7f5a8e7
EBUILD ocaml-4.14.0-r1.ebuild 2548 BLAKE2B 65ce4b1a463df7ba0d42fabc25fa57e72dece6b8624a94c8eadc7fbb3c800ad2363e87613c5e5b1fefb06cba55189f83d8cf6aebb6a140876b360a2ccd8e90e0 SHA512 d24f07e097874566badcbc8eaebb8eb62bbe292242a5c94893c77f509c5b2313a15427e1503dbbcde2ecfc1d14bcbec5acd8b487d110ad0aa65d73c56a001cc7
+EBUILD ocaml-4.14.1.ebuild 2486 BLAKE2B 98ba4a9bf0726039451a0adde11525683df03c28612b5118ac658713b719b78aca257400301055adaac09e0c7e4f68c43558fe2db0729fd340e6be0ab0238d61 SHA512 58461c438ee34d2459e1a33ff7e66c84a178e93b13db3c49c1edcd95a126708f943ff0d6be3647ed0e770e23ef1838c395f7807fd0d792f71e3d6784ab65289c
MISC metadata.xml 776 BLAKE2B e7b13b4bb764cec6df76ede0eb2d492cc705ce51b18a445fa3f9ebaab119fab8cae45a2a9d02c70f38e19f2e2d2c06de648a3a0843a603dd7b68942c7cd00bdb SHA512 92e3afe1c40991d37dc460d6091ff2b15c83740343e5d8dd69344eb61d873fbd66af1b96e70904f7757c06f2b104d1450883cc79877709c779467af64e2ea96e
diff --git a/dev-lang/ocaml/ocaml-4.14.1.ebuild b/dev-lang/ocaml/ocaml-4.14.1.ebuild
new file mode 100644
index 000000000000..555de3ad282e
--- /dev/null
+++ b/dev-lang/ocaml/ocaml-4.14.1.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic
+
+HOMEPAGE="https://ocaml.org/"
+SRC_URI="https://github.com/ocaml/ocaml/archive/${PV}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="Programming language supporting functional, imperative & object-oriented styles"
+
+LICENSE="QPL-1.0 LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="emacs flambda latex +ocamlopt xemacs"
+
+RDEPEND="sys-libs/binutils-libs:="
+BDEPEND="${RDEPEND}
+ virtual/pkgconfig"
+PDEPEND="emacs? ( app-emacs/ocaml-mode )
+ xemacs? ( app-xemacs/ocaml )"
+
+QA_FLAGS_IGNORED='/usr/lib.*/ocaml/bigarray.cmxs'
+
+src_prepare() {
+ default
+
+ cp "${FILESDIR}"/ocaml.conf "${T}" || die
+
+ # OCaml generates textrels on 32-bit arches
+ # We can't do anything about it, but disabling it means that tests
+ # for OCaml-based packages won't fail on unexpected output
+ # bug #773226
+ if use arm || use ppc || use x86 ; then
+ append-ldflags "-Wl,-z,notext"
+ fi
+
+ # Upstream build ignores LDFLAGS in several places.
+ sed -i -e 's/\(^MKDLL=.*\)/\1 $(LDFLAGS)/' \
+ -e 's/\(^OC_CFLAGS=.*\)/\1 $(LDFLAGS)/' \
+ -e 's/\(^OC_LDFLAGS=.*\)/\1 $(LDFLAGS)/' \
+ Makefile.config.in || die "LDFLAGS fix failed"
+}
+
+src_configure() {
+ filter-lto #bug 870349
+ local opt=(
+ --bindir="${EPREFIX}/usr/bin"
+ --libdir="${EPREFIX}/usr/$(get_libdir)/ocaml"
+ --mandir="${EPREFIX}/usr/share/man"
+ --prefix="${EPREFIX}/usr"
+ $(use_enable flambda)
+ )
+
+ econf "${opt[@]}"
+}
+
+src_compile() {
+ env -u P emake world
+
+ if use ocamlopt ; then
+ env -u P emake opt
+ env -u P emake opt.opt
+ fi
+}
+
+src_test() {
+ emake -j
+
+ # OCaml tests only work when run sequentially
+ if use ocamlopt ; then
+ emake -j1 ocamltest.opt
+ else
+ emake -j1 ocamltest
+ #ewarn "${PN} was built without 'ocamlopt' USE flag; skipping tests."
+ fi
+
+ emake -j1 tests
+}
+
+src_install() {
+ default
+
+ dodir /usr/include
+ # Create symlink for header files
+ dosym "../$(get_libdir)/ocaml/caml" /usr/include/caml
+ dodoc Changes README.adoc
+
+ # Create envd entry for latex input files
+ if use latex ; then
+ echo "TEXINPUTS=\"${EPREFIX}/usr/$(get_libdir)/ocaml/ocamldoc:\"" > "${T}"/99ocamldoc || die
+ doenvd "${T}"/99ocamldoc
+ fi
+
+ sed -i -e "s:lib:$(get_libdir):" "${T}"/ocaml.conf || die
+
+ # Install ocaml-rebuild portage set
+ insinto /usr/share/portage/config/sets
+ doins "${T}"/ocaml.conf
+}