diff options
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/Manifest.gz | bin | 44774 -> 44775 bytes | |||
-rw-r--r-- | sci-libs/arpack/Manifest | 6 | ||||
-rw-r--r-- | sci-libs/arpack/arpack-3.8.0-r1.ebuild | 60 | ||||
-rw-r--r-- | sci-libs/arpack/arpack-3.9.0-r1.ebuild | 59 | ||||
-rw-r--r-- | sci-libs/lapack/Manifest | 2 | ||||
-rw-r--r-- | sci-libs/lapack/lapack-3.10.1.ebuild | 93 | ||||
-rw-r--r-- | sci-libs/openblas/Manifest | 8 | ||||
-rw-r--r-- | sci-libs/openblas/files/openblas-0.3.12-shared-blas-lapack.patch | 36 | ||||
-rw-r--r-- | sci-libs/openblas/files/openblas-0.3.21-clang16.patch | 581 | ||||
-rw-r--r-- | sci-libs/openblas/files/openblas-0.3.21-fix-loong.patch | 237 | ||||
-rw-r--r-- | sci-libs/openblas/files/openblas-0.3.23-parallel-make.patch | 67 | ||||
-rw-r--r-- | sci-libs/openblas/openblas-0.3.21-r1.ebuild | 197 | ||||
-rw-r--r-- | sci-libs/openblas/openblas-0.3.23.ebuild | 199 |
13 files changed, 0 insertions, 1545 deletions
diff --git a/sci-libs/Manifest.gz b/sci-libs/Manifest.gz Binary files differindex a6d1b2114942..b97364af6e57 100644 --- a/sci-libs/Manifest.gz +++ b/sci-libs/Manifest.gz diff --git a/sci-libs/arpack/Manifest b/sci-libs/arpack/Manifest index f23bc384388d..e51fd819d243 100644 --- a/sci-libs/arpack/Manifest +++ b/sci-libs/arpack/Manifest @@ -1,11 +1,5 @@ AUX arpack-3.9.1-bashism-configure.patch 1561 BLAKE2B 51c67c03323678f7f828410c1220ee0016654eeb4a5cc134b55923f57c34f1801e24ec14a7a988c37ff100d03ec81fef74b1c55381e65d504168cc43ceb0c158 SHA512 58bdac870cb462f0cf2c4f5cb67f32fb4dfd762a3455b577797bfbe3b76065c7cba8cf9bffacda1a16255981dbed498f556c63ad1df4d4dfe48e663630ddbe90 -DIST arpack-3.8.0.tar.gz 1014494 BLAKE2B 6daf8a237fdfce527935d777292df150b2f78892d9975f8696a37024fcb78174b29afd300e7abca2684c1907eeda658eb4478f09f580835896c0e10d106cdbbd SHA512 8969c74c4c0459ea2d29ea49d5260f668fd33f73886df0da78a42a94aea93c9f5fb70f5df035266db68807ab09a92c13487a7a4e6ca64922145aade8a148a2de -DIST arpack-3.9.0.tar.gz 1015328 BLAKE2B fc9960025140a9d6a570ee0359c16055c826482fe1ee58c2dc7727cd0ead04fbb940da0e08a6f11e05205d239b1059c93af0e08bf2b6e0cfee61d73f1d0d9816 SHA512 fbcaa2179dd1aa5a39fc3e7d80f377ec90ddf16ef93184a88e6ecfc464ed97e5659f2cf578294ac3e0b0c0da6408c86acf5bbdce533e1e9d2a3121848340d282 DIST arpack-3.9.1.tar.gz 1020208 BLAKE2B dd1b5b16cc5304bb16ab68055939c8f3c11f761eff69bcfc22b3cb9605b477929f54513649a7becb152e91275bfccdc868d3ccf464fb876732c7ec23a83fe71e SHA512 1ca590a8c4f75aa74402f9bd62e63851039687f4cb11afa8acb05fce1f22a512bff5fd1709ea85fdbea90b344fbbc01e3944c770b5ddc4d1aabc98ac334f78d2 -DIST tutorial.ps.gz 105599 BLAKE2B 99570e6a0cc1c020b9c271e8ce1cc224f69ff5333cc818c10b063dc8ffbaf66a9f5c6ede99541b4212286d422146b1c4e332eba7e1635c99efa0e4c2620f0630 SHA512 a7b8fefd1a572ed477ae208d49094c1c65c9368990d12de9b3528e33fed546c947659f74e54a810d04154b4a1b0f9a94bcba4db0cf59d379e20786a261066aa4 -DIST ug.ps.gz 248543 BLAKE2B ac010aef470060636fa00360636ba093f0d24d219fa927c79fb1726b798160eda74fa8b4be6c7dff94f5759efcf30afa99ad310e7959115e028738beb8aa125d SHA512 3349117fb10b07207ffbab2ffa31b406d026855ea4c16e8649b14c7d70bc94e11b5730672e34acd654817799136d4bd76569ac50ec78d787df5582d18ed61328 -EBUILD arpack-3.8.0-r1.ebuild 1447 BLAKE2B 77c9b98d574050b8d805f852be28f2addedb026f6517258ad5f2af26cd84d93840f89d9138d7faf6c5f5f60e5b523906a1f09a197a6485bb33609baab54d3ae6 SHA512 2f9ea8c0ffb672bf1d79987f4e5080fa26a3216d3ee20f1645f6d3683a276fab532bcd939a8aca51c025b5f2f9a8211cb730813011e533c209fd6c63cd1cb3cb -EBUILD arpack-3.9.0-r1.ebuild 1363 BLAKE2B 25985d5ad5f046bd5372cd6884597ca534c142f7b4096a9e39dca4781f6e8f4f1978e0bbf36f316e9640acde4640c8b5144f6b404d171ede220636918f9f318b SHA512 c4a246bc1787da14d5c124fefcb537e440eb0935453dd27222599056e4b856a2ed664829cc62b9a0d3841ef58063e0406efd5510f1ab83a6b19ba57944dea425 EBUILD arpack-3.9.1.ebuild 1431 BLAKE2B 7f04f29bf977873c11c6aa6113496e59073547fdd92d61f16a0c621f5c48a7473efd6debd0490acf141983cd49a0a1384d730c9e910717d9853409f9ecb98098 SHA512 c48dcf5ff0dde3797d664db13276bba1f625d4848656abb46ed32388cccbaa4f217d056fcb688758928160c1d0343fd445d8559a2f836622999775cd1a58e315 EBUILD arpack-9999.ebuild 1372 BLAKE2B f20c6ee5ed102fd7d6c5f9ec9e1e326f75aa70b215b7e6f962a4db428a361d3062afcc0afce9568b4b924387e5397175e874a24cb5b28394d515305beb6f5e34 SHA512 2a2d1db5991ede0b442f98c590fbf58c9a38a3ee74b787a5ebfb6fb7c9b5a3c5c5c855f4d5168670468c23b62698dd4555e0b1a93b07af86b72a054a8f7b35da MISC metadata.xml 975 BLAKE2B c586f5c76637d89b4221fc7bde670e0f32b35e3ef73f212a3ebb87893d6741a65e0c95ca981375a0c17231aeb1655c89f4263d6fac869ee29fe8e4e9b026ad06 SHA512 e296ebe68dd0b8a02bc92fdf43057ee2df61f5ff9d04fbc323be7c7b8aaccbb4fe4627d0f1815efe010a0c6f36367dd48417f092303561b4c8e81ac051bfc0bb diff --git a/sci-libs/arpack/arpack-3.8.0-r1.ebuild b/sci-libs/arpack/arpack-3.8.0-r1.ebuild deleted file mode 100644 index 6fe3f9b350af..000000000000 --- a/sci-libs/arpack/arpack-3.8.0-r1.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools fortran-2 toolchain-funcs - -DESCRIPTION="Arnoldi package library to solve large scale eigenvalue problems" -HOMEPAGE="http://www.caam.rice.edu/software/ARPACK/ https://github.com/opencollab/arpack-ng" -SRC_URI=" - https://github.com/opencollab/${PN}-ng/archive/${PV}.tar.gz -> ${P}.tar.gz - doc? ( - http://www.caam.rice.edu/software/ARPACK/SRC/ug.ps.gz - http://www.caam.rice.edu/software/ARPACK/DOCS/tutorial.ps.gz )" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos" -IUSE="doc examples mpi" - -RDEPEND=" - virtual/blas - virtual/lapack - mpi? ( virtual/mpi[fortran] )" -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -S="${WORKDIR}/${PN}-ng-${PV}" - -src_prepare() { - default - eautoreconf -} - -src_configure() { - econf \ - --disable-static \ - --enable-icb \ - --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \ - --with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)" \ - $(use_enable mpi) -} - -src_install() { - default - - dodoc DOCUMENTS/*.doc - newdoc DOCUMENTS/README README.doc - use doc && dodoc "${WORKDIR}"/*.ps - if use examples; then - dodoc -r EXAMPLES - if use mpi; then - docinto EXAMPLES/PARPACK - dodoc -r PARPACK/EXAMPLES/MPI - fi - fi - - # no static archives - find "${ED}" -name '*.la' -delete || die -} diff --git a/sci-libs/arpack/arpack-3.9.0-r1.ebuild b/sci-libs/arpack/arpack-3.9.0-r1.ebuild deleted file mode 100644 index af46a414cd13..000000000000 --- a/sci-libs/arpack/arpack-3.9.0-r1.ebuild +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools fortran-2 toolchain-funcs - -if [[ ${PV} == *9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/opencollab/arpack-ng" -else - SRC_URI="https://github.com/opencollab/${PN}-ng/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" - S="${WORKDIR}/${PN}-ng-${PV}" -fi - -DESCRIPTION="Arnoldi package library to solve large scale eigenvalue problems" -HOMEPAGE="http://www.caam.rice.edu/software/ARPACK/ https://github.com/opencollab/arpack-ng" -LICENSE="BSD" -SLOT="0" -IUSE="examples mpi" - -RDEPEND=" - virtual/blas - virtual/lapack - mpi? ( virtual/mpi[fortran] )" -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -src_prepare() { - default - eautoreconf -} - -src_configure() { - econf \ - --disable-static \ - --enable-icb \ - --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \ - --with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)" \ - $(use_enable mpi) -} - -src_install() { - default - - dodoc DOCUMENTS/*.doc - newdoc DOCUMENTS/README README.doc - if use examples; then - dodoc -r EXAMPLES - if use mpi; then - docinto EXAMPLES/PARPACK - dodoc -r PARPACK/EXAMPLES/MPI - fi - fi - - # no static archives - find "${ED}" -name '*.la' -delete || die -} diff --git a/sci-libs/lapack/Manifest b/sci-libs/lapack/Manifest index de3d922ff47a..6aef6c6fec8b 100644 --- a/sci-libs/lapack/Manifest +++ b/sci-libs/lapack/Manifest @@ -1,8 +1,6 @@ AUX lapack-3.12.0-correct-64bit-interface.patch 1597 BLAKE2B 2ff922afcd0611734df218537d7729b38fe0088e198f8bed9e7dd1c68fe559c3515b5d4a532c846a3dfd3b0a7e59fe9fef8d88ab42b6dc567753029b84ab4a6d SHA512 911a0306ed059c224d523937ea945398141faee3a6fbcc86ce7e148a1b662483a510902b7e9110e70ff0b953c4ec47efa37a22049da797f43a6154ac0cc257a8 -DIST lapack-3.10.1.tar.gz 7632257 BLAKE2B f2653239029ed9c136173fc2e54773a785ad3e469d581ca2b7f6a72697e6bb9d22879edaf8327ada510df259c08fe984202d14cb3860c0d2a711eb55a1cc11dd SHA512 0500bbbb48483208c0a35b74972ff0059c389da6032824a2079637266a99fa980882eedf7f1fc490219ee4ff27812ac8c6afe118e25f40a9c2387e7b997762fb DIST lapack-3.11.tar.gz 7723909 BLAKE2B b3f8ec8cd439d790ba5869b8b071fe924a4ac53328bce77d46032602b45353670966ed9223324a0780aabc2e95624f439e03f90a89586f96afbe1374c4261bc5 SHA512 d2f23c5f6ae14fb868312a25235459bd0c04f4b43b82a5ade01314776ade9a75dc518a457eb58595f29f64cb0bb86f1a12ce8beea3ec87ef9caf49493ce29fb3 DIST lapack-3.12.0.tar.gz 7933607 BLAKE2B dafb1f9a717f2cbc00a26f8cff2c7a1ebb720714fe6d7bd5fabb511a2f4af317165814340864c9d601e4e16c7762f643fbbafc058170ebcdc6529a9b4f2d70b6 SHA512 f8f3c733a0221be0b3f5618235408ac59cbd4e5f1c4eab5f509b831a6ec6a9ef14b8849aa6ea10810df1aff90186ca454d15e9438d1dd271c2449d42d3da9dda -EBUILD lapack-3.10.1.ebuild 2984 BLAKE2B f290299c23d29e927d96cbb42b6f19fa5fa8a74bfcb40628220e0f080d60e9d94ecc0d7126acaf8753c9cbd94c5bd4ea55c986e3fef2f698a2d7a64757564201 SHA512 5f415f31998581ef18eaae12ad2bc59a023405327d0fb60aeb632c42ecd19ee9301020c0e4bfacafd72958ba65254dbdfe63d0f7c123e3848d2d7e8694c80823 EBUILD lapack-3.11.ebuild 3438 BLAKE2B 53233fc499ed64ea2894de24a98fe9a3f9f4be980457640b9f808dff92529d4658f649df3821d66293c5a49b3582d50eaa43e704327bdecacd91df39210adb3c SHA512 f12cbd959ccbfadbbceb5ce37a0237dc69f31f7e80a389ed17f9ec4ca76a60af49d51eb6bf9bd5d5d9e62678b2b7047378bd279e88fa54336aa0b46bd0124b8e EBUILD lapack-3.12.0-r1.ebuild 3731 BLAKE2B 7f1fc1fa666a417531fe23e1ae6ec532ea6eb41ad96845fc3ccc575264631cf16bd60bdffb4c1c56791f6266e0fa439c2e2c40512f69ea45786be7234d806341 SHA512 d47eecc6492272f199373cfc1d5a5bab9c99365a6f1ece31c473598afa8ae34bc08e03638f95775d9369d96c23ffe851e3e27ff5373a0b35f6fa61853c3e8351 EBUILD lapack-3.12.0.ebuild 3547 BLAKE2B 4a5c295efd2d0bb7edc523bede66a9fb7d7e10d95183a3cbd22c17f84c6c72d167f6228f585e8ba37ea76875ebffeea240602b41b68c37d64a46c2dc649fb166 SHA512 da82c1a22d1aa446f89f059c4bb992dc9c549ee96fd805cfff41eec2e1a730e6eaea3c060aede4163a46ee648d2b38ebc85e21ae0c738f146e427249c4fd89f9 diff --git a/sci-libs/lapack/lapack-3.10.1.ebuild b/sci-libs/lapack/lapack-3.10.1.ebuild deleted file mode 100644 index 16b9d22e73df..000000000000 --- a/sci-libs/lapack/lapack-3.10.1.ebuild +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake fortran-2 - -DESCRIPTION="BLAS,CBLAS,LAPACK,LAPACKE reference implementations" -HOMEPAGE="https://www.netlib.org/lapack/" -SRC_URI="https://github.com/Reference-LAPACK/lapack/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -# TODO: static-libs 64bit-index -IUSE="lapacke deprecated doc eselect-ldso test" -RESTRICT="!test? ( test )" - -BDEPEND="virtual/pkgconfig" -RDEPEND=" - !app-eselect/eselect-cblas - virtual/fortran - eselect-ldso? ( - >=app-eselect/eselect-blas-0.2 - >=app-eselect/eselect-lapack-0.2 - ) - doc? ( app-doc/blas-docs )" -DEPEND="${RDEPEND}" - -src_configure() { - local mycmakeargs=( - -DCBLAS=ON - -DLAPACKE=$(usex lapacke) - -DBUILD_DEPRECATED=$(usex deprecated) - -DBUILD_SHARED_LIBS=ON - -DBUILD_TESTING=$(usex test) - ) - - cmake_src_configure -} - -src_install() { - cmake_src_install - - use eselect-ldso || return - # Create private lib directory for eselect::blas (ld.so.conf) - dodir /usr/$(get_libdir)/blas/reference - dosym ../../libblas.so usr/$(get_libdir)/blas/reference/libblas.so - dosym ../../libblas.so.3 usr/$(get_libdir)/blas/reference/libblas.so.3 - dosym ../../libcblas.so usr/$(get_libdir)/blas/reference/libcblas.so - dosym ../../libcblas.so.3 usr/$(get_libdir)/blas/reference/libcblas.so.3 - - # Create private lib directory for eselect::lapack (ld.so.conf) - dodir /usr/$(get_libdir)/lapack/reference - dosym ../../liblapack.so usr/$(get_libdir)/lapack/reference/liblapack.so - dosym ../../liblapack.so.3 usr/$(get_libdir)/lapack/reference/liblapack.so.3 -} - -pkg_postinst() { - use eselect-ldso || return - - local me=reference libdir=$(get_libdir) - # check eselect-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 ($libdir) -> [${current_blas}]." - else - elog "Current eselect: BLAS ($libdir) -> [${current_blas}]." - elog "To use blas [${me}] implementation, you have to issue (as root):" - elog "\t eselect blas set ${libdir} ${me}" - fi - - # check eselect-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_lapack}]." - else - elog "Current eselect: LAPACK ($libdir) -> [${current_lapack}]." - elog "To use lapack [${me}] implementation, you have to issue (as root):" - elog "\t eselect lapack set ${libdir} ${me}" - fi -} - -pkg_postrm() { - use eselect-ldso || return - - eselect blas validate - eselect lapack validate -} diff --git a/sci-libs/openblas/Manifest b/sci-libs/openblas/Manifest index 1cca24d01c68..fc60b0613306 100644 --- a/sci-libs/openblas/Manifest +++ b/sci-libs/openblas/Manifest @@ -1,14 +1,6 @@ -AUX openblas-0.3.12-shared-blas-lapack.patch 2008 BLAKE2B 2d3a4a90d8144cbf149b7711b67364176a94287f26448930b5a4fd29fe761fb250e9007c580fb1ffa8148c477e2f4057f9cd8d7aa07efeb85caa842802d358fd SHA512 3f0d4b480549565c838eba6371e0990c162f56a226f9d26e1639e012ae3f39809f8c6badcf8fdfbb1258f45367dbaff9c4c611b8b44bac27d341aea954f0133e -AUX openblas-0.3.21-clang16.patch 17596 BLAKE2B 29a6d2716e31ad65de3252375c1a11b769c59924d09df190fd458a85dcb4c03fda041255b4239b6f41b9b799805e67bf4940f93e5baced5674eacb141eb6f711 SHA512 2e488295b282a267f5a49aa077331cfd2b35552d6099d22d8f37beb5521ebc1d4d08ba512b3b6d863f42a5f1c25153c74d83dc56be687f32e095fe1ff248bef6 -AUX openblas-0.3.21-fix-loong.patch 7341 BLAKE2B 33bd86e61b8a9d5d7130a4dd3a2d03f2e4ddd9703a3c2d6cf8e31e0af7499ea6128a1b7979f0a347b813292af2dca507d9b06e9ced6ab4e821d5f33ee03e5054 SHA512 c1c19e8965794658baff61bdc9082981b9e69b487c4221837ef10f176b12ee152bad0e37bbd0c347722ee2daf83adb016e75b149dad2b140ad4c631646290642 -AUX openblas-0.3.23-parallel-make.patch 1985 BLAKE2B 044edd52499453a46478ab91676e34e97e4ea94ebd7f155bcba8df205a5bb7450f431cf5f4ce2d326a50479ce243687317752c8abcf6d4c95a3f99952f8b0874 SHA512 85473ecbecfb9612089e370087f3a1d7db353e86302f389065cdec96e49b84b57a4cce635c986ac7dc15daee0fe676e55ea5e2856113807e401bd9fb50bb27ff AUX openblas-0.3.23-shared-blas-lapack.patch 2128 BLAKE2B 42e6ac46c9d62609731e3d7efd57569712325fb4f35b0bc1b119f51babf9b728acc569216c784e30980e20accee70baee20850b5600c7e0800ff04f19415cf08 SHA512 c6358b9682e358082bd862bbc376412c5b33bc967153f544fa2514205bcb4841cfbbc61e93932fcd4b0653ded2d5f853d62ac05081fc970fb541f4cc7281768f DIST OpenBLAS-0.3.25.tar.gz 24073168 BLAKE2B c2a173b50f6931e7782c7d429487abd4b1a4ed05aec4f08febbc5cc73b9ed5cb36c9e308bf7cb89ce116b1c25556615d2384087cf7d1b489a4784901951558bc SHA512 69bcf8082575b01ce1734fc9d33454314964a7e81ff29a7c1a764af3083ac0dc24289fd72bbe22c9583398bda7b658d6e4ab1d5036e43412745f0be3c2185b3c DIST OpenBLAS-0.3.26.tar.gz 24404912 BLAKE2B d72f02492b3ce58c5012943ea84190cb8a8efdfe438fb4fe945a713e4abbcb77f3a0603ca266df234efe8e6d6e4bab4a7386ac02b95512281165bf7ae2f9181d SHA512 01d3a536fbfa62f276fd6b1ad0e218fb3d91f41545fc83ddc74979fa26372d8389f0baa20334badfe0adacd77bd944c50a47ac920577373fcc1d495553084373 -DIST openblas-0.3.21.tar.gz 23729571 BLAKE2B 678bfb13ead69045e7d4d840bbcaed884d9ebedded5425cfa1f55e3d85bda31a3eb43dbbf9f07099d0d198f97ae68ef3b3b2b78aa1bd5b4999dd729dc08f7e28 SHA512 4625c8e6ccfa9120281fd714d3f6b7c3ba2265470c1be76121d6b25dc3dacb899d26e5d9a417ddc616d23909f1411495aa995ef8d8d6df8511cd5cefbabcb1c5 -DIST openblas-0.3.23.tar.gz 23950794 BLAKE2B 8394e09c682bba10450248cbbe090bb81c26661eac7d238942055ae0eecce752c8a3481af905de9efe20fe635f2c4a0e06af83bb64c998ab410e4cdc56751a47 SHA512 ea64c693e57eb63cc2a88e4d6ab2d8cf9ab84ae6a15048fb12090a3570dd41053e62e99c1ff9d3e02dd67ca93233591ab41b8c017d06585d0a69222e1ad3023f -EBUILD openblas-0.3.21-r1.ebuild 5639 BLAKE2B 9f42f3af66c8d65d208cff75c03df80df9f9337c55a8c52557e9c6fecbc732cf10a47b36d341bafc0960550fbdc989f263d2aa07a04d7cc1911682ec3953c1b4 SHA512 4a663034ad381724dcaaaabe292d5f5c527c0d66c10f8b7f674ec6d66976d75f072299a90162e04379e6426ca0b4a3967b8ca253e0f125053911b37325f2ad9f -EBUILD openblas-0.3.23.ebuild 5763 BLAKE2B 219de2d1aee0946e4d075287c14ea5910b43f1ac3d012a1289facbd524cd96bfb9e2ab9df218c284e3c148c49e87f7fd4dd689c938f659a961375f57d9105139 SHA512 e14516dee85e9d9b91c33532d6218e67c277cd2a4c24f659a66ce04f55f3f73cddf0c875f622da3a79d69113794417942d05149d56488ef528eb35ed857ac91b EBUILD openblas-0.3.25-r1.ebuild 5998 BLAKE2B b34389f4c292ab5ac1506616c31d0be394e256206c2db8ded4574626a0298a5ee0d0d745c96fd9c68d063543b7be51e9a980f6a2f4a73c6c9c23f83f01770de5 SHA512 d0fb3979242ba04ccbf437a97e77ef4780d57b102c92c1596e6455e13581fc03c5bdc2b03a25a01385ef0cdbb9ef01cd3e4cd30215a8237fa440f6be8fd483e9 EBUILD openblas-0.3.26.ebuild 5999 BLAKE2B cc659bbc1ba9856927e05dd331848a0c58214d513ad49cf168a52498c0ec81fe305e8e3e681d70e2a4da577f16ccee1cdbd2e1eba0cb7757d4c1018190373f69 SHA512 efa071a6469fa258c200c2548bd6c3b0cd6842898c7ac40d1b0dff36ee8d6165b83a4abbafa4b887ae30d3aa7a002516c2f647f38bbd98c26ee6f0b1ae58db6a MISC metadata.xml 1561 BLAKE2B 5ba7ec66dd8ba7ca8bc29bc0193b48b6a82b4949bb79bab461400040667aa66aac3cfd2ad9c7323798048fd43d18ac96a562d53b68f3f7ae8bf8505ac7a04691 SHA512 05272eb56480ff82b240d0f430df3df03981e24b971dbd37c13d464f4f4b334bac19b54915446a09326a334aa76249bb79a4fa389d26150365f21389992f9a48 diff --git a/sci-libs/openblas/files/openblas-0.3.12-shared-blas-lapack.patch b/sci-libs/openblas/files/openblas-0.3.12-shared-blas-lapack.patch deleted file mode 100644 index 55fb7d7c66ca..000000000000 --- a/sci-libs/openblas/files/openblas-0.3.12-shared-blas-lapack.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/interface/Makefile b/interface/Makefile -index 6b247b4..1297c73 100644 ---- a/interface/Makefile -+++ b/interface/Makefile -@@ -330,7 +330,7 @@ CCBLAS3OBJS = \ - cblas_chemm.$(SUFFIX) cblas_cherk.$(SUFFIX) cblas_cher2k.$(SUFFIX) \ - cblas_comatcopy.$(SUFFIX) cblas_cimatcopy.$(SUFFIX)\ - cblas_cgeadd.$(SUFFIX) -- -+ - CXERBLAOBJ = \ - cblas_xerbla.$(SUFFIX) - -@@ -2310,3 +2310,22 @@ cblas_zgeadd.$(SUFFIX) cblas_zgeadd.$(PSUFFIX) : zgeadd.c - cblas_xerbla.$(SUFFIX) cblas_xerbla.$(PSUFFIX) : xerbla.c - $(CC) -c $(CFLAGS) -DCBLAS $< -o $(@F) - -+##### -+shared-blas-lapack: libblas.so.3 libcblas.so.3 liblapack.so.3 liblapacke.so.3 -+ -+# The list of prerequisite is created by comparing with NETLIB BLAS public API. -+libblas.so.3: $(SBLAS1OBJS) $(SBLAS2OBJS) $(SBLAS3OBJS) $(DBLAS1OBJS) $(DBLAS2OBJS) $(DBLAS3OBJS) $(CBLAS1OBJS) $(CBLAS2OBJS) $(CBLAS3OBJS) $(ZBLAS1OBJS) $(ZBLAS2OBJS) $(ZBLAS3OBJS) ../kernel/lsame.o ../kernel/scabs1.o ../kernel/dcabs1.o ../driver/others/xerbla.o -+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname,libblas.so.3 -L.. -lopenblas $(EXTRALIB) -+ -+libcblas.so.3: $(CSBLAS1OBJS) $(CSBLAS2OBJS) $(CSBLAS3OBJS) $(CDBLAS1OBJS) $(CDBLAS2OBJS) $(CDBLAS3OBJS) $(CCBLAS1OBJS) $(CCBLAS2OBJS) $(CCBLAS3OBJS) $(CZBLAS1OBJS) $(CZBLAS2OBJS) $(CZBLAS3OBJS) ../kernel/lsame.o ../kernel/scabs1.o ../kernel/dcabs1.o ../driver/others/xerbla.o -+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname,libcblas.so.3 -L.. -lopenblas $(EXTRALIB) -+ -+# The prerequisites must match the symbols deleted in target delete-duplicate-lapack-objects -+liblapack.so.3: $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) ../kernel/lsame.o ../driver/others/xerbla.o -+ $(CC) $(LDFLAGS) -shared -o $@ $^ ../lapack-netlib/SRC/*.o -Wl,-soname,liblapack.so.3 -L.. -lopenblas $(EXTRALIB) -+ -+liblapacke.so.3: liblapack.so.3 -+ $(CC) $(LDFLAGS) -shared -o $@ `find ../lapack-netlib/LAPACKE -name "*.o"` -Wl,-soname,liblapacke.so.3 -L.. -lopenblas $(EXTRALIB) -+ -+clean:: -+ rm -f libblas.so.3 libcblas.so.3 liblapack.so.3 diff --git a/sci-libs/openblas/files/openblas-0.3.21-clang16.patch b/sci-libs/openblas/files/openblas-0.3.21-clang16.patch deleted file mode 100644 index 051966b0a870..000000000000 --- a/sci-libs/openblas/files/openblas-0.3.21-clang16.patch +++ /dev/null @@ -1,581 +0,0 @@ -https://github.com/xianyi/OpenBLAS/commit/f703846ad9400a8ea175cb8dd43e18c152aeab93 -https://github.com/xianyi/OpenBLAS/commit/515cf269291bec0d43651fe7bf99a71fb074a0ad -https://github.com/xianyi/OpenBLAS/commit/91110f92d218492d0efbdc1fdf34277ca45f4b36 -https://github.com/xianyi/OpenBLAS/commit/9402df5604e69f86f58953e3883f33f98c930baf -https://github.com/xianyi/OpenBLAS/commit/101a2c77c3f3610933f450cefca3e312edab2186 -https://src.fedoraproject.org/rpms/openblas/c/5f27d51cebe1c1bb6598d38326ece8dc0ac71ec7?branch=rawhide - -From f703846ad9400a8ea175cb8dd43e18c152aeab93 Mon Sep 17 00:00:00 2001 -From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de> -Date: Sat, 13 Aug 2022 11:38:27 +0200 -Subject: [PATCH] Add function prototypes - ---- a/exports/gensymbol -+++ b/exports/gensymbol -@@ -4000,6 +4000,22 @@ case "$p1" in - no_underscore_objs="$no_underscore_objs $misc_common_objs" - - printf 'int main(void){\n' -+ for obj in $underscore_objs; do -+ [ "$obj" != "xerbla" ] && printf 'extern void %s%s%s%s();\n' \ -+ "$symbolprefix" "$obj" "$bu" "$symbolsuffix" -+ done -+ -+ for obj in $need_2underscore_objs; do -+ printf 'extern void %s%s%s%s%s();\n' \ -+ "$symbolprefix" "$obj" "$bu" "$bu" "$symbolsuffix" -+ done -+ -+ for obj in $no_underscore_objs; do -+ printf 'extern void %s%s%s();\n' \ -+ "$symbolprefix" "$obj" "$symbolsuffix" -+ done -+ -+ printf '\n' - for obj in $underscore_objs; do - [ "$obj" != "xerbla" ] && printf '%s%s%s%s();\n' \ - "$symbolprefix" "$obj" "$bu" "$symbolsuffix" ---- a/exports/gensymbol.pl -+++ b/exports/gensymbol.pl -@@ -3955,6 +3955,18 @@ - @no_underscore_objs = (@no_underscore_objs, @misc_common_objs); - - print "int main(void){\n"; -+ foreach $objs (@underscore_objs) { -+ print "extern void ", $symbolprefix, $objs, $bu, $symbolsuffix, "();\n" if $objs ne "xerbla"; -+ } -+ -+ foreach $objs (@need_2underscore_objs) { -+ print "extern void ", $symbolprefix, $objs, $bu, $bu, $symbolsuffix, "();\n"; -+ } -+ -+ foreach $objs (@no_underscore_objs) { -+ print "extern void ", $symbolprefix, $objs, $symbolsuffix, "();\n"; -+ } -+ - foreach $objs (@underscore_objs) { - print $symbolprefix, $objs, $bu, $symbolsuffix, "();\n" if $objs ne "xerbla"; - } - -From 515cf269291bec0d43651fe7bf99a71fb074a0ad Mon Sep 17 00:00:00 2001 -From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de> -Date: Wed, 14 Sep 2022 11:48:36 +0200 -Subject: [PATCH] Fix pointer/integer argument mismatch in calls to pow() - ---- a/lapack-netlib/SRC/claed0.c -+++ b/lapack-netlib/SRC/claed0.c -@@ -796,10 +796,10 @@ f"> */ - - temp = log((real) (*n)) / log(2.f); - lgn = (integer) temp; -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } - iprmpt = indxq + *n + 1; ---- a/lapack-netlib/SRC/claed7.c -+++ b/lapack-netlib/SRC/claed7.c -@@ -864,11 +864,11 @@ f"> */ - /* Form the z-vector which consists of the last row of Q_1 and the */ - /* first row of Q_2. */ - -- ptr = pow_ii(&c__2, tlvls) + 1; -+ ptr = pow_ii(c__2, *tlvls) + 1; - i__1 = *curlvl - 1; - for (i__ = 1; i__ <= i__1; ++i__) { - i__2 = *tlvls - i__; -- ptr += pow_ii(&c__2, &i__2); -+ ptr += pow_ii(c__2, i__2); - /* L10: */ - } - curr = ptr + *curpbm; ---- a/lapack-netlib/SRC/clalsa.c -+++ b/lapack-netlib/SRC/clalsa.c -@@ -1051,7 +1051,7 @@ f"> */ - /* Finally go through the left singular vector matrices of all */ - /* the other subproblems bottom-up on the tree. */ - -- j = pow_ii(&c__2, &nlvl); -+ j = pow_ii(c__2, nlvl); - sqre = 0; - - for (lvl = nlvl; lvl >= 1; --lvl) { -@@ -1065,7 +1065,7 @@ f"> */ - ll = 1; - } else { - i__1 = lvl - 1; -- lf = pow_ii(&c__2, &i__1); -+ lf = pow_ii(c__2, i__1); - ll = (lf << 1) - 1; - } - i__1 = ll; -@@ -1110,7 +1110,7 @@ f"> */ - ll = 1; - } else { - i__2 = lvl - 1; -- lf = pow_ii(&c__2, &i__2); -+ lf = pow_ii(c__2, i__2); - ll = (lf << 1) - 1; - } - i__2 = lf; ---- a/lapack-netlib/SRC/cstedc.c -+++ b/lapack-netlib/SRC/cstedc.c -@@ -836,10 +836,10 @@ f"> */ - lrwmin = *n - 1 << 1; - } else if (icompz == 1) { - lgn = (integer) (log((real) (*n)) / log(2.f)); -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } - lwmin = *n * *n; ---- a/lapack-netlib/SRC/dlaed0.c -+++ b/lapack-netlib/SRC/dlaed0.c -@@ -827,10 +827,10 @@ f"> */ - - temp = log((doublereal) (*n)) / log(2.); - lgn = (integer) temp; -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } - iprmpt = indxq + *n + 1; ---- a/lapack-netlib/SRC/dlaed7.c -+++ b/lapack-netlib/SRC/dlaed7.c -@@ -885,11 +885,11 @@ f"> */ - /* Form the z-vector which consists of the last row of Q_1 and the */ - /* first row of Q_2. */ - -- ptr = pow_ii(&c__2, tlvls) + 1; -+ ptr = pow_ii(c__2, *tlvls) + 1; - i__1 = *curlvl - 1; - for (i__ = 1; i__ <= i__1; ++i__) { - i__2 = *tlvls - i__; -- ptr += pow_ii(&c__2, &i__2); -+ ptr += pow_ii(c__2, i__2); - /* L10: */ - } - curr = ptr + *curpbm; ---- a/lapack-netlib/SRC/dlaeda.c -+++ b/lapack-netlib/SRC/dlaeda.c -@@ -754,7 +754,7 @@ f"> */ - /* scheme */ - - i__1 = *curlvl - 1; -- curr = ptr + *curpbm * pow_ii(&c__2, curlvl) + pow_ii(&c__2, &i__1) - 1; -+ curr = ptr + *curpbm * pow_ii(c__2, *curlvl) + pow_ii(c__2, i__1) - 1; - - /* Determine size of these matrices. We add HALF to the value of */ - /* the SQRT in case the machine underestimates one of these square */ -@@ -781,12 +781,12 @@ f"> */ - /* rotations and permutation and then multiplying the center matrices */ - /* against the current Z. */ - -- ptr = pow_ii(&c__2, tlvls) + 1; -+ ptr = pow_ii(c__2, *tlvls) + 1; - i__1 = *curlvl - 1; - for (k = 1; k <= i__1; ++k) { - i__2 = *curlvl - k; - i__3 = *curlvl - k - 1; -- curr = ptr + *curpbm * pow_ii(&c__2, &i__2) + pow_ii(&c__2, &i__3) - -+ curr = ptr + *curpbm * pow_ii(c__2, i__2) + pow_ii(c__2, i__3) - - 1; - psiz1 = prmptr[curr + 1] - prmptr[curr]; - psiz2 = prmptr[curr + 2] - prmptr[curr + 1]; -@@ -847,7 +847,7 @@ f"> */ - c__1); - - i__2 = *tlvls - k; -- ptr += pow_ii(&c__2, &i__2); -+ ptr += pow_ii(c__2, i__2); - /* L70: */ - } - ---- a/lapack-netlib/SRC/dlalsa.c -+++ b/lapack-netlib/SRC/dlalsa.c -@@ -951,7 +951,7 @@ f"> */ - /* Finally go through the left singular vector matrices of all */ - /* the other subproblems bottom-up on the tree. */ - -- j = pow_ii(&c__2, &nlvl); -+ j = pow_ii(c__2, nlvl); - sqre = 0; - - for (lvl = nlvl; lvl >= 1; --lvl) { -@@ -965,7 +965,7 @@ f"> */ - ll = 1; - } else { - i__1 = lvl - 1; -- lf = pow_ii(&c__2, &i__1); -+ lf = pow_ii(c__2, i__1); - ll = (lf << 1) - 1; - } - i__1 = ll; -@@ -1010,7 +1010,7 @@ f"> */ - ll = 1; - } else { - i__2 = lvl - 1; -- lf = pow_ii(&c__2, &i__2); -+ lf = pow_ii(c__2, i__2); - ll = (lf << 1) - 1; - } - i__2 = lf; ---- a/lapack-netlib/SRC/dlasd0.c -+++ b/lapack-netlib/SRC/dlasd0.c -@@ -824,7 +824,7 @@ f"> */ - ll = 1; - } else { - i__1 = lvl - 1; -- lf = pow_ii(&c__2, &i__1); -+ lf = pow_ii(c__2, i__1); - ll = (lf << 1) - 1; - } - i__1 = ll; ---- a/lapack-netlib/SRC/dlasda.c -+++ b/lapack-netlib/SRC/dlasda.c -@@ -1027,7 +1027,7 @@ f"> */ - - /* Now conquer each subproblem bottom-up. */ - -- j = pow_ii(&c__2, &nlvl); -+ j = pow_ii(c__2, nlvl); - for (lvl = nlvl; lvl >= 1; --lvl) { - lvl2 = (lvl << 1) - 1; - -@@ -1039,7 +1039,7 @@ f"> */ - ll = 1; - } else { - i__1 = lvl - 1; -- lf = pow_ii(&c__2, &i__1); -+ lf = pow_ii(c__2, i__1); - ll = (lf << 1) - 1; - } - i__1 = ll; ---- a/lapack-netlib/SRC/dstedc.c -+++ b/lapack-netlib/SRC/dstedc.c -@@ -806,10 +806,10 @@ f"> */ - lwmin = *n - 1 << 1; - } else { - lgn = (integer) (log((doublereal) (*n)) / log(2.)); -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } - if (icompz == 1) { ---- a/lapack-netlib/SRC/slaed0.c -+++ b/lapack-netlib/SRC/slaed0.c -@@ -823,10 +823,10 @@ f"> */ - - temp = log((real) (*n)) / log(2.f); - lgn = (integer) temp; -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } - iprmpt = indxq + *n + 1; ---- a/lapack-netlib/SRC/slaed7.c -+++ b/lapack-netlib/SRC/slaed7.c -@@ -883,11 +883,11 @@ f"> */ - /* Form the z-vector which consists of the last row of Q_1 and the */ - /* first row of Q_2. */ - -- ptr = pow_ii(&c__2, tlvls) + 1; -+ ptr = pow_ii(c__2, *tlvls) + 1; - i__1 = *curlvl - 1; - for (i__ = 1; i__ <= i__1; ++i__) { - i__2 = *tlvls - i__; -- ptr += pow_ii(&c__2, &i__2); -+ ptr += pow_ii(c__2, i__2); - /* L10: */ - } - curr = ptr + *curpbm; ---- a/lapack-netlib/SRC/slaeda.c -+++ b/lapack-netlib/SRC/slaeda.c -@@ -753,7 +753,7 @@ f"> */ - /* scheme */ - - i__1 = *curlvl - 1; -- curr = ptr + *curpbm * pow_ii(&c__2, curlvl) + pow_ii(&c__2, &i__1) - 1; -+ curr = ptr + *curpbm * pow_ii(c__2, *curlvl) + pow_ii(c__2, i__1) - 1; - - /* Determine size of these matrices. We add HALF to the value of */ - /* the SQRT in case the machine underestimates one of these square */ -@@ -779,12 +779,12 @@ f"> */ - /* rotations and permutation and then multiplying the center matrices */ - /* against the current Z. */ - -- ptr = pow_ii(&c__2, tlvls) + 1; -+ ptr = pow_ii(c__2, *tlvls) + 1; - i__1 = *curlvl - 1; - for (k = 1; k <= i__1; ++k) { - i__2 = *curlvl - k; - i__3 = *curlvl - k - 1; -- curr = ptr + *curpbm * pow_ii(&c__2, &i__2) + pow_ii(&c__2, &i__3) - -+ curr = ptr + *curpbm * pow_ii(c__2, i__2) + pow_ii(c__2, i__3) - - 1; - psiz1 = prmptr[curr + 1] - prmptr[curr]; - psiz2 = prmptr[curr + 2] - prmptr[curr + 1]; -@@ -844,7 +844,7 @@ f"> */ - c__1); - - i__2 = *tlvls - k; -- ptr += pow_ii(&c__2, &i__2); -+ ptr += pow_ii(c__2, i__2); - /* L70: */ - } - ---- a/lapack-netlib/SRC/slalsa.c -+++ b/lapack-netlib/SRC/slalsa.c -@@ -946,7 +946,7 @@ f"> */ - /* Finally go through the left singular vector matrices of all */ - /* the other subproblems bottom-up on the tree. */ - -- j = pow_ii(&c__2, &nlvl); -+ j = pow_ii(c__2, nlvl); - sqre = 0; - - for (lvl = nlvl; lvl >= 1; --lvl) { -@@ -960,7 +960,7 @@ f"> */ - ll = 1; - } else { - i__1 = lvl - 1; -- lf = pow_ii(&c__2, &i__1); -+ lf = pow_ii(c__2, i__1); - ll = (lf << 1) - 1; - } - i__1 = ll; -@@ -1005,7 +1005,7 @@ f"> */ - ll = 1; - } else { - i__2 = lvl - 1; -- lf = pow_ii(&c__2, &i__2); -+ lf = pow_ii(c__2, i__2); - ll = (lf << 1) - 1; - } - i__2 = lf; ---- a/lapack-netlib/SRC/slasd0.c -+++ b/lapack-netlib/SRC/slasd0.c -@@ -821,7 +821,7 @@ f"> */ - ll = 1; - } else { - i__1 = lvl - 1; -- lf = pow_ii(&c__2, &i__1); -+ lf = pow_ii(c__2, i__1); - ll = (lf << 1) - 1; - } - i__1 = ll; ---- a/lapack-netlib/SRC/slasda.c -+++ b/lapack-netlib/SRC/slasda.c -@@ -1023,7 +1023,7 @@ f"> */ - - /* Now conquer each subproblem bottom-up. */ - -- j = pow_ii(&c__2, &nlvl); -+ j = pow_ii(c__2, nlvl); - for (lvl = nlvl; lvl >= 1; --lvl) { - lvl2 = (lvl << 1) - 1; - -@@ -1035,7 +1035,7 @@ f"> */ - ll = 1; - } else { - i__1 = lvl - 1; -- lf = pow_ii(&c__2, &i__1); -+ lf = pow_ii(c__2, i__1); - ll = (lf << 1) - 1; - } - i__1 = ll; ---- a/lapack-netlib/SRC/sstedc.c -+++ b/lapack-netlib/SRC/sstedc.c -@@ -804,10 +804,10 @@ f"> */ - lwmin = *n - 1 << 1; - } else { - lgn = (integer) (log((real) (*n)) / log(2.f)); -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } - if (icompz == 1) { ---- a/lapack-netlib/SRC/zlaed0.c -+++ b/lapack-netlib/SRC/zlaed0.c -@@ -793,10 +793,10 @@ f"> */ - - temp = log((doublereal) (*n)) / log(2.); - lgn = (integer) temp; -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } - iprmpt = indxq + *n + 1; ---- a/lapack-netlib/SRC/zlaed7.c -+++ b/lapack-netlib/SRC/zlaed7.c -@@ -864,11 +864,11 @@ f"> */ - /* Form the z-vector which consists of the last row of Q_1 and the */ - /* first row of Q_2. */ - -- ptr = pow_ii(&c__2, tlvls) + 1; -+ ptr = pow_ii(c__2, *tlvls) + 1; - i__1 = *curlvl - 1; - for (i__ = 1; i__ <= i__1; ++i__) { - i__2 = *tlvls - i__; -- ptr += pow_ii(&c__2, &i__2); -+ ptr += pow_ii(c__2, i__2); - /* L10: */ - } - curr = ptr + *curpbm; ---- a/lapack-netlib/SRC/zlalsa.c -+++ b/lapack-netlib/SRC/zlalsa.c -@@ -1051,7 +1051,7 @@ f"> */ - /* Finally go through the left singular vector matrices of all */ - /* the other subproblems bottom-up on the tree. */ - -- j = pow_ii(&c__2, &nlvl); -+ j = pow_ii(c__2, nlvl); - sqre = 0; - - for (lvl = nlvl; lvl >= 1; --lvl) { -@@ -1065,7 +1065,7 @@ f"> */ - ll = 1; - } else { - i__1 = lvl - 1; -- lf = pow_ii(&c__2, &i__1); -+ lf = pow_ii(c__2, i__1); - ll = (lf << 1) - 1; - } - i__1 = ll; -@@ -1110,7 +1110,7 @@ f"> */ - ll = 1; - } else { - i__2 = lvl - 1; -- lf = pow_ii(&c__2, &i__2); -+ lf = pow_ii(c__2, i__2); - ll = (lf << 1) - 1; - } - i__2 = lf; ---- a/lapack-netlib/SRC/zstedc.c -+++ b/lapack-netlib/SRC/zstedc.c -@@ -836,10 +836,10 @@ f"> */ - lrwmin = *n - 1 << 1; - } else if (icompz == 1) { - lgn = (integer) (log((doublereal) (*n)) / log(2.)); -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } -- if (pow_ii(&c__2, &lgn) < *n) { -+ if (pow_ii(c__2, lgn) < *n) { - ++lgn; - } - lwmin = *n * *n; - -From 91110f92d218492d0efbdc1fdf34277ca45f4b36 Mon Sep 17 00:00:00 2001 -From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de> -Date: Wed, 14 Sep 2022 14:03:31 +0200 -Subject: [PATCH] fix missing return type in function declaration - ---- a/ctest/c_sblat1c.c -+++ b/ctest/c_sblat1c.c -@@ -969,7 +969,7 @@ real *sfac; - 1.17 }; - - /* Local variables */ -- extern /* Subroutine */ srottest_(); -+ extern /* Subroutine */ void srottest_(); - static integer i__, k, ksize; - extern /* Subroutine */ int stest_(), srotmtest_(); - static integer ki, kn; - -From 9402df5604e69f86f58953e3883f33f98c930baf Mon Sep 17 00:00:00 2001 -From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de> -Date: Wed, 14 Sep 2022 21:44:34 +0200 -Subject: [PATCH] Fix missing external declaration - ---- a/driver/others/blas_server_omp.c -+++ b/driver/others/blas_server_omp.c -@@ -69,6 +69,8 @@ - - int blas_server_avail = 0; - -+extern int openblas_omp_adaptive_env(); -+ - static void * blas_thread_buffer[MAX_PARALLEL_NUMBER][MAX_CPU_NUMBER]; - #ifdef HAVE_C11 - static atomic_bool blas_buffer_inuse[MAX_PARALLEL_NUMBER]; - -From 101a2c77c3f3610933f450cefca3e312edab2186 Mon Sep 17 00:00:00 2001 -From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de> -Date: Thu, 15 Sep 2022 09:19:19 +0200 -Subject: [PATCH] Fix warnings - ---- a/kernel/x86_64/dgemm_ncopy_8_skylakex.c -+++ b/kernel/x86_64/dgemm_ncopy_8_skylakex.c -@@ -52,18 +52,18 @@ int CNAME(BLASLONG m, BLASLONG n, FLOAT * __restrict a, BLASLONG lda, FLOAT * __ - FLOAT ctemp05, ctemp06, ctemp07, ctemp08; - FLOAT ctemp09, ctemp10, ctemp11, ctemp12; - FLOAT ctemp13, ctemp14, ctemp15, ctemp16; -- FLOAT ctemp17, ctemp18, ctemp19, ctemp20; -- FLOAT ctemp21, ctemp22, ctemp23, ctemp24; -- FLOAT ctemp25, ctemp26, ctemp27, ctemp28; -- FLOAT ctemp29, ctemp30, ctemp31, ctemp32; -- FLOAT ctemp33, ctemp34, ctemp35, ctemp36; -- FLOAT ctemp37, ctemp38, ctemp39, ctemp40; -- FLOAT ctemp41, ctemp42, ctemp43, ctemp44; -- FLOAT ctemp45, ctemp46, ctemp47, ctemp48; -- FLOAT ctemp49, ctemp50, ctemp51, ctemp52; -- FLOAT ctemp53, ctemp54, ctemp55, ctemp56; -- FLOAT ctemp57, ctemp58, ctemp59, ctemp60; -- FLOAT ctemp61, ctemp62, ctemp63, ctemp64; -+ FLOAT ctemp17 /*, ctemp18, ctemp19, ctemp20*/ ; -+ FLOAT /*ctemp21, ctemp22,*/ ctemp23, ctemp24; -+ FLOAT ctemp25 /*, ctemp26, ctemp27, ctemp28*/ ; -+ FLOAT /*ctemp29, ctemp30,*/ ctemp31, ctemp32; -+ FLOAT ctemp33 /*, ctemp34, ctemp35, ctemp36*/ ; -+ FLOAT /*ctemp37, ctemp38,*/ ctemp39, ctemp40; -+ FLOAT ctemp41 /*, ctemp42, ctemp43, ctemp44*/ ; -+ FLOAT /*ctemp45, ctemp46,*/ ctemp47, ctemp48; -+ FLOAT ctemp49 /*, ctemp50, ctemp51, ctemp52*/ ; -+ FLOAT /*ctemp53, ctemp54,*/ ctemp55, ctemp56; -+ FLOAT ctemp57 /*, ctemp58, ctemp59, ctemp60*/ ; -+ FLOAT /*ctemp61, ctemp62,*/ ctemp63, ctemp64; - - - aoffset = a; ---- a/kernel/x86_64/omatcopy_rt.c -+++ b/kernel/x86_64/omatcopy_rt.c -@@ -142,7 +142,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ,"xmm0","xmm1","xmm2","xmm3","xmm4","xmm5","xmm6","xmm7","xmm8","xmm9","xmm10","xmm11","xmm12","xmm13","xmm14","xmm15");\ - } - int CNAME(BLASLONG rows, BLASLONG cols, FLOAT alpha, FLOAT *a, BLASLONG lda, FLOAT *b, BLASLONG ldb){ -- float *src, *dst, *dst_tmp, *src_base, *dst_base; -+ float *src, *dst, *dst_tmp=0, *src_base, *dst_base; - uint64_t src_ld_bytes = (uint64_t)lda * sizeof(float), dst_ld_bytes = (uint64_t)ldb * sizeof(float), num_rows = 0; - BLASLONG cols_left, rows_done; float ALPHA = alpha; - if(ALPHA==0.0){ - diff --git a/sci-libs/openblas/files/openblas-0.3.21-fix-loong.patch b/sci-libs/openblas/files/openblas-0.3.21-fix-loong.patch deleted file mode 100644 index ed112d62380b..000000000000 --- a/sci-libs/openblas/files/openblas-0.3.21-fix-loong.patch +++ /dev/null @@ -1,237 +0,0 @@ -https://github.com/xianyi/OpenBLAS/pull/3626 - -From 5af7b8638b3b972bd0e25597ec07927fffd52108 Mon Sep 17 00:00:00 2001 -From: WANG Xuerui <xen0n@gentoo.org> -Date: Fri, 13 May 2022 15:26:33 +0800 -Subject: [PATCH 1/3] Move LoongArch make rules to Makefile.loongarch64 - ---- - Makefile.loongarch64 | 5 +++-- - Makefile.system | 5 ----- - 2 files changed, 3 insertions(+), 7 deletions(-) - -diff --git a/Makefile.loongarch64 b/Makefile.loongarch64 -index 05ea9c679d..fced1a9462 100644 ---- a/Makefile.loongarch64 -+++ b/Makefile.loongarch64 -@@ -1,3 +1,4 @@ --ifdef BINARY64 --else -+ifeq ($(CORE), LOONGSON3R5) -+CCOMMON_OPT += -march=loongarch64 -mabi=lp64 -+FCOMMON_OPT += -march=loongarch64 -mabi=lp64 - endif -diff --git a/Makefile.system b/Makefile.system -index 3be5efa0c2..9c91425b0f 100644 ---- a/Makefile.system -+++ b/Makefile.system -@@ -895,11 +895,6 @@ ifeq ($(OSNAME), AIX) - BINARY_DEFINED = 1 - endif - --ifeq ($(ARCH), loongarch64) --CCOMMON_OPT += -march=loongarch64 -mabi=lp64 --FCOMMON_OPT += -march=loongarch64 -mabi=lp64 --endif -- - endif - - ifndef BINARY_DEFINED - -From 869061c783d60ba0b799fab643952c493b57fb0a Mon Sep 17 00:00:00 2001 -From: WANG Xuerui <xen0n@gentoo.org> -Date: Fri, 13 May 2022 15:53:22 +0800 -Subject: [PATCH 2/3] Probe for old-world LASX flavor on LoongArch and use - generic DGEMM kernel otherwise - -See: https://bugs.gentoo.org/844013 ---- - Makefile.system | 1 + - c_check | 27 ++++++++++++++++++++++++++- - kernel/loongarch64/KERNEL.LOONGSON3R5 | 5 +++++ - 3 files changed, 32 insertions(+), 1 deletion(-) - -diff --git a/Makefile.system b/Makefile.system -index 9c91425b0f..b86aafbddb 100644 ---- a/Makefile.system -+++ b/Makefile.system -@@ -1702,6 +1702,7 @@ export TARGET_CORE - export NO_AVX512 - export NO_AVX2 - export BUILD_BFLOAT16 -+export NO_LASX - - export SBGEMM_UNROLL_M - export SBGEMM_UNROLL_N -diff --git a/c_check b/c_check -index 01d4f4a7cf..a37e91f82c 100755 ---- a/c_check -+++ b/c_check -@@ -112,7 +112,7 @@ case "$architecture" in - defined=1 - ;; - arm|arm64) defined=1 ;; -- zarch|e2k|alpha|ia64|riscv64|loonarch64) -+ zarch|e2k|alpha|ia64|riscv64|loongarch64) - defined=1 - BINARY=64 - ;; -@@ -240,6 +240,29 @@ if [ "$architecture" = "riscv64" ]; then - rm -rf "$tmpd" - fi - -+no_lasx=0 -+if [ "$architecture" = "loongarch64" ]; then -+ tmpd=`mktemp -d` -+ tmpf="$tmpd/a.c" -+ # Old-world assembly flavor: LASX registers named "$xrNN", different -+ # from the ISA manual which suggests "$xNN". This is the flavor we -+ # currently support. -+ # -+ # As the LASX ISA manual is not out yet, we cannot predict what the -+ # new-world flavor would look like, so do not probe flavor for now. -+ # The compiler flags are also unsuitable for new-world gcc. -+ code='"xvld $xr0, $a0, 0\n"' -+ printf "int main(void){ __asm__ volatile(%s); }\n" "$code" >> "$tmpf" -+ args=" -march=loongarch64 -mabi=lp64 -mlasx -c -o $tmpf.o $tmpf" -+ no_lasx=0 -+ { -+ $compiler_name $flags $args >/dev/null 2>&1 -+ } || { -+ no_lasx=1 -+ } -+ rm -rf "$tmpd" -+fi -+ - c11_atomics=0 - case "$data" in - *HAVE_C11*) -@@ -350,6 +373,7 @@ done - - [ "$makefile" = "-" ] && { - [ "$no_rv64gv" -eq 1 ] && printf "NO_RV64GV=1\n" -+ [ "$no_lasx" -eq 1 ] && printf "NO_LASX=1\n" - [ "$no_avx512" -eq 1 ] && printf "NO_AVX512=1\n" - [ "$no_avx2" -eq 1 ] && printf "NO_AVX2=1\n" - [ "$oldgcc" -eq 1 ] && printf "OLDGCC=1\n" -@@ -380,6 +404,7 @@ done - printf "MSA_FLAGS=%s\n" "$msa_flags" - } - [ "$no_rv64gv" -eq 1 ] && printf "NO_RV64GV=1\n" -+ [ "$no_lasx" -eq 1 ] && printf "NO_LASX=1\n" - [ "$no_avx512" -eq 1 ] && printf "NO_AVX512=1\n" - [ "$no_avx2" -eq 1 ] && printf "NO_AVX2=1\n" - [ "$oldgcc" -eq 1 ] && printf "OLDGCC=1\n" -diff --git a/kernel/loongarch64/KERNEL.LOONGSON3R5 b/kernel/loongarch64/KERNEL.LOONGSON3R5 -index cda3590402..79b57d1e4d 100644 ---- a/kernel/loongarch64/KERNEL.LOONGSON3R5 -+++ b/kernel/loongarch64/KERNEL.LOONGSON3R5 -@@ -1,3 +1,7 @@ -+ifeq ($(NO_LASX), 1) -+# No LASX support in compiler, unable to consume the optimized version -+# leave out DGEMMKERNEL to pull in the generic version -+else - DGEMMKERNEL = dgemm_kernel_16x4.S - DGEMMINCOPY = dgemm_ncopy_16.S - DGEMMITCOPY = dgemm_tcopy_16.S -@@ -7,6 +11,7 @@ DGEMMINCOPYOBJ = dgemm_incopy$(TSUFFIX).$(SUFFIX) - DGEMMITCOPYOBJ = dgemm_itcopy$(TSUFFIX).$(SUFFIX) - DGEMMONCOPYOBJ = dgemm_oncopy$(TSUFFIX).$(SUFFIX) - DGEMMOTCOPYOBJ = dgemm_otcopy$(TSUFFIX).$(SUFFIX) -+endif - - DTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c - DTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c - -From 699c57d3767c9a5a5a69262a4b70a1f80e0bb2e2 Mon Sep 17 00:00:00 2001 -From: WANG Xuerui <xen0n@gentoo.org> -Date: Fri, 13 May 2022 16:23:46 +0800 -Subject: [PATCH 3/3] Fix ABI CFLAGS setting on new-world LoongArch - -See: https://bugs.gentoo.org/844013 ---- - Makefile.loongarch64 | 13 +++++++++++-- - Makefile.system | 1 + - c_check | 14 ++++++++++++++ - 3 files changed, 26 insertions(+), 2 deletions(-) - -diff --git a/Makefile.loongarch64 b/Makefile.loongarch64 -index fced1a9462..d6cbe848cd 100644 ---- a/Makefile.loongarch64 -+++ b/Makefile.loongarch64 -@@ -1,4 +1,13 @@ - ifeq ($(CORE), LOONGSON3R5) --CCOMMON_OPT += -march=loongarch64 -mabi=lp64 --FCOMMON_OPT += -march=loongarch64 -mabi=lp64 -+CCOMMON_OPT += -march=loongarch64 -+FCOMMON_OPT += -march=loongarch64 -+ -+ifeq ($(LOONGARCH_CC_FLAVOR), NEW) -+CCOMMON_OPT += -mabi=lp64d -+FCOMMON_OPT += -mabi=lp64d -+endif -+ifeq ($(LOONGARCH_CC_FLAVOR), OLD) -+CCOMMON_OPT += -mabi=lp64 -+FCOMMON_OPT += -mabi=lp64 -+endif - endif -diff --git a/Makefile.system b/Makefile.system -index b86aafbddb..4360a861cb 100644 ---- a/Makefile.system -+++ b/Makefile.system -@@ -1702,6 +1702,7 @@ export TARGET_CORE - export NO_AVX512 - export NO_AVX2 - export BUILD_BFLOAT16 -+export LOONGARCH_CC_FLAVOR - export NO_LASX - - export SBGEMM_UNROLL_M -diff --git a/c_check b/c_check -index a37e91f82c..573f0e52fd 100755 ---- a/c_check -+++ b/c_check -@@ -240,8 +240,19 @@ if [ "$architecture" = "riscv64" ]; then - rm -rf "$tmpd" - fi - -+loongarch_cc_flavor="" - no_lasx=0 - if [ "$architecture" = "loongarch64" ]; then -+ # Currently there are only 2 flavors: new-world and old-world. -+ # They differ in ABI names accepted, so check it to avoid creating temp -+ # files. -+ loongarch_cc_flavor="NEW" -+ { -+ $compiler_name -mabi=lp64d -E -o - /dev/null >/dev/null 2>&1 -+ } || { -+ loongarch_cc_flavor="OLD" -+ } -+ - tmpd=`mktemp -d` - tmpf="$tmpd/a.c" - # Old-world assembly flavor: LASX registers named "$xrNN", different -@@ -260,6 +271,7 @@ if [ "$architecture" = "loongarch64" ]; then - } || { - no_lasx=1 - } -+ - rm -rf "$tmpd" - fi - -@@ -377,6 +389,7 @@ done - [ "$no_avx512" -eq 1 ] && printf "NO_AVX512=1\n" - [ "$no_avx2" -eq 1 ] && printf "NO_AVX2=1\n" - [ "$oldgcc" -eq 1 ] && printf "OLDGCC=1\n" -+ [ -n "$loongarch_cc_flavor" ] && printf "LOONGARCH_CC_FLAVOR=%s\n" "$loongarch_cc_flavor" - exit 0 - } - -@@ -408,6 +421,7 @@ done - [ "$no_avx512" -eq 1 ] && printf "NO_AVX512=1\n" - [ "$no_avx2" -eq 1 ] && printf "NO_AVX2=1\n" - [ "$oldgcc" -eq 1 ] && printf "OLDGCC=1\n" -+ [ -n "$loongarch_cc_flavor" ] && printf "LOONGARCH_CC_FLAVOR=%s\n" "$loongarch_cc_flavor" - } >> "$makefile" - - os=`echo "$os" | tr '[[:lower:]]' '[[:upper:]]'/ ` diff --git a/sci-libs/openblas/files/openblas-0.3.23-parallel-make.patch b/sci-libs/openblas/files/openblas-0.3.23-parallel-make.patch deleted file mode 100644 index ce0487a6b2c0..000000000000 --- a/sci-libs/openblas/files/openblas-0.3.23-parallel-make.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 281e834566a06f1c756d262dc31e809faaf8933f Mon Sep 17 00:00:00 2001 -From: Guillaume Horel <guillaume.horel@gmail.com> -Date: Thu, 30 Mar 2023 15:15:25 -0400 -Subject: [PATCH 1/2] do not pass -j flag to the MAKE variable - ---- - getarch.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/getarch.c b/getarch.c -index 937a8db68c..87384c0840 100644 ---- a/getarch.c -+++ b/getarch.c -@@ -1930,15 +1930,15 @@ printf("ELF_VERSION=2\n"); - - #ifdef MAKE_NB_JOBS - #if MAKE_NB_JOBS > 0 -- printf("MAKE += -j %d\n", MAKE_NB_JOBS); -+ printf("MAKEFLAGS += -j %d\n", MAKE_NB_JOBS); - #else - // Let make use parent -j argument or -j1 if there - // is no make parent - #endif - #elif NO_PARALLEL_MAKE==1 -- printf("MAKE += -j 1\n"); -+ printf("MAKEFLAGS += -j 1\n"); - #else -- printf("MAKE += -j %d\n", get_num_cores()); -+ printf("MAKEFLAGS += -j %d\n", get_num_cores()); - #endif - - break; - -From 397108fba299c87ce17957452d57469af914f516 Mon Sep 17 00:00:00 2001 -From: Guillaume Horel <guillaume.horel@gmail.com> -Date: Fri, 31 Mar 2023 09:22:40 -0400 -Subject: [PATCH 2/2] serialize shared prerequisites - ---- - Makefile | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/Makefile b/Makefile -index 144b3400db..3c4b8948af 100644 ---- a/Makefile -+++ b/Makefile -@@ -40,9 +40,9 @@ LAPACK_NOOPT := $(filter-out -O0 -O1 -O2 -O3 -Ofast -O -Og -Os,$(LAPACK_FFLAGS)) - SUBDIRS_ALL = $(SUBDIRS) test ctest utest exports benchmark ../laswp ../bench cpp_thread_test - - .PHONY : all libs netlib $(RELA) test ctest shared install --.NOTPARALLEL : all libs $(RELA) prof lapack-test install blas-test -+.NOTPARALLEL : shared - --all :: libs netlib $(RELA) tests shared -+all :: tests - @echo - @echo " OpenBLAS build complete. ($(LIB_COMPONENTS))" - @echo -@@ -150,7 +150,7 @@ ifeq ($(OSNAME), CYGWIN_NT) - endif - endif - --tests : libs netlib $(RELA) shared -+tests : shared - ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN))) - touch $(LIBNAME) - ifndef NO_FBLAS diff --git a/sci-libs/openblas/openblas-0.3.21-r1.ebuild b/sci-libs/openblas/openblas-0.3.21-r1.ebuild deleted file mode 100644 index c5a1707e33da..000000000000 --- a/sci-libs/openblas/openblas-0.3.21-r1.ebuild +++ /dev/null @@ -1,197 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit fortran-2 toolchain-funcs - -DESCRIPTION="Optimized BLAS library based on GotoBLAS2" -HOMEPAGE="https://github.com/xianyi/OpenBLAS" -SRC_URI="https://github.com/xianyi/OpenBLAS/archive/v${PV}.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}"/OpenBLAS-${PV} - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~loong ~riscv ~x86 ~amd64-linux ~x86-linux ~x64-macos" -IUSE="dynamic eselect-ldso index-64bit openmp pthread relapack test" -REQUIRED_USE="?? ( openmp pthread )" -RESTRICT="!test? ( test )" - -RDEPEND=" - eselect-ldso? ( - >=app-eselect/eselect-blas-0.2 - >=app-eselect/eselect-lapack-0.2 - ) -" -BDEPEND="virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}/${PN}-0.3.12-shared-blas-lapack.patch" - "${FILESDIR}/${PN}-0.3.21-fix-loong.patch" - "${FILESDIR}/${P}-clang16.patch" -) - -pkg_pretend() { - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp - - elog "This software has a massive number of options that" - elog "are configurable and it is *impossible* for all of" - elog "those to fit inside any manageable ebuild." - elog "The Gentoo provided package has enough to build" - elog "a fully optimized library for your targeted CPU." - elog "You can set the CPU target using the environment" - elog "variable - OPENBLAS_TARGET or it will be detected" - elog "automatically from the target toolchain (supports" - elog "cross compilation toolchains)." - elog "You can control the maximum number of threads" - elog "using OPENBLAS_NTHREAD, default=64 and number of " - elog "parallel calls to allow before further calls wait" - elog "using OPENBLAS_NPARALLEL, default=8." -} - -pkg_setup() { - fortran-2_pkg_setup - - # List of most configurable options - Makefile.rule - - # https://github.com/xianyi/OpenBLAS/pull/2663 - tc-export CC FC LD AR AS RANLIB - - # HOSTCC is used for scripting - export HOSTCC="$(tc-getBUILD_CC)" - - # threading options - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp - USE_THREAD=0 - if use openmp; then - USE_THREAD=1; USE_OPENMP=1; - elif use pthread; then - USE_THREAD=1; USE_OPENMP=0; - fi - export USE_THREAD USE_OPENMP - - # disable submake with -j and default optimization flags - # in Makefile.system - # Makefile.rule says to not modify COMMON_OPT/FCOMMON_OPT... - export MAKE_NB_JOBS=-1 \ - COMMON_OPT=" " \ - FCOMMON_OPT=" " - - # Target CPU ARCH options - # generally detected automatically from cross toolchain - use dynamic && \ - export DYNAMIC_ARCH=1 \ - NO_AFFINITY=1 \ - TARGET=GENERIC - - export NUM_PARALLEL=${OPENBLAS_NPARALLEL:-8} \ - NUM_THREADS=${OPENBLAS_NTHREAD:-64} - - # setting OPENBLAS_TARGET to override auto detection - # in case the toolchain is not enough to detect - # https://github.com/xianyi/OpenBLAS/blob/develop/TargetList.txt - if ! use dynamic && [[ ! -z "${OPENBLAS_TARGET}" ]] ; then - export TARGET="${OPENBLAS_TARGET}" - fi - - export NO_STATIC=1 - - BUILD_RELAPACK=1 - if ! use relapack; then - BUILD_RELAPACK=0 - fi - - export PREFIX="${EPREFIX}/usr" BUILD_RELAPACK -} - -src_prepare() { - default - - # Don't build the tests as part of "make all". We'll do - # it explicitly later if the test phase is enabled. - sed -e "/^all ::/s/tests //" -i Makefile || die - - # if 64bit-index is needed, create second library - # with LIBPREFIX=libopenblas64 - if use index-64bit; then - cp -aL "${S}" "${S}-index-64bit" || die - fi -} - -src_compile() { - default - cd interface || die - emake shared-blas-lapack - - if use index-64bit; then - emake -C"${S}-index-64bit" \ - INTERFACE64=1 \ - LIBPREFIX=libopenblas64 - fi -} - -src_test() { - emake tests -} - -src_install() { - emake install DESTDIR="${D}" \ - OPENBLAS_INCLUDE_DIR='$(PREFIX)'/include/${PN} \ - OPENBLAS_LIBRARY_DIR='$(PREFIX)'/$(get_libdir) - - dodoc GotoBLAS_*.txt *.md Changelog.txt - - if use index-64bit; then - dolib.so "${S}-index-64bit"/libopenblas64*.so* - fi - - if use eselect-ldso; then - insinto /usr/$(get_libdir)/blas/openblas/ - doins interface/libblas.so.3 - dosym libblas.so.3 usr/$(get_libdir)/blas/openblas/libblas.so - doins interface/libcblas.so.3 - dosym libcblas.so.3 usr/$(get_libdir)/blas/openblas/libcblas.so - - insinto /usr/$(get_libdir)/lapack/openblas/ - doins interface/liblapack.so.3 - dosym liblapack.so.3 usr/$(get_libdir)/lapack/openblas/liblapack.so - doins interface/liblapacke.so.3 - dosym liblapacke.so.3 usr/$(get_libdir)/lapack/openblas/liblapacke.so - fi -} - -pkg_postinst() { - use eselect-ldso || return - local libdir=$(get_libdir) me="openblas" - - # 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_lapack}]." - else - elog "Current eselect: LAPACK ($libdir) -> [${current_lapack}]." - elog "To use lapack [${me}] implementation, you have to issue (as root):" - elog "\t eselect lapack set ${libdir} ${me}" - fi -} - -pkg_postrm() { - if use eselect-ldso; then - eselect blas validate - eselect lapack validate - fi -} diff --git a/sci-libs/openblas/openblas-0.3.23.ebuild b/sci-libs/openblas/openblas-0.3.23.ebuild deleted file mode 100644 index 77e8c99cc2f2..000000000000 --- a/sci-libs/openblas/openblas-0.3.23.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic fortran-2 toolchain-funcs - -DESCRIPTION="Optimized BLAS library based on GotoBLAS2" -HOMEPAGE="https://github.com/xianyi/OpenBLAS" -SRC_URI="https://github.com/xianyi/OpenBLAS/archive/v${PV}.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}"/OpenBLAS-${PV} - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~loong ~riscv ~x86 ~amd64-linux ~x86-linux ~x64-macos" -IUSE="dynamic eselect-ldso index-64bit openmp pthread relapack test" -REQUIRED_USE="?? ( openmp pthread )" -RESTRICT="!test? ( test )" - -RDEPEND=" - eselect-ldso? ( - >=app-eselect/eselect-blas-0.2 - >=app-eselect/eselect-lapack-0.2 - ) -" -BDEPEND="virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}/${PN}-0.3.23-shared-blas-lapack.patch" - "${FILESDIR}/${PN}-0.3.21-fix-loong.patch" - "${FILESDIR}/${PN}-0.3.23-parallel-make.patch" -) - -pkg_pretend() { - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp - - elog "This software has a massive number of options that" - elog "are configurable and it is *impossible* for all of" - elog "those to fit inside any manageable ebuild." - elog "The Gentoo provided package has enough to build" - elog "a fully optimized library for your targeted CPU." - elog "You can set the CPU target using the environment" - elog "variable - OPENBLAS_TARGET or it will be detected" - elog "automatically from the target toolchain (supports" - elog "cross compilation toolchains)." - elog "You can control the maximum number of threads" - elog "using OPENBLAS_NTHREAD, default=64 and number of " - elog "parallel calls to allow before further calls wait" - elog "using OPENBLAS_NPARALLEL, default=8." -} - -pkg_setup() { - fortran-2_pkg_setup - - # List of most configurable options - Makefile.rule - - # not an easy fix, https://github.com/xianyi/OpenBLAS/issues/4128 - filter-lto - - # https://github.com/xianyi/OpenBLAS/pull/2663 - tc-export CC FC LD AR AS RANLIB - - # HOSTCC is used for scripting - export HOSTCC="$(tc-getBUILD_CC)" - - # threading options - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp - USE_THREAD=0 - if use openmp; then - USE_THREAD=1; USE_OPENMP=1; - elif use pthread; then - USE_THREAD=1; USE_OPENMP=0; - fi - export USE_THREAD USE_OPENMP - - # disable submake with -j and default optimization flags - # in Makefile.system - # Makefile.rule says to not modify COMMON_OPT/FCOMMON_OPT... - export MAKE_NB_JOBS=-1 \ - COMMON_OPT=" " \ - FCOMMON_OPT=" " - - # Target CPU ARCH options - # generally detected automatically from cross toolchain - use dynamic && \ - export DYNAMIC_ARCH=1 \ - NO_AFFINITY=1 \ - TARGET=GENERIC - - export NUM_PARALLEL=${OPENBLAS_NPARALLEL:-8} \ - NUM_THREADS=${OPENBLAS_NTHREAD:-64} - - # setting OPENBLAS_TARGET to override auto detection - # in case the toolchain is not enough to detect - # https://github.com/xianyi/OpenBLAS/blob/develop/TargetList.txt - if ! use dynamic && [[ ! -z "${OPENBLAS_TARGET}" ]] ; then - export TARGET="${OPENBLAS_TARGET}" - fi - - export NO_STATIC=1 - - BUILD_RELAPACK=1 - if ! use relapack; then - BUILD_RELAPACK=0 - fi - - export PREFIX="${EPREFIX}/usr" BUILD_RELAPACK -} - -src_prepare() { - default - - # Don't build the tests as part of "make all". We'll do - # it explicitly later if the test phase is enabled. - sed -e "/^all ::/s/tests //" -i Makefile || die - - # if 64bit-index is needed, create second library - # with LIBPREFIX=libopenblas64 - if use index-64bit; then - cp -aL "${S}" "${S}-index-64bit" || die - fi -} - -src_compile() { - emake shared - use eselect-ldso && emake -C interface shared-blas-lapack - - if use index-64bit; then - emake -C"${S}-index-64bit" \ - INTERFACE64=1 \ - LIBPREFIX=libopenblas64 - fi -} - -src_test() { - emake tests -} - -src_install() { - emake install DESTDIR="${D}" \ - OPENBLAS_INCLUDE_DIR='$(PREFIX)'/include/${PN} \ - OPENBLAS_LIBRARY_DIR='$(PREFIX)'/$(get_libdir) - - dodoc GotoBLAS_*.txt *.md Changelog.txt - - if use index-64bit; then - dolib.so "${S}-index-64bit"/libopenblas64*.so* - fi - - if use eselect-ldso; then - insinto /usr/$(get_libdir)/blas/openblas/ - doins interface/libblas.so.3 - dosym libblas.so.3 usr/$(get_libdir)/blas/openblas/libblas.so - doins interface/libcblas.so.3 - dosym libcblas.so.3 usr/$(get_libdir)/blas/openblas/libcblas.so - - insinto /usr/$(get_libdir)/lapack/openblas/ - doins interface/liblapack.so.3 - dosym liblapack.so.3 usr/$(get_libdir)/lapack/openblas/liblapack.so - doins interface/liblapacke.so.3 - dosym liblapacke.so.3 usr/$(get_libdir)/lapack/openblas/liblapacke.so - fi -} - -pkg_postinst() { - use eselect-ldso || return - local libdir=$(get_libdir) me="openblas" - - # 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_lapack}]." - else - elog "Current eselect: LAPACK ($libdir) -> [${current_lapack}]." - elog "To use lapack [${me}] implementation, you have to issue (as root):" - elog "\t eselect lapack set ${libdir} ${me}" - fi -} - -pkg_postrm() { - if use eselect-ldso; then - eselect blas validate - eselect lapack validate - fi -} |