From e105f0f6a215d6fd15b58cb8a669e3f119c12169 Mon Sep 17 00:00:00 2001 From: Benda Xu Date: Thu, 8 Aug 2019 08:54:40 +0800 Subject: virtual/{{c,}blas,lapack{,e}}: replaced by counterparts in ::gentoo. sci-libs/{{c,}blas,lapack{,e}}-reference: Remove. Remove BLAS/LAPACK migration scripts. Remove outdated documentation on BLAS/LAPACK. Update README.md to point to the new framework in ::gentoo. Reference: https://wiki.gentoo.org/wiki/Blas-lapack-switch Closes: https://github.com/gentoo/sci/issues/805 Closes: https://github.com/gentoo/sci/issues/926 Closes: https://github.com/gentoo/sci/issues/734 Closes: https://github.com/gentoo/sci/issues/897 Closes: https://github.com/gentoo/sci/issues/925 Package-Manager: Portage-2.3.69, Repoman-2.3.12 Signed-off-by: Benda Xu --- README.md | 13 +- docs/proj/blas-lapack.xml | 492 ------------------- docs/proj/index.xml | 1 - docs/proj/linalg.xml | 530 --------------------- profiles/package.mask | 4 - sci-libs/blas-reference/Manifest | 2 - .../blas-reference-20161223-r100.ebuild | 110 ----- .../blas-reference-20171112-r100.ebuild | 109 ----- .../blas-reference/blas-reference-99999999.ebuild | 108 ----- .../files/lapack-fix-build-system.patch | 92 ---- .../lapack-reference-3.7.0-fix-build-system.patch | 56 --- sci-libs/blas-reference/metadata.xml | 20 - sci-libs/cblas-reference/Manifest | 3 - .../cblas-reference-20110218-r100.ebuild | 144 ------ .../cblas-reference-20151113-r100.ebuild | 126 ----- .../cblas-reference-20161223-r101.ebuild | 124 ----- .../files/lapack-fix-build-system.patch | 124 ----- .../lapack-reference-3.7.0-fix-build-system.patch | 61 --- sci-libs/cblas-reference/metadata.xml | 21 - sci-libs/lapack-reference/Manifest | 2 - .../lapack-reference/files/3.3.1-blas-libs.patch | 35 -- .../lapack-reference/files/3.3.1-xblas-libs.patch | 44 -- .../files/lapack-3.4.1-cmake.patch | 208 -------- .../files/lapack-3.6.1-fix-build-system.patch | 88 ---- .../files/lapack-fix-build-system.patch | 92 ---- .../lapack-reference-3.7.0-fix-build-system.patch | 56 --- .../lapack-reference-3.7.0-r100.ebuild | 121 ----- .../lapack-reference-3.8.0-r100.ebuild | 120 ----- .../lapack-reference/lapack-reference-9999.ebuild | 124 ----- sci-libs/lapack-reference/metadata.xml | 25 - sci-libs/lapacke-reference/Manifest | 2 - .../files/lapack-fix-build-system.patch | 92 ---- .../lapacke-reference-3.5.0.ebuild | 95 ---- .../lapacke-reference-3.6.0-r2.ebuild | 102 ---- .../lapacke-reference-9999.ebuild | 95 ---- sci-libs/lapacke-reference/metadata.xml | 19 - scripts/lapack-migration.sh | 25 - scripts/sci-lapack | 18 - virtual/blas/blas-2.1-r5.ebuild | 53 --- virtual/blas/blas-3.6-r100.ebuild | 53 --- virtual/blas/blas-3.7-r100.ebuild | 53 --- virtual/blas/metadata.xml | 16 - virtual/cblas/cblas-2.0-r4.ebuild | 34 -- virtual/cblas/cblas-3.6-r100.ebuild | 34 -- virtual/cblas/cblas-3.7-r100.ebuild | 34 -- virtual/cblas/metadata.xml | 16 - virtual/lapack/lapack-3.6-r100.ebuild | 40 -- virtual/lapack/lapack-3.7-r100.ebuild | 40 -- virtual/lapack/metadata.xml | 17 - virtual/lapacke/lapacke-3.6.ebuild | 24 - virtual/lapacke/metadata.xml | 16 - 51 files changed, 4 insertions(+), 3929 deletions(-) delete mode 100644 docs/proj/blas-lapack.xml delete mode 100644 docs/proj/linalg.xml delete mode 100644 sci-libs/blas-reference/Manifest delete mode 100644 sci-libs/blas-reference/blas-reference-20161223-r100.ebuild delete mode 100644 sci-libs/blas-reference/blas-reference-20171112-r100.ebuild delete mode 100644 sci-libs/blas-reference/blas-reference-99999999.ebuild delete mode 100644 sci-libs/blas-reference/files/lapack-fix-build-system.patch delete mode 100644 sci-libs/blas-reference/files/lapack-reference-3.7.0-fix-build-system.patch delete mode 100644 sci-libs/blas-reference/metadata.xml delete mode 100644 sci-libs/cblas-reference/Manifest delete mode 100644 sci-libs/cblas-reference/cblas-reference-20110218-r100.ebuild delete mode 100644 sci-libs/cblas-reference/cblas-reference-20151113-r100.ebuild delete mode 100644 sci-libs/cblas-reference/cblas-reference-20161223-r101.ebuild delete mode 100644 sci-libs/cblas-reference/files/lapack-fix-build-system.patch delete mode 100644 sci-libs/cblas-reference/files/lapack-reference-3.7.0-fix-build-system.patch delete mode 100644 sci-libs/cblas-reference/metadata.xml delete mode 100644 sci-libs/lapack-reference/Manifest delete mode 100644 sci-libs/lapack-reference/files/3.3.1-blas-libs.patch delete mode 100644 sci-libs/lapack-reference/files/3.3.1-xblas-libs.patch delete mode 100644 sci-libs/lapack-reference/files/lapack-3.4.1-cmake.patch delete mode 100644 sci-libs/lapack-reference/files/lapack-3.6.1-fix-build-system.patch delete mode 100644 sci-libs/lapack-reference/files/lapack-fix-build-system.patch delete mode 100644 sci-libs/lapack-reference/files/lapack-reference-3.7.0-fix-build-system.patch delete mode 100644 sci-libs/lapack-reference/lapack-reference-3.7.0-r100.ebuild delete mode 100644 sci-libs/lapack-reference/lapack-reference-3.8.0-r100.ebuild delete mode 100644 sci-libs/lapack-reference/lapack-reference-9999.ebuild delete mode 100644 sci-libs/lapack-reference/metadata.xml delete mode 100644 sci-libs/lapacke-reference/Manifest delete mode 100644 sci-libs/lapacke-reference/files/lapack-fix-build-system.patch delete mode 100644 sci-libs/lapacke-reference/lapacke-reference-3.5.0.ebuild delete mode 100644 sci-libs/lapacke-reference/lapacke-reference-3.6.0-r2.ebuild delete mode 100644 sci-libs/lapacke-reference/lapacke-reference-9999.ebuild delete mode 100644 sci-libs/lapacke-reference/metadata.xml delete mode 100755 scripts/lapack-migration.sh delete mode 100644 scripts/sci-lapack delete mode 100644 virtual/blas/blas-2.1-r5.ebuild delete mode 100644 virtual/blas/blas-3.6-r100.ebuild delete mode 100644 virtual/blas/blas-3.7-r100.ebuild delete mode 100644 virtual/blas/metadata.xml delete mode 100644 virtual/cblas/cblas-2.0-r4.ebuild delete mode 100644 virtual/cblas/cblas-3.6-r100.ebuild delete mode 100644 virtual/cblas/cblas-3.7-r100.ebuild delete mode 100644 virtual/cblas/metadata.xml delete mode 100644 virtual/lapack/lapack-3.6-r100.ebuild delete mode 100644 virtual/lapack/lapack-3.7-r100.ebuild delete mode 100644 virtual/lapack/metadata.xml delete mode 100644 virtual/lapacke/lapacke-3.6.ebuild delete mode 100644 virtual/lapacke/metadata.xml diff --git a/README.md b/README.md index 6283a58a3..d3748dc1b 100644 --- a/README.md +++ b/README.md @@ -14,16 +14,11 @@ wget https://gitweb.gentoo.org/proj/sci.git/plain/metadata/science.conf -O /etc/ To start using the overlay you now only need to get the ebuilds, via `emerge --sync`. -### BLAS and LAPACK Migration +### BLAS and LAPACK -There is a long-standing BLAS and LAPACK stack incompatibility between the Science Overlay and the Base Gentoo Overlay. -A fix [is being considered](https://github.com/gentoo/sci/issues/805), bit is still not scheduled for implementation. -In the mean time, the most automated and up-to-date solution (building on [the original one](https://wiki.gentoo.org/wiki/User_talk:Houseofsuns)) is to run (as root, and after having installed the overlay): - -``` -cd ${EPREFIX}/var/lib/overlays/science/scripts -./lapack-migration.sh -``` +[The BLAS and LAPACK switching framework](https://wiki.gentoo.org/wiki/Blas-lapack-switch) +in ::gentoo has been implemented. The Science overlay will no longer +carry blas and lapack ebuilds. ### Uninstall diff --git a/docs/proj/blas-lapack.xml b/docs/proj/blas-lapack.xml deleted file mode 100644 index f4ef31cee..000000000 --- a/docs/proj/blas-lapack.xml +++ /dev/null @@ -1,492 +0,0 @@ - - - - -Using multiple versions of BLAS and LAPACK with Gentoo/Linux - - - Sébastien Fabbro - - - Markus Dittrich - - - Joshua Saddler - - - -This guide explains the use of the different implementations of the BLAS -and LAPACK libraries that are available via Portage. - - - - - - -1.0 -2007-10-22 - - -Introduction -
- - -

-The Basic Linear Algebra Subroutines (BLAS) and Linear Algebra PACKage (LAPACK) -are well designed linear algebra software libraries developed by the -High Performance Computing (HPC) community. BLAS -implements dense matrix and vectors products, while LAPACK provides routines for -solving systems of linear equations. Both are widely used in -many scientific applications and it is, therefore, important to -have efficient implementations available. -

- -

-Originally written in FORTRAN 77, a number of additional language -wrappers have been developed for languages like C, C++, FORTRAN 95, and others. -The following legacy libraries are available via the reference ebuilds: -

- -
    -
  • - BLAS: FORTRAN 77 implementation of - BLAS -
  • -
  • - CBLAS: C implementation of BLAS -
  • -
  • - LAPACK: FORTRAN 77 implementation - of LAPACK -
  • -
- -

-In addition, Gentoo provides a number of optimized BLAS and LAPACK implementations -that will be described below. Different implementations are bundled together with -Gentoo's eselect system and the widely used pkg-config tool. -

- -

It is important to note that if you require, e.g., a well performing -BLAS implementation, simply emerging X over Y often is not enough. Rather, you will have -to carefully benchmark your applications since performance may depend -on many factors, -such as hardware or network. -If you are simply looking for a well performing and well tested -implementation, the reference ebuilds will likely be your best choice. -

- - - -
-
- - -For Users -
-Installing - - -

-If best possible performance is not of paramount importance for you -and you simply -need BLAS and/or LAPACK, just emerge the virtual packages: -

- -
-# emerge blas cblas lapack
-
- -

-These will install the reference legacy packages from -http://netlib.org. They are well tested, easy to debug -implementations. They should satisfy most users; if they're all you need, you're -done reading. -

- -

-However, if: -

- -
    -
  • BLAS/LAPACK are critical for the speed of your applications
  • -
  • you absolutely need to build the fastest computer
  • -
  • you want to help Gentoo sci project to improve their packages
  • -
- -

-... then read on, and be sure to file bugs both to Gentoo and upstream. -

- -

-There is a number of optimized implementations of these libraries in the Portage -tree: -

- -
    -
  • - ATLAS: Automatically - Tuned Linear Algebra Software is an open-source package that empirically - tunes the library to the machine it is being compiled on. It provides BLAS - (FORTRAN 77 and C), and LAPACK implementations on various architectures. -
  • -
  • - GotoBLAS: - Goto BLAS provide open-source, free for academic use, hand-coded - machine language, processor optimized versions of the FORTRAN 77 BLAS - routines. Claims to be the fastest BLAS. -
  • -
  • - MKL: - Intel® Math Kernel Library is a closed-source but free package for - non-commercial use containing BLAS (FORTRAN 77 and C), LAPACK optimized for - Intel® based architectures: x86, amd64 and ia64. -
  • -
- -

-Usually performance gain is noticeable mainly with BLAS, since LAPACK routines -depend on BLAS kernels. -

- - -
-
-Compiling and linking with installed libraries - - -

-We took great care to make sure that each package provides consistent pkg-config files. -Hence, compiling and linking with BLAS/LAPACK should be simple and straightforward: -

- -
-# pkg-config --libs blas    (To link with FORTRAN 77 BLAS library)
-# pkg-config --cflags cblas (To compile against C BLAS library)
-# pkg-config --libs cblas   (To link with C BLAS library)
-# pkg-config --libs lapack  (To link with FORTRAN 77 LAPACK library)
-
- -

-pkg-config files are available for whichever implementation you select with eselect. -More information on using pkg-config can be obtained with man pkg-config. -

- - -
-
-Choosing libraries - - -

-You can easily switch BLAS, CBLAS and LAPACK implementations with -eselect. At this point, you probably have eselect-blas, -eselect-cblas and eselect-lapack installed. If you do not, -install them now! Using eselect, you can view which implementations of CBLAS -are available. -

- -
-# eselect cblas list
-Installed CBLAS for library directory lib64
-[1]   atlas
-[2]   atlas-threads
-[3]   gsl
-[4]   mkl-threads *
-[5]   reference
-
- -

-The implementation marked with an asterisk (*) is the currently -selected implementation. To switch implementations, run: -

- -
-# eselect lapack set atlas
-
- -

-To learn more about the eselect tool, visit the -eselect guide -

- -

-When selecting blas, cblas or lapack profiles try to avoid mixing -different implementations since we don't have any mechanism to enforce -reasonable profiles. However, here is a list of well performing -profile combinations that have been used successfully in the past: -

-
    -
  • Most CPUs: -
      -
    • blas,cblas: atlas (or atlas-threads with multi-processor)
    • -
    • lapack:atlas
    • -
    -
  • -
  • Most CPUs: -
      -
    • blas: goto
    • -
    • cblas,lapack: reference
    • -
    -
  • -
  • AMD based CPUs: -
      -
    • cblas: reference
    • -
    -
  • -
  • Intel based CPUs: -
      -
    • blas,cblas,lapack: mkl-threads
    • -
    -
  • -
- - -
- -
-Choosing a compiler - - -

-Most of the libraries can compile with both the GNU compiler collection and the -Intel® compilers on the x86, amd64 and ia64 architectures. By default, you are -probably using gcc. You can also compile the *-reference packages -with ifort and icc. To do this, you need to define the F77 -environment variable and don't forget the FFLAGS. -

- -
-# F77=ifort FFLAGS="-O2 -mp" emerge blas-reference
-
- -

-Depending on your hardware, a small performance gain can be noticed thanks to -vectorization. The -mp flag maintains floating-point precision, since by -default ifort is pretty aggressive on floating point arithmetic, and we are -actually compiling a math package. Try man ifort to see additional flags -to fit your hardware. -

- -

-Some of the implementations let you specify the Intel® C compiler as -well. Please beware that not all libraries compile with all -combinations. You should receive an error during the emerge in case you have -chosen an incompatible combination. -

- -

-As usual for Gentoo, there are many combinations of USE flags and -compilers with which you could compile a package. Unfortunately -switching compilers between BLAS and LAPACK might not be always -compatible. For example: -

- -
-# F77=gfortran FFLAGS="-O2" emerge lapack-reference
-
- -

-This will most likely break things or not even compile. -

- -

-Try to be consistent in your choice. Stay with the GCC most of the time will -avoid you some trouble, unless you want to use the MKL, in which case the Intel® -C and FORTRAN compilers make a good combination. -

- - -
-
-Documentation - - -

-If you need BLAS or LAPACK to develop your own programs, the documentation -becomes pretty handy. Setting the USE="doc" flag for the corresponding BLAS or -LAPACK package will install man pages and quick reference sheets from the -app-doc/blas-docs and app-doc/lapack-docs packages. They are -standard and valid for all implementations. For optimized packages, the -USE="doc" flags will usually install extra doc in PDF or HTML format. -

- - -
-
- - -For Developers -
-Providing new implementations - - -

-The Portage tree contains many ebuilds that depend on the BLAS/CBLAS/LAPACK -libraries. As there is more than one possible implementation, the Gentoo -Scientific Project reorganized all the packages to provide virtual/blas, -virtual/cblas, and virtual/lapack. All ebuilds using BLAS should -depend on this virtual package, unless it is explicitly known to break with -different BLAS implementations. -

- -

-To work with Gentoo's configuration tools -app-admin/eselect-{blas,cblas,lapack}, and the virtual, every ebuild that -installs a BLAS implementation must fulfill following requirements: -

- -
    -
  1. - The ebuild must install an eselect file for each profile it provides. The - libraries should link to the ones in /usr/$(get_libdir) - directories and the include files in /usr/include: -
      -
    • - libblas.so[.0] - Shared object for FORTRAN BLAS - applications -
    • -
    • - libblas.a - Static library for FORTRAN BLAS applications -
    • -
    • - libcblas.so[.0] - Shared object for C/C++ CBLAS applications -
    • -
    • - libcblas.a - Static library for C/C++ CBLAS applications -
    • -
    • cblas.h - Include header for C/C++ applications
    • -
    • - liblapack.so[.0] - Shared object for FORTRAN LAPACK - applications -
    • -
    • - liblapack.a - Static library for FORTRAN LAPACK applications -
    • -
    -
  2. -
  3. - The ebuild must install a blas.pc, cblas.pc and/or - lapack.pc pkg-config file and therefore RDEPEND on - dev-util/pkgconfig. They should also be included in the eselect - files, and link to the /usr/$(get_libdir)/pkgconfig directory: -
      -
    • blas.pc - BLAS pkg-config file
    • -
    • cblas.pc - CBLAS pkg-config file
    • -
    • lapack.pc - LAPACK pkg-config file
    • -
    -
  4. -
  5. Be included in the virtual package as a possible provider: -
      -
    • virtual/blas - BLAS virtual package
    • -
    • virtual/cblas - CBLAS virtual package
    • -
    • virtual/lapack - LAPACK virtual package
    • -
    -
  6. -
- -

-The easiest way of understanding all this is probably getting inspiration from -one of the available packages. Currently the Portage tree provide the following -virtuals: -

- - - - - - - - - - sci-libs/blas-atlas - * - * - - - - sci-libs/blas-goto - * - - - - - sci-libs/blas-reference - * - - - - - sci-libs/cblas-reference - - * - - - - sci-libs/gsl - - * - - - - sci-libs/lapack-atlas - - - * - - - sci-libs/lapack-reference - - - * - - - sci-libs/mkl - * - * - * - -
Package namevirtual/blasvirtual/cblasvirtual/lapack
- - -
-
-Packages with BLAS/LAPACK dependencies - - -

-Simply use virtual/{blas,cblas,lapack} as a [R]DEPEND. To build some -packages, you might need to use the pkg-config tool. If you are lucky, the -package uses autotools together with common BLAS and LAPACK M4 macros.In this -case, the configuration step becomes simple. For example: -

- -
-econf --with-blas="$(pkg-config --libs blas)"
-
- - -Don't forget to add dev-util/pkgconfig in DEPEND. - - - -
-
- - -In the near future -
- - -

-We plan to include more standard BLAS, LAPACK libraries: BLAS 95, LAPACK 95, -Sparse BLAS, ScaLAPACK. If you feel inclined to write an ebuild for these, you -are more than welcomed to file it on our Bugzilla. -

- - -
-
-
diff --git a/docs/proj/index.xml b/docs/proj/index.xml index 98656304d..b672ed36e 100644 --- a/docs/proj/index.xml +++ b/docs/proj/index.xml @@ -55,7 +55,6 @@ --> - Guide on using BLAS/LAPACK Guide on contributing to the science project Official overlay Mailing list archives diff --git a/docs/proj/linalg.xml b/docs/proj/linalg.xml deleted file mode 100644 index 02ce98bf4..000000000 --- a/docs/proj/linalg.xml +++ /dev/null @@ -1,530 +0,0 @@ - - - - -Linear Algebra on Gentoo - - - Sébastien Fabbro - - - - This guide explains the use of linear algebra libraries and focus on - how to use the different implementations of BLAS and LAPACK available on Gentoo. - - - - - - -1.0 -2010-12-22 - - -Introduction -
- - -

- There are many - performant numerical libraries available. - The Basic Linear Algebra Subprograms (BLAS) and the Linear Algebra PACKage (LAPACK) - are well designed linear algebra libraries developed by the - High Performance Computing (HPC) community. BLAS is an API of dense - matrix and vectors products, while LAPACK provides routines for - solving systems of linear equations. Both are widely used in - many scientific applications and it is, therefore, important to - have efficient implementations available. -

- -

- BLAS and LAPACK were originally written in FORTRAN 77. Since then, a - number of additional language wrappers have been developed for - languages like C, C++, FORTRAN 95, Java, Python, etc... - Netlib offers exact implementations of the APIs and they are called - "reference" libraries. -

- -
    -
  • - BLAS: FORTRAN 77 and C - (CBLAS) implementations of BLAS -
  • -
  • - LAPACK: FORTRAN 77 and - C (LAPACKE) implementations of LAPACK -
  • -
- -

- -

- -
    -
  • - BLACS: FORTRAN 77 and C - implementations of BLACS -
  • -
  • - ScaLAPACK: FORTRAN 77 and - C implementations of PBLAS and ScaLAPACK -
  • -
- -

- In addition, Gentoo provides a number of optimized implementations - of the above linear algebra libraries that will be described - below. You can switch between implementations with the - Gentoo's eselect system and the widely used pkg-config - tool. -

- -

- It is important to note that if you require, e.g., a well performing - BLAS implementation, simply emerging X over Y often is not enough. Rather, you will have - to carefully benchmark your applications since performance may depend - on many factors, - such as hardware or network. - If you are simply looking for a well performing and well tested - implementation, the reference ebuilds will likely be your best choice. -

- - - -
-
- - -For Users -
-Installing - - -

- If best possible performance is not of paramount importance for you - and you simply need BLAS and/or LAPACK, just emerge the virtual - package: -

- -
-# emerge lapack
-
- -

- This will install both <><> and <><> the reference packages from - http://www.netlib.org/ . They are well tested, easy to debug - implementations. They should satisfy most users; if they're all you need, you're - done reading. -

- -

-However, if: -

- -
    -
  • linear algebra libraries are critical for the speed of your applications
  • -
  • you absolutely need to build the fastest computer
  • -
  • you want to help Gentoo sci project to improve their packages
  • -
- -

-... then read on, and be sure to file bugs both to Gentoo and upstream. -

- -

- There is a number of optimized implementations of these libraries in the Portage - tree: -

- -
    -
  • - ATLAS: Automatically - Tuned Linear Algebra Software is an open-source package that empirically - tunes the library to the machine it is being compiled on. It provides BLAS - (FORTRAN 77 and C), and LAPACK implementations on various architectures. -
  • -
  • - GotoBLAS: - Goto BLAS provides open-source, free for academic use, hand-coded - machine language, processor optimized versions of the FORTRAN 77 - and C BLAS routines. Still claims to be the fastest BLAS. -
  • -
  • - MKL: - Intel® Math Kernel Library is a closed-source but free package for - non-commercial use on Linux systems containing implementations of all the linear - algebra libraries mentioned here. -
  • -
- -

- Usually performance gain is noticeable mainly with BLAS, since LAPACK routines - depend on BLAS kernels. -

- - -
- - -
-Developping with the installed linear algebra libraries - - -

- We took great care to make sure that each package provides - consistent pkg-config files generated by us. - Compiling and linking becomes straightforward: -

- -
-# pkg-config --libs blas    (To link with FORTRAN 77 BLAS library)
-# pkg-config --cflags cblas (To compile against C BLAS library)
-# pkg-config --libs cblas   (To link with C BLAS library)
-# pkg-config --libs scalapack  (To link with the ScaLAPACK library)
-
- -

- pkg-config files are available for all implementations and - various alternatives within implementations. The default names of - the implementations are: blas, cblas, lapack, lapacke, blacs and - scalapack, and they can be chosen with eselect. You can also always compile or link - with an library not selected for the - More information on using pkg-config can be obtained with man pkg-config. -

- - -
-
-Selecting libraries - - -

- You can switch BLAS, CBLAS and LAPACK implementations with - eselect. you can view which implementations of CBLAS - are available. -

- -
-# eselect cblas list
-Installed CBLAS for library directory lib64
-[1]   atlas
-[2]   atlas-threads
-[3]   gsl
-[4]   mkl-threads *
-[5]   reference
-
- -

- The implementation marked with an asterisk (*) is the currently - selected implementation. To switch implementations, run: -

- -
-# eselect blas set atlas-threads
-
- -

- To learn more about the eselect tool, visit the - eselect guide -

- -

- When selecting your linear algebra profiles try to avoid mixing - different implementations since we don't have any mechanism to enforce - reasonable profiles. However, here is a list of well performing - profile combinations that have been used successfully in the past: -

-
    -
  • performant on most CPUs: -
      -
    • blas, cblas: atlas (or atlas-threads with multi-processor)
    • -
    • lapack, lapacke: atlas
    • -
    -
  • -
  • performant on most CPUs: -
      -
    • blas, cblas: goto2
    • -
    • lapack, lapacke: reference
    • -
    -
  • -
  • performant on AMD based CPUs: -
      -
    • cblas: reference
    • -
    -
  • -
  • performant on Intel based CPUs: -
      -
    • blas,cblas,lapack: mkl-threads
    • -
    -
  • -
- - -
- -
-Choosing a compiler - - -

- All the above libraries have been tested with the GNU compiler - collections (gcc, gfortran). - There are many available C compilers and a few FORTRAN (ifort, - Open64) compilers on Gentoo and many other FORTRAN compilers outside - of Gentoo (). -

- -
-# F77=ifort FFLAGS="-O2 -mp1" emerge blas-reference
-
- -

- Depending on your hardware, a small performance gain can be noticed thanks to - vectorization. The -mp flag maintains floating-point precision, since by - default ifort is pretty aggressive on floating point arithmetic, and we are - actually compiling a math package. Try man ifort to see additional flags - to fit your hardware. -

- -

- Some of the implementations let you specify the Intel® C compiler as - well. Please beware that not all libraries compile with all - combinations. You should receive an error during the emerge in case you have - chosen an incompatible combination. -

- -

- As usual for Gentoo, there are many combinations of USE flags and - compilers with which you could compile a package. Unfortunately - switching compilers between BLAS and LAPACK might not be always - compatible. For example: -

- -
-# FC=gfortran FFLAGS="-O2" emerge lapack-reference
-
- -

- This will most likely break things or not even compile. -

- -

- Try to be consistent in your choice. Stay with the GCC most of the time will - avoid you some trouble, unless you want to use the MKL, in which case the Intel - compilers make a good combination. -

- - -
-
-Documentation - - -

- If you need BLAS or LAPACK to develop your own programs, the documentation - becomes pretty handy. Setting the USE="doc" flag for the corresponding BLAS or - LAPACK package will install man pages and quick reference sheets from the - app-doc/blas-docs and app-doc/lapack-docs packages. They are - standard and valid for all implementations. For optimized packages, the - USE="doc" flags will usually install extra doc in PDF or HTML format. -

- - -
-
- - -For ebuild developers -
- -
-Packages with BLAS/LAPACK dependencies - - -

- You need two things: - set [R]DEPEND to virtual/. To build some - packages, you m need to use the pkg-config tool. If you are lucky, the - package uses autotools together with the autoconf <>AX_BLAS and <>AX_LAPACK M4 - macros. In this case, the configuration step becomes simple. For example: -

- -
-econf --with-blas="$(pkg-config --libs blas)"
-
- - -
- - - -Providing new implementations - - -

- The Portage tree contains many ebuilds that depend on the - BLAS/CBLAS/LAPACK/BLACS/ScaLAPACK libraries. As there is more than - one possible implementation, the Gentoo Science Project - reorganized all the packages to provide virtual. All ebuilds using - should depend on this virtual package, unless it is explicitly - known to break with a specific implementation. -

- -

- To work with Gentoo's configuration tools - app-admin/eselect-{blas,cblas,lapack}, and the virtual, every ebuild that - installs a BLAS implementation must fulfill following requirements: -

- -
    -
  1. - The ebuild must install an eselect file for each profile it provides. The - libraries should link to the ones in /usr/$(get_libdir) - directories and the include files in /usr/include: -
      -
    • - libblas.so[.0] - Shared object for FORTRAN BLAS - applications -
    • -
    • - libblas.a - Static library for FORTRAN BLAS applications -
    • -
    • - libcblas.so[.0] - Shared object for C/C++ CBLAS applications -
    • -
    • - libcblas.a - Static library for C/C++ CBLAS applications -
    • -
    • cblas.h - Include header for C/C++ applications
    • -
    • - liblapack.so[.0] - Shared object for FORTRAN LAPACK - applications -
    • -
    • - liblapack.a - Static library for FORTRAN LAPACK applications -
    • -
    -
  2. -
  3. - The ebuild must install a blas.pc, cblas.pc and/or - lapack.pc pkg-config file and therefore RDEPEND on - dev-util/pkgconfig. They should also be included in the eselect - files, and link to the /usr/$(get_libdir)/pkgconfig directory: -
      -
    • blas.pc - BLAS pkg-config file
    • -
    • cblas.pc - CBLAS pkg-config file
    • -
    • lapack.pc - LAPACK pkg-config file
    • -
    -
  4. -
  5. Be included in the virtual package as a possible provider: -
      -
    • virtual/blas - BLAS virtual package
    • -
    • virtual/cblas - CBLAS virtual package
    • -
    • virtual/lapack - LAPACK virtual package
    • -
    -
  6. -
- -

- The easiest way of understanding all this is probably getting inspiration from - one of the available packages. Currently the Portage tree provide the following - virtual packages: -

- - - - - - - - - - - - - sci-libs/atlas - * - * - * - * - - - - - sci-libs/gotoblas2 - * - * - - - - - - - sci-libs/blas-reference - * - - - - - - - - sci-libs/cblas-reference - - * - - - - - - - sci-libs/gsl - - * - - - - - - - sci-libs/lapack-reference - - - * - - - - - - sci-libs/mkl - * - * - * - * - * - * - -
Package namevirtual/blasvirtual/cblasvirtual/lapackvirtual/lapackevirtual/blacsvirtual/scalapack
- - -
- -
- - -Benchmarks -
- - -

- If you feel inclined to write an ebuild for these, you - are more than welcomed to file it on our Bugzilla. -

- - -
-
- -
diff --git a/profiles/package.mask b/profiles/package.mask index 9f3e2465b..ce89ca929 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -42,7 +42,3 @@ sci-biology/samri =sci-biology/afni-19.0.21 =sci-biology/afni-18.1.04 -# Sebastien Fabbro (23 Aug 2011) -# mask old blas from main tree to allow smoother transition to -# new blas/lapack framework -=sci-libs/blas-reference-20070226* diff --git a/sci-libs/blas-reference/Manifest b/sci-libs/blas-reference/Manifest deleted file mode 100644 index b2a69b1f8..000000000 --- a/sci-libs/blas-reference/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST lapack-3.7.0.tgz 7359812 BLAKE2B 20aa42e22d8c920d1360afe41ceec7b36f6cd5fbe43ca9d7848ef7cc45a64a0314cb1321941c1a7c03654f41e28ec805445882ded0ca0ea07674e70b66cba6b5 SHA512 e4f4c7d0ba8a096eeb813160c6dbcdd535647df6b2ad5beac9181908158956b31d1a9554ec9b9836fd44fe7404c1f377b297cbb20d744f20d70e357fd246c91b -DIST lapack-3.8.0.tar.gz 7426094 BLAKE2B 27cd75eea498250382b2df6f5d7dc95fdee8d37b1a0faba5296ca0145ec40a1165a4ecc727aa1647086be6783b50cf475f79cea0f30f541da789051db99b2f37 SHA512 17786cb7306fccdc9b4a242de7f64fc261ebe6a10b6ec55f519deb4cb673cb137e8742aa5698fd2dc52f1cd56d3bd116af3f593a01dcf6770c4dcc86c50b2a7f diff --git a/sci-libs/blas-reference/blas-reference-20161223-r100.ebuild b/sci-libs/blas-reference/blas-reference-20161223-r100.ebuild deleted file mode 100644 index 596d49844..000000000 --- a/sci-libs/blas-reference/blas-reference-20161223-r100.ebuild +++ /dev/null @@ -1,110 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -NUMERIC_MODULE_NAME="refblas" - -inherit alternatives-2 cmake-utils eutils fortran-2 numeric-int64-multibuild python-any-r1 toolchain-funcs - -LPN=lapack -LPV=3.7.0 - -DESCRIPTION="Reference implementation of BLAS" -HOMEPAGE="http://www.netlib.org/lapack/" -SRC_URI="http://www.netlib.org/${LPN}/${LPN}-${LPV}.tgz" - -LICENSE="BSD" -SLOT="0/${LPV}" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="static-libs test" - -REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND="" -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) - virtual/pkgconfig" - -S="${WORKDIR}/${LPN}-${LPV}" -PATCHES=( "${FILESDIR}/lapack-reference-${LPV}-fix-build-system.patch" ) - -src_prepare() { - default - - # rename library to avoid collision with other blas implementations - # ${LIBNAME} and ${PROFNAME} are not defined here, they are in single - # quotes in the following seds. They are later set by defining cmake - # variables with -DPROFNAME etc in src_configure - sed -i \ - -e 's:\([^xc]\)blas:\1${LIBNAME}:g' \ - -e '/PROPERTIES/s:blas:${LIBNAME}:g' \ - CMakeLists.txt \ - BLAS/SRC/CMakeLists.txt || die - sed -i \ - -e '/Name: /s:blas:@PROFNAME@:' \ - -e 's:-lblas:-l@LIBNAME@:g' \ - BLAS/blas.pc.in || die - sed -i \ - -e 's:blas):${LIBNAME}):' \ - BLAS/TESTING/CMakeLists.txt || die - sed -i \ - -e 's:BINARY_DIR}/blas:BINARY_DIR}/${PROFNAME}:' \ - BLAS/CMakeLists.txt || die -} - -src_configure() { - blas_configure() { - local FCFLAGS="${FCFLAGS}" - append-fflags $($(tc-getPKG_CONFIG) --cflags ${blas_profname}) - append-fflags $(get_abi_CFLAGS) - append-fflags $(numeric-int64_get_fortran_int64_abi_fflags) - - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - - local mycmakeargs=( - -Wno-dev - -DPROFNAME="${profname}" - -DLIBNAME="${libname}" - -DUSE_OPTIMIZED_BLAS=OFF - -DCMAKE_Fortran_FLAGS="${FCFLAGS}" - -DLAPACK_PKGCONFIG_FFLAGS="$(numeric-int64_get_fortran_int64_abi_fflags)" - -DBUILD_TESTING="$(usex test)" - ) - if $(numeric-int64_is_static_build); then - mycmakeargs+=( - -DBUILD_SHARED_LIBS=OFF - -DBUILD_STATIC_LIBS=ON - ) - else - mycmakeargs+=( - -DBUILD_SHARED_LIBS=ON - -DBUILD_STATIC_LIBS=OFF - ) - fi - cmake-utils_src_configure - } - numeric-int64-multibuild_foreach_all_abi_variants blas_configure -} - -src_compile() { - local each target_dirs=( BLAS ) - use test && target_dirs+=( TESTING ) - for each in ${target_dirs[@]}; do - numeric-int64-multibuild_foreach_all_abi_variants \ - cmake-utils_src_compile -C ${each} - done - -} - -src_test() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_test -} - -src_install() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_install -C BLAS - numeric-int64-multibuild_install_alternative blas reference -} diff --git a/sci-libs/blas-reference/blas-reference-20171112-r100.ebuild b/sci-libs/blas-reference/blas-reference-20171112-r100.ebuild deleted file mode 100644 index 72bcfd5f3..000000000 --- a/sci-libs/blas-reference/blas-reference-20171112-r100.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -NUMERIC_MODULE_NAME="refblas" - -inherit alternatives-2 cmake-utils eutils fortran-2 numeric-int64-multibuild python-any-r1 toolchain-funcs - -LPN=lapack -LPV=3.8.0 - -DESCRIPTION="Reference implementation of BLAS" -HOMEPAGE="http://www.netlib.org/lapack/" -SRC_URI="http://www.netlib.org/${LPN}/${LPN}-${LPV}.tar.gz" - -LICENSE="BSD" -SLOT="0/${LPV}" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="static-libs test" - -REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND="" -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) - virtual/pkgconfig" - -S="${WORKDIR}/${LPN}-${LPV}" - -src_prepare() { - cmake-utils_src_prepare - - # rename library to avoid collision with other blas implementations - # ${LIBNAME} and ${PROFNAME} are not defined here, they are in single - # quotes in the following seds. They are later set by defining cmake - # variables with -DPROFNAME etc in src_configure - sed -i \ - -e 's:\([^xc]\)blas:\1${LIBNAME}:g' \ - -e '/PROPERTIES/s:blas:${LIBNAME}:g' \ - CMakeLists.txt \ - BLAS/SRC/CMakeLists.txt || die - sed -i \ - -e '/Name: /s:blas:@PROFNAME@:' \ - -e 's:-lblas:-l@LIBNAME@:g' \ - BLAS/blas.pc.in || die - sed -i \ - -e 's:blas):${LIBNAME}):' \ - BLAS/TESTING/CMakeLists.txt || die - sed -i \ - -e 's:BINARY_DIR}/blas:BINARY_DIR}/${PROFNAME}:' \ - BLAS/CMakeLists.txt || die -} - -src_configure() { - blas_configure() { - local FCFLAGS="${FCFLAGS}" - append-fflags $($(tc-getPKG_CONFIG) --cflags ${blas_profname}) - append-fflags $(get_abi_CFLAGS) - append-fflags $(numeric-int64_get_fortran_int64_abi_fflags) - - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - - local mycmakeargs=( - -Wno-dev - -DPROFNAME="${profname}" - -DLIBNAME="${libname}" - -DUSE_OPTIMIZED_BLAS=OFF - -DCMAKE_Fortran_FLAGS="${FCFLAGS}" - -DLAPACK_PKGCONFIG_FFLAGS="$(numeric-int64_get_fortran_int64_abi_fflags)" - -DBUILD_TESTING="$(usex test)" - ) - if $(numeric-int64_is_static_build); then - mycmakeargs+=( - -DBUILD_SHARED_LIBS=OFF - -DBUILD_STATIC_LIBS=ON - ) - else - mycmakeargs+=( - -DBUILD_SHARED_LIBS=ON - -DBUILD_STATIC_LIBS=OFF - ) - fi - cmake-utils_src_configure - } - numeric-int64-multibuild_foreach_all_abi_variants blas_configure -} - -src_compile() { - local each target_dirs=( BLAS ) - use test && target_dirs+=( TESTING ) - for each in ${target_dirs[@]}; do - numeric-int64-multibuild_foreach_all_abi_variants \ - cmake-utils_src_compile -C ${each} - done - -} - -src_test() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_test -} - -src_install() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_install -C BLAS - numeric-int64-multibuild_install_alternative blas reference -} diff --git a/sci-libs/blas-reference/blas-reference-99999999.ebuild b/sci-libs/blas-reference/blas-reference-99999999.ebuild deleted file mode 100644 index 71b81ca97..000000000 --- a/sci-libs/blas-reference/blas-reference-99999999.ebuild +++ /dev/null @@ -1,108 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -NUMERIC_MODULE_NAME="refblas" - -inherit alternatives-2 cmake-utils fortran-2 numeric-int64-multibuild python-any-r1 toolchain-funcs subversion - -LPN=lapack -LPV=3.8.0 - -DESCRIPTION="Reference implementation of BLAS" -HOMEPAGE="http://www.netlib.org/lapack/" -ESVN_REPO_URI="https://icl.cs.utk.edu/svn/lapack-dev/${LPN}/trunk" - -LICENSE="BSD" -SLOT="0/${LPV}" -KEYWORDS="" -IUSE="static-libs test" - -REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND="" -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) - virtual/pkgconfig" - -S="${WORKDIR}/${LPN}-${LPV}" - -src_prepare() { - cmake-utils_src_prepare - # rename library to avoid collision with other blas implementations - # ${LIBNAME} and ${PROFNAME} are not defined here, they are in single - # quotes in the following seds. They are later set by defining cmake - # variables with -DPROFNAME etc in src_configure - sed -i \ - -e 's:\([^xc]\)blas:\1${LIBNAME}:g' \ - -e '/PROPERTIES/s:blas:${LIBNAME}:g' \ - CMakeLists.txt \ - BLAS/SRC/CMakeLists.txt || die - sed -i \ - -e '/Name: /s:blas:${PROFNAME}:' \ - -e 's:-lblas:-l${LIBNAME}:g' \ - BLAS/blas.pc.in || die - sed -i \ - -e 's:blas):${LIBNAME}):' \ - BLAS/TESTING/CMakeLists.txt || die - sed -i \ - -e 's:BINARY_DIR}/blas:BINARY_DIR}/${PROFNAME}:' \ - BLAS/CMakeLists.txt || die -} - -src_configure() { - blas_configure() { - local FCFLAGS="${FCFLAGS}" - append-fflags $($(tc-getPKG_CONFIG) --cflags ${blas_profname}) - append-fflags $(get_abi_CFLAGS) - append-fflags $(numeric-int64_get_fortran_int64_abi_fflags) - - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - - local mycmakeargs=( - -Wno-dev - -DPROFNAME="${profname}" - -DLIBNAME="${libname}" - -DUSE_OPTIMIZED_BLAS=OFF - -DCMAKE_Fortran_FLAGS="${FCFLAGS}" - -DLAPACK_PKGCONFIG_FFLAGS="$(numeric-int64_get_fortran_int64_abi_fflags)" - $(cmake-utils_use_build test TESTING) - ) - if $(numeric-int64_is_static_build); then - mycmakeargs+=( - -DBUILD_SHARED_LIBS=OFF - -DBUILD_STATIC_LIBS=ON - ) - else - mycmakeargs+=( - -DBUILD_SHARED_LIBS=ON - -DBUILD_STATIC_LIBS=OFF - ) - fi - cmake-utils_src_configure - } - numeric-int64-multibuild_foreach_all_abi_variants blas_configure -} - -src_compile() { - local each target_dirs=( BLAS ) - use test && target_dirs+=( TESTING ) - for each in ${target_dirs[@]}; do - numeric-int64-multibuild_foreach_all_abi_variants \ - cmake-utils_src_compile -C ${each} - done - -} - -src_test() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_test -} - -src_install() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_install -C BLAS - numeric-int64-multibuild_install_alternative blas reference -} diff --git a/sci-libs/blas-reference/files/lapack-fix-build-system.patch b/sci-libs/blas-reference/files/lapack-fix-build-system.patch deleted file mode 100644 index 8661709d3..000000000 --- a/sci-libs/blas-reference/files/lapack-fix-build-system.patch +++ /dev/null @@ -1,92 +0,0 @@ ---- lapack-3.6.0/BLAS/blas.pc.in -+++ lapack-3.6.0/BLAS/blas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: blas - Description: Basic Linear Algebra Subprograms F77 reference implementations ---- lapack-3.6.0/BLAS/CMakeLists.txt -+++ lapack-3.6.0/BLAS/CMakeLists.txt -@@ -2,7 +2,7 @@ - if(BUILD_TESTING) - add_subdirectory(TESTING) - endif(BUILD_TESTING) --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/blas.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/CBLAS/cblas.pc.in -+++ lapack-3.6.0/CBLAS/cblas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to BLAS Linear Algebra PACKage ---- lapack-3.6.0/CBLAS/CMakeLists.txt -+++ lapack-3.6.0/CBLAS/CMakeLists.txt -@@ -71,7 +71,7 @@ - ${LAPACK_BINARY_DIR}/cblas-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/CMakeLists.txt -+++ lapack-3.6.0/CMakeLists.txt -@@ -333,7 +333,7 @@ - ${LAPACK_BINARY_DIR}/lapack-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/LAPACKE/CMakeLists.txt -+++ lapack-3.6.0/LAPACKE/CMakeLists.txt -@@ -65,7 +65,7 @@ - endif(BUILD_TESTING) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/LAPACKE/lapacke.pc.in -+++ lapack-3.6.0/LAPACKE/lapacke.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to LAPACK Linear Algebra PACKage ---- lapack-3.6.0/lapack.pc.in -+++ lapack-3.6.0/lapack.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapack - Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage diff --git a/sci-libs/blas-reference/files/lapack-reference-3.7.0-fix-build-system.patch b/sci-libs/blas-reference/files/lapack-reference-3.7.0-fix-build-system.patch deleted file mode 100644 index 70f7cb0ee..000000000 --- a/sci-libs/blas-reference/files/lapack-reference-3.7.0-fix-build-system.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff --git a/BLAS/blas.pc.in b/BLAS/blas.pc.in -index 7fd6f1e..e52f3ad 100644 ---- a/BLAS/blas.pc.in -+++ b/BLAS/blas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: BLAS - Description: FORTRAN reference implementation of BLAS Basic Linear Algebra Subprograms -diff --git a/CBLAS/cblas.pc.in b/CBLAS/cblas.pc.in -index 4a938fe..311aed9 100644 ---- a/CBLAS/cblas.pc.in -+++ b/CBLAS/cblas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: CBLAS - Description: C Standard Interface to BLAS Basic Linear Algebra Subprograms -diff --git a/LAPACKE/lapacke.pc.in b/LAPACKE/lapacke.pc.in -index 028f8da..dc092b1 100644 ---- a/LAPACKE/lapacke.pc.in -+++ b/LAPACKE/lapacke.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: LAPACKE - Description: C Standard Interface to LAPACK Linear Algebra PACKage -diff --git a/lapack.pc.in b/lapack.pc.in -index 878efc2..2cca4c2 100644 ---- a/lapack.pc.in -+++ b/lapack.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: LAPACK - Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage diff --git a/sci-libs/blas-reference/metadata.xml b/sci-libs/blas-reference/metadata.xml deleted file mode 100644 index 17dbcb54a..000000000 --- a/sci-libs/blas-reference/metadata.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - sci@gentoo.org - Gentoo Science Project - - -The BLAS (Basic Linear Algebra Subprograms) are high quality "building -block" routines for performing basic vector and matrix operations. Level 1 -BLAS do vector-vector operations, Level 2 BLAS do matrix-vector operations, -and Level 3 BLAS do matrix-matrix operations. Because the BLAS are -efficient, portable, and widely available, they're commonly used in the -development of high quality linear algebra software, LAPACK for -example. This packages implements the reference FORTRAN 77 library. - - - Build the 64 bits integer library - - diff --git a/sci-libs/cblas-reference/Manifest b/sci-libs/cblas-reference/Manifest deleted file mode 100644 index c1cefc8c3..000000000 --- a/sci-libs/cblas-reference/Manifest +++ /dev/null @@ -1,3 +0,0 @@ -DIST cblas-reference-20110218.tgz 197468 BLAKE2B 8c9aefae422e7beac3ef433f121a152a7669345d0438b76d9bf8278f2a9b22ca29e01f5dbcb816b3f2759979a07d4883834037ba46a3b1d90f734989a5b57f4e SHA512 1c64e6814529cd716890504d213e8cd90150348b9105e8da030718383241a5660d145a14f26e20d27b2aea72c87a9d46b754c6e48935e168d62842c04ba56401 -DIST lapack-3.6.0.tgz 6792324 BLAKE2B 438f3376b63b38ef0fe70f6becac847816f3a11c01f5ab237dc0d941792ceb54dbd2f8dc22d56286f5dab3499289ed94e67521ea951a98973c9640abc294ad6c SHA512 bc50441d415ef8896dd7626d77c6104184b996e758704366288089f03d4c99d068e33153b0d13305310886017e5d2e716130f812a95cfcad36ef37fe20417ab8 -DIST lapack-3.7.0.tgz 7359812 BLAKE2B 20aa42e22d8c920d1360afe41ceec7b36f6cd5fbe43ca9d7848ef7cc45a64a0314cb1321941c1a7c03654f41e28ec805445882ded0ca0ea07674e70b66cba6b5 SHA512 e4f4c7d0ba8a096eeb813160c6dbcdd535647df6b2ad5beac9181908158956b31d1a9554ec9b9836fd44fe7404c1f377b297cbb20d744f20d70e357fd246c91b diff --git a/sci-libs/cblas-reference/cblas-reference-20110218-r100.ebuild b/sci-libs/cblas-reference/cblas-reference-20110218-r100.ebuild deleted file mode 100644 index 0d44ec5f2..000000000 --- a/sci-libs/cblas-reference/cblas-reference-20110218-r100.ebuild +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -NUMERIC_MODULE_NAME="refcblas" - -inherit alternatives-2 flag-o-matic fortran-2 multilib numeric numeric-int64-multibuild toolchain-funcs versionator - -MYPN="${PN/-reference/}" - -DESCRIPTION="C wrapper interface to the F77 reference BLAS implementation" -HOMEPAGE="http://www.netlib.org/blas/" -SRC_URI="http://www.netlib.org/blas/blast-forum/${MYPN}.tgz -> ${P}.tgz" - -SLOT="0" -LICENSE="public-domain" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="static-libs" - -RDEPEND="virtual/blas" -DEPEND="${RDEPEND} - virtual/pkgconfig" - -S="${WORKDIR}/CBLAS" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/cblas/cblas.h -) - -static_to_shared() { - local libstatic=$1 - shift || die - local libname=$(basename ${libstatic%.a}) - local soname=${libname}$(get_libname $(get_version_component_range 1-2)) - local libdir=$(dirname ${libstatic}) - - einfo "Making ${soname} from ${libstatic}" - if [[ ${CHOST} == *-darwin* ]] ; then - ${LINK:-$(tc-getCC)} ${LDFLAGS} \ - -dynamiclib -install_name "${EPREFIX}"/usr/$(get_libdir)/${soname} \ - -Wl,-all_load -Wl,${libstatic} \ - "$@" -o ${libdir}/${soname} || die "${soname} failed" - else - ${LINK:-$(tc-getCC)} ${LDFLAGS} \ - -shared -Wl,-soname=${soname} \ - -Wl,--whole-archive ${libstatic} -Wl,--no-whole-archive \ - "$@" -o ${libdir}/${soname} || die "${soname} failed" - if [[ $(get_version_component_count) -gt 1 ]]; then - ln -s ${soname} ${libdir}/${libname}$(get_libname $(get_major_version)) || die - fi - fi - ln -s ${soname} ${libdir}/${libname}$(get_libname) || die -} - -src_prepare() { - numeric-int64_ensure_blas_int_support - find . -name Makefile -exec sed -i \ - -e 's:make:$(MAKE):g' '{}' \; || die - numeric-int64-multibuild_copy_sources -} - -src_configure() { - cblas_configure() { - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - append-cflags -DADD_ - cat > Makefile.in <<-EOF - BLLIB=$($(tc-getPKG_CONFIG) --libs $(numeric-int64_get_blas_alternative)) - FC=$(tc-getFC) $(get_abi_CFLAGS) $(numeric-int64_get_fortran_int64_abi_fflags) - CC=$(tc-getCC) - CBLIB=../lib/lib${libname}.a - LOADER=\$(FC) - ARCH=$(tc-getAR) - ARCHFLAGS=cr - RANLIB=$(tc-getRANLIB) - EOF - } - numeric-int64-multibuild_foreach_all_abi_variants run_in_build_dir cblas_configure -} - -src_compile() { - cblas_src_compile() { - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - emake \ - FFLAGS="${FFLAGS} -fPIC" \ - CFLAGS="${CFLAGS} -fPIC" \ - alllib - static_to_shared lib/lib${libname}.a $($(tc-getPKG_CONFIG) --libs $(numeric-int64_get_blas_alternative)) - if use static-libs; then - emake clean - emake alllib - fi - } - numeric-int64-multibuild_foreach_all_abi_variants run_in_build_dir cblas_src_compile -} - -src_test() { - cblas_src_test () { - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - cd testing || die - emake && emake run - } - numeric-int64-multibuild_foreach_all_abi_variants run_in_build_dir cblas_src_test -} - -src_install() { - cblas_src_install() { - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - # On linux dynamic libraries are of the form .so.${someversion} - # On OS X dynamic libraries are of the form ${someversion}.dylib - if numeric-int64_is_static_build; then - dolib.a lib/lib${libname}.a - else - dolib.so lib/lib${libname}*$(get_libname)* - insinto /usr/include/cblas - doins include/cblas.h - create_pkgconfig \ - --name "${profname}" \ - --libs "-L\${libdir} -l${libname}" \ - --libs-private "-lm" \ - --cflags "-I\${includedir}/cblas $(numeric-int64_get_fortran_int64_abi_fflags)" \ - --requires $(numeric-int64_get_blas_alternative) \ - ${profname} - fi - - if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]]; then - multilib_prepare_wrappers - multilib_check_headers - fi - } - numeric-int64-multibuild_foreach_all_abi_variants run_in_build_dir cblas_src_install - - numeric-int64-multibuild_install_alternative cblas reference /usr/include/cblas.h cblas/cblas.h - - multilib_install_wrappers - - dodoc README - docinto examples - dodoc examples/*.c -} diff --git a/sci-libs/cblas-reference/cblas-reference-20151113-r100.ebuild b/sci-libs/cblas-reference/cblas-reference-20151113-r100.ebuild deleted file mode 100644 index 97b7d012f..000000000 --- a/sci-libs/cblas-reference/cblas-reference-20151113-r100.ebuild +++ /dev/null @@ -1,126 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -PYTHON_COMPAT=( python2_7 ) - -NUMERIC_MODULE_NAME="refcblas" - -inherit alternatives-2 cmake-utils eutils fortran-2 numeric-int64-multibuild python-any-r1 toolchain-funcs - -LPN=lapack -LPV=3.6.0 - -DESCRIPTION="C wrapper interface to the F77 reference BLAS implementation" -HOMEPAGE="http://www.netlib.org/cblas/" -SRC_URI="http://www.netlib.org/${LPN}/${LPN}-${LPV}.tgz" - -LICENSE="BSD" -SLOT="0/${LPV}" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="static-libs test" - -REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND="virtual/blas" -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) - virtual/pkgconfig" - -S="${WORKDIR}/${LPN}-${LPV}" -PATCHES=( "${FILESDIR}/lapack-fix-build-system.patch" ) - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/cblas/cblas.h -) -src_prepare() { - # the lapack(e)/(c)blas build system is somewhat broken - # with respect to its pkg-config files. - epatch "${PATCHES[@]}" - - # rename library to avoid collision with other blas implementations - # ${LIBNAME} and ${PROFNAME} are not defined here, they are in single - # quotes in the following seds. They are later set by defining cmake - # variables with -DPROFNAME etc in src_configure - sed -i \ - -e 's:\([^xc]\)blas:\1${LIBNAME}:g' \ - -e '/ALL_TARGETS/s:cblas):${LIBNAME}):' \ - -e '/_librar/s:cblas:${LIBNAME}:' \ - CMakeLists.txt \ - CBLAS/src/CMakeLists.txt || die - sed -i \ - -e 's:/CMAKE/:/cmake/:g' \ - CBLAS/CMakeLists.txt || die - sed -i \ - -e '/Name: /s:cblas:@PROFNAME@:' \ - -e 's:-lcblas:-l@LIBNAME@:g' \ - CBLAS/cblas.pc.in || die - sed -i \ - -e 's:cblas):${LIBNAME}):' \ - CBLAS/testing/CMakeLists.txt || die - sed -i \ - -e 's:BINARY_DIR}/cblas:BINARY_DIR}/${PROFNAME}:' \ - -e '/CBLAS_INCLUDE/s:include ):include/${PROFNAME} ):g' \ - CBLAS/CMakeLists.txt || die -} - -src_configure() { - cblas_configure() { - local FCFLAGS="${FCFLAGS}" - append-fflags $($(tc-getPKG_CONFIG) --cflags ${blas_profname}) - append-fflags $(get_abi_CFLAGS) - append-fflags $(numeric-int64_get_fortran_int64_abi_fflags) - - local blas_profname=$(numeric-int64_get_blas_alternative) - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - - local mycmakeargs=( - -Wno-dev - -DCBLAS=ON - -DPROFNAME="${profname}" - -DLIBNAME="${libname}" - -DUSE_OPTIMIZED_BLAS=ON - -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${blas_profname})" - -DCMAKE_C_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CFLAGS}" - -DCMAKE_CXX_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CXXFLAGS}" - -DCMAKE_Fortran_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) $(get_abi_CFLAGS) $(numeric-int64_get_fortran_int64_abi_fflags) ${FCFLAGS}" - -DLAPACK_PKGCONFIG_FFLAGS="$(numeric-int64_get_fortran_int64_abi_fflags)" - $(cmake-utils_use_build test TESTING) - ) - if $(numeric-int64_is_static_build); then - mycmakeargs+=( - -DBUILD_SHARED_LIBS=OFF - -DBUILD_STATIC_LIBS=ON - ) - else - mycmakeargs+=( - -DBUILD_SHARED_LIBS=ON - -DBUILD_STATIC_LIBS=OFF - ) - fi - cmake-utils_src_configure - } - numeric-int64-multibuild_foreach_all_abi_variants cblas_configure -} - -src_compile() { - local each target_dirs=( CBLAS ) - use test && target_dirs+=( testing ) - for each in ${target_dirs[@]}; do - numeric-int64-multibuild_foreach_all_abi_variants \ - cmake-utils_src_compile -C ${each} - done - -} - -src_test() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_test -} - -src_install() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_install -C CBLAS - numeric-int64-multibuild_install_alternative cblas reference /usr/include/cblas.h refcblas/cblas.h - multilib_install_wrappers -} diff --git a/sci-libs/cblas-reference/cblas-reference-20161223-r101.ebuild b/sci-libs/cblas-reference/cblas-reference-20161223-r101.ebuild deleted file mode 100644 index 152e56324..000000000 --- a/sci-libs/cblas-reference/cblas-reference-20161223-r101.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -NUMERIC_MODULE_NAME="refcblas" - -inherit alternatives-2 cmake-utils eutils fortran-2 numeric-int64-multibuild python-any-r1 toolchain-funcs - -LPN=lapack -LPV=3.7.0 - -DESCRIPTION="C wrapper interface to the F77 reference BLAS implementation" -HOMEPAGE="http://www.netlib.org/cblas/" -SRC_URI="http://www.netlib.org/${LPN}/${LPN}-${LPV}.tgz" - -LICENSE="BSD" -SLOT="0/${LPV}" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="static-libs test" - -REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND="virtual/blas" -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) - virtual/pkgconfig" - -S="${WORKDIR}/${LPN}-${LPV}" -PATCHES=( "${FILESDIR}/lapack-reference-${LPV}-fix-build-system.patch" ) - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/cblas/cblas.h -) - -src_prepare() { - cmake-utils_src_prepare - - # rename library to avoid collision with other blas implementations - # ${LIBNAME} and ${PROFNAME} are not defined here, they are in single - # quotes in the following seds. They are later set by defining cmake - # variables with -DPROFNAME etc in src_configure - sed -i \ - -e 's:\([^xc]\)blas:\1${LIBNAME}:g' \ - -e '/ALL_TARGETS/s:cblas):${LIBNAME}):' \ - -e '/_librar/s:cblas:${LIBNAME}:' \ - CMakeLists.txt \ - CBLAS/src/CMakeLists.txt || die - sed -i \ - -e 's:/CMAKE/:/cmake/:g' \ - CBLAS/CMakeLists.txt || die - sed -i \ - -e '/Name: /s:cblas:@PROFNAME@:' \ - -e 's:-lcblas:-l@LIBNAME@:g' \ - CBLAS/cblas.pc.in || die - sed -i \ - -e 's:cblas):${LIBNAME}):' \ - CBLAS/testing/CMakeLists.txt || die - sed -i \ - -e 's:BINARY_DIR}/cblas:BINARY_DIR}/${PROFNAME}:' \ - -e '/install/s:include):include/${PROFNAME}):g' \ - CBLAS/CMakeLists.txt || die -} - -src_configure() { - cblas_configure() { - local FCFLAGS="${FCFLAGS}" - append-fflags $($(tc-getPKG_CONFIG) --cflags ${blas_profname}) - append-fflags $(get_abi_CFLAGS) - append-fflags $(numeric-int64_get_fortran_int64_abi_fflags) - - local blas_profname=$(numeric-int64_get_blas_alternative) - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - - local mycmakeargs=( - -Wno-dev - -DCBLAS=ON - -DPROFNAME="${profname}" - -DLIBNAME="${libname}" - -DUSE_OPTIMIZED_BLAS=ON - -DCMAKE_C_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CFLAGS}" - -DCMAKE_CXX_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CXXFLAGS}" - -DCMAKE_Fortran_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) $(get_abi_CFLAGS) $(numeric-int64_get_fortran_int64_abi_fflags) ${FCFLAGS}" - -DLAPACK_PKGCONFIG_FFLAGS="$(numeric-int64_get_fortran_int64_abi_fflags)" - -DBUILD_TESTING=$(usex test) - ) - if $(numeric-int64_is_static_build); then - mycmakeargs+=( - -DBUILD_SHARED_LIBS=OFF - -DBUILD_STATIC_LIBS=ON - ) - else - mycmakeargs+=( - -DBUILD_SHARED_LIBS=ON - -DBUILD_STATIC_LIBS=OFF - ) - fi - cmake-utils_src_configure - } - numeric-int64-multibuild_foreach_all_abi_variants cblas_configure -} - -src_compile() { - local each target_dirs=( CBLAS ) - use test && target_dirs+=( testing ) - for each in ${target_dirs[@]}; do - numeric-int64-multibuild_foreach_all_abi_variants \ - cmake-utils_src_compile -C ${each} - done - -} - -src_test() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_test -} - -src_install() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_install -C CBLAS - numeric-int64-multibuild_install_alternative cblas reference /usr/include/cblas.h refcblas/cblas.h - multilib_install_wrappers -} diff --git a/sci-libs/cblas-reference/files/lapack-fix-build-system.patch b/sci-libs/cblas-reference/files/lapack-fix-build-system.patch deleted file mode 100644 index a187dac21..000000000 --- a/sci-libs/cblas-reference/files/lapack-fix-build-system.patch +++ /dev/null @@ -1,124 +0,0 @@ - BLAS/CMakeLists.txt | 2 +- - BLAS/blas.pc.in | 6 ++++-- - CBLAS/CMakeLists.txt | 2 +- - CBLAS/cblas.pc.in | 9 ++++++--- - CMakeLists.txt | 2 +- - LAPACKE/CMakeLists.txt | 2 +- - LAPACKE/lapacke.pc.in | 6 ++++-- - lapack.pc.in | 6 ++++-- - 8 files changed, 22 insertions(+), 13 deletions(-) - -diff --git a/BLAS/CMakeLists.txt b/BLAS/CMakeLists.txt -index 45e68e9..56c8354 100644 ---- a/BLAS/CMakeLists.txt -+++ b/BLAS/CMakeLists.txt -@@ -2,7 +2,7 @@ add_subdirectory(SRC) - if(BUILD_TESTING) - add_subdirectory(TESTING) - endif(BUILD_TESTING) --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/blas.pc - DESTINATION ${PKG_CONFIG_DIR} -diff --git a/BLAS/blas.pc.in b/BLAS/blas.pc.in -index 845a25c..7a53ea5 100644 ---- a/BLAS/blas.pc.in -+++ b/BLAS/blas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: blas - Description: Basic Linear Algebra Subprograms F77 reference implementations -diff --git a/CBLAS/CMakeLists.txt b/CBLAS/CMakeLists.txt -index 98b481f..8f98b04 100644 ---- a/CBLAS/CMakeLists.txt -+++ b/CBLAS/CMakeLists.txt -@@ -71,7 +71,7 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CMAKE/cblas-config-build.cmake.in - ${LAPACK_BINARY_DIR}/cblas-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc - DESTINATION ${PKG_CONFIG_DIR} -diff --git a/CBLAS/cblas.pc.in b/CBLAS/cblas.pc.in -index ee20206..14a141e 100644 ---- a/CBLAS/cblas.pc.in -+++ b/CBLAS/cblas.pc.in -@@ -1,9 +1,12 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include/@PROFNAME@ - --Name: lapacke -+Name: cblas-reference - Description: C Standard Interface to BLAS Linear Algebra PACKage - Version: @LAPACK_VERSION@ - URL: http://www.netlib.org/lapack/ - Libs: -L${libdir} -lcblas -+Cflags: -I${includedir} - Requires: blas -diff --git a/CMakeLists.txt b/CMakeLists.txt -index ab29bd2..31b878a 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -333,7 +333,7 @@ configure_file(${LAPACK_SOURCE_DIR}/CMAKE/lapack-config-build.cmake.in - ${LAPACK_BINARY_DIR}/lapack-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc - DESTINATION ${PKG_CONFIG_DIR} -diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt -index 008f24c..d8c4cb0 100644 ---- a/LAPACKE/CMakeLists.txt -+++ b/LAPACKE/CMakeLists.txt -@@ -65,7 +65,7 @@ if(BUILD_TESTING) - endif(BUILD_TESTING) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc - DESTINATION ${PKG_CONFIG_DIR} -diff --git a/LAPACKE/lapacke.pc.in b/LAPACKE/lapacke.pc.in -index 75e6871..ce5201b 100644 ---- a/LAPACKE/lapacke.pc.in -+++ b/LAPACKE/lapacke.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to LAPACK Linear Algebra PACKage -diff --git a/lapack.pc.in b/lapack.pc.in -index d34c870..0d0750f 100644 ---- a/lapack.pc.in -+++ b/lapack.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapack - Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage diff --git a/sci-libs/cblas-reference/files/lapack-reference-3.7.0-fix-build-system.patch b/sci-libs/cblas-reference/files/lapack-reference-3.7.0-fix-build-system.patch deleted file mode 100644 index 40f3aaa02..000000000 --- a/sci-libs/cblas-reference/files/lapack-reference-3.7.0-fix-build-system.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff --git a/BLAS/blas.pc.in b/BLAS/blas.pc.in -index 7fd6f1e..e52f3ad 100644 ---- a/BLAS/blas.pc.in -+++ b/BLAS/blas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: BLAS - Description: FORTRAN reference implementation of BLAS Basic Linear Algebra Subprograms -diff --git a/CBLAS/cblas.pc.in b/CBLAS/cblas.pc.in -index 4a938fe..269a254 100644 ---- a/CBLAS/cblas.pc.in -+++ b/CBLAS/cblas.pc.in -@@ -1,9 +1,12 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include/@PROFNAME@ - - Name: CBLAS - Description: C Standard Interface to BLAS Basic Linear Algebra Subprograms - Version: @LAPACK_VERSION@ - URL: http://www.netlib.org/blas/#_cblas -+Cflags: -I${includedir} - Libs: -L${libdir} -lcblas - Requires: blas -diff --git a/LAPACKE/lapacke.pc.in b/LAPACKE/lapacke.pc.in -index 028f8da..dc092b1 100644 ---- a/LAPACKE/lapacke.pc.in -+++ b/LAPACKE/lapacke.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: LAPACKE - Description: C Standard Interface to LAPACK Linear Algebra PACKage -diff --git a/lapack.pc.in b/lapack.pc.in -index 878efc2..2cca4c2 100644 ---- a/lapack.pc.in -+++ b/lapack.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: LAPACK - Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage diff --git a/sci-libs/cblas-reference/metadata.xml b/sci-libs/cblas-reference/metadata.xml deleted file mode 100644 index eb9d2972b..000000000 --- a/sci-libs/cblas-reference/metadata.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - sci@gentoo.org - Gentoo Science Project - - -The BLAS (Basic Linear Algebra Subprograms) are high quality "building -block" routines for performing basic vector and matrix operations. Level 1 -BLAS do vector-vector operations, Level 2 BLAS do matrix-vector operations, -and Level 3 BLAS do matrix-matrix operations. Because the BLAS are -efficient, portable, and widely available, they're commonly used in the -development of high quality linear algebra software, LAPACK for -example. This packages implements the reference C library as a wrapper -to the FORTRAN 77 BLAS library. - - - Build the 64 bits integer library - - diff --git a/sci-libs/lapack-reference/Manifest b/sci-libs/lapack-reference/Manifest deleted file mode 100644 index b2a69b1f8..000000000 --- a/sci-libs/lapack-reference/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST lapack-3.7.0.tgz 7359812 BLAKE2B 20aa42e22d8c920d1360afe41ceec7b36f6cd5fbe43ca9d7848ef7cc45a64a0314cb1321941c1a7c03654f41e28ec805445882ded0ca0ea07674e70b66cba6b5 SHA512 e4f4c7d0ba8a096eeb813160c6dbcdd535647df6b2ad5beac9181908158956b31d1a9554ec9b9836fd44fe7404c1f377b297cbb20d744f20d70e357fd246c91b -DIST lapack-3.8.0.tar.gz 7426094 BLAKE2B 27cd75eea498250382b2df6f5d7dc95fdee8d37b1a0faba5296ca0145ec40a1165a4ecc727aa1647086be6783b50cf475f79cea0f30f541da789051db99b2f37 SHA512 17786cb7306fccdc9b4a242de7f64fc261ebe6a10b6ec55f519deb4cb673cb137e8742aa5698fd2dc52f1cd56d3bd116af3f593a01dcf6770c4dcc86c50b2a7f diff --git a/sci-libs/lapack-reference/files/3.3.1-blas-libs.patch b/sci-libs/lapack-reference/files/3.3.1-blas-libs.patch deleted file mode 100644 index 95a640d86..000000000 --- a/sci-libs/lapack-reference/files/3.3.1-blas-libs.patch +++ /dev/null @@ -1,35 +0,0 @@ -Index: CMakeLists.txt -=================================================================== ---- CMakeLists.txt (revision 975) -+++ CMakeLists.txt (working copy) -@@ -68,24 +68,24 @@ - option(USE_OPTIMIZED_BLAS "Whether or not to use an optimized BLAS library instead of included netlib BLAS" OFF) - - # Check the usage of the user provided BLAS libraries --if(BLAS_LIBRAIRIES) -+if(BLAS_LIBRARIES) - include(CheckFortranFunctionExists) -- set(CMAKE_REQUIRED_LIBRARIES ${BLAS_LIBRAIRIES}) -+ set(CMAKE_REQUIRED_LIBRARIES ${BLAS_LIBRARIES}) - CHECK_FORTRAN_FUNCTION_EXISTS("dgemm" BLAS_FOUND) - unset( CMAKE_REQUIRED_LIBRARIES ) - if(BLAS_FOUND) -- message(STATUS "--> BLAS supplied by user is WORKING, will use ${BLAS_LIBRAIRIES}.") -+ message(STATUS "--> BLAS supplied by user is WORKING, will use ${BLAS_LIBRARIES}.") - else(BLAS_FOUND) -- message(ERROR "--> BLAS supplied by user is not WORKING, CANNOT USE ${BLAS_LIBRAIRIES}.") -+ message(ERROR "--> BLAS supplied by user is not WORKING, CANNOT USE ${BLAS_LIBRARIES}.") - message(ERROR "--> Will use REFERENCE BLAS (by default)") -- message(ERROR "--> Or Correct your BLAS_LIBRAIRIES entry ") -+ message(ERROR "--> Or Correct your BLAS_LIBRARIES entry ") - message(ERROR "--> Or Consider checking USE_OPTIMIZED_BLAS") - endif(BLAS_FOUND) - - # User did not provide a BLAS Library but specified to search for one - elseif( USE_OPTIMIZED_BLAS ) - find_package( BLAS ) --endif (BLAS_LIBRAIRIES) -+endif (BLAS_LIBRARIES) - - # Neither user specified or optimized BLAS libraries can be used - if(NOT BLAS_FOUND) diff --git a/sci-libs/lapack-reference/files/3.3.1-xblas-libs.patch b/sci-libs/lapack-reference/files/3.3.1-xblas-libs.patch deleted file mode 100644 index 382529e12..000000000 --- a/sci-libs/lapack-reference/files/3.3.1-xblas-libs.patch +++ /dev/null @@ -1,44 +0,0 @@ -Index: SRC/CMakeLists.txt -=================================================================== ---- SRC/CMakeLists.txt (revision 975) -+++ SRC/CMakeLists.txt (working copy) -@@ -373,7 +373,7 @@ - zla_lin_berr.f zlarscl2.f zlascl2.f zla_wwaddw.f) - - --if( USEXBLAS) -+if( USE_XBLAS) - set(ALLXOBJ ${SXLASRC} ${DXLASRC} ${CXLASRC} ${ZXLASRC} ${ALLXAUX}) - endif() - -@@ -392,5 +392,5 @@ - set(ALLOBJ ${ZLASRC} ${ALLAUX} ${DZLAUX} ${ZCLASRC}) - endif() - add_library(lapack ${ALLOBJ} ${ALLXOBJ}) --target_link_libraries(lapack ${BLAS_LIBRARIES}) -+target_link_libraries(lapack ${BLAS_LIBRARIES} ${XBLAS_LIBRARY}) - lapack_install_library(lapack) -Index: CMakeLists.txt -=================================================================== ---- CMakeLists.txt (revision 975) -+++ CMakeLists.txt (working copy) -@@ -67,6 +67,7 @@ - - option(USE_OPTIMIZED_BLAS "Whether or not to use an optimized BLAS library instead of included netlib BLAS" OFF) - -+ - # Check the usage of the user provided BLAS libraries - if(BLAS_LIBRAIRIES) - include(CheckFortranFunctionExists) -@@ -103,6 +104,11 @@ - "${CMAKE_SHARED_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}" - CACHE STRING "Linker flags for shared libs" FORCE) - endif( NOT BLAS_FOUND ) -+ -+option(USE_XBLAS "Build extended precision (needs XBLAS)" OFF) -+if (USE_XBLAS) -+ find_library(XBLAS_LIBRARY NAMES xblas) -+endif(USE_XBLAS) - - add_subdirectory(SRC) - if(BUILD_TESTING) diff --git a/sci-libs/lapack-reference/files/lapack-3.4.1-cmake.patch b/sci-libs/lapack-reference/files/lapack-3.4.1-cmake.patch deleted file mode 100644 index 78dece8ed..000000000 --- a/sci-libs/lapack-reference/files/lapack-3.4.1-cmake.patch +++ /dev/null @@ -1,208 +0,0 @@ -Index: CMakeLists.txt -=================================================================== ---- CMakeLists.txt (revision 1294) -+++ CMakeLists.txt (working copy) -@@ -94,10 +94,6 @@ - # Precision to build - # By default all precisions are generated - --option(BUILD_SINGLE "Build LAPACK Single Precision" ON) --option(BUILD_DOUBLE "Build LAPACK Double Precision" ON) --option(BUILD_COMPLEX "Build LAPACK Complex Precision" ON) --option(BUILD_COMPLEX16 "Build LAPACK Double Complex Precision" ON) - - # -------------------------------------------------- - # Subdirectories that need to be processed -@@ -147,7 +143,49 @@ - find_library(XBLAS_LIBRARY NAMES xblas) - endif(USE_XBLAS) - --add_subdirectory(SRC) -+option(USE_OPTIMIZED_LAPACK "Whether or not to use an optimized LAPACK library instead of included netlib LAPACK" OFF) -+ -+# Check the usage of the user provided LAPACK libraries -+if(LAPACK_LIBRARIES) -+ include(CheckFortranFunctionExists) -+ set(CMAKE_REQUIRED_LIBRARIES ${LAPACK_LIBRARIES}) -+ CHECK_FORTRAN_FUNCTION_EXISTS("dpotrf" LAPACK_FOUND) -+ unset( CMAKE_REQUIRED_LIBRARIES ) -+ if(LAPACK_FOUND) -+ message(STATUS "--> LAPACK supplied by user is WORKING, will use ${LAPACK_LIBRARIES}.") -+ else(LAPACK_FOUND) -+ message(ERROR "--> LAPACK supplied by user is not WORKING, CANNOT USE $LAPACK_LIBRARIES}.") -+ message(ERROR "--> Will use REFERENCE LAPACK (by default)") -+ message(ERROR "--> Or Correct your LAPACK_LIBRARIES entry ") -+ message(ERROR "--> Or Consider checking USE_OPTIMIZED_LAPACK") -+ endif(LAPACK_FOUND) -+ -+ # User did not provide a LAPACK Library but specified to search for one -+elseif( USE_OPTIMIZED_LAPACK ) -+ find_package( LAPACK ) -+endif (LAPACK_LIBRARIES) -+ -+# Neither user specified or optimized LAPACK libraries can be used -+if(NOT LAPACK_FOUND) -+ message(STATUS "Using supplied NETLIB LAPACK implementation") -+ set( LAPACK_LIBRARIES lapack ) -+ option(BUILD_SINGLE "Build LAPACK Single Precision" ON) -+ option(BUILD_DOUBLE "Build LAPACK Double Precision" ON) -+ option(BUILD_COMPLEX "Build LAPACK Complex Precision" ON) -+ option(BUILD_COMPLEX16 "Build LAPACK Double Complex Precision" ON) -+ add_subdirectory(SRC) -+else() -+ set( CMAKE_EXE_LINKER_FLAGS -+ "${CMAKE_EXE_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}" -+ CACHE STRING "Linker flags for executables" FORCE) -+ set( CMAKE_MODULE_LINKER_FLAGS -+ "${CMAKE_MODULE_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}" -+ CACHE STRING "Linker flags for modules" FORCE) -+ set( CMAKE_SHARED_LINKER_FLAGS -+ "${CMAKE_SHARED_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}" -+ CACHE STRING "Linker flags for shared libs" FORCE) -+endif( NOT LAPACK_FOUND ) -+ - if(BUILD_TESTING) - add_subdirectory(TESTING) - endif(BUILD_TESTING) -@@ -155,6 +193,10 @@ - # -------------------------------------------------- - # LAPACKE - option(LAPACKE "Build LAPACKE" OFF) -+if(LAPACKE) -+ add_subdirectory(lapacke) -+endif(LAPACKE) -+ - # LAPACKE has also the interface to some routines from tmglib, - # if LAPACKE_WITH_TMG is selected, we need to add those routines to LAPACKE - option(LAPACKE_WITH_TMG "Build LAPACKE with tmglib routines" OFF) -@@ -162,9 +204,6 @@ - option(LAPACKE "Build LAPACKE" ON) - endif(LAPACKE_WITH_TMG) - --if(LAPACKE) -- add_subdirectory(lapacke) --endif(LAPACKE) - - # -------------------------------------------------- - # CPACK Packaging -@@ -202,20 +241,24 @@ - OPTION(BUILD_STATIC_LIBS "Build static libraries" ON ) - #OPTION(BUILD_SHARED_LIBS "Build shared libraries" ON ) - --if( NOT BLAS_FOUND ) -- if(LAPACKE) -- export(TARGETS blas lapack tmglib lapacke FILE lapack-targets.cmake) -- else (LAPACKE) -- export(TARGETS blas lapack tmglib FILE lapack-targets.cmake) -- endif(LAPACKE) --else( NOT BLAS_FOUND ) -- if(LAPACKE) -- export(TARGETS lapack tmglib lapacke FILE lapack-targets.cmake) -- else (LAPACKE) -- export(TARGETS lapack tmglib FILE lapack-targets.cmake) -- endif(LAPACKE) --endif( NOT BLAS_FOUND ) -+if(NOT BLAS_FOUND) -+ set(ALL_TARGETS ${ALL_TARGETS} blas) -+endif(NOT BLAS_FOUND) - -+if(NOT LAPACK_FOUND) -+ set(ALL_TARGETS ${ALL_TARGETS} lapack) -+endif(NOT LAPACK_FOUND) -+ -+if(BUILD_TESTING OR LAPACKE_WITH_TMG) -+ set(ALL_TARGETS ${ALL_TARGETS} tmglib) -+endif(BUILD_TESTING OR LAPACKE_WITH_TMG) -+ -+if(LAPACKE) -+ set(ALL_TARGETS ${ALL_TARGETS} lapacke) -+endif(LAPACKE) -+ -+export(TARGETS ${ALL_TARGETS} FILE lapack-targets.cmake) -+ - configure_file(${LAPACK_SOURCE_DIR}/CMAKE/lapack-config-version.cmake.in - ${LAPACK_BINARY_DIR}/lapack-config-version.cmake @ONLY) - configure_file(${LAPACK_SOURCE_DIR}/CMAKE/lapack-config-build.cmake.in -Index: lapacke/example/CMakeLists.txt -=================================================================== ---- lapacke/example/CMakeLists.txt (revision 1294) -+++ lapacke/example/CMakeLists.txt (working copy) -@@ -1,8 +1,8 @@ - add_executable(xexample_DGESV_rowmajor example_DGESV_rowmajor.c) - add_executable(xexample_ZGESV_rowmajor example_ZGESV_rowmajor.c) - --target_link_libraries(xexample_DGESV_rowmajor lapacke lapack ${BLAS_LIBRARIES}) --target_link_libraries(xexample_ZGESV_rowmajor lapacke lapack ${BLAS_LIBRARIES}) -+target_link_libraries(xexample_DGESV_rowmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) -+target_link_libraries(xexample_ZGESV_rowmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) - - add_test(example_DGESV_rowmajor ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample_DGESV_rowmajor) - add_test(example_ZGESV_rowmajor ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample_ZGESV_rowmajor) -Index: lapacke/CMakeLists.txt -=================================================================== ---- lapacke/CMakeLists.txt (revision 1294) -+++ lapacke/CMakeLists.txt (working copy) -@@ -45,14 +45,14 @@ - - if (USE_XBLAS) - add_library(lapacke ${SRC_OBJ} ${SRCX_OBJ} ${UTILS_OBJ}) -- target_link_libraries(lapacke lapack ${BLAS_LIBRARIES} ${XBLAS_LIBRARY}) -+ target_link_libraries(lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES} ${XBLAS_LIBRARY}) - else (USE_XBLAS) - if (LAPACKE_WITH_TMG) - add_library(lapacke ${SRC_OBJ} ${MATGEN_OBJ} ${UTILS_OBJ}) -- target_link_libraries(lapacke tmglib lapack ${BLAS_LIBRARIES} ) -+ target_link_libraries(lapacke tmglib ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) - else (LAPACKE_WITH_TMG) - add_library(lapacke ${SRC_OBJ} ${UTILS_OBJ}) -- target_link_libraries(lapacke lapack ${BLAS_LIBRARIES} ) -+ target_link_libraries(lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES}) - endif(LAPACKE_WITH_TMG) - endif(USE_XBLAS) - -Index: TESTING/LIN/CMakeLists.txt -=================================================================== ---- TESTING/LIN/CMakeLists.txt (revision 1294) -+++ TESTING/LIN/CMakeLists.txt (working copy) -@@ -193,7 +193,7 @@ - - macro(add_lin_executable name ) - add_executable(${name} ${ARGN}) -- target_link_libraries(${name} tmglib lapack) -+ target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES}) - endmacro(add_lin_executable) - - IF(BUILD_SINGLE) -Index: TESTING/EIG/CMakeLists.txt -=================================================================== ---- TESTING/EIG/CMakeLists.txt (revision 1294) -+++ TESTING/EIG/CMakeLists.txt (working copy) -@@ -119,7 +119,7 @@ - - macro(add_eig_executable name ) - add_executable(${name} ${ARGN}) -- target_link_libraries(${name} tmglib lapack ) -+ target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES}) - endmacro(add_eig_executable) - - if (BUILD_SINGLE) -Index: TESTING/MATGEN/CMakeLists.txt -=================================================================== ---- TESTING/MATGEN/CMakeLists.txt (revision 1294) -+++ TESTING/MATGEN/CMakeLists.txt (working copy) -@@ -64,12 +64,12 @@ - set(ALLOBJ ${ALLOBJ} ${ZMATGEN} ${DZATGEN}) - endif() - --list(REMOVE_DUPLICATES ALLOBJ) -- - if (NOT ALLOBJ) - set(ALLOBJ ${SMATGEN} ${CMATGEN} ${SCATGEN} ${DMATGEN} ${ZMATGEN} - ${DZATGEN}) -+else() -+ list(REMOVE_DUPLICATES ALLOBJ) - endif() - add_library(tmglib ${ALLOBJ} ) --target_link_libraries(tmglib lapack) -+target_link_libraries(tmglib ${LAPACK_LIBRARIES}) - lapack_install_library(tmglib) diff --git a/sci-libs/lapack-reference/files/lapack-3.6.1-fix-build-system.patch b/sci-libs/lapack-reference/files/lapack-3.6.1-fix-build-system.patch deleted file mode 100644 index b16cb3e19..000000000 --- a/sci-libs/lapack-reference/files/lapack-3.6.1-fix-build-system.patch +++ /dev/null @@ -1,88 +0,0 @@ ---- lapack-3.6.1/BLAS/blas.pc.in -+++ lapack-3.6.1/BLAS/blas.pc.in -@@ -1,5 +1,7 @@ - prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} - libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: blas - Description: Basic Linear Algebra Subprograms F77 reference implementations ---- lapack-3.6.1/BLAS/CMakeLists.txt -+++ lapack-3.6.1/BLAS/CMakeLists.txt -@@ -2,7 +2,7 @@ - if(BUILD_TESTING) - add_subdirectory(TESTING) - endif(BUILD_TESTING) --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/blas.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.1/CBLAS/cblas.pc.in -+++ lapack-3.6.1/CBLAS/cblas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to BLAS Linear Algebra PACKage ---- lapack-3.6.1/CBLAS/CMakeLists.txt -+++ lapack-3.6.1/CBLAS/CMakeLists.txt -@@ -71,7 +71,7 @@ - ${LAPACK_BINARY_DIR}/cblas-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.1/CMakeLists.txt -+++ lapack-3.6.1/CMakeLists.txt -@@ -333,7 +333,7 @@ - ${LAPACK_BINARY_DIR}/lapack-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.1/LAPACKE/CMakeLists.txt -+++ lapack-3.6.1/LAPACKE/CMakeLists.txt -@@ -65,7 +65,7 @@ - endif(BUILD_TESTING) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.1/LAPACKE/lapacke.pc.in -+++ lapack-3.6.1/LAPACKE/lapacke.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to LAPACK Linear Algebra PACKage ---- lapack-3.6.1/lapack.pc.in -+++ lapack-3.6.1/lapack.pc.in -@@ -1,5 +1,7 @@ - prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} - libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapack - Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage diff --git a/sci-libs/lapack-reference/files/lapack-fix-build-system.patch b/sci-libs/lapack-reference/files/lapack-fix-build-system.patch deleted file mode 100644 index 8661709d3..000000000 --- a/sci-libs/lapack-reference/files/lapack-fix-build-system.patch +++ /dev/null @@ -1,92 +0,0 @@ ---- lapack-3.6.0/BLAS/blas.pc.in -+++ lapack-3.6.0/BLAS/blas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: blas - Description: Basic Linear Algebra Subprograms F77 reference implementations ---- lapack-3.6.0/BLAS/CMakeLists.txt -+++ lapack-3.6.0/BLAS/CMakeLists.txt -@@ -2,7 +2,7 @@ - if(BUILD_TESTING) - add_subdirectory(TESTING) - endif(BUILD_TESTING) --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/blas.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/CBLAS/cblas.pc.in -+++ lapack-3.6.0/CBLAS/cblas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to BLAS Linear Algebra PACKage ---- lapack-3.6.0/CBLAS/CMakeLists.txt -+++ lapack-3.6.0/CBLAS/CMakeLists.txt -@@ -71,7 +71,7 @@ - ${LAPACK_BINARY_DIR}/cblas-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/CMakeLists.txt -+++ lapack-3.6.0/CMakeLists.txt -@@ -333,7 +333,7 @@ - ${LAPACK_BINARY_DIR}/lapack-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/LAPACKE/CMakeLists.txt -+++ lapack-3.6.0/LAPACKE/CMakeLists.txt -@@ -65,7 +65,7 @@ - endif(BUILD_TESTING) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/LAPACKE/lapacke.pc.in -+++ lapack-3.6.0/LAPACKE/lapacke.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to LAPACK Linear Algebra PACKage ---- lapack-3.6.0/lapack.pc.in -+++ lapack-3.6.0/lapack.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapack - Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage diff --git a/sci-libs/lapack-reference/files/lapack-reference-3.7.0-fix-build-system.patch b/sci-libs/lapack-reference/files/lapack-reference-3.7.0-fix-build-system.patch deleted file mode 100644 index 70f7cb0ee..000000000 --- a/sci-libs/lapack-reference/files/lapack-reference-3.7.0-fix-build-system.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff --git a/BLAS/blas.pc.in b/BLAS/blas.pc.in -index 7fd6f1e..e52f3ad 100644 ---- a/BLAS/blas.pc.in -+++ b/BLAS/blas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: BLAS - Description: FORTRAN reference implementation of BLAS Basic Linear Algebra Subprograms -diff --git a/CBLAS/cblas.pc.in b/CBLAS/cblas.pc.in -index 4a938fe..311aed9 100644 ---- a/CBLAS/cblas.pc.in -+++ b/CBLAS/cblas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: CBLAS - Description: C Standard Interface to BLAS Basic Linear Algebra Subprograms -diff --git a/LAPACKE/lapacke.pc.in b/LAPACKE/lapacke.pc.in -index 028f8da..dc092b1 100644 ---- a/LAPACKE/lapacke.pc.in -+++ b/LAPACKE/lapacke.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: LAPACKE - Description: C Standard Interface to LAPACK Linear Algebra PACKage -diff --git a/lapack.pc.in b/lapack.pc.in -index 878efc2..2cca4c2 100644 ---- a/lapack.pc.in -+++ b/lapack.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: LAPACK - Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage diff --git a/sci-libs/lapack-reference/lapack-reference-3.7.0-r100.ebuild b/sci-libs/lapack-reference/lapack-reference-3.7.0-r100.ebuild deleted file mode 100644 index d9378271a..000000000 --- a/sci-libs/lapack-reference/lapack-reference-3.7.0-r100.ebuild +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -NUMERIC_MODULE_NAME="reflapack" - -inherit alternatives-2 cmake-utils eutils fortran-2 numeric-int64-multibuild python-any-r1 - -MY_PN=lapack -MYP=${MY_PN}-${PV} - -DESCRIPTION="Reference implementation of LAPACK" -HOMEPAGE="http://www.netlib.org/lapack/" -SRC_URI="http://www.netlib.org/lapack/${MYP}.tgz" - -LICENSE="BSD" -SLOT="0/${PV}" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="+deprecated static-libs test xblas" - -REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND=" - >=virtual/blas-2.1-r3[int64?,${MULTILIB_USEDEP}] - xblas? ( sci-libs/xblas[fortran,int64?] )" -DEPEND="${RDEPEND} - virtual/pkgconfig - test? ( ${PYTHON_DEPS} )" - -S="${WORKDIR}/${MYP}" -PATCHES=( "${FILESDIR}/lapack-reference-${PV}-fix-build-system.patch" ) - -src_prepare() { - numeric-int64_ensure_blas_int_support - - default - - # rename library to avoid collision with other lapack implementations - # ${PROFNAME}, ${LIBNAME} and ${BLAS_REQUIRES} are not defined here, they - # are in single quotes in the following seds. They are set later by - # defining a cmake variables with -DPROFNAME etc in src_configure. - sed \ - -e 's:BINARY_DIR}/lapack.pc:BINARY_DIR}/${PROFNAME}.pc:' \ - -e '/ALL_TARGETS/s:lapack):${LIBNAME}):' \ - -e '/LAPACK_LIBRARIES/s:lapack:${LIBNAME}:g' \ - -i CMakeLists.txt || die - sed -i \ - -e 's:(lapack:(${LIBNAME}:g' \ - -e '/PROPERTIES/s:lapack:${LIBNAME}:g' \ - SRC/CMakeLists.txt || die - sed -i \ - -e '/Name: /s:lapack:@PROFNAME@:' \ - -e 's:-llapack:-l@LIBNAME@:g' \ - -e '/Requires: /s:blas:@BLAS_REQUIRES@\nFflags\: ${LAPACK_PKGCONFIG_FFLAGS}:' \ - lapack.pc.in || die - # some string does not get passed properly - sed -i \ - -e '/lapack_testing.py/d' \ - CTestCustom.cmake.in || die - # separate ebuild to tmglib - sed -i \ - -e '/lapack_install_library(tmglib)/d' \ - TESTING/MATGEN/CMakeLists.txt || die -} - -src_configure() { - lapack_configure() { - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - local blas_profname=$(numeric-int64_get_blas_alternative) - local xblas_profname=$(numeric-int64_get_xblas_alternative) - local xblas_libname="${xblas_profname//-/_}" - local blas_requires="${blas_profname}" - use xblas && \ - blas_requires+=" ${xblas_profname}" - local mycmakeargs=( - -DPROFNAME="${profname}" - -DBLAS_REQUIRES="${blas_requires}" - -DLIBNAME="${libname}" - -DUSE_OPTIMIZED_BLAS=ON - -DBUILD_TESTING="$(usex test)" - -DUSE_XBLAS="$(usex xblas)" - -DBUILD_DEPRECATED="$(usex deprecated)" - -DCMAKE_C_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CFLAGS}" - -DCMAKE_CXX_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CXXFLAGS}" - -DCMAKE_Fortran_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) $(get_abi_CFLAGS) $(numeric-int64_get_fortran_int64_abi_fflags) ${FCFLAGS}" - -DLAPACK_PKGCONFIG_FFLAGS="$(numeric-int64_get_fortran_int64_abi_fflags)" - ) - use xblas && \ - mycmakeargs+=( -DXBLAS_LIBRARY:FILEPATH="${EROOT}usr/$(get_libdir)/lib${xblas_libname}.so" ) - if $(numeric-int64_is_static_build); then - mycmakeargs+=( - -DBUILD_SHARED_LIBS=OFF - -DBUILD_STATIC_LIBS=ON - ) - else - mycmakeargs+=( - -DBUILD_SHARED_LIBS=ON - -DBUILD_STATIC_LIBS=OFF - ) - fi - cmake-utils_src_configure - } - numeric-int64-multibuild_foreach_all_abi_variants lapack_configure -} - -src_compile() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_compile -} - -src_test() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_test -} - -src_install() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_install - numeric-int64-multibuild_install_alternative lapack reference -} diff --git a/sci-libs/lapack-reference/lapack-reference-3.8.0-r100.ebuild b/sci-libs/lapack-reference/lapack-reference-3.8.0-r100.ebuild deleted file mode 100644 index 32b0cd5db..000000000 --- a/sci-libs/lapack-reference/lapack-reference-3.8.0-r100.ebuild +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -NUMERIC_MODULE_NAME="reflapack" - -inherit alternatives-2 cmake-utils eutils fortran-2 numeric-int64-multibuild python-any-r1 - -MY_PN=lapack -MYP=${MY_PN}-${PV} - -DESCRIPTION="Reference implementation of LAPACK" -HOMEPAGE="http://www.netlib.org/lapack/" -SRC_URI="http://www.netlib.org/lapack/${MYP}.tar.gz" - -LICENSE="BSD" -SLOT="0/${PV}" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="+deprecated static-libs test xblas" - -REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND=" - >=virtual/blas-2.1-r3[int64?,${MULTILIB_USEDEP}] - xblas? ( sci-libs/xblas[fortran,int64?] )" -DEPEND="${RDEPEND} - virtual/pkgconfig - test? ( ${PYTHON_DEPS} )" - -S="${WORKDIR}/${MYP}" - -src_prepare() { - numeric-int64_ensure_blas_int_support - - cmake-utils_src_prepare - - # rename library to avoid collision with other lapack implementations - # ${PROFNAME}, ${LIBNAME} and ${BLAS_REQUIRES} are not defined here, they - # are in single quotes in the following seds. They are set later by - # defining a cmake variables with -DPROFNAME etc in src_configure. - sed \ - -e 's:BINARY_DIR}/lapack.pc:BINARY_DIR}/${PROFNAME}.pc:' \ - -e '/ALL_TARGETS/s:lapack):${LIBNAME}):' \ - -e '/LAPACK_LIBRARIES/s:lapack:${LIBNAME}:g' \ - -i CMakeLists.txt || die - sed -i \ - -e 's:(lapack:(${LIBNAME}:g' \ - -e '/PROPERTIES/s:lapack:${LIBNAME}:g' \ - SRC/CMakeLists.txt || die - sed -i \ - -e '/Name: /s:lapack:@PROFNAME@:' \ - -e 's:-llapack:-l@LIBNAME@:g' \ - -e '/Requires: /s:blas:@BLAS_REQUIRES@\nFflags\: ${LAPACK_PKGCONFIG_FFLAGS}:' \ - lapack.pc.in || die - # some string does not get passed properly - sed -i \ - -e '/lapack_testing.py/d' \ - CTestCustom.cmake.in || die - # separate ebuild to tmglib - sed -i \ - -e '/lapack_install_library(tmglib)/d' \ - TESTING/MATGEN/CMakeLists.txt || die -} - -src_configure() { - lapack_configure() { - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - local blas_profname=$(numeric-int64_get_blas_alternative) - local xblas_profname=$(numeric-int64_get_xblas_alternative) - local xblas_libname="${xblas_profname//-/_}" - local blas_requires="${blas_profname}" - use xblas && \ - blas_requires+=" ${xblas_profname}" - local mycmakeargs=( - -DPROFNAME="${profname}" - -DBLAS_REQUIRES="${blas_requires}" - -DLIBNAME="${libname}" - -DUSE_OPTIMIZED_BLAS=ON - -DBUILD_TESTING="$(usex test)" - -DUSE_XBLAS="$(usex xblas)" - -DBUILD_DEPRECATED="$(usex deprecated)" - -DCMAKE_C_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CFLAGS}" - -DCMAKE_CXX_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CXXFLAGS}" - -DCMAKE_Fortran_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) $(get_abi_CFLAGS) $(numeric-int64_get_fortran_int64_abi_fflags) ${FCFLAGS}" - -DLAPACK_PKGCONFIG_FFLAGS="$(numeric-int64_get_fortran_int64_abi_fflags)" - ) - use xblas && \ - mycmakeargs+=( -DXBLAS_LIBRARY:FILEPATH="${EROOT}usr/$(get_libdir)/lib${xblas_libname}.so" ) - if $(numeric-int64_is_static_build); then - mycmakeargs+=( - -DBUILD_SHARED_LIBS=OFF - -DBUILD_STATIC_LIBS=ON - ) - else - mycmakeargs+=( - -DBUILD_SHARED_LIBS=ON - -DBUILD_STATIC_LIBS=OFF - ) - fi - cmake-utils_src_configure - } - numeric-int64-multibuild_foreach_all_abi_variants lapack_configure -} - -src_compile() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_compile -} - -src_test() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_test -} - -src_install() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_install - numeric-int64-multibuild_install_alternative lapack reference -} diff --git a/sci-libs/lapack-reference/lapack-reference-9999.ebuild b/sci-libs/lapack-reference/lapack-reference-9999.ebuild deleted file mode 100644 index a22d2d722..000000000 --- a/sci-libs/lapack-reference/lapack-reference-9999.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -NUMERIC_MODULE_NAME="reflapack" - -inherit alternatives-2 cmake-utils fortran-2 git-r3 numeric-int64-multibuild python-any-r1 - -# The master ESVN_REPO_URI is difficult to access, the git mirror is easier -# ESVN_REPO_URI="https://icl.cs.utk.edu/svn/lapack-dev/lapack/trunk" -# MY_PN=lapack -# inherit subversion - -MY_PN=lapack-reference -MYP=${MY_PN}-${PV} - -DESCRIPTION="Reference implementation of LAPACK" -HOMEPAGE="http://www.netlib.org/lapack/" -EGIT_REPO_URI="https://github.com/nschloe/lapack.git" - -LICENSE="BSD" -SLOT="0/${PV}" -KEYWORDS="" -IUSE="static-libs test xblas" - -REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND=" - >=virtual/blas-2.1-r3[int64?,${MULTILIB_USEDEP}] - xblas? ( sci-libs/xblas[fortran,int64?] )" -DEPEND="${RDEPEND} - virtual/pkgconfig - test? ( ${PYTHON_DEPS} )" - -S="${WORKDIR}/${MYP}" - -src_prepare() { - numeric-int64_ensure_blas_int_support - - cmake-utils_src_prepare - - # rename library to avoid collision with other lapack implementations - # ${PROFNAME}, ${LIBNAME} and ${BLAS_REQUIRES} are not defined here, they - # are in single quotes in the following seds. They are set later by - # defining a cmake variables with -DPROFNAME etc in src_configure. - sed -i \ - -e 's:BINARY_DIR}/lapack.pc:BINARY_DIR}/${PROFNAME}.pc:' \ - -e '/ALL_TARGETS/s:lapack):${LIBNAME}):' \ - -e '/LAPACK_LIBRARIES/s:lapack:${LIBNAME}:g' \ - CMakeLists.txt || die - sed -i \ - -e 's:(lapack:(${LIBNAME}:g' \ - SRC/CMakeLists.txt || die - sed -i \ - -e '/Name: /s:lapack:${PROFNAME}:' \ - -e 's:-llapack:-l${LIBNAME}:g' \ - -e '/Requires: /s:blas:${BLAS_REQUIRES}\nFflags=${LAPACK_PKGCONFIG_FFLAGS}:' \ - lapack.pc.in || die - # some string does not get passed properly - sed -i \ - -e '/lapack_testing.py/d' \ - CTestCustom.cmake.in || die - # separate ebuild to tmglib - sed -i \ - -e '/lapack_install_library(tmglib)/d' \ - TESTING/MATGEN/CMakeLists.txt || die -} - -src_configure() { - lapack_configure() { - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - local blas_profname=$(numeric-int64_get_blas_alternative) - local xblas_profname=$(numeric-int64_get_xblas_alternative) - local xblas_libname="${xblas_profname//-/_}" - local blas_requires="${blas_profname}" - use xblas && \ - blas_requires+=" ${xblas_profname}" - local mycmakeargs=( - -DPROFNAME="${profname}" - -DBLAS_REQUIRES="${blas_requires}" - -DLIBNAME="${libname}" - -DUSE_OPTIMIZED_BLAS=ON - -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${blas_profname})" - $(cmake-utils_use_build test TESTING) - $(cmake-utils_use_use xblas XBLAS) - -DCMAKE_C_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CFLAGS}" - -DCMAKE_CXX_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) ${CXXFLAGS}" - -DCMAKE_Fortran_FLAGS="$($(tc-getPKG_CONFIG) --cflags ${blas_profname}) $(get_abi_CFLAGS) $(numeric-int64_get_fortran_int64_abi_fflags) ${FCFLAGS}" - -DLAPACK_PKGCONFIG_FFLAGS="$(numeric-int64_get_fortran_int64_abi_fflags)" - ) - use xblas && \ - mycmakeargs+=( -DXBLAS_LIBRARY:FILEPATH="${EROOT}usr/$(get_libdir)/lib${xblas_libname}.so" ) - if $(numeric-int64_is_static_build); then - mycmakeargs+=( - -DBUILD_SHARED_LIBS=OFF - -DBUILD_STATIC_LIBS=ON - ) - else - mycmakeargs+=( - -DBUILD_SHARED_LIBS=ON - -DBUILD_STATIC_LIBS=OFF - ) - fi - cmake-utils_src_configure - } - numeric-int64-multibuild_foreach_all_abi_variants lapack_configure -} - -src_compile() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_compile -} - -src_test() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_test -} - -src_install() { - numeric-int64-multibuild_foreach_all_abi_variants cmake-utils_src_install - numeric-int64-multibuild_install_alternative lapack reference -} diff --git a/sci-libs/lapack-reference/metadata.xml b/sci-libs/lapack-reference/metadata.xml deleted file mode 100644 index 2fd11ecf7..000000000 --- a/sci-libs/lapack-reference/metadata.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - sci@gentoo.org - Gentoo Science Project - - -The Linear Algebra PACKage (LAPACK) is a comprehensive library that -does linear algebra operations including matrix inversions, least -squared solutions to linear sets of equations, eigenvector analysis, -singular value decomposition, etc. It is a very comprehensive and -reputable package that has found extensive use in the scientific community. -This package installs the reference FORTRAN 77 implementation from -Netlib for LAPACK and optionnally the one for the Basic Linear -Algebra Subprogram (BLAS). - - - Build deprecated routines - Build the 64 bits integer library - -Build LAPACK with extra precision (needs sci-libs/xblas) - - - diff --git a/sci-libs/lapacke-reference/Manifest b/sci-libs/lapacke-reference/Manifest deleted file mode 100644 index 1bfd4e51c..000000000 --- a/sci-libs/lapacke-reference/Manifest +++ /dev/null @@ -1,2 +0,0 @@ -DIST lapack-3.5.0.tgz 6313139 BLAKE2B c23a35f107cfc5c887491fd148c1c76851a4580c98ad86aff9c391ac3d393c31ba67427ed445fe821c7666418e9fcf19523a3a668f8009337508994cf1a68c04 SHA512 b948a0a0db032bda455ec4f519d4e89e4c29e29cecb5b6258ca61f68faaeeac9fdf4ece5c39ffcd0154c5505facbc392c7d09c8348b1d60bdd2685153ab2543f -DIST lapack-3.6.0.tgz 6792324 BLAKE2B 438f3376b63b38ef0fe70f6becac847816f3a11c01f5ab237dc0d941792ceb54dbd2f8dc22d56286f5dab3499289ed94e67521ea951a98973c9640abc294ad6c SHA512 bc50441d415ef8896dd7626d77c6104184b996e758704366288089f03d4c99d068e33153b0d13305310886017e5d2e716130f812a95cfcad36ef37fe20417ab8 diff --git a/sci-libs/lapacke-reference/files/lapack-fix-build-system.patch b/sci-libs/lapacke-reference/files/lapack-fix-build-system.patch deleted file mode 100644 index 8661709d3..000000000 --- a/sci-libs/lapacke-reference/files/lapack-fix-build-system.patch +++ /dev/null @@ -1,92 +0,0 @@ ---- lapack-3.6.0/BLAS/blas.pc.in -+++ lapack-3.6.0/BLAS/blas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: blas - Description: Basic Linear Algebra Subprograms F77 reference implementations ---- lapack-3.6.0/BLAS/CMakeLists.txt -+++ lapack-3.6.0/BLAS/CMakeLists.txt -@@ -2,7 +2,7 @@ - if(BUILD_TESTING) - add_subdirectory(TESTING) - endif(BUILD_TESTING) --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/blas.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/CBLAS/cblas.pc.in -+++ lapack-3.6.0/CBLAS/cblas.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to BLAS Linear Algebra PACKage ---- lapack-3.6.0/CBLAS/CMakeLists.txt -+++ lapack-3.6.0/CBLAS/CMakeLists.txt -@@ -71,7 +71,7 @@ - ${LAPACK_BINARY_DIR}/cblas-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/CMakeLists.txt -+++ lapack-3.6.0/CMakeLists.txt -@@ -333,7 +333,7 @@ - ${LAPACK_BINARY_DIR}/lapack-config.cmake @ONLY) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/LAPACKE/CMakeLists.txt -+++ lapack-3.6.0/LAPACKE/CMakeLists.txt -@@ -65,7 +65,7 @@ - endif(BUILD_TESTING) - - --configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc) -+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc @ONLY) - install(FILES - ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc - DESTINATION ${PKG_CONFIG_DIR} ---- lapack-3.6.0/LAPACKE/lapacke.pc.in -+++ lapack-3.6.0/LAPACKE/lapacke.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapacke - Description: C Standard Interface to LAPACK Linear Algebra PACKage ---- lapack-3.6.0/lapack.pc.in -+++ lapack-3.6.0/lapack.pc.in -@@ -1,5 +1,7 @@ --prefix=@prefix@ --libdir=@libdir@ -+prefix=@CMAKE_INSTALL_PREFIX@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+includedir=${prefix}/include - - Name: lapack - Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage diff --git a/sci-libs/lapacke-reference/lapacke-reference-3.5.0.ebuild b/sci-libs/lapacke-reference/lapacke-reference-3.5.0.ebuild deleted file mode 100644 index e71514161..000000000 --- a/sci-libs/lapacke-reference/lapacke-reference-3.5.0.ebuild +++ /dev/null @@ -1,95 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -FORTRAN_NEEDED=test - -inherit alternatives-2 cmake-utils eutils fortran-2 toolchain-funcs - -MYP=lapack-${PV} - -DESCRIPTION="C Interface to LAPACK" -HOMEPAGE="http://www.netlib.org/lapack/" -SRC_URI="http://www.netlib.org/lapack/${MYP}.tgz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="static-libs test tmg xblas" - -RDEPEND=" - virtual/blas - virtual/lapack - tmg? ( sci-libs/tmglib ) - xblas? ( sci-libs/xblas )" -DEPEND="${RDEPEND} - virtual/pkgconfig" - -S="${WORKDIR}/${MYP}" - -src_prepare() { - # rename libraries to avoid collision with other lapacke - sed -i \ - -e 's:BINARY_DIR}/lapacke.pc:BINARY_DIR}/reflapacke.pc:' \ - -e '/export/s:lapacke:reflapacke:g' \ - -e '/ALL_TARGETS/s:lapacke):reflapacke):' \ - -e '/LAPACK_LIBRARIES/s:lapacke:reflapacke:g' \ - CMakeLists.txt || die - sed -i \ - -e '/librar/s:(lapacke:(reflapacke:g' \ - lapacke/CMakeLists.txt || die - sed -i \ - -e '/librar/s:lapacke:reflapacke:g' \ - lapacke/example/CMakeLists.txt || die - local tmgpc; use tmg && tmgpc=" -ltmglib" - sed -i \ - -e "s:-llapacke:-lreflapacke${tmgpc}:g" \ - lapacke/lapacke.pc.in || die - use static-libs && mkdir "${WORKDIR}/${PN}_static" -} - -src_configure() { - lapack_configure() { - local mycmakeargs=( - -DUSE_OPTIMIZED_BLAS=ON - -DUSE_OPTIMIZED_LAPACK=ON - -DLAPACKE=ON - -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" - -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" - $(cmake-utils_use tmg LAPACKE_WITH_TMG) - $(cmake-utils_use_build test TESTING) - $(cmake-utils_use_use xblas XBLAS) - $@ - ) - cmake-utils_src_configure - } - - lapack_configure -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF - use static-libs && \ - BUILD_DIR="${WORKDIR}/${PN}_static" lapack_configure \ - -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON -} - -src_compile() { - use test && cmake-utils_src_compile -C TESTING/MATGEN - cmake-utils_src_compile -C lapacke - use static-libs \ - && BUILD_DIR="${WORKDIR}/${PN}_static" cmake-utils_src_compile -C lapacke -} - -src_test() { - pushd "${BUILD_DIR}/lapacke" > /dev/null || die - local ctestargs - [[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure" - ctest ${ctestargs} || die - popd > /dev/null || die -} - -src_install() { - cmake-utils_src_install -C lapacke - use static-libs \ - && BUILD_DIR="${WORKDIR}/${PN}_static" cmake-utils_src_install -C lapacke - alternatives_for lapacke reference 0 \ - /usr/$(get_libdir)/pkgconfig/lapacke.pc reflapacke.pc -} diff --git a/sci-libs/lapacke-reference/lapacke-reference-3.6.0-r2.ebuild b/sci-libs/lapacke-reference/lapacke-reference-3.6.0-r2.ebuild deleted file mode 100644 index 65177ade1..000000000 --- a/sci-libs/lapacke-reference/lapacke-reference-3.6.0-r2.ebuild +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -FORTRAN_NEEDED=test - -inherit alternatives-2 cmake-utils eutils fortran-2 toolchain-funcs - -MYP=lapack-${PV} - -DESCRIPTION="C Interface to LAPACK" -HOMEPAGE="http://www.netlib.org/lapack/" -SRC_URI="http://www.netlib.org/lapack/${MYP}.tgz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="+deprecated static-libs test tmg xblas" - -RDEPEND=" - virtual/blas - virtual/lapack - tmg? ( sci-libs/tmglib ) - xblas? ( sci-libs/xblas )" -DEPEND="${RDEPEND} - virtual/pkgconfig" - -S="${WORKDIR}/${MYP}" -PATCHES=( "${FILESDIR}/lapack-fix-build-system.patch" ) - -src_prepare() { - # the lapack(e)/(c)blas build system is somewhat broken - # with respect to its pkg-config files. - epatch "${PATCHES[@]}" - - # rename libraries to avoid collision with other lapacke - sed -i \ - -e 's:BINARY_DIR}/lapacke.pc:BINARY_DIR}/reflapacke.pc:' \ - -e '/export/s:lapacke:reflapacke:g' \ - -e '/ALL_TARGETS/s:lapacke):reflapacke):' \ - -e '/LAPACK_LIBRARIES/s:lapacke:reflapacke:g' \ - LAPACKE/CMakeLists.txt \ - CMakeLists.txt || die - sed -i \ - -e '/librar/s:(lapacke:(reflapacke:g' \ - LAPACKE/CMakeLists.txt || die - sed -i \ - -e '/librar/s:lapacke:reflapacke:g' \ - LAPACKE/example/CMakeLists.txt || die - local tmgpc; use tmg && tmgpc=" -ltmglib" - sed -i \ - -e "s:-llapacke:-lreflapacke${tmgpc}:g" \ - LAPACKE/lapacke.pc.in || die - use static-libs && mkdir "${WORKDIR}/${PN}_static" -} - -src_configure() { - lapack_configure() { - local mycmakeargs=( - -DUSE_OPTIMIZED_BLAS=ON - -DUSE_OPTIMIZED_LAPACK=ON - -DLAPACKE=ON - -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" - -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" - $(cmake-utils_use tmg LAPACKE_WITH_TMG) - $(cmake-utils_use_build test TESTING) - $(cmake-utils_use_use xblas XBLAS) - $(cmake-utils_use_build deprecated DEPRECATED) - $@ - ) - cmake-utils_src_configure - } - - lapack_configure -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF - use static-libs && \ - BUILD_DIR="${WORKDIR}/${PN}_static" lapack_configure \ - -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON -} - -src_compile() { - use test && cmake-utils_src_compile -C TESTING/MATGEN - cmake-utils_src_compile -C LAPACKE - use static-libs \ - && BUILD_DIR="${WORKDIR}/${PN}_static" cmake-utils_src_compile -C LAPACKE -} - -src_test() { - pushd "${BUILD_DIR}/LAPACKE" > /dev/null || die - local ctestargs - [[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure" - ctest ${ctestargs} || die - popd > /dev/null || die -} - -src_install() { - cmake-utils_src_install -C LAPACKE - use static-libs \ - && BUILD_DIR="${WORKDIR}/${PN}_static" cmake-utils_src_install -C LAPACKE - alternatives_for lapacke reference 0 \ - /usr/$(get_libdir)/pkgconfig/lapacke.pc reflapacke.pc -} diff --git a/sci-libs/lapacke-reference/lapacke-reference-9999.ebuild b/sci-libs/lapacke-reference/lapacke-reference-9999.ebuild deleted file mode 100644 index 87462c46a..000000000 --- a/sci-libs/lapacke-reference/lapacke-reference-9999.ebuild +++ /dev/null @@ -1,95 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -FORTRAN_NEEDED=test - -inherit alternatives-2 cmake-utils eutils fortran-2 subversion toolchain-funcs - -MYP=lapack-${PV} - -DESCRIPTION="C Interface to LAPACK" -HOMEPAGE="http://www.netlib.org/lapack/" -ESVN_REPO_URI="https://icl.cs.utk.edu/svn/lapack-dev/lapack/trunk" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="" -IUSE="static-libs test tmg xblas" - -RDEPEND=" - virtual/blas - virtual/lapack - tmg? ( sci-libs/tmglib ) - xblas? ( sci-libs/xblas )" -DEPEND="${RDEPEND} - virtual/pkgconfig" - -S="${WORKDIR}/${MYP}" - -src_prepare() { - # rename libraries to avoid collision with other lapacke - sed -i \ - -e 's:BINARY_DIR}/lapacke.pc:BINARY_DIR}/reflapacke.pc:' \ - -e '/export/s:lapacke:reflapacke:g' \ - -e '/ALL_TARGETS/s:lapacke):reflapacke):' \ - -e '/LAPACK_LIBRARIES/s:lapacke:reflapacke:g' \ - CMakeLists.txt || die - sed -i \ - -e '/librar/s:(lapacke:(reflapacke:g' \ - LAPACKE/CMakeLists.txt || die - sed -i \ - -e '/librar/s:lapacke:reflapacke:g' \ - LAPACKE/example/CMakeLists.txt || die - local tmgpc; use tmg && tmgpc=" -ltmglib" - sed -i \ - -e "s:-llapacke:-lreflapacke${tmgpc}:g" \ - LAPACKE/lapacke.pc.in || die - use static-libs && mkdir "${WORKDIR}/${PN}_static" -} - -src_configure() { - lapack_configure() { - local mycmakeargs=( - -DUSE_OPTIMIZED_BLAS=ON - -DUSE_OPTIMIZED_LAPACK=ON - -DLAPACKE=ON - -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" - -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" - -DLAPACKE_WITH_TMG=$(usex tmg) - -DBUILD_TESTING=$(usex test) - -DUSE_XBLAS=$(usex xblas) - $@ - ) - cmake-utils_src_configure - } - - lapack_configure -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF - use static-libs && \ - BUILD_DIR="${WORKDIR}/${PN}_static" lapack_configure \ - -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON -} - -src_compile() { - use test && cmake-utils_src_compile -C TESTING/MATGEN - cmake-utils_src_compile -C LAPACKE - use static-libs \ - && BUILD_DIR="${WORKDIR}/${PN}_static" cmake-utils_src_compile -C LAPACKE -} - -src_test() { - pushd "${BUILD_DIR}/lapacke" > /dev/null || die - local ctestargs - [[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure" - ctest ${ctestargs} || die - popd > /dev/null || die -} - -src_install() { - cmake-utils_src_install -C LAPACKE - use static-libs \ - && BUILD_DIR="${WORKDIR}/${PN}_static" cmake-utils_src_install -C LAPACKE - alternatives_for lapacke reference 0 \ - /usr/$(get_libdir)/pkgconfig/lapacke.pc reflapacke.pc -} diff --git a/sci-libs/lapacke-reference/metadata.xml b/sci-libs/lapacke-reference/metadata.xml deleted file mode 100644 index 26d2a3499..000000000 --- a/sci-libs/lapacke-reference/metadata.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - sci@gentoo.org - Gentoo Science Project - - -This implementation provides a native C interface to LAPACK routines -available at www.netlib.org/lapack to facilitate usage of LAPACK -functionality for C programmers. - - - Build deprecated routines - Build LAPACKE with a Test Matrix Generator library - Build LAPACKE with extra precision (needs -sci-libs/xblas) - - diff --git a/scripts/lapack-migration.sh b/scripts/lapack-migration.sh deleted file mode 100755 index cd932c130..000000000 --- a/scripts/lapack-migration.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -set -e - -EPREFIX=${1} - -#Link to the workaround automated by this script: https://wiki.gentoo.org/wiki/User_talk:Houseofsuns#Migration_to_science_overlay_from_main_tree -#Efforts to more permanently address the issue: https://github.com/gentoo/sci/issues/805 -echo "" -echo "Setting Up Eselect for Gentoo Science:" -echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" -if [ ! -d ${EPREFIX}/etc/portage/package.mask/ ]; then - mkdir -p ${EPREFIX}/etc/portage/package.mask/; -fi -cp "sci-lapack" "${EPREFIX}/etc/portage/package.mask/" -emerge --oneshot --verbose dev-util/cmake >> /dev/null -emerge --oneshot --verbose app-admin/eselect::science >> /dev/null -FEATURES="-preserve-libs":$FEATURES emerge --oneshot --verbose sci-libs/blas-reference::science -eselect blas set reference -FEATURES="-preserve-libs":$FEATURES emerge --oneshot --verbose sci-libs/cblas-reference::science -eselect cblas set reference -FEATURES="-preserve-libs":$FEATURES emerge --oneshot --verbose sci-libs/lapack-reference::science -eselect lapack set reference -FEATURES="-preserve-libs":$FEATURES emerge --oneshot --verbose --exclude sci-libs/blas-reference --exclude sci-libs/cblas-reference --exclude sci-libs/lapack-reference `eix --only-names --installed --in-overlay science` - -emerge -1qv @preserved-rebuild diff --git a/scripts/sci-lapack b/scripts/sci-lapack deleted file mode 100644 index 691059927..000000000 --- a/scripts/sci-lapack +++ /dev/null @@ -1,18 +0,0 @@ -## mask packages superseded by science overlay -app-admin/eselect::gentoo -app-eselect/eselect-blas -app-eselect/eselect-cblas -app-eselect/eselect-lapack -virtual/blas::gentoo -virtual/cblas::gentoo -virtual/lapack::gentoo -sci-libs/gsl::gentoo -app-doc/blas-docs::gentoo -app-doc/lapack-docs::gentoo -sci-libs/blas-reference::gentoo -sci-libs/cblas-reference::gentoo -sci-libs/lapack-reference::gentoo -sci-libs/mkl::gentoo - -## more recently requires (see: https://github.com/gentoo/sci/issues/878 ) ->=dev-util/cmake-3.12.0 diff --git a/virtual/blas/blas-2.1-r5.ebuild b/virtual/blas/blas-2.1-r5.ebuild deleted file mode 100644 index d30ea7186..000000000 --- a/virtual/blas/blas-2.1-r5.ebuild +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build multilib - -DESCRIPTION="Virtual for FORTRAN 77 BLAS implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="doc int64" - -RDEPEND=" - !app-eselect/eselect-blas - || ( - sci-libs/blas-reference[int64?,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64?,${MULTILIB_USEDEP}] - sci-libs/gotoblas2[int64?,${MULTILIB_USEDEP}] - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - abi_x86_64? ( - !abi_x86_32? ( - || ( - >=dev-cpp/eigen-3.1.4[fortran] - sci-libs/atlas[fortran] - ) - ) - ) - ) - doc? ( >=app-doc/blas-docs-3.2 ) - int64? ( - || ( - sci-libs/blas-reference[int64,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64,${MULTILIB_USEDEP}] - sci-libs/gotoblas2[int64,${MULTILIB_USEDEP}] - sci-libs/mkl[int64,${MULTILIB_USEDEP}] - ) - ) -" -DEPEND="" - -pkg_pretend() { - if [[ -e "${EROOT%/}"/usr/$(get_libdir)/lib${PN}.so ]]; then - ewarn "You have still the old ${PN} library symlink present" - ewarn "Please delete" - ewarn "${EROOT%/}/usr/$(get_libdir)/lib${PN}.so" - ewarn "to avoid problems with new ${PN} structure" - die "Old lib${PN} detected" - fi -} diff --git a/virtual/blas/blas-3.6-r100.ebuild b/virtual/blas/blas-3.6-r100.ebuild deleted file mode 100644 index 37afd2e29..000000000 --- a/virtual/blas/blas-3.6-r100.ebuild +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build multilib - -DESCRIPTION="Virtual for FORTRAN 77 BLAS implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="doc int64" - -RDEPEND=" - !app-eselect/eselect-blas - || ( - >=sci-libs/blas-reference-20151113-r100[int64?,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64?,${MULTILIB_USEDEP}] - sci-libs/gotoblas2[int64?,${MULTILIB_USEDEP}] - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - abi_x86_64? ( - !abi_x86_32? ( - || ( - >=dev-cpp/eigen-3.1.4[fortran] - sci-libs/atlas[fortran] - ) - ) - ) - ) - doc? ( >=app-doc/blas-docs-3.2 ) - int64? ( - || ( - sci-libs/blas-reference[int64,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64,${MULTILIB_USEDEP}] - sci-libs/gotoblas2[int64,${MULTILIB_USEDEP}] - sci-libs/mkl[int64,${MULTILIB_USEDEP}] - ) - ) -" -DEPEND="" - -pkg_pretend() { - if [[ -e "${EROOT%/}"/usr/$(get_libdir)/lib${PN}.so ]]; then - ewarn "You have still the old ${PN} library symlink present" - ewarn "Please delete" - ewarn "${EROOT%/}/usr/$(get_libdir)/lib${PN}.so" - ewarn "to avoid problems with new ${PN} structure" - die "Old lib${PN} detected" - fi -} diff --git a/virtual/blas/blas-3.7-r100.ebuild b/virtual/blas/blas-3.7-r100.ebuild deleted file mode 100644 index 2c17daa33..000000000 --- a/virtual/blas/blas-3.7-r100.ebuild +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build multilib - -DESCRIPTION="Virtual for FORTRAN 77 BLAS implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="doc int64" - -RDEPEND=" - !app-eselect/eselect-blas - || ( - >=sci-libs/blas-reference-20161223-r100[int64?,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64?,${MULTILIB_USEDEP}] - sci-libs/gotoblas2[int64?,${MULTILIB_USEDEP}] - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - abi_x86_64? ( - !abi_x86_32? ( - || ( - >=dev-cpp/eigen-3.1.4[fortran] - sci-libs/atlas[fortran] - ) - ) - ) - ) - doc? ( >=app-doc/blas-docs-3.2 ) - int64? ( - || ( - sci-libs/blas-reference[int64,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64,${MULTILIB_USEDEP}] - sci-libs/gotoblas2[int64,${MULTILIB_USEDEP}] - sci-libs/mkl[int64,${MULTILIB_USEDEP}] - ) - ) -" -DEPEND="" - -pkg_pretend() { - if [[ -e "${EROOT%/}"/usr/$(get_libdir)/lib${PN}.so ]]; then - ewarn "You have still the old ${PN} library symlink present" - ewarn "Please delete" - ewarn "${EROOT%/}/usr/$(get_libdir)/lib${PN}.so" - ewarn "to avoid problems with new ${PN} structure" - die "Old lib${PN} detected" - fi -} diff --git a/virtual/blas/metadata.xml b/virtual/blas/metadata.xml deleted file mode 100644 index f683eb986..000000000 --- a/virtual/blas/metadata.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - sci@gentoo.org - Gentoo Science Project - - -Gentoo virtual package for the Basic Linear Algebra Subprograms -FORTRAN 77 implementation. - - - Add eselect module for blas libraries built with 64 bits -integer ABI - - diff --git a/virtual/cblas/cblas-2.0-r4.ebuild b/virtual/cblas/cblas-2.0-r4.ebuild deleted file mode 100644 index 14a030651..000000000 --- a/virtual/cblas/cblas-2.0-r4.ebuild +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build - -DESCRIPTION="Virtual for BLAS C implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="int64" - -RDEPEND=" - || ( - >=sci-libs/cblas-reference-20110218-r1[int64?,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64?,${MULTILIB_USEDEP}] - >=sci-libs/gsl-1.16-r2[-cblas-external,${MULTILIB_USEDEP}] - >=sci-libs/gotoblas2-1.13[int64?,${MULTILIB_USEDEP}] - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - abi_x86_64? ( !abi_x86_32? ( >=sci-libs/atlas-3.9.34 ) ) - ) - int64? ( - || ( - >=sci-libs/openblas-0.2.11[int64,${MULTILIB_USEDEP}] - >=sci-libs/cblas-reference-20110218-r1[int64,${MULTILIB_USEDEP}] - >=sci-libs/gotoblas2-1.13[int64,${MULTILIB_USEDEP}] - sci-libs/mkl[int64,${MULTILIB_USEDEP}] - ) - )" -DEPEND="" diff --git a/virtual/cblas/cblas-3.6-r100.ebuild b/virtual/cblas/cblas-3.6-r100.ebuild deleted file mode 100644 index 4adf7906c..000000000 --- a/virtual/cblas/cblas-3.6-r100.ebuild +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build - -DESCRIPTION="Virtual for BLAS C implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="int64" - -RDEPEND=" - || ( - >=sci-libs/cblas-reference-20151113-r100[int64?,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64?,${MULTILIB_USEDEP}] - >=sci-libs/gsl-1.16-r2[-cblas-external,${MULTILIB_USEDEP}] - >=sci-libs/gotoblas2-1.13[int64?,${MULTILIB_USEDEP}] - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - abi_x86_64? ( !abi_x86_32? ( >=sci-libs/atlas-3.9.34 ) ) - ) - int64? ( - || ( - >=sci-libs/openblas-0.2.11[int64,${MULTILIB_USEDEP}] - >=sci-libs/cblas-reference-20110218-r1[int64,${MULTILIB_USEDEP}] - >=sci-libs/gotoblas2-1.13[int64,${MULTILIB_USEDEP}] - sci-libs/mkl[int64,${MULTILIB_USEDEP}] - ) - )" -DEPEND="" diff --git a/virtual/cblas/cblas-3.7-r100.ebuild b/virtual/cblas/cblas-3.7-r100.ebuild deleted file mode 100644 index 51ed1b464..000000000 --- a/virtual/cblas/cblas-3.7-r100.ebuild +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build - -DESCRIPTION="Virtual for BLAS C implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="int64" - -RDEPEND=" - || ( - >=sci-libs/cblas-reference-20161223-r100[int64?,${MULTILIB_USEDEP}] - >=sci-libs/openblas-0.2.11[int64?,${MULTILIB_USEDEP}] - >=sci-libs/gsl-1.16-r2[-cblas-external,${MULTILIB_USEDEP}] - >=sci-libs/gotoblas2-1.13[int64?,${MULTILIB_USEDEP}] - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - abi_x86_64? ( !abi_x86_32? ( >=sci-libs/atlas-3.9.34 ) ) - ) - int64? ( - || ( - >=sci-libs/openblas-0.2.11[int64,${MULTILIB_USEDEP}] - >=sci-libs/cblas-reference-20110218-r1[int64,${MULTILIB_USEDEP}] - >=sci-libs/gotoblas2-1.13[int64,${MULTILIB_USEDEP}] - sci-libs/mkl[int64,${MULTILIB_USEDEP}] - ) - )" -DEPEND="" diff --git a/virtual/cblas/metadata.xml b/virtual/cblas/metadata.xml deleted file mode 100644 index 1f78cc421..000000000 --- a/virtual/cblas/metadata.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - sci@gentoo.org - Gentoo Science Project - - -Gentoo virtual package for the Basic Linear Algebra Subprograms -C implementation. - - - Add eselect module for cblas libraries built with 64 bits -integer ABI - - diff --git a/virtual/lapack/lapack-3.6-r100.ebuild b/virtual/lapack/lapack-3.6-r100.ebuild deleted file mode 100644 index 64256ca6d..000000000 --- a/virtual/lapack/lapack-3.6-r100.ebuild +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build - -DESCRIPTION="Virtual for Linear Algebra Package FORTRAN 77 implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="doc int64" - -RDEPEND=" - !app-eselect/eselect-lapack - || ( - >=sci-libs/lapack-reference-${PV}-r100[int64?,${MULTILIB_USEDEP}] - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - abi_x86_64? ( !abi_x86_32? ( >=sci-libs/atlas-3.9.34[lapack] ) ) - ) - int64? ( - || ( - >=sci-libs/lapack-reference-${PV}[int64,${MULTILIB_USEDEP}] - sci-libs/mkl[int64,${MULTILIB_USEDEP}] - ) - ) - doc? ( >=app-doc/lapack-docs-3.3 )" -DEPEND="" - -pkg_pretend() { - if [[ -e "${EROOT%/}"/usr/$(get_libdir)/lib${PN}.so ]]; then - ewarn "You have still the old ${PN} library symlink present" - ewarn "Please delete" - ewarn "${EROOT%/}/usr/$(get_libdir)/lib${PN}.so" - ewarn "to avoid problems with new ${PN} structure" - fi -} diff --git a/virtual/lapack/lapack-3.7-r100.ebuild b/virtual/lapack/lapack-3.7-r100.ebuild deleted file mode 100644 index 64256ca6d..000000000 --- a/virtual/lapack/lapack-3.7-r100.ebuild +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build - -DESCRIPTION="Virtual for Linear Algebra Package FORTRAN 77 implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="doc int64" - -RDEPEND=" - !app-eselect/eselect-lapack - || ( - >=sci-libs/lapack-reference-${PV}-r100[int64?,${MULTILIB_USEDEP}] - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - abi_x86_64? ( !abi_x86_32? ( >=sci-libs/atlas-3.9.34[lapack] ) ) - ) - int64? ( - || ( - >=sci-libs/lapack-reference-${PV}[int64,${MULTILIB_USEDEP}] - sci-libs/mkl[int64,${MULTILIB_USEDEP}] - ) - ) - doc? ( >=app-doc/lapack-docs-3.3 )" -DEPEND="" - -pkg_pretend() { - if [[ -e "${EROOT%/}"/usr/$(get_libdir)/lib${PN}.so ]]; then - ewarn "You have still the old ${PN} library symlink present" - ewarn "Please delete" - ewarn "${EROOT%/}/usr/$(get_libdir)/lib${PN}.so" - ewarn "to avoid problems with new ${PN} structure" - fi -} diff --git a/virtual/lapack/metadata.xml b/virtual/lapack/metadata.xml deleted file mode 100644 index 6148c6b10..000000000 --- a/virtual/lapack/metadata.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - sci@gentoo.org - Gentoo Science Project - - -Gentoo virtual package for the Linear Algebra PACKAge -FORTRAN 77 implementation. The version number corresponds to the -version of the LAPACK reference implementation. - - - Add eselect module for lapack libraries built with 64 bits -integer ABI - - diff --git a/virtual/lapacke/lapacke-3.6.ebuild b/virtual/lapacke/lapacke-3.6.ebuild deleted file mode 100644 index 594d6e640..000000000 --- a/virtual/lapacke/lapacke-3.6.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit multilib-build - -DESCRIPTION="Virtual for LAPACK C implementation" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="int64" - -RDEPEND=" - || ( - abi_x86_64? ( !abi_x86_32? ( >=sci-libs/lapacke-reference-${PV} ) ) - sci-libs/mkl[int64?,${MULTILIB_USEDEP}] - ) - int64? ( sci-libs/mkl[int64,${MULTILIB_USEDEP}] ) - " -DEPEND="" diff --git a/virtual/lapacke/metadata.xml b/virtual/lapacke/metadata.xml deleted file mode 100644 index 52b90821b..000000000 --- a/virtual/lapacke/metadata.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - sci@gentoo.org - Gentoo Science Project - - -Gentoo virtual package for the Linear Algebra PACKAge -C implementation. - - - Add eselect module for blas libraries built with 64 bits -integer ABI - - -- cgit v1.2.3-65-gdbad