diff options
-rw-r--r-- | sci-libs/gsl/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/gsl/files/gsl-2.1-cblas.patch | 326 | ||||
-rw-r--r-- | sci-libs/gsl/gsl-2.1.ebuild | 109 |
3 files changed, 436 insertions, 0 deletions
diff --git a/sci-libs/gsl/Manifest b/sci-libs/gsl/Manifest index ef0c40f3aab1..c1ca4bcbbb79 100644 --- a/sci-libs/gsl/Manifest +++ b/sci-libs/gsl/Manifest @@ -1,2 +1,3 @@ DIST gsl-1.14.tar.gz 3128269 SHA256 3d4a47afd9a1e7c73b97791b4180d8cc4d5f0e5db6027fe06437f1f3f957fafb SHA512 ac8d9ba4d6e3f5d698e86130af4b4218d36b22525e966ba5d7b47d44f7ad1bef19287efa05f6ad63a81e676179bd3a0bd19461f8383e85a4d674835ff69fcc42 WHIRLPOOL ddc6637b95ad5b2c3943f067f9979fc3070204a04a85e82365c8fd6aec6685a2827bea7056138139893f7bb6cc449318797d235dfe5fee525b1b519927148b0b DIST gsl-1.16.tar.gz 3534080 SHA256 73bc2f51b90d2a780e6d266d43e487b3dbd78945dd0b04b14ca5980fe28d2f53 SHA512 94e998953f30d701e1cd0a5e05d572c5cca7b6f40f0533aa85394ba4218946826408093ffe3049a0ab13d6ba87034fcec1a7d52a67d0b8860dc02b5fd4feb8eb WHIRLPOOL 46bf814c882ca36600d258097642a734b6a6483302cc64c14cab55c0c056ae6116c204495b3b81c57fec1871e145fbc5aa3900006e52e494e9e2fcd34ec06301 +DIST gsl-2.1.tar.gz 3827265 SHA256 59ad06837397617f698975c494fe7b2b698739a59e2fcf830b776428938a0c66 SHA512 d63660fdfae9c9ec9f4fd1894b0af705297cefb6169973ef10faacd0b8a3d52f537508e9c07f4f9f4253138cc48e5570bb10ef303538226d7febd92e8fd184b0 WHIRLPOOL 60aa8ea8d19bc88ace49fcb807f63877d3bd32ff5c9bbca0db9d45b55b3929bba93756f82ce8777be852ca9b015e425540b33091a58ea7edac0d74560cbe39a5 diff --git a/sci-libs/gsl/files/gsl-2.1-cblas.patch b/sci-libs/gsl/files/gsl-2.1-cblas.patch new file mode 100644 index 000000000000..54cc8802c594 --- /dev/null +++ b/sci-libs/gsl/files/gsl-2.1-cblas.patch @@ -0,0 +1,326 @@ + Makefile.am | 8 +++--- + ax_cblas.m4 | 69 +++++++++++++++++++++++++++++++++++++++++++++++ + bspline/Makefile.am | 2 +- + configure.ac | 10 +++++++ + eigen/Makefile.am | 2 +- + gsl-config.in | 4 +-- + gsl.pc.in | 2 +- + interpolation/Makefile.am | 2 +- + linalg/Makefile.am | 2 +- + multifit/Makefile.am | 4 +-- + multimin/Makefile.am | 4 +-- + multiroots/Makefile.am | 2 +- + ode-initval/Makefile.am | 2 +- + poly/Makefile.am | 2 +- + specfunc/Makefile.am | 2 +- + wavelet/Makefile.am | 2 +- + 16 files changed, 100 insertions(+), 19 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 278dcd9..a75418c 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -19,7 +19,7 @@ EXTRA_DIST = autogen.sh gsl-config.in gsl.pc.in configure.ac THANKS BUGS gsl.spe + + lib_LTLIBRARIES = libgsl.la + libgsl_la_SOURCES = version.c +-libgsl_la_LIBADD = $(GSL_LIBADD) $(SUBLIBS) ++libgsl_la_LIBADD = $(GSL_LIBADD) $(SUBLIBS) @CBLAS_LINK_LIBS@ + libgsl_la_LDFLAGS = $(GSL_LDFLAGS) -version-info $(GSL_LT_VERSION) + noinst_HEADERS = templates_on.h templates_off.h build.h + +@@ -29,10 +29,10 @@ m4data_DATA = gsl.m4 + bin_PROGRAMS = gsl-randist gsl-histogram + + gsl_randist_SOURCES = gsl-randist.c +-gsl_randist_LDADD = libgsl.la cblas/libgslcblas.la ++gsl_randist_LDADD = libgsl.la + + gsl_histogram_SOURCES = gsl-histogram.c +-gsl_histogram_LDADD = libgsl.la cblas/libgslcblas.la ++gsl_histogram_LDADD = libgsl.la + + check_SCRIPTS = test_gsl_histogram.sh pkgconfig.test + TESTS = test_gsl_histogram.sh pkgconfig.test +@@ -51,6 +51,8 @@ edit = $(SED) \ + -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 --git a/ax_cblas.m4 b/ax_cblas.m4 +new file mode 100644 +index 0000000..6ef143a +--- /dev/null ++++ b/ax_cblas.m4 +@@ -0,0 +1,69 @@ ++AC_DEFUN([AX_CBLAS],[ ++ ++ ext_cblas=no ++ ext_cblas_libs="-lcblas" ++ ext_cblas_cflags="" ++ ++ AC_ARG_WITH(cblas-external, ++ [AS_HELP_STRING([--with-cblas-external], ++ [Use external CBLAS library (default is no)])], ++ [with_ext_cblas=$withval], ++ [with_ext_cblas=no]) ++ ++ case $with_ext_cblas in ++ no) ext_cblas=no ;; ++ yes) ext_cblas=yes ;; ++ -* | */* | *.a | *.so | *.so.* | *.o) ++ ext_cblas=yes ++ ext_cblas_libs="$with_cblas" ;; ++ *) ext_cblas=yes ++ ext_cblas_libs="-l$with_cblas" ;; ++ esac ++ ++ AC_ARG_WITH(cblas-external-libs, ++ [AS_HELP_STRING([--with-cblas-external-libs=<libs>], ++ [External cblas libraries to link with (default is "$ext_cblas_libs")])], ++ [ext_cblas_libs=$withval], ++ []) ++ ++ AC_ARG_WITH(cblas-external-cflags, ++ [AS_HELP_STRING([--with-cblas-external-cflags=<flags>], ++ [Pre-processing flags to compile with external cblas ("-I<dir>")])], ++ [ext_cblas_cflags=$withval], ++ []) ++ ++ if test x$ext_cblas != xno; then ++ if test "x$CBLAS_LIBS" = x; then ++ CBLAS_LIBS="$ext_cblas_libs" ++ fi ++ if test "x$CBLAS_CFLAGS" = x; then ++ CBLAS_CFLAGS="$ext_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-external-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, [ext_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-external-libs="-L<lib_dir> -l<lib>"]) ++ ]) ++ AC_MSG_RESULT($ext_cblas) ++ LIBS="$LIBS_sav" ++ AC_SUBST([CBLAS_CFLAGS]) ++ AC_SUBST([CBLAS_LIBS]) ++ fi ++]) +diff --git a/bspline/Makefile.am b/bspline/Makefile.am +index 3f4f950..d413036 100644 +--- a/bspline/Makefile.am ++++ b/bspline/Makefile.am +@@ -12,6 +12,6 @@ check_PROGRAMS = test + + 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 --git a/configure.ac b/configure.ac +index d6b673f..c642454 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -205,6 +205,16 @@ if test "x$LIBS" = "x" ; then + AC_CHECK_LIB(m, cos) + fi + ++sinclude(ax_cblas.m4) ++AX_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 --git a/eigen/Makefile.am b/eigen/Makefile.am +index c28bfde..14197a4 100644 +--- a/eigen/Makefile.am ++++ b/eigen/Makefile.am +@@ -11,7 +11,7 @@ noinst_HEADERS = qrstep.c + + 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 --git a/gsl-config.in b/gsl-config.in +old mode 100755 +new mode 100644 +index 3f3fa61..c9c4262 +--- a/gsl-config.in ++++ b/gsl-config.in +@@ -58,11 +58,11 @@ while test $# -gt 0; do + ;; + + --cflags) +- echo @GSL_CFLAGS@ ++ echo @GSL_CFLAGS@ @CBLAS_CFLAGS@ + ;; + + --libs) +- : ${GSL_CBLAS_LIB=-lgslcblas} ++ : ${GSL_CBLAS_LIB=@CBLAS_LIBS@} + echo @GSL_LIBS@ $GSL_CBLAS_LIB @GSL_LIBM@ + ;; + +diff --git a/gsl.pc.in b/gsl.pc.in +index 5e9ef21..5a7a0f3 100644 +--- a/gsl.pc.in ++++ b/gsl.pc.in +@@ -2,7 +2,7 @@ prefix=@prefix@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + includedir=@includedir@ +-GSL_CBLAS_LIB=-lgslcblas ++GSL_CBLAS_LIB=@CBLAS_LIBS@ + + Name: GSL + Description: GNU Scientific Library +diff --git a/interpolation/Makefile.am b/interpolation/Makefile.am +index 1d80755..e45bd51 100644 +--- a/interpolation/Makefile.am ++++ b/interpolation/Makefile.am +@@ -12,7 +12,7 @@ AM_CPPFLAGS = -I$(top_srcdir) + + 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 --git a/linalg/Makefile.am b/linalg/Makefile.am +index 8fb6e7c..90d22e0 100644 +--- a/linalg/Makefile.am ++++ b/linalg/Makefile.am +@@ -12,7 +12,7 @@ TESTS = $(check_PROGRAMS) + + 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 --git a/multifit/Makefile.am b/multifit/Makefile.am +index 891964b..b33f71e 100644 +--- a/multifit/Makefile.am ++++ b/multifit/Makefile.am +@@ -67,8 +67,8 @@ check_PROGRAMS = test #demo + 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 ../sort/libgslsort.la ../statistics/libgslstatistics.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 ../rng/libgslrng.la ../specfunc/libgslspecfunc.la ++test_LDADD = libgslmultifit.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la @CBLAS_LINK_LIBS@ ../matrix/libgslmatrix.la ../sort/libgslsort.la ../statistics/libgslstatistics.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 ../rng/libgslrng.la ../specfunc/libgslspecfunc.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 --git a/multimin/Makefile.am b/multimin/Makefile.am +index 7071359..65a488a 100644 +--- a/multimin/Makefile.am ++++ b/multimin/Makefile.am +@@ -13,8 +13,8 @@ check_PROGRAMS = test #demo + 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 --git a/multiroots/Makefile.am b/multiroots/Makefile.am +index a351c3f..6178448 100644 +--- a/multiroots/Makefile.am ++++ b/multiroots/Makefile.am +@@ -15,5 +15,5 @@ check_PROGRAMS = test + 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 --git a/ode-initval/Makefile.am b/ode-initval/Makefile.am +index 9c774b5..346c381 100644 +--- a/ode-initval/Makefile.am ++++ b/ode-initval/Makefile.am +@@ -12,7 +12,7 @@ check_PROGRAMS = test + + 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 --git a/poly/Makefile.am b/poly/Makefile.am +index f1dae5d..e0f8e83 100644 +--- a/poly/Makefile.am ++++ b/poly/Makefile.am +@@ -10,7 +10,7 @@ noinst_HEADERS = balance.c companion.c qr.c + + 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 ../sort/libgslsort.la +diff --git a/specfunc/Makefile.am b/specfunc/Makefile.am +index 0a7e672..d1361d0 100644 +--- a/specfunc/Makefile.am ++++ b/specfunc/Makefile.am +@@ -12,7 +12,7 @@ TESTS = $(check_PROGRAMS) + + 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 --git a/wavelet/Makefile.am b/wavelet/Makefile.am +index 9da20d8..8cdbd77 100644 +--- a/wavelet/Makefile.am ++++ b/wavelet/Makefile.am +@@ -10,7 +10,7 @@ check_PROGRAMS = test + + 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 + diff --git a/sci-libs/gsl/gsl-2.1.ebuild b/sci-libs/gsl/gsl-2.1.ebuild new file mode 100644 index 000000000000..cb9fb309f3b2 --- /dev/null +++ b/sci-libs/gsl/gsl-2.1.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit autotools eutils flag-o-matic toolchain-funcs + +DESCRIPTION="The GNU Scientific Library" +HOMEPAGE="https://www.gnu.org/software/gsl/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0/19" +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="cblas-external static-libs" + +RDEPEND="cblas-external? ( virtual/cblas )" +DEPEND="${RDEPEND} + app-eselect/eselect-cblas + virtual/pkgconfig" + +PATCHES=( "${FILESDIR}"/${P}-cblas.patch ) + +pkg_pretend() { + # prevent to use external cblas from a previously installed gsl + local current_lib + if use cblas-external; then + current_lib=$(eselect cblas show | cut -d' ' -f2) + if [[ ${current_lib} == gsl ]]; then + ewarn "USE flag cblas-external is set: linking gsl with an external cblas." + ewarn "However the current selected external cblas is gsl." + ewarn "Please install and/or eselect another cblas" + die "Circular gsl dependency" + fi + fi +} + +src_prepare() { + ESELECT_PROF="gsl" + + # bug 349005 + [[ $(tc-getCC)$ == *gcc* ]] && \ + [[ $(tc-getCC)$ != *apple* ]] && \ + [[ $(gcc-major-version)$(gcc-minor-version) -eq 44 ]] \ + && filter-mfpmath sse + filter-flags -ffast-math + + default + eautoreconf + + cp "${FILESDIR}"/eselect.cblas.gsl "${T}"/ + sed -i -e "s:/usr:${EPREFIX}/usr:" "${T}"/eselect.cblas.gsl || die + if [[ ${CHOST} == *-darwin* ]] ; then + sed -i -e 's/\.so\([\.0-9]\+\)\?/\1.dylib/g' \ + "${T}"/eselect.cblas.gsl || die + fi +} + +src_configure() { + if use cblas-external; then + export CBLAS_LIBS="$($(tc-getPKG_CONFIG) --libs cblas)" + export CBLAS_CFLAGS="$($(tc-getPKG_CONFIG) --cflags cblas)" + fi + econf \ + --enable-shared \ + $(use_with cblas-external) \ + $(use_enable static-libs static) +} + +src_test() { + local MAKEOPTS="${MAKEOPTS} -j1" + default +} + +src_install() { + default + + find "${ED}" -name '*.la' -exec rm -f {} + + + # take care of pkgconfig file for cblas implementation. + sed \ + -e "s/@LIBDIR@/$(get_libdir)/" \ + -e "s/@PV@/${PV}/" \ + -e "/^prefix=/s:=:=${EPREFIX}:" \ + -e "/^libdir=/s:=:=${EPREFIX}:" \ + "${FILESDIR}"/cblas.pc.in > cblas.pc \ + || die "sed cblas.pc failed" + insinto /usr/$(get_libdir)/blas/gsl + doins cblas.pc + eselect cblas add $(get_libdir) "${T}"/eselect.cblas.gsl \ + ${ESELECT_PROF} +} + +pkg_postinst() { + local p=cblas + local current_lib=$(eselect ${p} show | cut -d' ' -f2) + if [[ ${current_lib} == ${ESELECT_PROF} || -z ${current_lib} ]]; then + # work around eselect bug #189942 + local configfile="${EROOT}"/etc/env.d/${p}/$(get_libdir)/config + [[ -e ${configfile} ]] && rm -f ${configfile} + eselect ${p} set ${ESELECT_PROF} + elog "${p} has been eselected to ${ESELECT_PROF}" + else + elog "Current eselected ${p} is ${current_lib}" + elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):" + elog "\t eselect ${p} set ${ESELECT_PROF}" + fi +} |