diff options
author | Andrew Ammerlaan <andrewammerlaan@gentoo.org> | 2024-08-04 13:14:59 +0200 |
---|---|---|
committer | Andrew Ammerlaan <andrewammerlaan@gentoo.org> | 2024-08-04 13:15:06 +0200 |
commit | 74396b56775f26029f39dd5480e731a168351594 (patch) | |
tree | e3c428510c573c47b520e68b6894f209c3849d73 /sci-libs | |
parent | Revert "package.mask, musl: mask iproute2-6.10.0, bug 936234" (diff) | |
download | gentoo-74396b56775f26029f39dd5480e731a168351594.tar.gz gentoo-74396b56775f26029f39dd5480e731a168351594.tar.bz2 gentoo-74396b56775f26029f39dd5480e731a168351594.zip |
sci-libs/mkl: add 2023.1.0.46342
Bug: https://bugs.gentoo.org/937280
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/mkl/Manifest | 4 | ||||
-rw-r--r-- | sci-libs/mkl/mkl-2023.1.0.46342.ebuild | 128 |
2 files changed, 132 insertions, 0 deletions
diff --git a/sci-libs/mkl/Manifest b/sci-libs/mkl/Manifest index ac12bef12401..38816ab8cb95 100644 --- a/sci-libs/mkl/Manifest +++ b/sci-libs/mkl/Manifest @@ -1,9 +1,13 @@ DIST intel-oneapi-mkl-2022.2.1-2022.2.1-16993_amd64.deb 202488238 BLAKE2B 9bea2cb85aebaa99eac17563e35e4a33e564e58b3e797ce97c140ee510870d7bccd5ffc138eea86a3c25de988a39b5ed06182cb87f103fd8c2dc772d1bd50b81 SHA512 21f2c8b9608fc942821624132aa905f2ec0863f6af9b8a02c166f88b41620ea4e66d1e6551f5da53e727103e9035f28018b12ee3bee33c76ea10be6a68c82748 DIST intel-oneapi-mkl-2023.0.0-2023.0.0-25398_amd64.deb 188781126 BLAKE2B f4db4f0e8111a01c697e656de30579c22cba3c34816c8399b1b4cffde33f4b636e837f6eceddc659c5c1d4f38984dec110e7362bb3d91eb521f1cfede64d399a SHA512 7f53a93151e5754219d3fa70722918c26f8f90b040f2587f85ce7e8dc1f73dadba5d138e01e67db4b9c76602d6e8502aa92645a0d10ddbcf5854bb85fcd2dbe6 +DIST intel-oneapi-mkl-2023.1.0-2023.1.0-46342_amd64.deb 181631354 BLAKE2B cd1380fd40505ebbd018e76f6727498ade9e63fd4db4167d38ada8819d264f01883afb00d6d3acd15981134f8c899f293afab9129637c359ba2e0b3cfa2e35ef SHA512 fcbe42bbd3446c7ac5d6986506e44976c8bd0e365ed829f20cc7662388bdd1c09ca1927bde49f8449539faa42eedbfbb7793603354fbfcd5cdc32e0e2564b4bf DIST intel-oneapi-mkl-common-2022.2.1-2022.2.1-16993_all.deb 23890 BLAKE2B 0287ac646a19e8a33b25cbef006cb98c410872fff2294a15d4e35dd55fc037b523c1923d99d2445a1959b6515ef4b6fdfa7243338c2d194b3c4bf4548949216c SHA512 362640c14713bc8186ea712bb6720311cce1dae6e775d7aade4c613a7a5708224507ff4fefa1081165fa366840f94f8ae73ee345699a4fee5cf7cd7607d9f94e DIST intel-oneapi-mkl-common-2023.0.0-2023.0.0-25398_all.deb 23930 BLAKE2B d4ea741816edbc69962cd3ac40bacfd200924212da47f30353ee60ef7ddad6a17453e51681e974cdc8f18355c538f1f3305e36a469860dc125f3c21e65fa0861 SHA512 3c190353b19ed32c13e702f45f453c37d62815aef306dc3bcf88faa20b5afe322c577e9129eafe2d1ace0238fde8d1f8fed04fcadd0ed2d6c43f8e5c46a76ce6 +DIST intel-oneapi-mkl-common-2023.1.0-2023.1.0-46342_all.deb 23886 BLAKE2B d166a924baa6014ae82fb4954c7a79eb3d854f7158ecf969f0a52f809ca8df863c9cec6c75e92b7122137e691c0d2bc71f4ed67006725af1ff9c6e66fed4625e SHA512 c51723be1522e9b1dcb41d30e46c9c1314a68f8cd76ee984c4b12e8206872d41360a9a28e89835225427f4ab2e637e4847fceaf6492cb18b18b22f32d124988d DIST intel-oneapi-mkl-common-devel-2022.2.1-2022.2.1-16993_all.deb 4688928 BLAKE2B 545641f68ba7b835859092242a60e065dd7bae8e538b27afaa1f7b266c6ce9aa5c0777b6ced7b8f3a35b70dbe6c6cbfad1db7c370a7a4f4478c8f23b4075bfd5 SHA512 275f267cf103b92ed0bdf56fdd55aee7c5ba5f42d2f7507abe1219aba72f325b9386c8e203a04d4a91020598d0d9cc82b0fc7abe22491c1103f44f3a31d42b2a DIST intel-oneapi-mkl-common-devel-2023.0.0-2023.0.0-25398_all.deb 4584320 BLAKE2B 4b172c61def3834d6c9c2ab82345c96fb474839af1abf56da280230fb69e4e01ebeabf5e9bed1dc394bc813595f3f6d0c104e9e7457de2366e17c6e83ce014b0 SHA512 9f300fd9950c734b10e846ccf21ff579dd761158c6e74f33acb77a8f636956c789f67b6757d9ff5e6ae7292782782556b158b413535b39fd39b80a45c634a017 +DIST intel-oneapi-mkl-common-devel-2023.1.0-2023.1.0-46342_all.deb 4661052 BLAKE2B 4cd1504982ce103a0654223e34e3c61fdb0b8759120cb8efb9750e5e0a728ea33b5c34d237bee07591ae32976ea96fa447b745a297061c54e6285a48dcdbec42 SHA512 877c758cc79d4b6239a0cf57b363f7a869b0794caf80f72eeeae9252544d8c2bafabd9f356f1b43839560d394218652e86a7983f30879523009bc144e5b2e814 DIST intel-oneapi-mkl-devel-2022.2.1-2022.2.1-16993_amd64.deb 183600754 BLAKE2B 94373a9d71625f71fb406d302eabed7800dc1b0e0ffef6268bf93abdccb8da4adb87643ebe73cd187fe1432b43e6de4eee4b716bb67a483c862e1beef0db486a SHA512 a259580266798e16b6fe6195cfacb1cdd9ae519c86945e7df29b7eff344fbfb238b0126231a99d2190cdbdba6340dce3f40574f443efd09b4955c86260d331da DIST intel-oneapi-mkl-devel-2023.0.0-2023.0.0-25398_amd64.deb 171354314 BLAKE2B 27ddc4f1fe09d688e2593e30d1de49505ccf5ac3d8ce50105f29ed451cf402df064419e3795b7f7aeed499fb6fd3191cce0099fa85a20fe90e06cc82415b1c79 SHA512 2688e1ca91bfce33026fd5853d04aa510318d2e6f154755afa2103ba797119b0e2c19718e1180b96fce89d704b9b8d5d3995788320296861b498e18420470572 +DIST intel-oneapi-mkl-devel-2023.1.0-2023.1.0-46342_amd64.deb 171338710 BLAKE2B 7f804f88e88c1bc28c0b2470a703815e33e44fe6e4dacd179095c430a46db34f97f863b3169b96e74f67e14c285f3adf99ff04c60c40e495e17f2a947fc03387 SHA512 1ef5cb3a161b3d2fcf6c1e4a13e696abc8756a9d05723fd7d9c514bf2469f787e9e56f8696fbad25d3102a6d84063fc61daae6b514188c021f5e6b00d67a8dd9 DIST mkl-2020.4.304.tar.gz 549319314 BLAKE2B 9ffdb0dc87c9fba1f003961f09cabef7376bd3d10e98085900c863383f0eb1e026f0f804390b2edf4e29d5b0b685af7b74092a7cb5cc871ca656462cec9487e4 SHA512 9c4ff7710484a1c0dd3e6ba7401eb6cb599f771651006b6a570c45b9abf1f43e8e400940d859a656c6892aa81e634c4d74eefe88e8287fdbb19a513f332326b7 diff --git a/sci-libs/mkl/mkl-2023.1.0.46342.ebuild b/sci-libs/mkl/mkl-2023.1.0.46342.ebuild new file mode 100644 index 000000000000..973afe5ca76e --- /dev/null +++ b/sci-libs/mkl/mkl-2023.1.0.46342.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit unpacker + +DESCRIPTION="Intel Math Kernel Library" +HOMEPAGE="https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl.html" +SRC_URI=" + https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-${PN}-$(ver_cut 1-3)-$(ver_cut 1-3)-$(ver_cut 4)_amd64.deb + https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-${PN}-devel-$(ver_cut 1-3)-$(ver_cut 1-3)-$(ver_cut 4)_amd64.deb + https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-${PN}-common-$(ver_cut 1-3)-$(ver_cut 1-3)-$(ver_cut 4)_all.deb + https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-${PN}-common-devel-$(ver_cut 1-3)-$(ver_cut 1-3)-$(ver_cut 4)_all.deb +" +S="${WORKDIR}" + +LICENSE="ISSL" +SLOT="0" +KEYWORDS="~amd64" +RESTRICT="strip" + +# MKL uses Intel/LLVM OpenMP by default. +# One can change the threadding layer to "gnu" or "tbb" +# through the MKL_THREADING_LAYER env var. +RDEPEND=" + app-eselect/eselect-blas + app-eselect/eselect-lapack + dev-cpp/tbb + dev-libs/opencl-icd-loader + sys-cluster/mpich[fortran] + sys-libs/libomp +" +# bug #801460 +BDEPEND=" + app-arch/xz-utils[extra-filters] + app-eselect/eselect-blas + app-eselect/eselect-lapack +" + +QA_PREBUILT="*" +QA_TEXTRELS="*" +QA_SONAME="*" + +src_prepare() { + default + # Drop conda stuff + rm -r opt/intel/oneapi/conda_channel || die +} + +src_install() { + # Symlink pkgconfig and cmake files + pushd "opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/pkgconfig" || die + for file in *.pc; do + dosym "../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/pkgconfig/${file}" "/usr/share/pkgconfig/${file}" + done + popd || die + pushd "opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/cmake/mkl" || die + for file in *.cmake; do + dosym "../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/cmake/mkl/${file}" "/usr/$(get_libdir)/cmake/mkl/${file}" + done + popd || die + + # Symlink files in locale directory + pushd "opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/locale/en_US" || die + for file in *; do + dosym "../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/locale/en_US/${file}" "/usr/share/locale/en_US/${file}" + done + popd || die + + # Move everything over to the image directory + mv "${S}/"* "${ED}" || die + + # Create convenience symlink that does not include the version number + dosym "$(ver_cut 1-3)" /opt/intel/oneapi/mkl/latest + + dodir /usr/$(get_libdir)/blas/mkl + dosym ../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/libmkl_rt.so usr/$(get_libdir)/blas/mkl/libblas.so + dosym ../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/libmkl_rt.so usr/$(get_libdir)/blas/mkl/libblas.so.3 + dosym ../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/libmkl_rt.so usr/$(get_libdir)/blas/mkl/libcblas.so + dosym ../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/libmkl_rt.so usr/$(get_libdir)/blas/mkl/libcblas.so.3 + dodir /usr/$(get_libdir)/lapack/mkl + dosym ../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/libmkl_rt.so usr/$(get_libdir)/lapack/mkl/liblapack.so + dosym ../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/libmkl_rt.so usr/$(get_libdir)/lapack/mkl/liblapack.so.3 + dosym ../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/libmkl_rt.so usr/$(get_libdir)/lapack/mkl/liblapacke.so + dosym ../../../../opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64/libmkl_rt.so usr/$(get_libdir)/lapack/mkl/liblapacke.so.3 + + newenvd - "70intel-mkl" <<-_EOF_ + MKLROOT="${EPREFIX}/opt/intel/oneapi/mkl/$(ver_cut 1-3)" + PATH="${EPREFIX}/opt/intel/oneapi/mkl/$(ver_cut 1-3)/bin/intel64" + # we need to duplicate it in ROOTPATH for Portage to respect... + ROOTPATH="${EPREFIX}/opt/intel/oneapi/mkl/$(ver_cut 1-3)/bin/intel64" + LDPATH="${EPREFIX}/opt/intel/oneapi/mkl/$(ver_cut 1-3)/lib/intel64" + _EOF_ +} + +pkg_postinst() { + local libdir=$(get_libdir) me="mkl" + + # check blas + eselect blas add ${libdir} "${EROOT}"/usr/${libdir}/blas/${me} ${me} + local current_blas=$(eselect blas show ${libdir} | cut -d' ' -f2) + if [[ ${current_blas} == "${me}" || -z ${current_blas} ]]; then + eselect blas set ${libdir} ${me} + elog "Current eselect: BLAS/CBLAS ($libdir) -> [${current_blas}]." + else + elog "Current eselect: BLAS/CBLAS ($libdir) -> [${current_blas}]." + elog "To use blas [${me}] implementation, you have to issue (as root):" + elog "\t eselect blas set ${libdir} ${me}" + fi + + # check lapack + eselect lapack add ${libdir} "${EROOT}"/usr/${libdir}/lapack/${me} ${me} + local current_lapack=$(eselect lapack show ${libdir} | cut -d' ' -f2) + if [[ ${current_lapack} == "${me}" || -z ${current_lapack} ]]; then + eselect lapack set ${libdir} ${me} + elog "Current eselect: LAPACK ($libdir) -> [${current_blas}]." + else + elog "Current eselect: LAPACK ($libdir) -> [${current_blas}]." + elog "To use lapack [${me}] implementation, you have to issue (as root):" + elog "\t eselect lapack set ${libdir} ${me}" + fi +} + +pkg_postrm() { + eselect blas validate + eselect lapack validate +} |