diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-12-31 06:31:03 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-12-31 06:31:03 +0000 |
commit | 2e36bcecf24a3f583ae8f27b71ba13b3cfd39778 (patch) | |
tree | f2362fa4c0f61f631c2b7a484fb90b8283618656 /dev-lang/ocaml | |
parent | 7d7cc3f0fa58454952dec67b110b41d503bca422 (diff) |
gentoo auto-resync : 31:12:2024 - 06:31:02
Diffstat (limited to 'dev-lang/ocaml')
-rw-r--r-- | dev-lang/ocaml/Manifest | 2 | ||||
-rw-r--r-- | dev-lang/ocaml/ocaml-5.2.1.ebuild | 107 |
2 files changed, 109 insertions, 0 deletions
diff --git a/dev-lang/ocaml/Manifest b/dev-lang/ocaml/Manifest index 99168ed63340..c456c561462c 100644 --- a/dev-lang/ocaml/Manifest +++ b/dev-lang/ocaml/Manifest @@ -14,6 +14,7 @@ DIST ocaml-4.13.1.tar.gz 5323203 BLAKE2B f1dcb1601ebfa2a37351e3a466a7ca601518c2d DIST ocaml-4.14.1.tar.gz 5498436 BLAKE2B 6113283ab0f7ac39ade1f35a02c203a6956f8f4efa4f174daf53483c1d874613195c2705ca02760f0ff4abd9b37c91f8dec59c010ac8ae8731790cdd6f429673 SHA512 6340e145c7d11a1ee9fa1699fc6a8a6785f14ff9c05dca708cf278194642ec9b7c562d744d8b38e5dab74b88fa3a5760035e214f5f8fab8b233a344b035db8fb DIST ocaml-4.14.2.tar.gz 5505119 BLAKE2B 518c2a69ee32e1c141b574a9800a64efc445381eb2808985b5dbb9d5ec54228aa25042a1c410307c3556488ba12a751980396b0d9a01e60a1ea84ac5b52e6dd6 SHA512 61bfa7961aae02458210f10865a5703f7a50a9be2452379e820cf2dfac2c6037da553c31835145e50a776880bdeb2ec78cd7a3147d65f418e7b3e593534e8a04 DIST ocaml-5.2.0.tar.gz 6047633 BLAKE2B 5d0a7d48d9ed9fcd2974237a93e30ffee20fc444b5ede296bd35cb3285909f8cf5a489ac1cdc75778ca6d45f8ff40a92939bfcfc42e218aeda0170b1ac0bfd49 SHA512 78115690186c13c1f2480e4812a9fe34cce2c28bf8a89d5c9810bca0391f930cecd9cee2b53daca8a32da1815628b33be68f3948f1ad03fa50b72b14e3ea84f2 +DIST ocaml-5.2.1.tar.gz 6051609 BLAKE2B 5cefbddcb97c7e9de5a5e1c4385086972bf78f545d3a649278c9582b3c527374f80fd32b072e51ff7c753a50431f373e0d584c9c8187a25d8f828adb3e595234 SHA512 b0803dd90a0ac6fdf609345c481b3dc637eb9cbb9bea296cfd79f6913ab34b9e02970bcddd83e8bc419cbe1c4694bb7889146615841b5ee101081a82eee024e2 EBUILD ocaml-4.09.0-r3.ebuild 2742 BLAKE2B e4dd877140601c6b52e93587047b5bfa27e39cf833664a22e39448784cbad82d6e5feb2aecfb169725f72f098750d28cef6e98d988c7cbde0abda5776384799e SHA512 0fe114be6a3b02a197b7e42137e43d51f1664438e2a2805e63642e4a1a50e78d865db64dc0f357e13c1fcc2cb1e3bb71a81faa611d67ef01c4036e48c659f166 EBUILD ocaml-4.10.2-r3.ebuild 2749 BLAKE2B 3450e01f8157a66bc69079030ac3abe35cd8954c9cdd83d70680238c64449661f967cc6ba9a9d8029a3f17b41c8892508868db513faf239407b1b59a0ea87b4c SHA512 6423d21d704eee5b97b177ac98a8ba1794af430a6f3a1c4606946ff213a5d8dfa643787d802b3de1b77832583fc4c55ebafc5ab2073f832e65c5eb0b19344b5f EBUILD ocaml-4.11.2-r2.ebuild 2590 BLAKE2B 37ce14549ad68e0d30c9326ed568d921cd3f7fde93b29ac0c826cf2f1de3d9bed2d7dbfe93b8648452b7b48f512bba02d3f3520a72e4fd38247aa1f97cda0914 SHA512 b57778eea9a32e2f3a5e88bbf9a48082e8766aa0409aaa53fda9f2af24b5c0100e0e6ae449930aa4b9cfc4b99e4623145f05867f130fc453c89b870cb887e2fa @@ -22,4 +23,5 @@ EBUILD ocaml-4.13.1.ebuild 2481 BLAKE2B 3fb04e2dd03dbabf807ba0620ed494be28b9c4f4 EBUILD ocaml-4.14.1.ebuild 2440 BLAKE2B ea1cb9fba221ff93a3a4f5ae49db23e0b32aaae0c94ae16ebe075564548da2784370a8da70e4e1e332ae95e233c6c0ba034cd7e4a955c65807fe649f043119ad SHA512 55f97a54904be60ced8ff3a15301e8cd338a19722da39dc76da8a5dc3a25baba32497003ac37bb6cf2e20ac9d490f8596738e03304187c011c7a561b104da2d0 EBUILD ocaml-4.14.2.ebuild 2587 BLAKE2B 63fb2de0f2b38754e4a0dfa2669ee0d7aefbfd91ef6ec427ee44cf7c2e68241abe04e079139b5de33aa2b3e4f9dfd2c62657905e1de4b8b1fbc3f3a119ab4631 SHA512 d55c9d057e781ea080c9f211c451ac787f851a80d2100b27645ee912e66c2c863703b3a2d0e14fa7538094e3eedff19d888cfe42fe153ba118e340b338ac7285 EBUILD ocaml-5.2.0.ebuild 2627 BLAKE2B 4dc6c29849839927544941c263ff33b0d24e3617a466a3ef4cf78fe6ae949fb650da9c9cdcc011adf426ff54f0e837482f969f8ade9b0642bab5940196b6e1e6 SHA512 31fc07c3cca11ca8d53d27ffca92b636bea2c112a2a73d437cf57bdfa175021f61db9d656bca5058c0d86c77457f36e012e6aaf233a9de2b6bd9f22d08f02177 +EBUILD ocaml-5.2.1.ebuild 2627 BLAKE2B 4dc6c29849839927544941c263ff33b0d24e3617a466a3ef4cf78fe6ae949fb650da9c9cdcc011adf426ff54f0e837482f969f8ade9b0642bab5940196b6e1e6 SHA512 31fc07c3cca11ca8d53d27ffca92b636bea2c112a2a73d437cf57bdfa175021f61db9d656bca5058c0d86c77457f36e012e6aaf233a9de2b6bd9f22d08f02177 MISC metadata.xml 671 BLAKE2B 452ea340c8abacedbdb20a344cffa9b91db2251e0174db596e4f96bf2b1c9d308ceb035e0870e738a15c313003fcbf39bb91c5f68b40a185e5e08e3ea7042616 SHA512 1d8248e2b05b145c804cc9cce6aa617bd6466f26326033cee06ed27ceb93ebc88b62f3badbfe13092fbaa89c3a71087491b88c4fc094da8624ab668cdc73b383 diff --git a/dev-lang/ocaml/ocaml-5.2.1.ebuild b/dev-lang/ocaml/ocaml-5.2.1.ebuild new file mode 100644 index 000000000000..803f42a3c4d7 --- /dev/null +++ b/dev-lang/ocaml/ocaml-5.2.1.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic + +DESCRIPTION="Programming language supporting functional, imperative & object-oriented styles" +HOMEPAGE="https://ocaml.org/" +SRC_URI="https://github.com/ocaml/ocaml/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="QPL-1.0 LGPL-2" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="emacs flambda latex +ocamlopt test 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' + +RESTRICT="!test? ( test )" + +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 test ocamltest) \ + $(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() { + # OCaml generates textrels on 32-bit arches + if use arm || use ppc || use x86 ; then + export QA_TEXTRELS='.*' + fi + 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 +} |