diff options
| author | root <root@alpha.trunkmasters.com> | 2026-08-29 03:04:45 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-08-29 03:04:45 -0500 |
| commit | 675018c33e0383ac7d40ba2922d90d811382accc (patch) | |
| tree | 2e0c0d53fe59a7a9294c59d8d4cf081b76e3ca1b /dev-ml | |
| parent | c21ba35eb4039c697aed1e9e3dcbc6d62763cf37 (diff) | |
| download | baldeagleos-repo-675018c33e0383ac7d40ba2922d90d811382accc.tar.gz baldeagleos-repo-675018c33e0383ac7d40ba2922d90d811382accc.tar.xz baldeagleos-repo-675018c33e0383ac7d40ba2922d90d811382accc.zip | |
Adding metadata
Diffstat (limited to 'dev-ml')
| -rw-r--r-- | dev-ml/llvm/Manifest | 2 | ||||
| -rw-r--r-- | dev-ml/llvm/llvm-23.1.0.ebuild | 107 |
2 files changed, 109 insertions, 0 deletions
diff --git a/dev-ml/llvm/Manifest b/dev-ml/llvm/Manifest index 1db690e1cc4e..a3d7b6b25201 100644 --- a/dev-ml/llvm/Manifest +++ b/dev-ml/llvm/Manifest @@ -15,4 +15,6 @@ DIST llvm-project-23.1.0-rc2.src.tar.xz 179079292 BLAKE2B 59b4ae719ca496b29e37c1 DIST llvm-project-23.1.0-rc2.src.tar.xz.sig 466 BLAKE2B c7acaa7f8833286cd0037c4c31ba8a1bb20f4a09b62979c7df9f69993728406b1a42db62d2ab2a34c526c0bdae1bc027074a623142420d2fc264c3f83e3c0f7b SHA512 7e2db57ed17efe3bf36c476049973b760af60c8a9302992a17e050e7a61db7b92df0b6c06f26989c61ce2e4682e7604bfdd0f063e322a726923e857890cedc8c DIST llvm-project-23.1.0-rc3.src.tar.xz 179126732 BLAKE2B f0843aacbf9ebd57929dbba0436773775dc121223ae3a81d1c30bd5a3ccba136359b9e483d2be58546dc6bf468743711d5057f8b1486e5ba4d59a96136426c3c SHA512 0c9bdf4c75784269bd4560d94126e667d1d145da2f6db4d94f437b2388880f3dcb52f85c0580d78e2597b141511a4b7ddadfc31f83b690d5cd383e84330ce247 DIST llvm-project-23.1.0-rc3.src.tar.xz.sig 466 BLAKE2B c7bd61c1cab2bdb4c8026aa095f7543e7c2f50520531f3ca6bd8c0cb78b2a7770d39723cec6effe9366c260d01b0db2bfd072281790b63b7d0d8b48339f51c42 SHA512 751f602d29235d4ce58a0d38c23f360977cb9e978e04399b3032053e7168903a721d307f001864b73fef8f567023eebe8f4fdbf4124667789d0afaff57b01d7d +DIST llvm-project-23.1.0.src.tar.xz 179140728 BLAKE2B 9253189469c70b1e7e326851635934fab85bf64139f1dcd44721ab261c097c9980276d48eac705b999cde0a024a362191c719646956504364534585dbf57d643 SHA512 f87a6084a4b4ddbf155949bb0a9d95592e665683d03db59c65002520634db57bb0b9e90011cbdf1dfc72bf2c649cebc5c546a1de4811c3bfc0b89620b1669061 +DIST llvm-project-23.1.0.src.tar.xz.sig 119 BLAKE2B 6bd4f681aa0926b3a8e896993fcb238749a5b29dd26f6637e5543699334c0818223d9c798da35515f27fd197cc7de370cc70de3e1bb6721e6c7cac3050879fc7 SHA512 3b1ffaf6fbc6ed08c1d0523b565fb63cbde1a76344bb3ed1a53722482927c03e2652859ef44de962ce90bdb7c5711db63f8d98559bc86cb58294a1cfc62e4b4f DIST llvm-project-bb9934d4dfef9033ded36d26827dbb6d3ac1dd92.tar.gz 277566365 BLAKE2B 401320655d19b3d430d15a48e2daf1f00567ef87fd2d1f86c3d505a1b2f5920db6cbfa620bf1b0561cd318d6046830d5b19fe0e7b58647863372c6c96526526c SHA512 354b901ca80227abe6b0514eeba437f237ea2658dd1927bb6e1d3b0b298bdb0dfdb7855c0f359eea4977dd344f6d0f6d1ce486ea0100d4a5615a9139ef198fca diff --git a/dev-ml/llvm/llvm-23.1.0.ebuild b/dev-ml/llvm/llvm-23.1.0.ebuild new file mode 100644 index 000000000000..595eeee6c534 --- /dev/null +++ b/dev-ml/llvm/llvm-23.1.0.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +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:= + ~llvm-core/llvm-${PV}:=[debug?] + !llvm-core/llvm[ocaml(-)] +" + +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + ${PYTHON_DEPS} + dev-lang/perl + dev-ml/findlib +" + +LLVM_COMPONENTS=( llvm cmake libc 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 +} |
