diff options
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/Manifest.gz | bin | 45144 -> 45141 bytes | |||
-rw-r--r-- | sci-libs/arpack/Manifest | 5 | ||||
-rw-r--r-- | sci-libs/arpack/arpack-3.9.1.ebuild | 65 | ||||
-rw-r--r-- | sci-libs/arpack/arpack-9999.ebuild | 14 | ||||
-rw-r--r-- | sci-libs/arpack/files/arpack-3.9.1-bashism-configure.patch | 42 | ||||
-rw-r--r-- | sci-libs/openblas/Manifest | 2 | ||||
-rw-r--r-- | sci-libs/openblas/openblas-0.3.25.ebuild | 197 |
7 files changed, 318 insertions, 7 deletions
diff --git a/sci-libs/Manifest.gz b/sci-libs/Manifest.gz Binary files differindex f07bd030caf7..9d8e909ca04a 100644 --- a/sci-libs/Manifest.gz +++ b/sci-libs/Manifest.gz diff --git a/sci-libs/arpack/Manifest b/sci-libs/arpack/Manifest index 8f6bdc3b7a3d..6d046ec32eb3 100644 --- a/sci-libs/arpack/Manifest +++ b/sci-libs/arpack/Manifest @@ -1,8 +1,11 @@ +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 1453 BLAKE2B 961ce259165a0088f4b7c474cd0de4d8eeae29938b2a6933e2c53b7cf6efbcfc8c3a18ee726611062d111152f2f0469ba60d85a8ee03ed3aa905733f63573247 SHA512 71f1d53988d140dfc71ec330383878468c65bb1a554bf21a34d3435d7065cbdb4f8f6bc626117306525572a28c19747dd1240e018332fb454ce359666fd2b1a6 EBUILD arpack-3.9.0-r1.ebuild 1369 BLAKE2B 49a19289bbebd6310f9cf72a617737d2718432ab6b381f95e6324d051a7cec0c08b1a5d31fc6c0be9e6879d073e381a0c092733e49340ed2611139d9d28fa03b SHA512 02d9a67298e89266ccb0723b0c56da3fc8a95f8fcf42c201eebf0b615c4e730e74698dd9c35c0548e8787cde3722bb8f628bbffa9fa0a9d6f1ff65111aa449d1 -EBUILD arpack-9999.ebuild 1369 BLAKE2B 49a19289bbebd6310f9cf72a617737d2718432ab6b381f95e6324d051a7cec0c08b1a5d31fc6c0be9e6879d073e381a0c092733e49340ed2611139d9d28fa03b SHA512 02d9a67298e89266ccb0723b0c56da3fc8a95f8fcf42c201eebf0b615c4e730e74698dd9c35c0548e8787cde3722bb8f628bbffa9fa0a9d6f1ff65111aa449d1 +EBUILD arpack-3.9.1.ebuild 1442 BLAKE2B 7ccb6479332b17cb9b594804c925bb8ddad7713017a06c8f2dbe01fa081f2b51a415e60f300e27f8c8613359a6dec57eb7e480c4b18f487fd4c0681029c2545e SHA512 59fdcb9b88d3c744f6bd2f7a6acf51b2f58a49472405338d741e6c908064f374942235770d0bae596a4abd259e9ead76cd3c5b7b411895cb23407c6a88924e3f +EBUILD arpack-9999.ebuild 1378 BLAKE2B a5c4c35b0d4bb7ec6143bc1f20651496ccd1cbcc3af4c8a57f6a31087371a3e52b37f99452be692d2b81f4f71d2fa7796c6096da93bde0da8c996f9ae0951222 SHA512 d810efed61a3e763cf323e056cce1f072b8847035f5def31243ebc79fd92162575427de733e970e5bb8c322108155245ce7eb67616e93b852ff81a5b264567db MISC metadata.xml 975 BLAKE2B c586f5c76637d89b4221fc7bde670e0f32b35e3ef73f212a3ebb87893d6741a65e0c95ca981375a0c17231aeb1655c89f4263d6fac869ee29fe8e4e9b026ad06 SHA512 e296ebe68dd0b8a02bc92fdf43057ee2df61f5ff9d04fbc323be7c7b8aaccbb4fe4627d0f1815efe010a0c6f36367dd48417f092303561b4c8e81ac051bfc0bb diff --git a/sci-libs/arpack/arpack-3.9.1.ebuild b/sci-libs/arpack/arpack-3.9.1.ebuild new file mode 100644 index 000000000000..6fafe6af781b --- /dev/null +++ b/sci-libs/arpack/arpack-3.9.1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +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" + +if [[ ${PV} == *9999 ]]; then + EGIT_REPO_URI="https://github.com/opencollab/arpack-ng" + inherit git-r3 +else + SRC_URI="https://github.com/opencollab/${PN}-ng/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" + S="${WORKDIR}/${PN}-ng-${PV}" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="examples mpi" + +RDEPEND=" + virtual/blas + virtual/lapack + mpi? ( virtual/mpi[fortran] ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-3.9.1-bashism-configure.patch +) + +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/arpack/arpack-9999.ebuild b/sci-libs/arpack/arpack-9999.ebuild index 543b592a542d..8164bd0bd747 100644 --- a/sci-libs/arpack/arpack-9999.ebuild +++ b/sci-libs/arpack/arpack-9999.ebuild @@ -1,21 +1,22 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 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" + if [[ ${PV} == *9999 ]]; then - inherit git-r3 EGIT_REPO_URI="https://github.com/opencollab/arpack-ng" + inherit git-r3 else SRC_URI="https://github.com/opencollab/${PN}-ng/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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" @@ -23,7 +24,8 @@ IUSE="examples mpi" RDEPEND=" virtual/blas virtual/lapack - mpi? ( virtual/mpi[fortran] )" + mpi? ( virtual/mpi[fortran] ) +" DEPEND="${RDEPEND}" BDEPEND="virtual/pkgconfig" diff --git a/sci-libs/arpack/files/arpack-3.9.1-bashism-configure.patch b/sci-libs/arpack/files/arpack-3.9.1-bashism-configure.patch new file mode 100644 index 000000000000..074a43b3ee1d --- /dev/null +++ b/sci-libs/arpack/files/arpack-3.9.1-bashism-configure.patch @@ -0,0 +1,42 @@ +https://github.com/opencollab/arpack-ng/pull/441 + +From a3beacc11e2acbe0baf8b301cb47938dcf01e71d Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Mon, 13 Nov 2023 02:38:46 +0000 +Subject: [PATCH] configure.ac: fix bashisms + +configure scripts need to be runnable with a POSIX-compliant /bin/sh. + +On many (but not all!) systems, /bin/sh is provided by Bash, so errors +like this aren't spotted. Notably Debian defaults to /bin/sh provided +by dash which doesn't tolerate such bashisms as '=='. + +This retains compatibility with bash. + +Fixes configure warnings/errors like: +``` +checking for cheev_ in -llapack... yes +./configure: 8590: test: x: unexpected operator +checking how to print strings... printf +``` +--- a/configure.ac ++++ b/configure.ac +@@ -20,7 +20,7 @@ dnl Check for LAPACK libraries + AX_LAPACK([], [AC_MSG_ERROR([cannot find LAPACK libraries])]) + + AC_ARG_VAR(INTERFACE64, [set to 1 to use the 64-bit integer interface (ILP64) for ARPACK, BLAS and LAPACK]) +-if test x"$INTERFACE64" == x"1"; then ++if test x"$INTERFACE64" = x"1"; then + AC_LANG_PUSH([Fortran 77]) + AX_CHECK_COMPILE_FLAG(-fdefault-integer-8, FFLAGS="$FFLAGS -fdefault-integer-8", + AX_CHECK_COMPILE_FLAG(-i8, FFLAGS="$FFLAGS -i8", +@@ -191,7 +191,7 @@ AS_IF([test x"$enable_mpi" != x"no"], [ + ]) + + dnl TODO: this needs full re-write of parpack to support ILP64... +-if test x"$INTERFACE64" == x"1"; then ++if test x"$INTERFACE64" = x"1"; then + if test x"$enable_mpi" != x"no"; then + AC_MSG_ERROR([Parallel arpack does not support ILP64.]) + fi + diff --git a/sci-libs/openblas/Manifest b/sci-libs/openblas/Manifest index 49e906992574..feb9a2ad506b 100644 --- a/sci-libs/openblas/Manifest +++ b/sci-libs/openblas/Manifest @@ -3,8 +3,10 @@ AUX openblas-0.3.21-clang16.patch 17596 BLAKE2B 29a6d2716e31ad65de3252375c1a11b7 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.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 5764 BLAKE2B f12334cd767a6261178a04718f7e58d05e43c4d2e97c3973ea3bd844e65041858d5db1b3641eef733faeade0f41d86c12bcdd9f502dae705f39f9605d7769d69 SHA512 368c95b48c89a424fa0ef07520c3e46e2e3c9bb5eb796a45df3e70d7e41b970a9883c346f711d34617cb88a63a2080e63cffb9ddafb082f56efe61345c0afac9 +EBUILD openblas-0.3.25.ebuild 5900 BLAKE2B faa42541b5ac6face1fc7e677364164277faf782c94f58724d611dc89677f8c7e14d403013c64e32c6cc6423e4bfade8f3d2126fa134993244e54693590f04a0 SHA512 6b2a11aea1face9cc40a2290d8e12874bb5a30a01aaca6365fe498d9b514e66243d6ba1c60e2a94801a3ff9c3e48ba538903dc9076d992593383dfd62494d252 MISC metadata.xml 1561 BLAKE2B 5ba7ec66dd8ba7ca8bc29bc0193b48b6a82b4949bb79bab461400040667aa66aac3cfd2ad9c7323798048fd43d18ac96a562d53b68f3f7ae8bf8505ac7a04691 SHA512 05272eb56480ff82b240d0f430df3df03981e24b971dbd37c13d464f4f4b334bac19b54915446a09326a334aa76249bb79a4fa389d26150365f21389992f9a48 diff --git a/sci-libs/openblas/openblas-0.3.25.ebuild b/sci-libs/openblas/openblas-0.3.25.ebuild new file mode 100644 index 000000000000..904044a4d4ff --- /dev/null +++ b/sci-libs/openblas/openblas-0.3.25.ebuild @@ -0,0 +1,197 @@ +# 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 + +MY_P=OpenBLAS-${PV} +DESCRIPTION="Optimized BLAS library based on GotoBLAS2" +HOMEPAGE="https://github.com/xianyi/OpenBLAS" +SRC_URI="https://github.com/OpenMathLib/OpenBLAS/releases/download/v${PV}/${MY_P}.tar.gz" +S="${WORKDIR}"/${MY_P} + +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" +) + +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() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp + + fortran-2_pkg_setup +} + +src_prepare() { + default + + # TODO: Unbundle lapack like Fedora does? + # https://src.fedoraproject.org/rpms/openblas/blob/rawhide/f/openblas-0.2.15-system_lapack.patch + + # Don't build the tests as part of "make all". We'll do + # it explicitly later if the test phase is enabled. + sed -i -e "/^all :: tests/s: tests::g" 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_configure() { + # List of most configurable options is in Makefile.rule. + + # Not an easy fix, https://github.com/xianyi/OpenBLAS/issues/4128 + filter-lto + + tc-export CC FC LD AR AS RANLIB + + # HOSTCC is used for scripting + export HOSTCC="$(tc-getBUILD_CC)" + + # Threading options + export USE_THREAD=0 + export USE_OPENMP=0 + if use openmp; then + USE_THREAD=1 + USE_OPENMP=1 + elif use pthread; then + USE_THREAD=1 + USE_OPENMP=0 + fi + + # 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 + # + # TODO: Rename USE=dynamic -> USE=cpudetection like dev-libs/gmp, media-video/ffmpeg? + # (may want to then restrict bindist w/ USE=-cpudetection.) + if use dynamic ; then + export DYNAMIC_ARCH=1 NO_AFFINITY=1 TARGET=GENERIC + fi + + export NUM_PARALLEL=${OPENBLAS_NPARALLEL:-8} NUM_THREADS=${OPENBLAS_NTHREAD:-64} + + # Allow 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 + export BUILD_RELAPACK=$(usex relapack 1 0) + export PREFIX="${EPREFIX}/usr" +} + +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 +} |