diff options
author | Denis Dupeyron <calchan@gentoo.org> | 2012-12-19 11:18:21 -0700 |
---|---|---|
committer | Denis Dupeyron <calchan@gentoo.org> | 2012-12-19 13:04:06 -0700 |
commit | 606b09f6249f2446ac6194f77329529ad995853f (patch) | |
tree | 09f6cf5abc45744582204d5b033fc7c17316dda0 | |
parent | Merge branch 'master' of git://git.overlays.gentoo.org/proj/sci; github.com:g... (diff) | |
download | sci-606b09f6249f2446ac6194f77329529ad995853f.tar.gz sci-606b09f6249f2446ac6194f77329529ad995853f.tar.bz2 sci-606b09f6249f2446ac6194f77329529ad995853f.zip |
Add cblas-external USE flag to sci-libs/gsl
Let gsl optionally build against an external cblas implementation and
disable gsl as a possible cblas alternative when doing so.
Only consider sci-libs/gsl as a valid virtual/cblas implementation if
the cblas-external USE flag is not set. Update sci-libs/gsl version to
1.15-r3.
-rw-r--r-- | sci-libs/gsl/ChangeLog | 9 | ||||
-rw-r--r-- | sci-libs/gsl/files/gsl-1.15-cblas.patch | 283 | ||||
-rw-r--r-- | sci-libs/gsl/gsl-1.15-r3.ebuild (renamed from sci-libs/gsl/gsl-1.15-r2.ebuild) | 19 | ||||
-rw-r--r-- | sci-libs/gsl/metadata.xml | 4 | ||||
-rw-r--r-- | virtual/cblas/ChangeLog | 6 | ||||
-rw-r--r-- | virtual/cblas/cblas-2.0.ebuild | 4 |
6 files changed, 283 insertions, 42 deletions
diff --git a/sci-libs/gsl/ChangeLog b/sci-libs/gsl/ChangeLog index 327c24a16..2c1ceb553 100644 --- a/sci-libs/gsl/ChangeLog +++ b/sci-libs/gsl/ChangeLog @@ -1,7 +1,14 @@ # ChangeLog for sci-libs/gsl -# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 # $Header: /var/cvsroot/gentoo-x86/sci-libs/gsl/ChangeLog,v 1.77 2010/08/09 09:32:55 xarthisius Exp $ +*gsl-1.15-r3 (19 Dec 2012) + + 19 Dec 2012; Denis Dupeyron <calchan@gentoo.org> -gsl-1.15-r2.ebuild, + +gsl-1.15-r3.ebuild, files/gsl-1.15-cblas.patch, metadata.xml: + Let gsl optionally build against an external cblas implementation and + disables gsl as a possible cblas alternative when doing so. + 23 Feb 2012; Sébastien Fabbro <bicatali@gentoo.org> gsl-1.15-r2.ebuild, files/gsl-1.15-cblas.patch, -files/gsl-1.15-pkgconfig.patch: Fixed gsl-config/pkg-config issues diff --git a/sci-libs/gsl/files/gsl-1.15-cblas.patch b/sci-libs/gsl/files/gsl-1.15-cblas.patch index 2ded784dd..dd402f392 100644 --- a/sci-libs/gsl/files/gsl-1.15-cblas.patch +++ b/sci-libs/gsl/files/gsl-1.15-cblas.patch @@ -1,54 +1,174 @@ -diff -Nur gsl-1.15.orig/blas/Makefile.am gsl-1.15/blas/Makefile.am ---- gsl-1.15.orig/blas/Makefile.am 2010-12-26 17:57:08.000000000 +0000 -+++ gsl-1.15/blas/Makefile.am 2012-02-23 17:41:52.000000000 +0000 -@@ -5,7 +5,7 @@ - INCLUDES = -I$(top_srcdir) - - libgslblas_la_SOURCES = blas.c -- -+libgslblas_la_LIBADD = $(top_builddir)/cblas/libgslcblas.la - #check_PROGRAMS = test - #TESTS = test - #test_LDADD = libgslblas.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la +diff -Nur gsl-1.15.orig/acx_cblas.m4 gsl-1.15/acx_cblas.m4 +--- gsl-1.15.orig/acx_cblas.m4 1970-01-01 01:00:00.000000000 +0100 ++++ gsl-1.15/acx_cblas.m4 2011-07-28 22:16:03.000000000 +0100 +@@ -0,0 +1,60 @@ ++AC_DEFUN([ACX_CBLAS],[ ++ use_cblas=no ++ use_cblas_libs="-lcblas -lblas" ++ use_cblas_cflags="" ++ ++ AC_ARG_WITH(cblas, ++ [AS_HELP_STRING([--with-cblas], [use external CBLAS library (default is no)])]) ++ ++ case $with_cblas in ++ yes) use_cblas=yes ;; ++ no | "" ) use_cblas=no ;; ++ -* | */* | *.a | *.so | *.so.* | *.o) use_cblas_libs="$with_cblas" ;; ++ *) use_cblas_libs="-l$with_cblas" ;; ++ esac ++ ++ AC_ARG_WITH(cblas-libs, ++ [AS_HELP_STRING([--with-cblas-libs=<libs>], ++ [external cblas libraries to link with (default is "$use_cblas_libs")])], ++ [use_cblas_libs=$withval], []) ++ ++ AC_ARG_WITH(cblas-cflags, ++ [AS_HELP_STRING([--with-cblas-cflags=<flags>], ++ [extra cflags to compile with external cblas ("-I<dir>")])], ++ [use_cblas_cflags=$withval], []) ++ ++ if test x$use_cblas != xno; then ++ if test "x$CBLAS_LIBS" = x; then ++ CBLAS_LIBS="$use_cblas_libs" ++ fi ++ if test "x$CBLAS_FLAGS" = x; then ++ CBLAS_CFLAGS="$use_cblas_cflags" ++ fi ++ ++ CFLAGS_sav="$CFLAGS" ++ CFLAGS="$CFLAGS $CBLAS_CFLAGS" ++ AC_CHECK_HEADER(cblas.h, , ++ [AC_MSG_ERROR([ ++ *** Header file cblas.h not found. ++ *** If you installed cblas header in a non standard place, ++ *** specify its install prefix using the following option ++ *** --with-cblas-cflags="-I<include_dir>"]) ++ ]) ++ CFLAGS="$CFLAGS_sav" ++ ++ LIBS_sav="$LIBS" ++ LIBS="$LIBS $CBLAS_LIBS -lm" ++ AC_MSG_CHECKING([for cblas_sgemm in $CBLAS_LIBS]) ++ AC_TRY_LINK_FUNC(cblas_sgemm, [use_cblas=yes], ++ [AC_MSG_ERROR([ ++ *** Linking with cblas with $LIBS failed. ++ *** If you installed cblas library in a non standard place, ++ *** specify its install prefix using the following option ++ *** --with-cblas-libs="-L<lib_dir> -l<lib>"]) ++ ]) ++ AC_MSG_RESULT($use_cblas) ++ LIBS="$LIBS_sav" ++ AC_SUBST(CBLAS_CFLAGS) ++ AC_SUBST(CBLAS_LIBS) ++ fi ++]) +diff -Nur gsl-1.15.orig/bspline/Makefile.am gsl-1.15/bspline/Makefile.am +--- gsl-1.15.orig/bspline/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/bspline/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -12,6 +12,6 @@ + + TESTS = $(check_PROGRAMS) + +-test_LDADD = libgslbspline.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../cblas/libgslcblas.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ../statistics/libgslstatistics.la ++test_LDADD = libgslbspline.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la @CBLAS_LINK_LIBS@ ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ../statistics/libgslstatistics.la + + test_SOURCES = test.c +diff -Nur gsl-1.15.orig/configure.ac gsl-1.15/configure.ac +--- gsl-1.15.orig/configure.ac 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/configure.ac 2011-07-28 22:16:03.000000000 +0100 +@@ -190,6 +190,16 @@ + AC_CHECK_LIB(m, cos) + fi + ++sinclude(acx_cblas.m4) ++ACX_CBLAS ++if test "x$CBLAS_LIBS" != "x"; then ++ CBLAS_LINK_LIBS="$CBLAS_LIBS" ++else ++ CBLAS_LINK_LIBS="\$(top_builddir)/cblas/libgslcblas.la" ++ CBLAS_LIBS="-lgslcblas" ++fi ++AC_SUBST(CBLAS_LINK_LIBS) ++ + dnl Remember to put a definition in acconfig.h for each of these + AC_CHECK_DECLS(feenableexcept,,,[#define _GNU_SOURCE 1 + #include <fenv.h>]) +diff -Nur gsl-1.15.orig/eigen/Makefile.am gsl-1.15/eigen/Makefile.am +--- gsl-1.15.orig/eigen/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/eigen/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -11,7 +11,7 @@ + + TESTS = $(check_PROGRAMS) + +-test_LDADD = libgsleigen.la ../test/libgsltest.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../sys/libgslsys.la ../err/libgslerr.la ../utils/libutils.la ../rng/libgslrng.la ../sort/libgslsort.la ++test_LDADD = libgsleigen.la ../test/libgsltest.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../sys/libgslsys.la ../err/libgslerr.la ../utils/libutils.la ../rng/libgslrng.la ../sort/libgslsort.la + + test_SOURCES = test.c + diff -Nur gsl-1.15.orig/gsl-config.in gsl-1.15/gsl-config.in ---- gsl-1.15.orig/gsl-config.in 2010-12-26 17:57:08.000000000 +0000 -+++ gsl-1.15/gsl-config.in 2012-02-23 17:47:30.000000000 +0000 -@@ -58,12 +58,11 @@ +--- gsl-1.15.orig/gsl-config.in 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/gsl-config.in 2011-07-28 22:16:03.000000000 +0100 +@@ -58,11 +58,11 @@ ;; --cflags) - echo @GSL_CFLAGS@ -+ echo @GSL_CFLAGS@ $(pkg-config --cflags cblas) ++ echo @GSL_CFLAGS@ @CBLAS_CFLAGS@ ;; --libs) - : ${GSL_CBLAS_LIB=-lgslcblas} -- echo @GSL_LIBS@ $GSL_CBLAS_LIB @GSL_LIBM@ -+ echo $(pkg-config --libs gsl) @GSL_LIBM@ ++ : ${GSL_CBLAS_LIB=@CBLAS_LIBS@} + echo @GSL_LIBS@ $GSL_CBLAS_LIB @GSL_LIBM@ ;; - --libs-without-cblas) diff -Nur gsl-1.15.orig/gsl.pc.in gsl-1.15/gsl.pc.in ---- gsl-1.15.orig/gsl.pc.in 2011-01-31 16:59:17.000000000 +0000 -+++ gsl-1.15/gsl.pc.in 2012-02-23 17:40:12.000000000 +0000 -@@ -2,10 +2,11 @@ +--- gsl-1.15.orig/gsl.pc.in 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/gsl.pc.in 2011-07-28 22:20:14.000000000 +0100 +@@ -2,7 +2,7 @@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ -GSL_CBLAS_LIB=-lgslcblas ++GSL_CBLAS_LIB=@CBLAS_LIBS@ Name: GSL Description: GNU Scientific Library - Version: @VERSION@ --Libs: @GSL_LIBS@ ${GSL_CBLAS_LIB} @GSL_LIBM@ @LIBS@ -+Libs: @GSL_LIBS@ -+Private: @GSL_LIBM@ @LIBS@ - Cflags: @GSL_CFLAGS@ -+Requires: cblas +diff -Nur gsl-1.15.orig/interpolation/Makefile.am gsl-1.15/interpolation/Makefile.am +--- gsl-1.15.orig/interpolation/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/interpolation/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -10,7 +10,7 @@ + + TESTS = $(check_PROGRAMS) + +-test_LDADD = libgslinterpolation.la ../poly/libgslpoly.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../cblas/libgslcblas.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ++test_LDADD = libgslinterpolation.la ../poly/libgslpoly.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la @CBLAS_LINK_LIBS@ ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la + + test_SOURCES = test.c + +diff -Nur gsl-1.15.orig/linalg/Makefile.am gsl-1.15/linalg/Makefile.am +--- gsl-1.15.orig/linalg/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/linalg/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -12,7 +12,7 @@ + + check_PROGRAMS = test + +-test_LDADD = libgsllinalg.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../permutation/libgslpermutation.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ++test_LDADD = libgsllinalg.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../permutation/libgslpermutation.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la + + test_SOURCES = test.c + diff -Nur gsl-1.15.orig/Makefile.am gsl-1.15/Makefile.am ---- gsl-1.15.orig/Makefile.am 2011-04-14 16:13:48.000000000 +0100 -+++ gsl-1.15/Makefile.am 2012-02-23 17:53:10.000000000 +0000 -@@ -25,7 +25,6 @@ +--- gsl-1.15.orig/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -19,13 +19,12 @@ + + lib_LTLIBRARIES = libgsl.la + libgsl_la_SOURCES = version.c +-libgsl_la_LIBADD = $(SUBLIBS) ++libgsl_la_LIBADD = $(SUBLIBS) @CBLAS_LINK_LIBS@ + libgsl_la_LDFLAGS = -version-info $(GSL_LT_VERSION) + noinst_HEADERS = templates_on.h templates_off.h build.h MINGW32_HOST = @MINGW32_HOST@ if MINGW32_HOST @@ -56,7 +176,7 @@ diff -Nur gsl-1.15.orig/Makefile.am gsl-1.15/Makefile.am libgsl_la_LDFLAGS += -no-undefined endif -@@ -35,13 +34,13 @@ +@@ -35,10 +34,10 @@ bin_PROGRAMS = gsl-randist gsl-histogram gsl_randist_SOURCES = gsl-randist.c @@ -68,8 +188,99 @@ diff -Nur gsl-1.15.orig/Makefile.am gsl-1.15/Makefile.am +gsl_histogram_LDADD = libgsl.la check_SCRIPTS = test_gsl_histogram.sh pkgconfig.test --TESTS = test_gsl_histogram.sh pkgconfig.test -+TESTS = test_gsl_histogram.sh + TESTS = test_gsl_histogram.sh pkgconfig.test +@@ -57,6 +56,8 @@ + -e 's|@GSL_CFLAGS[@]|$(GSL_CFLAGS)|g' \ + -e 's|@GSL_LIBM[@]|$(GSL_LIBM)|g' \ + -e 's|@GSL_LIBS[@]|$(GSL_LIBS)|g' \ ++ -e 's|@CBLAS_CFLAGS[@]|$(CBLAS_CFLAGS)|g' \ ++ -e 's|@CBLAS_LIBS[@]|$(CBLAS_LIBS)|g' \ + -e 's|@LIBS[@]|$(LIBS)|g' \ + -e 's|@VERSION[@]|$(VERSION)|g' + +diff -Nur gsl-1.15.orig/multifit/Makefile.am gsl-1.15/multifit/Makefile.am +--- gsl-1.15.orig/multifit/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/multifit/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -13,8 +13,8 @@ + TESTS = $(check_PROGRAMS) + + test_SOURCES = test.c +-test_LDADD = libgslmultifit.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../utils/libutils.la ../sys/libgslsys.la ++test_LDADD = libgslmultifit.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../utils/libutils.la ../sys/libgslsys.la + + #demo_SOURCES = demo.c +-#demo_LDADD = libgslmultifit.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../randist/libgslrandist.la ../rng/libgslrng.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../utils/libutils.la ../sys/libgslsys.la ++#demo_LDADD = libgslmultifit.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../randist/libgslrandist.la ../rng/libgslrng.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../utils/libutils.la ../sys/libgslsys.la + +diff -Nur gsl-1.15.orig/multimin/Makefile.am gsl-1.15/multimin/Makefile.am +--- gsl-1.15.orig/multimin/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/multimin/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -13,8 +13,8 @@ + TESTS = $(check_PROGRAMS) + + test_SOURCES = test.c test_funcs.c test_funcs.h +-test_LDADD = libgslmultimin.la ../min/libgslmin.la ../poly/libgslpoly.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ++test_LDADD = libgslmultimin.la ../min/libgslmin.la ../poly/libgslpoly.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la + + #demo_SOURCES = demo.c +-#demo_LDADD = libgslmultimin.la ../min/libgslmin.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../linalg/libgsllinalg.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ++#demo_LDADD = libgslmultimin.la ../min/libgslmin.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../linalg/libgsllinalg.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la + +diff -Nur gsl-1.15.orig/multiroots/Makefile.am gsl-1.15/multiroots/Makefile.am +--- gsl-1.15.orig/multiroots/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/multiroots/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -15,5 +15,5 @@ + TESTS = $(check_PROGRAMS) + + test_SOURCES = test.c test_funcs.c test_funcs.h +-test_LDADD = libgslmultiroots.la ../linalg/libgsllinalg.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../permutation/libgslpermutation.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ++test_LDADD = libgslmultiroots.la ../linalg/libgsllinalg.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../permutation/libgslpermutation.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la + +diff -Nur gsl-1.15.orig/ode-initval/Makefile.am gsl-1.15/ode-initval/Makefile.am +--- gsl-1.15.orig/ode-initval/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/ode-initval/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -12,7 +12,7 @@ + + TESTS = $(check_PROGRAMS) + +-test_LDADD = libgslodeiv.la ../linalg/libgsllinalg.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../matrix/libgslmatrix.la ../permutation/libgslpermutation.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ++test_LDADD = libgslodeiv.la ../linalg/libgsllinalg.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../matrix/libgslmatrix.la ../permutation/libgslpermutation.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la + + test_SOURCES = test.c + +diff -Nur gsl-1.15.orig/poly/Makefile.am gsl-1.15/poly/Makefile.am +--- gsl-1.15.orig/poly/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/poly/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -10,7 +10,7 @@ + + TESTS = $(check_PROGRAMS) + +-check_PROGRAMS = test ++#check_PROGRAMS = test + + test_SOURCES = test.c + test_LDADD = libgslpoly.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la +diff -Nur gsl-1.15.orig/specfunc/Makefile.am gsl-1.15/specfunc/Makefile.am +--- gsl-1.15.orig/specfunc/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/specfunc/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -12,7 +12,7 @@ + + check_PROGRAMS = test + +-test_LDADD = libgslspecfunc.la ../eigen/libgsleigen.la ../linalg/libgsllinalg.la ../sort/libgslsort.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ++test_LDADD = libgslspecfunc.la ../eigen/libgsleigen.la ../linalg/libgsllinalg.la ../sort/libgslsort.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la + + test_SOURCES = test_sf.c test_sf.h test_airy.c test_bessel.c test_coulomb.c test_dilog.c test_gamma.c test_hyperg.c test_legendre.c test_mathieu.c + +diff -Nur gsl-1.15.orig/wavelet/Makefile.am gsl-1.15/wavelet/Makefile.am +--- gsl-1.15.orig/wavelet/Makefile.am 2011-07-28 22:15:49.000000000 +0100 ++++ gsl-1.15/wavelet/Makefile.am 2011-07-28 22:16:03.000000000 +0100 +@@ -10,7 +10,7 @@ + + TESTS = $(check_PROGRAMS) + +-test_LDADD = libgslwavelet.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la ++test_LDADD = libgslwavelet.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../sys/libgslsys.la ../utils/libutils.la + + test_SOURCES = test.c - #bin_PROGRAMS = main dummy - #dummy_SOURCES = version.c diff --git a/sci-libs/gsl/gsl-1.15-r2.ebuild b/sci-libs/gsl/gsl-1.15-r3.ebuild index 0d45d7cf8..aecb49541 100644 --- a/sci-libs/gsl/gsl-1.15-r2.ebuild +++ b/sci-libs/gsl/gsl-1.15-r3.ebuild @@ -15,9 +15,22 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" LICENSE="GPL-3" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~x86-macos ~sparc-solaris ~x86-solaris" -IUSE="static-libs" +IUSE="cblas-external static-libs" + +RDEPEND="cblas-external? ( virtual/cblas )" +DEPEND="${RDEPEND} + virtual/pkgconfig" PATCHES=( "${FILESDIR}"/${P}-cblas.patch ) +DOCS=( AUTHORS BUGS ChangeLog NEWS README THANKS TODO ) + +src_configure() { + if use cblas-external; then + export CBLAS_LIBS="$(pkg-config --libs cblas)" + export CBLAS_CFLAGS="$(pkg-config --cflags cblas)" + fi + autotools-utils_src_configure +} src_install() { autotools-utils_src_install @@ -36,7 +49,9 @@ src_install() { EOF insinto /usr/$(get_libdir)/pkgconfig doins ${libname}.pc - alternatives_for cblas gsl 0 \ + + # Don't add gsl as a cblas alternative if using cblas-external + use cblas-external || alternatives_for cblas gsl 0 \ /usr/$(get_libdir)/pkgconfig/cblas.pc ${libname}.pc \ /usr/include/cblas.h gsl/gsl_cblas.h } diff --git a/sci-libs/gsl/metadata.xml b/sci-libs/gsl/metadata.xml index 7c2d3ccaf..a0ffae858 100644 --- a/sci-libs/gsl/metadata.xml +++ b/sci-libs/gsl/metadata.xml @@ -15,4 +15,8 @@ differential equations, quadrature, Monte Carlo integration, special functions, physical constants, and much more. </longdescription> +<use> + <flag name='cblas-external'>Link gsl with external cblas provided by + (<pkg>virtual/cblas</pkg>) instead of shipped internal version</flag> +</use> </pkgmetadata> diff --git a/virtual/cblas/ChangeLog b/virtual/cblas/ChangeLog index 277172627..742eb39eb 100644 --- a/virtual/cblas/ChangeLog +++ b/virtual/cblas/ChangeLog @@ -1,7 +1,11 @@ # ChangeLog for virtual/cblas -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 # $Header: /var/cvsroot/gentoo-x86/virtual/cblas/ChangeLog,v 1.6 2010/01/11 10:56:05 ulm Exp $ + 19 Dec 2012; Denis Dupeyron <calchan@gentoo.org> cblas-2.0.ebuild: + Only consider sci-libs/gsl as a valid cblas implementation if the + cblas-external USE flag is not set. Update sci-libs/gsl version to 1.15-r3. + *cblas-2.0 (24 Nov 2010) 24 Nov 2010; Sébastien Fabbro <bicatali@gentoo.org> +cblas-2.0.ebuild, diff --git a/virtual/cblas/cblas-2.0.ebuild b/virtual/cblas/cblas-2.0.ebuild index f0d9c9a25..3e0f93f3e 100644 --- a/virtual/cblas/cblas-2.0.ebuild +++ b/virtual/cblas/cblas-2.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2010 Gentoo Foundation +# Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ @@ -15,7 +15,7 @@ IUSE="" RDEPEND="|| ( >=sci-libs/cblas-reference-20110218 - >=sci-libs/gsl-1.14-r2 + >=sci-libs/gsl-1.15-r3[-cblas-external] >=sci-libs/gotoblas2-1.13[incblas] >=sci-libs/atlas-3.9.34 >=sci-libs/mkl-10.3 |