forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Package-Manager: Portage-3.0.8, Repoman-3.0.1 Signed-off-by: Lubos Kolouch <[email protected]> Signed-off-by: Mark Wright <[email protected]>
- Loading branch information
1 parent
56a2f42
commit ea2f393
Showing
2 changed files
with
79 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
DIST ocaml-4.04.2.tar.gz 4061873 BLAKE2B 756936592c7e0c87da27f154f07850eb3e4b2ed46ff3b36ff57541375840cd56b170dbe646ef6682f63d4e15ae209d3c125581803641f07403e9eb838c265519 SHA512 8b6a0319307cbb7451594d2f7c63851299d3e7d6ae7879e7525373304f9fd5a9b01d503ecd313a12a3cae24a4a7cb909f7aeebbb70efaa5277137189ea4558cb | ||
DIST ocaml-4.05.0.tar.gz 4431750 BLAKE2B c2ab003a13e0a581ebd0e1c96eeb8a9baea9bfe6bee08823b0e4541819201ec109f1846e13fc1aefa51a001eefbb8f73320ba854d41975fc68cef41bc75b1ecc SHA512 9a060ae4b741e1687277403e5bdb8f6eda2e2ebf6c45f7c0149b66ea1213cb26d13febfbb3f11c12543e244cfdd053b786b09c4145e2348e5d89a7206f7de225 | ||
DIST ocaml-4.09.0.tar.gz 4838748 BLAKE2B 80f29d535c64bf2371b480217723ed20b2b21cfd93ce31366a7b91e7ddffdf68db4e88d085288b7e21efee567a13f42ecff24c3a0115507b006acf844239cefd SHA512 dc0271e591bf929b751705835790949a9d741e12d085c8b207c3689b5838a02ea8de80da8b2605d2e6744f2f541b0d1694ffafff9509e99ce01f3a391f6ef2ae | ||
DIST ocaml-4.10.0.tar.gz 4927867 BLAKE2B 71b8448a10bf3049e3b005dfbb2030d479e69e4c2ef00055f1dacd38eff838b0a5c18b4883d899b5eb4cbd05bb7ca35867010794ed25682ad51b2fe19ef2114d SHA512 f39269d572b3f7755f7881b7a9fdfe5253e49d847835ae2a8695f67e3309fc1e925523d66ecbe1fb8bc0cc3b5602e077ce7feac4926aab571383766442265179 | ||
DIST ocaml-patches-8.tar.bz2 1803 BLAKE2B 5e76a198c2f5ca9f231d4e80499d784cf061ec79bf6b5e3aac917e1260d1f2b927f0f8015d39c01ce4fd481d32a5d211c31e081a7ab87ba1e7c7d5def95bc0fb SHA512 fc477fbb5bdec60a3c4d3dfa110119bb579560ac0e0e57e30e076da72643bda6359c06fd3745fd3436c5d611dbbd888ec2921e9d1920f4929df633c35a797411 | ||
DIST ocaml-patches-9.tar.bz2 1700 BLAKE2B 4e46b8fb490db28f815414e285f54e251394ea53e1d25c529bbea9f03e426fd19132b1e2c7c2be7d14983fceb4cad073d191b001f6da522fee4226371d4a2eca SHA512 cc19f9104fac69aecc5effa8cb772342e1fb61cdcd38ba0176efe04cf3d710b1c56d5178748f3bd29099af91fa684da432a8ef8d42de76dbd1b6954a255ea6c0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
# Copyright 1999-2020 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
|
||
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="LGPL-2.1" | ||
SLOT="0/${PV}" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris" | ||
IUSE="emacs flambda latex +ocamlopt spacetime xemacs" | ||
|
||
RDEPEND="sys-libs/binutils-libs:= | ||
spacetime? ( sys-libs/libunwind:= )" | ||
BDEPEND="${RDEPEND} | ||
virtual/pkgconfig" | ||
PDEPEND="emacs? ( app-emacs/ocaml-mode ) | ||
xemacs? ( app-xemacs/ocaml )" | ||
|
||
#PATCHES=("${FILESDIR}"/${PN}-4.10.0-gcc-10.patch) | ||
|
||
src_prepare() { | ||
default | ||
# 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" | ||
# ${P} overrides upstream build's own P due to a wrong assignment operator. | ||
sed -i -e 's/^P ?=/P =/' stdlib/StdlibModules || die "P fix failed" | ||
} | ||
|
||
src_configure() { | ||
local opt=( | ||
--bindir="${EPREFIX}/usr/bin" | ||
--libdir="${EPREFIX}/usr/$(get_libdir)/ocaml" | ||
--mandir="${EPREFIX}/usr/share/man" | ||
--prefix="${EPREFIX}/usr" | ||
$(use_enable flambda) | ||
$(use_enable spacetime) | ||
) | ||
econf ${opt[@]} | ||
} | ||
|
||
src_compile() { | ||
if use ocamlopt ; then | ||
emake world.opt | ||
else | ||
emake world | ||
fi | ||
} | ||
|
||
src_test() { | ||
if use ocamlopt ; then | ||
# OCaml tests only work when run sequentially | ||
emake -j1 -C testsuite all | ||
else | ||
ewarn "${PN} was built without 'ocamlopt' USE flag; skipping tests." | ||
fi | ||
} | ||
|
||
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" | ||
doenvd "${T}/99ocamldoc" | ||
fi | ||
# Install ocaml-rebuild portage set | ||
insinto /usr/share/portage/config/sets | ||
doins "${FILESDIR}/ocaml.conf" | ||
} |