public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Alfredo Tupone" <tupone@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/ocaml/
Date: Mon, 30 Dec 2024 09:42:56 +0000 (UTC)	[thread overview]
Message-ID: <1735551751.1c9122a77ac10eb648635f33601ee7b24cf8b47b.tupone@gentoo> (raw)

commit:     1c9122a77ac10eb648635f33601ee7b24cf8b47b
Author:     Alfredo Tupone <tupone <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 30 09:42:06 2024 +0000
Commit:     Alfredo Tupone <tupone <AT> gentoo <DOT> org>
CommitDate: Mon Dec 30 09:42:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1c9122a7

dev-lang/ocaml: add 5.2.1

Signed-off-by: Alfredo Tupone <tupone <AT> gentoo.org>

 dev-lang/ocaml/Manifest           |   1 +
 dev-lang/ocaml/ocaml-5.2.1.ebuild | 107 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 108 insertions(+)

diff --git a/dev-lang/ocaml/Manifest b/dev-lang/ocaml/Manifest
index b6476e6f2b79..bbf642f1c83f 100644
--- a/dev-lang/ocaml/Manifest
+++ b/dev-lang/ocaml/Manifest
@@ -8,3 +8,4 @@ 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

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
+}


             reply	other threads:[~2024-12-30  9:42 UTC|newest]

Thread overview: 117+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-30  9:42 Alfredo Tupone [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-10-15 15:25 [gentoo-commits] repo/gentoo:master commit in: dev-lang/ocaml/ Arthur Zamarin
2024-10-11 20:39 Alfredo Tupone
2024-06-09 10:45 Alfredo Tupone
2024-06-09 10:45 Alfredo Tupone
2024-06-02  8:21 Alfredo Tupone
2024-04-29 20:33 Alfredo Tupone
2023-10-28  0:24 Sam James
2023-06-24  2:59 Sam James
2023-04-03 19:09 Arthur Zamarin
2023-04-03 19:09 Arthur Zamarin
2023-03-17 11:41 Arthur Zamarin
2023-03-17 11:27 Arthur Zamarin
2023-03-17  8:52 Arthur Zamarin
2023-03-17  3:21 Sam James
2023-03-17  2:29 Sam James
2023-03-17  2:29 Sam James
2023-03-17  2:29 Sam James
2023-03-16 23:20 Sam James
2023-03-16 23:16 Sam James
2023-03-16 23:16 Sam James
2023-02-15 18:38 Matt Turner
2023-02-10 19:11 Alfredo Tupone
2022-09-29  7:03 Alfredo Tupone
2022-02-28 19:31 Alfredo Tupone
2022-02-27  8:57 Agostino Sarubbo
2022-02-27  8:56 Agostino Sarubbo
2022-02-26 12:33 Arthur Zamarin
2022-02-26 12:08 Arthur Zamarin
2022-02-26 11:53 Arthur Zamarin
2021-10-17 19:09 Sam James
2021-10-17  0:13 Sam James
2021-10-16 10:31 Sam James
2021-10-16 10:14 Sam James
2021-10-13  6:02 Agostino Sarubbo
2021-10-13  5:54 Agostino Sarubbo
2021-10-09  5:56 Sam James
2021-10-07  6:37 Sam James
2021-10-02  5:23 Sam James
2021-10-02  5:23 Sam James
2021-09-15 19:42 Alfredo Tupone
2021-06-18 21:09 Sam James
2021-06-09 21:45 Sam James
2021-06-08  4:59 Sam James
2021-03-12 18:23 Sam James
2021-03-08 15:09 Sam James
2021-02-24 16:22 Sam James
2021-02-17 18:04 Alfredo Tupone
2021-02-17  6:58 Alfredo Tupone
2021-01-17 17:38 Sam James
2020-12-28 11:49 Sam James
2020-04-12 21:52 Mart Raudsepp
2020-03-20  8:07 Sergei Trofimovich
2020-03-02 11:49 Sergei Trofimovich
2020-02-11 12:15 Agostino Sarubbo
2020-02-11 11:44 Agostino Sarubbo
2020-02-11 11:36 Agostino Sarubbo
2020-02-10  8:18 Agostino Sarubbo
2020-02-10  8:16 Agostino Sarubbo
2020-02-09 10:31 Agostino Sarubbo
2019-12-28 13:40 Mikle Kolyada
2019-12-27 13:39 Mikle Kolyada
2019-01-04 18:39 Tim Harder
2018-04-28  1:16 Matt Turner
2017-11-04  9:53 Alexis Ballier
2017-11-04  9:53 Alexis Ballier
2017-10-14 11:41 Alexis Ballier
2017-10-14 11:13 Alexis Ballier
2017-10-04 11:09 Alexis Ballier
2017-10-04 11:09 Alexis Ballier
2017-09-27  9:25 Sergei Trofimovich
2017-07-13 22:09 Alexis Ballier
2017-07-13 20:42 Alexis Ballier
2017-07-13 12:38 Alexis Ballier
2017-07-07  6:18 Markus Meier
2017-06-30  8:14 Sergei Trofimovich
2017-06-29 20:28 Alexis Ballier
2017-06-29 20:28 Alexis Ballier
2017-06-29  8:06 Agostino Sarubbo
2017-06-25 14:42 Alexis Ballier
2017-06-20 13:35 Fabian Groffen
2017-06-15 13:44 Alexis Ballier
2017-04-27 10:40 Alexis Ballier
2017-04-15 10:27 Alexis Ballier
2017-03-27 10:10 Alexis Ballier
2017-03-03 11:28 Alexis Ballier
2017-02-21 14:20 Alexis Ballier
2017-02-21 14:20 Alexis Ballier
2017-02-14  9:31 Alexis Ballier
2017-02-12 19:56 Markus Meier
2017-01-29 23:02 Jeroen Roovers
2017-01-26 15:28 Agostino Sarubbo
2017-01-26 11:00 Agostino Sarubbo
2017-01-26 10:22 Agostino Sarubbo
2017-01-25 19:21 Tobias Klausmann
2017-01-25 15:52 Agostino Sarubbo
2017-01-25 15:35 Agostino Sarubbo
2017-01-25 14:29 Agostino Sarubbo
2017-01-14 15:41 Mikle Kolyada
2017-01-14 15:40 Mikle Kolyada
2016-11-29 15:05 Alexis Ballier
2016-11-15  9:36 Alexis Ballier
2016-11-15  9:36 Alexis Ballier
2016-09-06  8:29 Alexis Ballier
2016-04-30 14:18 Alexis Ballier
2016-04-30 14:18 Alexis Ballier
2016-04-02  9:06 Alexis Ballier
2016-04-02  9:06 Alexis Ballier
2016-03-03 10:58 Alexis Ballier
2016-03-01 19:17 Alexis Ballier
2016-02-04 17:24 Tobias Klausmann
2015-11-21 14:23 Markus Meier
2015-11-12 11:21 Agostino Sarubbo
2015-11-11  9:54 Agostino Sarubbo
2015-11-10 12:01 Agostino Sarubbo
2015-11-03  4:14 Jeroen Roovers
2015-11-01 11:12 Jeroen Roovers

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=1735551751.1c9122a77ac10eb648635f33601ee7b24cf8b47b.tupone@gentoo \
    --to=tupone@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