commit:     c399d0d8c9e0bb0cb8c33ad44cf735848bc14b35
Author:     Ted Tanberry <ted.tanberry <AT> gmail <DOT> com>
AuthorDate: Wed Dec  2 19:25:42 2015 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Thu Dec  3 09:42:20 2015 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=c399d0d8

sci-libs/blas-reference: update pkg-config handling

 .../blas-reference/blas-reference-20151113.ebuild  | 11 ++-
 .../files/lapack-fix-build-system.patch            | 92 ++++++++++++++++++++++
 2 files changed, 100 insertions(+), 3 deletions(-)

diff --git a/sci-libs/blas-reference/blas-reference-20151113.ebuild 
b/sci-libs/blas-reference/blas-reference-20151113.ebuild
index e997988..d1d70b4 100644
--- a/sci-libs/blas-reference/blas-reference-20151113.ebuild
+++ b/sci-libs/blas-reference/blas-reference-20151113.ebuild
@@ -8,7 +8,7 @@ PYTHON_COMPAT=( python2_7 )
 
 NUMERIC_MODULE_NAME="refblas"
 
-inherit alternatives-2 cmake-utils fortran-2 numeric-int64-multibuild 
python-any-r1 toolchain-funcs
+inherit alternatives-2 cmake-utils fortran-2 numeric-int64-multibuild 
python-any-r1 toolchain-funcs eutils
 
 LPN=lapack
 LPV=3.6.0
@@ -30,8 +30,13 @@ DEPEND="${RDEPEND}
        virtual/pkgconfig"
 
 S="${WORKDIR}/${LPN}-${LPV}"
+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 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
@@ -42,8 +47,8 @@ src_prepare() {
                CMakeLists.txt \
                BLAS/SRC/CMakeLists.txt || die
        sed -i \
-               -e '/Name: /s:blas:${PROFNAME}:' \
-               -e 's:-lblas:-l${LIBNAME}:g' \
+               -e '/Name: /s:blas:@PROFNAME@:' \
+               -e 's:-lblas:-l@LIBNAME@:g' \
                 BLAS/blas.pc.in || die
        sed -i \
                -e 's:blas):${LIBNAME}):' \

diff --git a/sci-libs/blas-reference/files/lapack-fix-build-system.patch 
b/sci-libs/blas-reference/files/lapack-fix-build-system.patch
new file mode 100644
index 0000000..8661709
--- /dev/null
+++ b/sci-libs/blas-reference/files/lapack-fix-build-system.patch
@@ -0,0 +1,92 @@
+--- 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

Reply via email to