mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 06:48:18 -07:00
dev-lang/ocaml: add 5.2.0
Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
This commit is contained in:
@@ -7,3 +7,4 @@ DIST ocaml-4.12.1.tar.gz 5181696 BLAKE2B 9d21438e09b1a9680eabb65f5c78d9fe8445959
|
||||
DIST ocaml-4.13.1.tar.gz 5323203 BLAKE2B f1dcb1601ebfa2a37351e3a466a7ca601518c2da403b01aeb182738a54d5887523ab554d747d6591cb09b07b417865e20907f7877117b2d2d069ef6c9edc0fae SHA512 da3434177438c852da53c0fda7bc2519adcda6384d97d45e44137ed0fd384ffb3da61958a7b51296edb3f88f5a5310ca71b6862f6d756aaa4012d1f54e5955f6
|
||||
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
|
||||
|
||||
107
dev-lang/ocaml/ocaml-5.2.0.ebuild
Normal file
107
dev-lang/ocaml/ocaml-5.2.0.ebuild
Normal file
@@ -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 ~ia64 ~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
|
||||
}
|
||||
@@ -33,6 +33,13 @@
|
||||
|
||||
#--- END OF EXAMPLES ---
|
||||
|
||||
# Alfredo Tupone <tupone@gentoo.org> (2024-06-09)
|
||||
# Not ready for testing
|
||||
dev-ml/sexplib0:0/0.17
|
||||
dev-ml/ocaml_intrinsics:0/0.17
|
||||
dev-ml/ocaml_intrinsics_kernel:0/0.17
|
||||
>=dev-lang/ocaml-5
|
||||
|
||||
# Arthur Zamarin <arthurzam@gentoo.org> (2024-06-08)
|
||||
# EAPI=6, waiting for a version bump, not maintained for many years.
|
||||
# Removal on 2024-07-08. Bug #933850.
|
||||
|
||||
Reference in New Issue
Block a user