Hello, Here's my "second approximation" to the idea of using sci-libs/flexiblas as the system LAPACK provider. It is USE flag based rather than unconditional to make it possible to test it without immediately removing the existing system.
For the rationale, see: https://public-inbox.gentoo.org/gentoo-dev/[email protected]/T/#t The implementation follows the following principles: - top-level BLAS/LAPACK libraries and pkg-config files are replaced by symlinks to the flexiblas library/pkg-config file, installed by sci-libs/flexiblas[system-blas] - sci-libs/lapack[flexiblas] renames installed libraries, pkg-config files and CMake files by adding a `-reference` suffix to them (to make place for flexiblas symlinks) - virtuals get a [flexiblas] flag to pull sci-libs/flexiblas[system-blas] setup in place of the eselect-based system - sci-libs/flexiblas[system-blas] blocks the eselect packages, and removes their config upon install, so that their ld.so.conf bits do not interfere I've done some initial testing and have had no issues. More feedback and testing welcome. Note that the diffs for virtuals ended up weird because of --find-copies-harder. That's because all the virtuals are very similar, so the differences between different virtuals are smaller than between the revbumps. Also available as a pull request on the LLM Torment Nexus: https://github.com/gentoo/gentoo/pull/43755 -- Best regards, Michał Górny Michał Górny (6): sci-libs/lapack: Introduce USE=flexiblas for sys flexiblas use sci-libs/flexiblas: Support installing as a system BLAS/LAPACK virtual/blas: Add flexiblas support virtual/cblas: Add flexiblas support virtual/lapack: Add flexiblas support virtual/lapacke: Add flexiblas support ...4.82.ebuild => flexiblas-3.4.82-r1.ebuild} | 57 +++++++++++++++++-- sci-libs/flexiblas/metadata.xml | 4 ++ ...12.1-r1.ebuild => lapack-3.12.1-r2.ebuild} | 22 ++++++- sci-libs/lapack/metadata.xml | 3 + virtual/blas/blas-3.8-r1.ebuild | 27 +++++++++ virtual/blas/metadata.xml | 1 + virtual/cblas/cblas-3.8-r1.ebuild | 27 +++++++++ virtual/cblas/metadata.xml | 1 + virtual/lapack/lapack-3.10-r1.ebuild | 26 +++++++++ virtual/lapack/metadata.xml | 1 + virtual/lapacke/lapacke-3.8-r2.ebuild | 26 +++++++++ virtual/lapacke/metadata.xml | 1 + 12 files changed, 191 insertions(+), 5 deletions(-) copy sci-libs/flexiblas/{flexiblas-3.4.82.ebuild => flexiblas-3.4.82-r1.ebuild} (73%) copy sci-libs/lapack/{lapack-3.12.1-r1.ebuild => lapack-3.12.1-r2.ebuild} (88%) create mode 100644 virtual/blas/blas-3.8-r1.ebuild create mode 100644 virtual/cblas/cblas-3.8-r1.ebuild create mode 100644 virtual/lapack/lapack-3.10-r1.ebuild create mode 100644 virtual/lapacke/lapacke-3.8-r2.ebuild
