From 0a3feeaba4dbc58966dccdbbfcd7fb14deef0831 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 16 Jun 2024 00:09:44 +0100 Subject: gentoo auto-resync : 16:06:2024 - 00:09:44 --- dev-ml/llvm-ocaml/Manifest | 9 +- dev-ml/llvm-ocaml/llvm-ocaml-18.1.6.ebuild | 108 --------------------- .../llvm-ocaml-19.0.0_pre20240518.ebuild | 107 -------------------- .../llvm-ocaml-19.0.0_pre20240525.ebuild | 107 -------------------- .../llvm-ocaml-19.0.0_pre20240615.ebuild | 107 ++++++++++++++++++++ 5 files changed, 109 insertions(+), 329 deletions(-) delete mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-18.1.6.ebuild delete mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240518.ebuild delete mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240525.ebuild create mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240615.ebuild (limited to 'dev-ml/llvm-ocaml') diff --git a/dev-ml/llvm-ocaml/Manifest b/dev-ml/llvm-ocaml/Manifest index 70a28303ff04..f3caaf789ac6 100644 --- a/dev-ml/llvm-ocaml/Manifest +++ b/dev-ml/llvm-ocaml/Manifest @@ -4,20 +4,15 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659 DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447 DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30 DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340 -DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c68c8e441a126cf8e89e55a965f3b9e3a629a37d5743fd7859a60bedaddf27ff2da1e0f08c81806871ef542cb7c3f40b23b22cf5 SHA512 89ec276aa41bb2d76cfc3a72d8e728a9ce9176e02c085338b704790524fe329904cf311381805814faa8a6c79637620c01627bf122a51f89e0f3adb47e5df34c -DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee DIST llvm-project-18.1.7.src.tar.xz 132063384 BLAKE2B b8c37bd131fb5f3131bfab4fbad7aa811079ca10723faa14779253bc62b1ee08d4e04650e1da883297ed88a62d518b868a1f13cf57d03233254fd01209da5c02 SHA512 0f67818267803aca9d2bc9eb89335ee6dc56269e8066a0f8a48c4a959e8805dbf6bc839b9f96a92f86ee50d72e7cc326ffe18febb5eb06751ab54a217c0221c8 DIST llvm-project-18.1.7.src.tar.xz.sig 566 BLAKE2B 9ae6d80eba5309ce3d5cba580df57c28dbcf429266b2ced622465e34ab2a7ae0f100d1e89c73a44abccd95a3367979344450fd53fb6a2baa029b929d3f13eee3 SHA512 7e5601e35f4fcaa4ed042638ae5a4fb90714c9dce58aa3f98e965568660b88294185621a4eb5547de262dca8a96f620db3f94932bb1776661e345dbe1266315c DIST llvm-project-5aabbf0602c48b67bb89fd37f95bf97c95ded488.tar.gz 212582616 BLAKE2B 78522148bb4993bd26b16f1e3f44c2baf617705667c7fb104edc844c4330017166c783adae2f0215ca7463c05d1eef30fdf02b13241a9497aaede36bb8580a26 SHA512 104e0b5b4f34102f2da03cd54fe9bf5f7fb6efb3a9745d8ec85caa5f92189fde4a5c02c327243d87ff5c7d24b3790fcabdf0ef7144e79e15765785ca72dd3841 -DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7 -DIST llvm-project-7dc2f6602212bf0a0433c157b70e4fc0d70bb730.tar.gz 211903416 BLAKE2B 4a2f12e0aa234d507d2fc2136a1d98a7624147ce6e401831743e640abcaceb5152c80ba2dc312f9256e4a04be2ad065d1a57dbe5dc24f2d3edc9d65888986710 SHA512 c9eb99f666fc15b29f01a1b2a4b3c6edd3a726033533111e60763c6313a4af8c9dba3396856d6650ac5e666d00941efcc944fac85a4483748bbbea9475e6daf8 +DIST llvm-project-cddb9ce04e68d876de895d39d60b6af34d569012.tar.gz 213219536 BLAKE2B 5aba2c1dd19d73a8691590873f1697fa32adeab7f84d1d5636e211071e64bfa5d28a49ea9cfdba5fbae77c9520c2103a9f1544d669c7948a318636557f45f6ee SHA512 69ed25a0565c61cd4eb512e95b0fd2d2a3a09dbad73e7186d7fb1764193b06e522572eafb271d21469a4bfb133a62efe65e5ccd20cf05af8b43c52e195d477a9 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.6.ebuild 2466 BLAKE2B da2561431f2a593490fb3d20f208e69d97c1d8f95ef4d47681d2bdbea6f9f10bc470930787bf566bd052c49a5b4b8b9fc5f6b60bc837fadd0ae61e95e36c28da SHA512 9d3e85045503ba47be049d7b9edd464f4b2ea5828a63f289fa5129e1c1a2a308278ec22c396d2fba374bf457c1556df31c7d28ca5c237283ceeb5319fbd546dd EBUILD llvm-ocaml-18.1.7.ebuild 2466 BLAKE2B 7480f9140cbdd2ec337cd08924013f1f9751bc34c3223b3f5be441e4d06d131f74aca0cb0115c71ebacb3909240e42d4608dddf98bb6f69e371d5e86e19141f5 SHA512 b7c05d3be29399eb9fb4267537a450daf00b7d8f6bd2be472e5802d4072e3a805db8d5f4fa2830ec46655170a7f2fc1119825327b2d4008af8364772fc215f65 EBUILD llvm-ocaml-19.0.0.9999.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b -EBUILD llvm-ocaml-19.0.0_pre20240518.ebuild 2439 BLAKE2B bb0e88a5e695bdee92c2a6af929944f78ddb799f9efad1de86151a997e3b8c0bc099920b80aa5400fe072022b0a21767dd3187144c450dbdc859e0ae2591bd23 SHA512 4409ff11250d3d75f80508b2dcdcdd7571df68a7ebd33b8f08f4334415335674f1019fd7af56bda3254a28fa725cff394956b08b5de9176a2722bd020949a219 -EBUILD llvm-ocaml-19.0.0_pre20240525.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b EBUILD llvm-ocaml-19.0.0_pre20240608.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b +EBUILD llvm-ocaml-19.0.0_pre20240615.ebuild 2439 BLAKE2B 78ec9994e7e03caf7e32e36c1c8b697039e1c8bcaaf89289ccfc53ccb286d8f3f855048162452782292c2f67e1c4476fa24898c595a55f89aabeef83283fc23a SHA512 b36e82afdfeff73650c86ee1ca59a6c1796a7445a34cc9711d65841380c5a023f661dfd723f4311b537ab5047d4a4bef497ca20e106b1cc0832851674677391b MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685 diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-18.1.6.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-18.1.6.ebuild deleted file mode 100644 index abe0ff931561..000000000000 --- a/dev-ml/llvm-ocaml/llvm-ocaml-18.1.6.ebuild +++ /dev/null @@ -1,108 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -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-19.0.0_pre20240518.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240518.ebuild deleted file mode 100644 index 879c30db0807..000000000000 --- a/dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240518.ebuild +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -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 -} diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240525.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240525.ebuild deleted file mode 100644 index 36b3716c0372..000000000000 --- a/dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240525.ebuild +++ /dev/null @@ -1,107 +0,0 @@ -# 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 -} diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240615.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240615.ebuild new file mode 100644 index 000000000000..36b3716c0372 --- /dev/null +++ b/dev-ml/llvm-ocaml/llvm-ocaml-19.0.0_pre20240615.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 +} -- cgit v1.2.3