From 4cbcc855382a06088e2f016f62cafdbcb7e40665 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 20 Mar 2022 00:40:44 +0000 Subject: gentoo resync : 20.03.2022 --- dev-ml/llvm-ocaml/Manifest | 10 ++- dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.9999.ebuild | 112 ------------------------ dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.ebuild | 112 ++++++++++++++++++++++++ dev-ml/llvm-ocaml/llvm-ocaml-13.0.1_rc3.ebuild | 112 ------------------------ dev-ml/llvm-ocaml/llvm-ocaml-14.0.0.9999.ebuild | 4 +- dev-ml/llvm-ocaml/llvm-ocaml-14.0.0_rc4.ebuild | 112 ++++++++++++++++++++++++ dev-ml/llvm-ocaml/llvm-ocaml-15.0.0.9999.ebuild | 112 ++++++++++++++++++++++++ 7 files changed, 344 insertions(+), 230 deletions(-) delete mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.9999.ebuild create mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.ebuild delete mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-13.0.1_rc3.ebuild create mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-14.0.0_rc4.ebuild create mode 100644 dev-ml/llvm-ocaml/llvm-ocaml-15.0.0.9999.ebuild (limited to 'dev-ml/llvm-ocaml') diff --git a/dev-ml/llvm-ocaml/Manifest b/dev-ml/llvm-ocaml/Manifest index e6ea331931d0..cbb3d8ba13d7 100644 --- a/dev-ml/llvm-ocaml/Manifest +++ b/dev-ml/llvm-ocaml/Manifest @@ -1,11 +1,13 @@ DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2 -DIST llvmorg-13.0.1-rc3.tar.gz 147302323 BLAKE2B 9ac2f97568062d7dd618295a68d6e14898fcd69e2bb66290b999ceb8c12132371f4e9b59d8ba2b252e5e5cb249045676b24fc50c117b2afae20abab98f426582 SHA512 88a04ad02af2d41ec21c7a62bad21ee0e627b7276a16795875afd062ed29ac7fb4aadec5b5e48785a6502c9fd797a4b67d648a21f193c9f7602112870b10a3d1 +DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f +DIST llvmorg-14.0.0-rc4.tar.gz 158082013 BLAKE2B 0e717898d8f1ed160e525a68aba56a84b7d31856ea72fdb8fa02e863c5a2074245a38d4a4aa7d178beab1ea64aa92d0ba9dcad4373ebb03868070bf718112107 SHA512 a942848aa5042b97bab6d0d5bcee11ea2f85f1244d7eaadb8f7000bf104b2160e6034c04e3755501dd178bc99c26669cf4aca40edb4bba598fdde6bcf3f40ddc EBUILD llvm-ocaml-11.1.0.ebuild 3054 BLAKE2B 0498a14f644a956cf1a495c4b10687328cdd7044b4cf90e09d51c3c93c3f8e7eae29e93b605e7079975cf9b585e14e0c50c85f6b210d6516395f3278f0c2cace SHA512 28ac245ce6fb5caafec11a501e4a8e7a39bf15bad171b445f9b6faf82b8c3a4416925c42ac022bddf262332ca275de3969735b99e642df8c3b64ab3b7d04f85a EBUILD llvm-ocaml-12.0.1.ebuild 3060 BLAKE2B ed1223c503df5487c666642a02df41095eb724b46a79c1204f8ce2ff6b9eb650fbb46907d00e721c1ecb5df6648afdefeca6dabca456ab54656fc45871beff80 SHA512 57cdf97cf5a401a5ec33f15f8fb1c83998a7503b4ebcab1c2e35c2b35519d9b30f4b25598ddc2f8e6757f6de42a6a5878ab43e50fd45f1df0db6549a204b1680 EBUILD llvm-ocaml-13.0.0.ebuild 2596 BLAKE2B 4d22e0d0f89b14f338f0dde0701819d5d94f4c298bf024b06c4d13601f6a61e1ecfd7e7db50c8ab1f7c34e0bb9bbed26c5e61e2ddac80bd6766cf1b163f3626a SHA512 aaba7713d7acaff78ab9949765bd2e095bdf7c32a006653967f9a031113b3c3911b01e55c460f67e38da3574bd2dc8d81026a55cad2aea775363287e01b72684 -EBUILD llvm-ocaml-13.0.1.9999.ebuild 2580 BLAKE2B d044f3d8750bf37a1f9079a0f7659edc50f220abaeff810415062774adde9917e074ae1034da360cd4144e6f23a850b6485b83332edffc89a36282362d76f067 SHA512 2b9d1d759648d36996dcda05b872a204081247100e4cb1efe674ae3853d137ab4169115f4d0466d5b02316e1a35a302733085257bf96e22b8ba964d868e670dd -EBUILD llvm-ocaml-13.0.1_rc3.ebuild 2580 BLAKE2B d1aa0c1e454a0a2a5a5af6e525801c1eb68514f6e96d267f5383c4291535c44aebf8a7e0752bd619e685e16c9fe6e2831ecd563802a8a9707969db55d459fcff SHA512 0f2e4a039baf1bdd4fc462d8606493e673c7b538886dab32c929b3894503bd9fb19d3c9a3e7032a65efa97c18f673462d57f48fb4c503544f270763836e7535e -EBUILD llvm-ocaml-14.0.0.9999.ebuild 2580 BLAKE2B d044f3d8750bf37a1f9079a0f7659edc50f220abaeff810415062774adde9917e074ae1034da360cd4144e6f23a850b6485b83332edffc89a36282362d76f067 SHA512 2b9d1d759648d36996dcda05b872a204081247100e4cb1efe674ae3853d137ab4169115f4d0466d5b02316e1a35a302733085257bf96e22b8ba964d868e670dd +EBUILD llvm-ocaml-13.0.1.ebuild 2596 BLAKE2B 4125904f29738c9d1df5dda7737d2edb1e68512f66b561d4ab4b24ebaa457da1a13ab830ab911b5016e05cb48696aff0f6cd1753615e33e8b06f5b086deb020f SHA512 7b80a864207d4c0ef50725a5e9e64c6ff0956b4dfd3f6c55f4363f44703a7113205a39a53624e288562b08ca3191bd11cd7615ecb53395e07777ae7161a173c4 +EBUILD llvm-ocaml-14.0.0.9999.ebuild 2598 BLAKE2B ece82974470a98526e86f37905d839403c05f53e9674bb5e5a6143389f26330ac2521765d34d90ca0e3e1ca3cfca94298dc17e2381fa43c7ae7b6c0ecaf4536e SHA512 d2386f680a121db6c6b4776a90a70aa8c4efe28cd3587fb1b2ed97506ad981d87ceb3aa998a486303b4d81a613ed86dd2eea787cb7250e233e5cce3990180064 +EBUILD llvm-ocaml-14.0.0_rc4.ebuild 2598 BLAKE2B ece82974470a98526e86f37905d839403c05f53e9674bb5e5a6143389f26330ac2521765d34d90ca0e3e1ca3cfca94298dc17e2381fa43c7ae7b6c0ecaf4536e SHA512 d2386f680a121db6c6b4776a90a70aa8c4efe28cd3587fb1b2ed97506ad981d87ceb3aa998a486303b4d81a613ed86dd2eea787cb7250e233e5cce3990180064 +EBUILD llvm-ocaml-15.0.0.9999.ebuild 2598 BLAKE2B ece82974470a98526e86f37905d839403c05f53e9674bb5e5a6143389f26330ac2521765d34d90ca0e3e1ca3cfca94298dc17e2381fa43c7ae7b6c0ecaf4536e SHA512 d2386f680a121db6c6b4776a90a70aa8c4efe28cd3587fb1b2ed97506ad981d87ceb3aa998a486303b4d81a613ed86dd2eea787cb7250e233e5cce3990180064 MISC metadata.xml 217 BLAKE2B 23799663344acc2d532fc6fa7dd798813aef7293fcab616d6300b15a6e603b6d17ca63d5153eb8da1b976215d8e3775e8d3a67026bacc9693993d48ec1cb69a9 SHA512 e13d0436d3a3a449723277a37ae4c5a673139b6da818adf7ad7654d94d3948ed8607b1c27e83e963bf450bd2d5a650c985e27ff5a531db9813cb4ab10b985dd6 diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.9999.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.9999.ebuild deleted file mode 100644 index d0039fc6ae95..000000000000 --- a/dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.9999.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake llvm llvm.org 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="" -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=" - dev-lang/perl - dev-ml/findlib - >=dev-util/cmake-3.16 - test? ( dev-ml/ounit2 ) - ${PYTHON_DEPS}" - -LLVM_COMPONENTS=( llvm ) -LLVM_USE_TARGETS=llvm -llvm.org_set_globals - -pkg_setup() { - LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - 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}" - - # disable go bindings - -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND - - # 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-13.0.1.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.ebuild new file mode 100644 index 000000000000..7486764ed3ce --- /dev/null +++ b/dev-ml/llvm-ocaml/llvm-ocaml-13.0.1.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +inherit cmake llvm llvm.org 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=" + dev-lang/perl + dev-ml/findlib + >=dev-util/cmake-3.16 + test? ( dev-ml/ounit2 ) + ${PYTHON_DEPS}" + +LLVM_COMPONENTS=( llvm ) +LLVM_USE_TARGETS=llvm +llvm.org_set_globals + +pkg_setup() { + LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_configure() { + 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}" + + # disable go bindings + -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND + + # 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-13.0.1_rc3.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-13.0.1_rc3.ebuild deleted file mode 100644 index 5551d8610615..000000000000 --- a/dev-ml/llvm-ocaml/llvm-ocaml-13.0.1_rc3.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake llvm llvm.org 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="" -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=" - dev-lang/perl - dev-ml/findlib - >=dev-util/cmake-3.16 - test? ( dev-ml/ounit2 ) - ${PYTHON_DEPS}" - -LLVM_COMPONENTS=( llvm ) -LLVM_USE_TARGETS=llvm -llvm.org_set_globals - -pkg_setup() { - LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - 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}" - - # disable go bindings - -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND - - # 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-14.0.0.9999.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-14.0.0.9999.ebuild index d0039fc6ae95..45c941d6ddd7 100644 --- a/dev-ml/llvm-ocaml/llvm-ocaml-14.0.0.9999.ebuild +++ b/dev-ml/llvm-ocaml/llvm-ocaml-14.0.0.9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -29,7 +29,7 @@ BDEPEND=" test? ( dev-ml/ounit2 ) ${PYTHON_DEPS}" -LLVM_COMPONENTS=( llvm ) +LLVM_COMPONENTS=( llvm cmake third-party ) LLVM_USE_TARGETS=llvm llvm.org_set_globals diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-14.0.0_rc4.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-14.0.0_rc4.ebuild new file mode 100644 index 000000000000..45c941d6ddd7 --- /dev/null +++ b/dev-ml/llvm-ocaml/llvm-ocaml-14.0.0_rc4.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +inherit cmake llvm llvm.org 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="" +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=" + dev-lang/perl + dev-ml/findlib + >=dev-util/cmake-3.16 + test? ( dev-ml/ounit2 ) + ${PYTHON_DEPS}" + +LLVM_COMPONENTS=( llvm cmake third-party ) +LLVM_USE_TARGETS=llvm +llvm.org_set_globals + +pkg_setup() { + LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_configure() { + 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}" + + # disable go bindings + -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND + + # 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-15.0.0.9999.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-15.0.0.9999.ebuild new file mode 100644 index 000000000000..45c941d6ddd7 --- /dev/null +++ b/dev-ml/llvm-ocaml/llvm-ocaml-15.0.0.9999.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +inherit cmake llvm llvm.org 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="" +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=" + dev-lang/perl + dev-ml/findlib + >=dev-util/cmake-3.16 + test? ( dev-ml/ounit2 ) + ${PYTHON_DEPS}" + +LLVM_COMPONENTS=( llvm cmake third-party ) +LLVM_USE_TARGETS=llvm +llvm.org_set_globals + +pkg_setup() { + LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_configure() { + 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}" + + # disable go bindings + -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND + + # 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