summaryrefslogtreecommitdiff
path: root/dev-ml
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ml')
-rw-r--r--dev-ml/Manifest.gzbin40139 -> 40139 bytes
-rw-r--r--dev-ml/llvm-ocaml/Manifest5
-rw-r--r--dev-ml/llvm-ocaml/llvm-ocaml-19.1.0.ebuild108
-rw-r--r--dev-ml/llvm-ocaml/llvm-ocaml-20.0.0_pre20240917.ebuild107
4 files changed, 220 insertions, 0 deletions
diff --git a/dev-ml/Manifest.gz b/dev-ml/Manifest.gz
index 8929a1c376d6..2d0c68909098 100644
--- a/dev-ml/Manifest.gz
+++ b/dev-ml/Manifest.gz
Binary files differ
diff --git a/dev-ml/llvm-ocaml/Manifest b/dev-ml/llvm-ocaml/Manifest
index c4687286d57f..321e075fd527 100644
--- a/dev-ml/llvm-ocaml/Manifest
+++ b/dev-ml/llvm-ocaml/Manifest
@@ -8,14 +8,19 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8
DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8
+DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d
+DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed
+DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22
DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7
DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85
EBUILD llvm-ocaml-15.0.7.ebuild 2576 BLAKE2B 19ad7bcc099299b50cee2551d0998ef748cf46081605459355a9d11b5882a3a26559892321f47d67f927a422ed1dc34332f9d9bee82da3e151dc9edec58f458a SHA512 3366ae720bb79421c253c28946c5281152d3573416fb9c7967327bd2d2b418f01887d63e00ccc1d5f5008d1f05280f270fe15be3e8d2b812c782d881778e8417
EBUILD llvm-ocaml-16.0.6.ebuild 2510 BLAKE2B 129a25c76d02640a151bd2ba8b1542e34bc4b0adb5aac797f96f7f888b8939ae33dcda9eb1f2ec31eae81575ac3e32995b9e99de3540f3fdc8e085b0185200ec SHA512 250285a57be6d7cfbddd4a9ff4ab8bc25e2813441da263bfef1a7a4d11658b6ed9a3d280ada7b1e45c5cb472e6647eff260926672089e7e445a12be6a5344bdb
EBUILD llvm-ocaml-17.0.6.ebuild 2510 BLAKE2B 129a25c76d02640a151bd2ba8b1542e34bc4b0adb5aac797f96f7f888b8939ae33dcda9eb1f2ec31eae81575ac3e32995b9e99de3540f3fdc8e085b0185200ec SHA512 250285a57be6d7cfbddd4a9ff4ab8bc25e2813441da263bfef1a7a4d11658b6ed9a3d280ada7b1e45c5cb472e6647eff260926672089e7e445a12be6a5344bdb
EBUILD llvm-ocaml-18.1.8.ebuild 2466 BLAKE2B 7480f9140cbdd2ec337cd08924013f1f9751bc34c3223b3f5be441e4d06d131f74aca0cb0115c71ebacb3909240e42d4608dddf98bb6f69e371d5e86e19141f5 SHA512 b7c05d3be29399eb9fb4267537a450daf00b7d8f6bd2be472e5802d4072e3a805db8d5f4fa2830ec46655170a7f2fc1119825327b2d4008af8364772fc215f65
+EBUILD llvm-ocaml-19.1.0.ebuild 2466 BLAKE2B 7480f9140cbdd2ec337cd08924013f1f9751bc34c3223b3f5be441e4d06d131f74aca0cb0115c71ebacb3909240e42d4608dddf98bb6f69e371d5e86e19141f5 SHA512 b7c05d3be29399eb9fb4267537a450daf00b7d8f6bd2be472e5802d4072e3a805db8d5f4fa2830ec46655170a7f2fc1119825327b2d4008af8364772fc215f65
EBUILD llvm-ocaml-19.1.0_rc4.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b
EBUILD llvm-ocaml-20.0.0.9999.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b
EBUILD llvm-ocaml-20.0.0_pre20240830.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b
EBUILD llvm-ocaml-20.0.0_pre20240910.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b
+EBUILD llvm-ocaml-20.0.0_pre20240917.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b
MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685
diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-19.1.0.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-19.1.0.ebuild
new file mode 100644
index 000000000000..84bd71875fac
--- /dev/null
+++ b/dev-ml/llvm-ocaml/llvm-ocaml-19.1.0.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~sys-devel/llvm-${PV}:=[debug?]
+ !sys-devel/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-20.0.0_pre20240917.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-20.0.0_pre20240917.ebuild
new file mode 100644
index 000000000000..36b3716c0372
--- /dev/null
+++ b/dev-ml/llvm-ocaml/llvm-ocaml-20.0.0_pre20240917.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+IUSE="+debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~sys-devel/llvm-${PV}:=[debug?]
+ !sys-devel/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}