From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- sci-libs/gsl/Manifest | 16 + sci-libs/gsl/files/cblas.pc.in | 12 + sci-libs/gsl/files/eselect.cblas.gsl | 5 + sci-libs/gsl/files/gsl-1.16-cblas.patch | 294 ++++++ sci-libs/gsl/files/gsl-2.1-cblas.patch | 326 +++++++ sci-libs/gsl/files/gsl-2.3-cblas.patch | 1485 +++++++++++++++++++++++++++++++ sci-libs/gsl/gsl-1.16.ebuild | 106 +++ sci-libs/gsl/gsl-2.1.ebuild | 108 +++ sci-libs/gsl/gsl-2.3.ebuild | 111 +++ sci-libs/gsl/gsl-2.4.ebuild | 111 +++ sci-libs/gsl/metadata.xml | 26 + 11 files changed, 2600 insertions(+) create mode 100644 sci-libs/gsl/Manifest create mode 100644 sci-libs/gsl/files/cblas.pc.in create mode 100644 sci-libs/gsl/files/eselect.cblas.gsl create mode 100644 sci-libs/gsl/files/gsl-1.16-cblas.patch create mode 100644 sci-libs/gsl/files/gsl-2.1-cblas.patch create mode 100644 sci-libs/gsl/files/gsl-2.3-cblas.patch create mode 100644 sci-libs/gsl/gsl-1.16.ebuild create mode 100644 sci-libs/gsl/gsl-2.1.ebuild create mode 100644 sci-libs/gsl/gsl-2.3.ebuild create mode 100644 sci-libs/gsl/gsl-2.4.ebuild create mode 100644 sci-libs/gsl/metadata.xml (limited to 'sci-libs/gsl') diff --git a/sci-libs/gsl/Manifest b/sci-libs/gsl/Manifest new file mode 100644 index 000000000000..82d239affbdd --- /dev/null +++ b/sci-libs/gsl/Manifest @@ -0,0 +1,16 @@ +AUX cblas.pc.in 290 SHA256 f47133de2f49a5ff53c8e295d03fbe8923c79cd0978cedb903cfdf7e57a873a1 SHA512 2a1dc22097e2a50fd4a797c446b32202b74e9d754c8b61c51a3789c3eb42372adcc7fb25901c468d604cc4e7961d7f11e0e5883179894047948e46879fc04719 WHIRLPOOL f8e93aa2c61d3ac08664c3162f0e754c1d6cefca0a4d4ab8ee8f763e6ec46049ff5537c7f9266200856b58ffab88fb9af115eb4be32deb99ed6d2005abcb13ec +AUX eselect.cblas.gsl 216 SHA256 2be1ba93a0bafa73df52913f54d1c7fd299aa1cd0a98c5fbe4eac894073ebac7 SHA512 e5cd92f4e9829538642a0fed54fdf75bc579c8c20769997ec5a3ce0287993476e68fbeefec8e46162d05ea908d2e79187c15ebdd00f6558ecbd25de21ece64dc WHIRLPOOL 1a0591e670a1ca51fa6cc4b2883931a49f3da59c2c673d786f6acdb72b50b7fee22ee30f2d3c6ac864c149381c23ca5c41ba586f159830cdeff97b86cf6a03f3 +AUX gsl-1.16-cblas.patch 17458 SHA256 568f6bf06b9441f741c028eaf7b12edb0e96093a16ea7a2d975e0cbde261c083 SHA512 70cae5682bfc7788e6f67ec355b52e291f32c2500b9baf9dd336d7cbb42b5eac4d89ecafeb23c4b478836d3c137d40d47dd17d375708df3c2dd41781a78f56bf WHIRLPOOL a7a5e6b52dc0466ad180853f5824d071d715743ef850ec808c7615fcc3b4f98d940c6f896faf44647c8e0915a6e5b6b7575ff9b66a59e337e04cd18d94cc7807 +AUX gsl-2.1-cblas.patch 17467 SHA256 757e70d883241097b5625e40233d448ad2c5c7cd6e60a920158d4e88475b2124 SHA512 e22ece09ac7f846a4b8e4bec123b974d994a66e47a728b732ebbe9493bbb28be16b2e598504068a6a014fc2921df74e03dc9d8bf418e94be1bd8ce7cf662162c WHIRLPOOL 85df5d3413a041ea192e454b9438c3b6003197820e338b8cca7ce174d539705be0df750e20b793d1221307f6e90ba38051f243de2c57e2a661d5449002a81363 +AUX gsl-2.3-cblas.patch 58225 SHA256 41dc907c042631f810739c10058efc5b814b0e3907203c5b5d7292e3e35484bc SHA512 08cd7b0416b8510823e77a73e664d0223e91e2726a45c36f61c79125f919aed0f81fca59aa8121fce1466b7312d0dddd88b95ae92b44ddb9d2d9c00e4afef6d7 WHIRLPOOL fa252eb088facbaa109ad13c1b3d5082d308262061d04a6479bed054b80797acd0c654dfceaaf25b4b5cfb2c50b8d4ff086e88fb48ca7385c286fe148baea916 +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 +DIST gsl-2.3.tar.gz 4510731 SHA256 562500b789cd599b3a4f88547a7a3280538ab2ff4939504c8b4ac4ca25feadfb SHA512 ada622079f4ac667d95f74b38aa368726fc1b18fd34555bcefe90920d3da93a9289ebff966be43325af806107001bc8973daf9f8418e6c97b866be2296b566ff WHIRLPOOL f6c597f88ccc4b98002f3887a0268f4964c2c6243196e1fd862f3c7360798900a8cfa4d739b9876b13b71481d175904d1577b6b059a31aa16156fe9fc3848ea5 +DIST gsl-2.4.tar.gz 5916715 SHA256 4d46d07b946e7b31c19bbf33dda6204d7bedc2f5462a1bae1d4013426cd1ce9b SHA512 12442b023dd959e8b22a9c486646b5cedec7fdba0daf2604cda365cf96d10d99aefdec2b42e59c536cc071da1525373454e5ed6f4b15293b305ca9b1dc6db130 WHIRLPOOL 5703de11ec8e8ba6a204ff87c0f3b695e7363d1f2322eb2fe13686b315ef922d3d1b64959c8a7d59d73aafbe716ba02f14265f9c37edd4569f8d02b06c32229f +EBUILD gsl-1.16.ebuild 3029 SHA256 62fe2c0ad1c439f5b5fbf2aed55620dabb4cbfdd584abe74f4f70a9fbdb0b41e SHA512 d78ce45caf5879c4b059de54e0aa31706a16f10dccdd30c761b683d55c0a45ab8f96c600e959a2c1bd20b5c0780bf4e389757028cce23126840e1d0a9d84fb60 WHIRLPOOL 11ac18f622b4a01683e5bcf8e965950a43608d724a799304b687f18cbfac3be550d9c88f01fed6c4bdd28bb4f67f2d0165ac4dd9a9ca7fef4040d4e08b19f8e5 +EBUILD gsl-2.1.ebuild 3014 SHA256 072d83b6c37361093715bdfdce3f253616c2bde7dd5c55cc5ac98621deba2f05 SHA512 6afe40abe12fe25cd6811e2d189369cea098d9943780021e4f298780a8a11f278a2910e47736e9adca39a6521320d7f12ba2e7156e5ccd075f0837b6b9a6cd83 WHIRLPOOL eefb487c3c003700222ca6a7c2c664d0cbcc8f3826631cf1183886b0a46274f04b6b79ed7620dabfb41a02d11c652743acc7f02944208ff7106722fc4046e47a +EBUILD gsl-2.3.ebuild 3127 SHA256 f30cd15c87575ef5d484812c7b12376b628fa559810659ad37080652a6202935 SHA512 fc380378b8b18fd1bd9484a8f118924b6e13e03c5cc6e6caf8943b88eb78892a965990d9236e2c66e217d9f057bf7050790283a8167682c14b5acd74c0937e58 WHIRLPOOL a5084fdc5c5a7acd152d4c89f85c2cc746b1626848cf368380a06eaff9aac313dc376946e71a09a8acfaf3abdd845fdde892905fb08b53ede8b6564caf20b51f +EBUILD gsl-2.4.ebuild 3139 SHA256 2fc52e7210b68971f7c94ccb94c2665572a115387bf82f390fcd6f7111d56e85 SHA512 a95655ff57d9c5d044cc44b8f146b0f0c91472d28017e486b8e059d820e804f10d2855520e803a53d37241e04dff10af54f3d8e2012b857a613a13b4f5b3be56 WHIRLPOOL eca6734206ddff207a81c4a5e57b13048a94a0f739cef9e3a3e6ca4e5873cd6c41fe6f3ef4defaa5b32114eccf7a659b3b3ee7b4828c4c94589ccd8259d94edf +MISC ChangeLog 4886 SHA256 592b822f836f55a4edf868dbbeb6421ceab2c4af0ddafafc80dd3e1a673ad047 SHA512 4dcf559512968882a0b24c6cdfe444ecd13073a07a0f7d5d0c193e5a78fa96a8fce6f7813ea6c9466cf5037211212b6eedbbf2899dd9b757e337e1cddc37f03c WHIRLPOOL a8f36e0729691f36dfce354e415172671a3eccb7cf31a9f73ac70589901ab251550718c24ea29b51d3cece67ce03942863d559e80e8f7c7b74cdb1a29834ab2a +MISC ChangeLog-2015 13742 SHA256 a458deacb59f40e9d52dc9ee082ccc820664f067a2c36e3f135e17128576a00b SHA512 b82cd0aaee623fbd9fc56e75ac6b62d0e43153cbbd01b325e884c4afece61f56a55989ca67e66c045515832dc61ecc032707586669680774de99405287d95265 WHIRLPOOL e381d5a7ce245eb5a5155bd70e9ed4271a1790c4d59ceb678cdc961ce67b674d3312f2f184411eaf6b80a906949bb116961e978f5c75e257fb3312ddeb4f2594 +MISC metadata.xml 1190 SHA256 6a43c1db8ec42ab4f9dda359182480f19fe55ad70cc19c870ad6b8433dca056d SHA512 f56ec87aeb8f257480a631748db79c78193797e1ecd586dbbd78f31a01fbbd3341fa67ffd3244e5dba352478ee552184d6a1d9b5ef5d54d67b038215090eca00 WHIRLPOOL ac94a92dc6aaa68c8823a457a15adefd390bbd89e7078f41412a2029e516664aa6953dbdf6ee624d86612b41a36b9a847d18a2c975aef1b8ec98722318d6191f diff --git a/sci-libs/gsl/files/cblas.pc.in b/sci-libs/gsl/files/cblas.pc.in new file mode 100644 index 000000000000..a2580f85e6e8 --- /dev/null +++ b/sci-libs/gsl/files/cblas.pc.in @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/@LIBDIR@ +includedir=${prefix}/include + +Name: cblas +Description: GSL C Implementation of the Basic Linear Algebra Subprograms +Version: @PV@ +URL: http://www.gnu.org/software/gsl +Libs: -L${libdir} -lcblas +Libs.private: -lm +Cflags: -I${includedir} diff --git a/sci-libs/gsl/files/eselect.cblas.gsl b/sci-libs/gsl/files/eselect.cblas.gsl new file mode 100644 index 000000000000..af6fee51fef9 --- /dev/null +++ b/sci-libs/gsl/files/eselect.cblas.gsl @@ -0,0 +1,5 @@ +libgslcblas.so /usr/@LIBDIR@/libcblas.so +libgslcblas.so.0 /usr/@LIBDIR@/libcblas.so.0 +libgslcblas.a /usr/@LIBDIR@/libcblas.a +../blas/gsl/cblas.pc /usr/@LIBDIR@/pkgconfig/cblas.pc +gsl/gsl_cblas.h /usr/include/cblas.h diff --git a/sci-libs/gsl/files/gsl-1.16-cblas.patch b/sci-libs/gsl/files/gsl-1.16-cblas.patch new file mode 100644 index 000000000000..c29ef5294717 --- /dev/null +++ b/sci-libs/gsl/files/gsl-1.16-cblas.patch @@ -0,0 +1,294 @@ +diff -Nur gsl-1.16.orig/ax_cblas.m4 gsl-1.16/ax_cblas.m4 +--- gsl-1.16.orig/ax_cblas.m4 1969-12-31 16:00:00.000000000 -0800 ++++ gsl-1.16/ax_cblas.m4 2013-08-19 15:48:54.376300825 -0700 +@@ -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=], ++ [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=], ++ [Pre-processing flags to compile with external cblas ("-I")])], ++ [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"]) ++ ]) ++ 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 -l"]) ++ ]) ++ AC_MSG_RESULT($ext_cblas) ++ LIBS="$LIBS_sav" ++ AC_SUBST([CBLAS_CFLAGS]) ++ AC_SUBST([CBLAS_LIBS]) ++ fi ++]) +diff -Nur gsl-1.16.orig/bspline/Makefile.am gsl-1.16/bspline/Makefile.am +--- gsl-1.16.orig/bspline/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/bspline/Makefile.am 2013-08-19 15:25:27.728497742 -0700 +@@ -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.16.orig/configure.ac gsl-1.16/configure.ac +--- gsl-1.16.orig/configure.ac 2013-07-19 08:14:45.000000000 -0700 ++++ gsl-1.16/configure.ac 2013-08-19 15:28:24.172640793 -0700 +@@ -191,6 +191,16 @@ + 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 ]) +diff -Nur gsl-1.16.orig/eigen/Makefile.am gsl-1.16/eigen/Makefile.am +--- gsl-1.16.orig/eigen/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/eigen/Makefile.am 2013-08-19 15:25:27.728497742 -0700 +@@ -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.16.orig/gsl-config.in gsl-1.16/gsl-config.in +--- gsl-1.16.orig/gsl-config.in 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/gsl-config.in 2013-08-19 15:25:27.728497742 -0700 +@@ -58,11 +58,11 @@ + ;; + + --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 -Nur gsl-1.16.orig/gsl.pc.in gsl-1.16/gsl.pc.in +--- gsl-1.16.orig/gsl.pc.in 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/gsl.pc.in 2013-08-19 15:25:27.728497742 -0700 +@@ -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 +diff -Nur gsl-1.16.orig/interpolation/Makefile.am gsl-1.16/interpolation/Makefile.am +--- gsl-1.16.orig/interpolation/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/interpolation/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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.16.orig/linalg/Makefile.am gsl-1.16/linalg/Makefile.am +--- gsl-1.16.orig/linalg/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/linalg/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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.16.orig/Makefile.am gsl-1.16/Makefile.am +--- gsl-1.16.orig/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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 +-libgsl_la_LIBADD += cblas/libgslcblas.la + libgsl_la_LDFLAGS += -no-undefined + endif + +@@ -35,10 +34,10 @@ + 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 +@@ -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' + +--- gsl-1.16.orig/multifit/Makefile.am 2013-07-18 06:04:26.000000000 +1000 ++++ gsl-1.16/multifit/Makefile.am 2013-11-22 16:57:26.170330257 +1100 +@@ -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 ../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 ++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 + + #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.16.orig/multimin/Makefile.am gsl-1.16/multimin/Makefile.am +--- gsl-1.16.orig/multimin/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/multimin/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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.16.orig/multiroots/Makefile.am gsl-1.16/multiroots/Makefile.am +--- gsl-1.16.orig/multiroots/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/multiroots/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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.16.orig/ode-initval/Makefile.am gsl-1.16/ode-initval/Makefile.am +--- gsl-1.16.orig/ode-initval/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/ode-initval/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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.16.orig/poly/Makefile.am gsl-1.16/poly/Makefile.am +--- gsl-1.16.orig/poly/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/poly/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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 ../sort/libgslsort.la +diff -Nur gsl-1.16.orig/specfunc/Makefile.am gsl-1.16/specfunc/Makefile.am +--- gsl-1.16.orig/specfunc/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/specfunc/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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.16.orig/wavelet/Makefile.am gsl-1.16/wavelet/Makefile.am +--- gsl-1.16.orig/wavelet/Makefile.am 2013-07-17 13:04:26.000000000 -0700 ++++ gsl-1.16/wavelet/Makefile.am 2013-08-19 15:25:27.729497736 -0700 +@@ -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 + 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=], ++ [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=], ++ [Pre-processing flags to compile with external cblas ("-I")])], ++ [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"]) ++ ]) ++ 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 -l"]) ++ ]) ++ 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 ]) +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/files/gsl-2.3-cblas.patch b/sci-libs/gsl/files/gsl-2.3-cblas.patch new file mode 100644 index 000000000000..7e12b370b0dc --- /dev/null +++ b/sci-libs/gsl/files/gsl-2.3-cblas.patch @@ -0,0 +1,1485 @@ + Makefile.am | 8 +- + Makefile.am.porig | 66 ++++ + ax_cblas.m4 | 69 +++++ + bspline/Makefile.am | 2 +- + bspline/Makefile.am.porig | 17 ++ + configure.ac | 10 + + configure.ac.porig | 647 ++++++++++++++++++++++++++++++++++++++++ + eigen/Makefile.am | 2 +- + eigen/Makefile.am.porig | 18 ++ + gsl-config.in | 4 +- + gsl-config.in.porig | 80 +++++ + gsl.pc.in | 2 +- + gsl.pc.in.porig | 11 + + interpolation/Makefile.am | 2 +- + interpolation/Makefile.am.porig | 18 ++ + linalg/Makefile.am | 2 +- + linalg/Makefile.am.porig | 16 + + multifit/Makefile.am | 4 +- + multifit/Makefile.am.porig | 74 +++++ + multimin/Makefile.am | 4 +- + multimin/Makefile.am.porig | 20 ++ + multiroots/Makefile.am | 2 +- + multiroots/Makefile.am.porig | 19 ++ + ode-initval/Makefile.am | 2 +- + ode-initval/Makefile.am.porig | 18 ++ + poly/Makefile.am | 2 +- + poly/Makefile.am.porig | 17 ++ + specfunc/Makefile.am | 2 +- + specfunc/Makefile.am.porig | 19 ++ + wavelet/Makefile.am | 2 +- + wavelet/Makefile.am.porig | 17 ++ + 31 files changed, 1157 insertions(+), 19 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index c522001..4513bc8 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/Makefile.am.porig b/Makefile.am.porig +new file mode 100644 +index 0000000..c522001 +--- /dev/null ++++ b/Makefile.am.porig +@@ -0,0 +1,66 @@ ++## Process this file with automake to produce Makefile.in ++ ++# AUTOMAKE_OPTIONS = readme-alpha ++ ++SUBDIRS = gsl utils sys test err const complex cheb block vector matrix permutation combination multiset sort ieee-utils cblas blas linalg eigen specfunc dht qrng rng randist fft poly fit multifit multifit_nlinear multilarge multilarge_nlinear rstat statistics siman sum integration interpolation histogram ode-initval ode-initval2 roots multiroots min multimin monte ntuple diff deriv cdf wavelet bspline spblas spmatrix splinalg doc ++ ++SUBLIBS = block/libgslblock.la blas/libgslblas.la bspline/libgslbspline.la complex/libgslcomplex.la cheb/libgslcheb.la dht/libgsldht.la diff/libgsldiff.la deriv/libgslderiv.la eigen/libgsleigen.la err/libgslerr.la fft/libgslfft.la fit/libgslfit.la histogram/libgslhistogram.la ieee-utils/libgslieeeutils.la integration/libgslintegration.la interpolation/libgslinterpolation.la linalg/libgsllinalg.la matrix/libgslmatrix.la min/libgslmin.la monte/libgslmonte.la multifit/libgslmultifit.la multifit_nlinear/libgslmultifit_nlinear.la multilarge/libgslmultilarge.la multilarge_nlinear/libgslmultilarge_nlinear.la multimin/libgslmultimin.la multiroots/libgslmultiroots.la ntuple/libgslntuple.la ode-initval/libgslodeiv.la ode-initval2/libgslodeiv2.la permutation/libgslpermutation.la combination/libgslcombination.la multiset/libgslmultiset.la poly/libgslpoly.la qrng/libgslqrng.la randist/libgslrandist.la rng/libgslrng.la roots/libgslroots.la siman/libgslsiman.la sort/libgslsort.la specfunc/libgslspecfunc.la rstat/libgslrstat.la statistics/libgslstatistics.la sum/libgslsum.la sys/libgslsys.la test/libgsltest.la utils/libutils.la vector/libgslvector.la cdf/libgslcdf.la wavelet/libgslwavelet.la spmatrix/libgslspmatrix.la spblas/libgslspblas.la splinalg/libgslsplinalg.la ++ ++pkginclude_HEADERS = gsl_math.h gsl_pow_int.h gsl_nan.h gsl_machine.h gsl_mode.h gsl_precision.h gsl_types.h gsl_version.h gsl_minmax.h gsl_inline.h ++ ++bin_SCRIPTS = gsl-config ++ ++pkgconfigdir = $(libdir)/pkgconfig ++pkgconfig_DATA= gsl.pc ++ ++CLEANFILES = gsl.pc gsl-config ++ ++EXTRA_DIST = autogen.sh gsl-config.in gsl.pc.in configure.ac THANKS BUGS gsl.spec.in gsl.m4 test_gsl_histogram.sh pkgconfig.test ++ ++lib_LTLIBRARIES = libgsl.la ++libgsl_la_SOURCES = version.c ++libgsl_la_LIBADD = $(GSL_LIBADD) $(SUBLIBS) ++libgsl_la_LDFLAGS = $(GSL_LDFLAGS) -version-info $(GSL_LT_VERSION) ++noinst_HEADERS = templates_on.h templates_off.h build.h ++ ++m4datadir = $(datadir)/aclocal ++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_histogram_SOURCES = gsl-histogram.c ++gsl_histogram_LDADD = libgsl.la cblas/libgslcblas.la ++ ++check_SCRIPTS = test_gsl_histogram.sh pkgconfig.test ++TESTS = test_gsl_histogram.sh pkgconfig.test ++ ++#bin_PROGRAMS = main dummy ++#dummy_SOURCES = version.c ++#dummy_LDADD = $(SUBLIBS) ++#main_SOURCES = version.c env.c ++#main_LDADD = libgsl.la ++ ++edit = $(SED) \ ++ -e 's|@prefix[@]|$(prefix)|g' \ ++ -e 's|@exec_prefix[@]|$(exec_prefix)|g' \ ++ -e 's|@libdir[@]|$(libdir)|g' \ ++ -e 's|@includedir[@]|$(includedir)|g' \ ++ -e 's|@GSL_CFLAGS[@]|$(GSL_CFLAGS)|g' \ ++ -e 's|@GSL_LIBM[@]|$(GSL_LIBM)|g' \ ++ -e 's|@GSL_LIBS[@]|$(GSL_LIBS)|g' \ ++ -e 's|@LIBS[@]|$(LIBS)|g' \ ++ -e 's|@VERSION[@]|$(VERSION)|g' ++ ++gsl-config gsl.pc: Makefile ++ @rm -f $@ $@.tmp ++ @$(edit) '$(srcdir)/$@.in' >>$@.tmp ++ @chmod a-w $@.tmp ++ @mv $@.tmp $@ ++ @echo creating $@ ++ ++gsl-config: $(srcdir)/gsl-config.in ++gsl.pc: $(srcdir)/gsl.pc.in ++ +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=], ++ [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=], ++ [Pre-processing flags to compile with external cblas ("-I")])], ++ [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"]) ++ ]) ++ 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 -l"]) ++ ]) ++ 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/bspline/Makefile.am.porig b/bspline/Makefile.am.porig +new file mode 100644 +index 0000000..3f4f950 +--- /dev/null ++++ b/bspline/Makefile.am.porig +@@ -0,0 +1,17 @@ ++noinst_LTLIBRARIES = libgslbspline.la ++ ++pkginclude_HEADERS = gsl_bspline.h ++ ++AM_CPPFLAGS = -I$(top_srcdir) ++ ++libgslbspline_la_SOURCES = bspline.c greville.c ++ ++noinst_HEADERS = bspline.h ++ ++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_SOURCES = test.c +diff --git a/configure.ac b/configure.ac +index a26fc1e..564d426 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -208,6 +208,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 ]) +diff --git a/configure.ac.porig b/configure.ac.porig +new file mode 100644 +index 0000000..a26fc1e +--- /dev/null ++++ b/configure.ac.porig +@@ -0,0 +1,647 @@ ++dnl Process this file with autoconf to produce a configure script. ++ ++AC_INIT([gsl],[2.3]) ++AC_CONFIG_SRCDIR(gsl_math.h) ++ ++AM_INIT_AUTOMAKE([gnu]) ++AC_CONFIG_HEADERS([config.h]) ++AM_MAINTAINER_MODE ++ ++dnl Library versioning (C:R:A == current:revision:age) ++dnl See the libtool manual for an explanation of the numbers ++dnl ++dnl gsl-1.0 libgsl 0:0:0 libgslcblas 0:0:0 ++dnl gsl-1.1 libgsl 1:0:1 libgslcblas 0:0:0 ++dnl gsl-1.1.1 libgsl 2:0:2 libgslcblas 0:0:0 ++dnl gsl-1.2 libgsl 3:0:3 libgslcblas 0:0:0 ++dnl gsl-1.3 libgsl 4:0:4 libgslcblas 0:0:0 ++dnl gsl-1.4 libgsl 5:0:5 libgslcblas 0:0:0 ++dnl gsl-1.5 libgsl 6:0:6 libgslcblas 0:0:0 ++dnl gsl-1.6 libgsl 7:0:7 libgslcblas 0:0:0 ++dnl gsl-1.7 libgsl 8:0:8 libgslcblas 0:0:0 ++dnl gsl-1.8 libgsl 9:0:9 libgslcblas 0:0:0 ++dnl gsl-1.9 libgsl 10:0:10 libgslcblas 0:0:0 ++dnl gsl-1.10 libgsl 10:0:10 (*) libgslcblas 0:0:0 ++dnl gsl-1.11 libgsl 12:0:12 libgslcblas 0:0:0 ++dnl gsl-1.12 libgsl 13:0:13 libgslcblas 0:0:0 ++dnl gsl-1.13 libgsl 14:0:14 libgslcblas 0:0:0 ++dnl gsl-1.14 libgsl 15:0:15 libgslcblas 0:0:0 ++dnl gsl-1.15 libgsl 16:0:16 libgslcblas 0:0:0 ++dnl gsl-1.16 libgsl 17:0:17 libgslcblas 0:0:0 ++dnl gsl-2.0 libgsl 18:0:18 (**) libgslcblas 0:0:0 ++dnl gsl-2.1 libgsl 19:0:0 libgslcblas 0:0:0 ++dnl gsl-2.2 libgsl 20:0:1 libgslcblas 0:0:0 ++dnl gsl-2.2.1 libgsl 21:0:2 libgslcblas 0:0:0 ++dnl gsl-2.3 libgsl 22:0:3 libgslcblas 0:0:0 ++dnl ++dnl (*) There was an error on this release. Firstly, the versioning ++dnl numbers were not updated. Secondly, 2 functions were removed, but ++dnl the age not reset--this should have been 11:0:0. However these ++dnl functions were not documented and are regarded as internal, so we ++dnl will assume 11:0:11. ++dnl ++dnl (**) There was an error on this release. Age should have been ++dnl reset to 18:0:0 ++dnl ++dnl How to update library version number ++dnl ==================================== ++dnl ++dnl C: increment if the interface has additions, changes, removals. ++dnl ++dnl R: increment any time the source changes; set to 0 if you ++dnl incremented CURRENT ++dnl ++dnl A: increment if any interfaces have been added; set to 0 if any ++dnl interfaces have been removed. removal has precedence over adding, ++dnl so set to 0 if both happened. ++dnl ++dnl See https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html ++dnl for more detailed info ++ ++dnl ++GSL_CURRENT=22 ++GSL_REVISION=0 ++GSL_AGE=3 ++dnl ++CBLAS_CURRENT=0 ++CBLAS_REVISION=0 ++CBLAS_AGE=0 ++ ++GSL_LT_VERSION="${GSL_CURRENT}:${GSL_REVISION}:${GSL_AGE}" ++AC_SUBST(GSL_LT_VERSION) ++ ++GSL_LT_CBLAS_VERSION="${CBLAS_CURRENT}:${CBLAS_REVISION}:${CBLAS_AGE}" ++AC_SUBST(GSL_LT_CBLAS_VERSION) ++ ++case "$VERSION" in ++ *+) ++ ;; ++ *) ++ AC_DEFINE(RELEASED,[],[Defined if this is an official release]) ++ ;; ++esac ++ ++dnl Split VERSION into GSL_VERSION_MAJOR and GSL_VERSION_MINOR ++dnl Follows AX_SPLIT_VERSION macro from AC-Archive ++dnl Rhys Ulerich ++AC_PROG_SED ++GSL_MAJOR_VERSION=`echo "$VERSION" | $SED 's/\([[^.]][[^.]]*\).*/\1/'` ++GSL_MINOR_VERSION=`echo "$VERSION" | $SED 's/[[^.]][[^.]]*.\([[^.]][[^.]]*\).*/\1/'` ++AC_SUBST(GSL_MAJOR_VERSION) ++AC_SUBST(GSL_MINOR_VERSION) ++ ++dnl things required by automake ++dnl AC_ARG_PROGRAM ++AC_PROG_MAKE_SET ++ ++dnl Check for which system. ++AC_CANONICAL_HOST ++ ++dnl Checks for programs. ++AC_LANG(C) ++AC_PROG_CC ++AC_PROG_CPP ++AC_PROG_INSTALL ++AC_PROG_LN_S ++LT_INIT([win32-dll]) ++ ++dnl Check compiler features ++AC_TYPE_SIZE_T ++dnl AC_C_CONST ++AC_C_VOLATILE ++AC_C_INLINE ++AC_C_CHAR_UNSIGNED ++ ++GSL_CFLAGS="-I$includedir" ++GSL_LIBS="-L$libdir -lgsl" ++dnl macro from libtool - can be replaced with LT_LIB_M when we require libtool 2 ++LT_LIB_M ++GSL_LIBM=$LIBM ++ ++AC_SUBST(GSL_CFLAGS) ++AC_SUBST(GSL_LIBS) ++AC_SUBST(GSL_LIBM) ++ ++if test "$ac_cv_c_inline" != no ; then ++dnl Check for "extern inline", using a modified version of the test ++dnl for AC_C_INLINE from acspecific.mt ++dnl ++ AC_CACHE_CHECK([for GNU-style extern inline], ac_cv_c_extern_inline, ++ [ac_cv_c_extern_inline=no ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[extern $ac_cv_c_inline double foo(double x); ++ extern $ac_cv_c_inline double foo(double x) { return x + 1.0 ; } ; ++ double foo (double x) { return x + 1.0 ; };]], [[ foo(1.0) ]])],[ac_cv_c_extern_inline="yes"],[]) ++ ]) ++ ++ if test "$ac_cv_c_extern_inline" != no ; then ++ AC_DEFINE(HAVE_INLINE,[1],[Define if you have inline]) ++ else ++ AC_CACHE_CHECK([for C99-style inline], ac_cv_c_c99inline, ++ [ac_cv_c_c99inline=no ++ dnl next line is a necessary condition ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[extern inline void* foo() { foo(); return &foo ; };]], ++ [[ return foo() != 0 ]])],[ac_cv_c_c99inline="yes"],[]) ++ dnl but not sufficient, extern must work but inline on its own should not ++ if test "$ac_cv_c_c99inline" != no ; then ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[inline void* foo() { foo(); return &foo ; };]], ++ [[ return foo() != 0 ]])],[],ac_cv_c_c99inline="no") ++ fi ++ ]) ++ if test "$ac_cv_c_c99inline" != no ; then ++ AC_DEFINE(HAVE_INLINE,[1],[Define if you have inline]) ++ AC_DEFINE(HAVE_C99_INLINE,[1],[Define if you have inline with C99 behavior]) ++ fi ++ fi ++fi ++ ++dnl Checks for header files. ++AC_CHECK_HEADERS(ieeefp.h) ++ ++dnl Checks for typedefs, structures, and compiler characteristics. ++ ++case $host in ++ *-*-cygwin* | *-*-mingw* ) ++ if test "$enable_shared" = yes; then ++ GSLCBLAS_LDFLAGS="$GSLCBLAS_LDFLAGS -no-undefined" ++ GSL_LDFLAGS="$GSL_LDFLAGS -no-undefined" ++ GSL_LIBADD="cblas/libgslcblas.la" ++ fi ++ ;; ++esac ++ ++AC_SUBST(GSLCBLAS_LDFLAGS) ++AC_SUBST(GSL_LDFLAGS) ++AC_SUBST(GSL_LIBADD) ++ ++dnl Checks for library functions. ++ ++dnl AC_FUNC_ALLOCA ++AC_FUNC_VPRINTF ++ ++dnl strcasecmp, strerror, xmalloc, xrealloc, probably others should be added. ++dnl removed strerror from this list, it's hardcoded in the err/ directory ++dnl Any functions which appear in this list of functions should be provided ++dnl in the utils/ directory ++dnl xmalloc is not used, removed (bjg) ++AC_REPLACE_FUNCS(memcpy memmove strdup strtol strtoul) ++ ++AC_CACHE_CHECK(for EXIT_SUCCESS and EXIT_FAILURE, ++ac_cv_decl_exit_success_and_failure, ++AC_EGREP_CPP(yes, ++[ ++#include ++#ifdef EXIT_SUCCESS ++yes ++#endif ++], ++ac_cv_decl_exit_success_and_failure=yes, ++ac_cv_decl_exit_success_and_failure=no) ++) ++ ++if test "$ac_cv_decl_exit_success_and_failure" = yes ; then ++ AC_DEFINE(HAVE_EXIT_SUCCESS_AND_FAILURE,1,[Defined if you have ansi EXIT_SUCCESS and EXIT_FAILURE in stdlib.h]) ++fi ; ++ ++dnl Use alternate libm if specified by user ++ ++if test "x$LIBS" = "x" ; then ++ AC_CHECK_LIB(m, cos) ++fi ++ ++dnl Remember to put a definition in acconfig.h for each of these ++AC_CHECK_DECLS(feenableexcept,,,[#define _GNU_SOURCE 1 ++#include ]) ++AC_CHECK_DECLS(fesettrapenable,,,[#define _GNU_SOURCE 1 ++#include ]) ++AC_CHECK_DECLS(hypot,,,[#include ]) ++AC_CHECK_DECLS(expm1,,,[#include ]) ++AC_CHECK_DECLS(acosh,,,[#include ]) ++AC_CHECK_DECLS(asinh,,,[#include ]) ++AC_CHECK_DECLS(atanh,,,[#include ]) ++AC_CHECK_DECLS(ldexp,,,[#include ]) ++AC_CHECK_DECLS(frexp,,,[#include ]) ++AC_CHECK_DECLS([fprnd_t],[],[],[[#include ]]) ++AC_CHECK_DECLS(isinf,,,[#include ]) ++AC_CHECK_DECLS(isfinite,,,[#include ]) ++AC_CHECK_DECLS(finite,,,[#include ++#if HAVE_IEEEFP_H ++#include ++#endif]) ++AC_CHECK_DECLS(isnan,,,[#include ]) ++ ++dnl OpenBSD has a broken implementation of log1p. ++case "$host" in ++ *-*-*openbsd*) ++ AC_MSG_RESULT([avoiding OpenBSD system log1p - using gsl version]) ++ ;; ++ *) ++ AC_CHECK_DECLS(log1p,,,[#include ]) ++ ;; ++esac ++ ++AC_CACHE_CHECK([for long double stdio], ac_cv_func_printf_longdouble, ++[AC_RUN_IFELSE([AC_LANG_SOURCE([[ ++#include ++#include ++int main (void) ++{ ++const char * s = "5678.25"; long double x = 1.234 ; ++fprintf(stderr,"%Lg\n",x) ; ++sscanf(s, "%Lg", &x); ++if (x == 5678.25) {exit (0);} else {exit(1); }; ++}]])],[ac_cv_func_printf_longdouble="yes"],[ac_cv_func_printf_longdouble="no"],[ac_cv_func_printf_longdouble="no"])]) ++ ++if test "$ac_cv_func_printf_longdouble" != no; then ++ AC_DEFINE(HAVE_PRINTF_LONGDOUBLE,1,[Define this if printf can handle %Lf for long double]) ++fi ++ ++AC_CACHE_CHECK([for extended floating point registers],ac_cv_c_extended_fp, ++[case "$host" in ++ *sparc*-*-*) ++ ac_cv_c_extended_fp=no ++ ;; ++ *powerpc*-*-*) ++ ac_cv_c_extended_fp=no ++ ;; ++ *hppa*-*-*) ++ ac_cv_c_extended_fp=no ++ ;; ++ *alpha*-*-*) ++ ac_cv_c_extended_fp=no ++ ;; ++ *68k*-*-*) ++ ac_cv_c_extended_fp=yes ++ ;; ++ *86-*-*) ++ ac_cv_c_extended_fp=yes ++ ;; ++ x86_64-*-*) ++ ac_cv_c_extended_fp=yes ++ ;; ++ *) ++ ac_cv_c_extended_fp=unknown ++ ;; ++esac ++]) ++ ++if test $ac_cv_c_extended_fp != "no" ; then ++ AC_DEFINE(HAVE_EXTENDED_PRECISION_REGISTERS,1,[Defined on architectures with excess floating-point precision]) ++fi ++ ++AC_CACHE_CHECK([for IEEE arithmetic interface type], ac_cv_c_ieee_interface, ++[case "$host" in ++ sparc-*-linux*) ++ ac_cv_c_ieee_interface=gnusparc ++ ;; ++ m68k-*-linux*) ++ ac_cv_c_ieee_interface=gnum68k ++ ;; ++ powerpc-*-linux*) ++ ac_cv_c_ieee_interface=gnuppc ++ ;; ++ *86-*-gnu | *86_64-*-gnu | *86-*-linux* | *86_64-*-linux*) ++ ac_cv_c_ieee_interface=gnux86 ++ ;; ++ *-*-sunos4*) ++ ac_cv_c_ieee_interface=sunos4 ++ ;; ++ *-*-solaris*) ++ ac_cv_c_ieee_interface=solaris ++ ;; ++ *-*-hpux11*) ++ ac_cv_c_ieee_interface=hpux11 ++ ;; ++ *-*-hpux*) ++ ac_cv_c_ieee_interface=hpux ++ ;; ++ *-*-osf*) ++ ac_cv_c_ieee_interface=tru64 ++ ;; ++ *-*-aix*) ++ ac_cv_c_ieee_interface=aix ++ ;; ++ *-*-irix*) ++ ac_cv_c_ieee_interface=irix ++ ;; ++ powerpc-*-*darwin*) ++ ac_cv_c_ieee_interface=darwin ++ ;; ++ *86-*-*darwin*) ++ ac_cv_c_ieee_interface=darwin86 ++ ;; ++ *-*-*netbsd*) ++ ac_cv_c_ieee_interface=netbsd ++ ;; ++ *-*-*openbsd*) ++ ac_cv_c_ieee_interface=openbsd ++ ;; ++ *-*-*bsd*) ++ ac_cv_c_ieee_interface=freebsd ++ ;; ++ *-*-os2*) ++ ac_cv_c_ieee_interface=os2emx ++ ;; ++ *) ++ ac_cv_c_ieee_interface=unknown ++ ;; ++esac ++]) ++ ++if test "$ac_cv_c_ieee_interface" = "gnux86" ; then ++ AC_CACHE_CHECK([for FPU_SETCW], ac_cv_c_fpu_setcw, ++ [ac_cv_c_fpu_setcw=no ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ++#ifndef _FPU_SETCW ++#include ++#define _FPU_SETCW(cw) __setfpucw(cw) ++#endif ++]], [[ unsigned short mode = 0 ; _FPU_SETCW(mode); ]])],[ac_cv_c_fpu_setcw="yes"],[ac_cv_c_ieee_interface=unknown]) ++ ]) ++fi ++ ++if test "$ac_cv_c_ieee_interface" = "gnux86" ; then ++ AC_CACHE_CHECK([for SSE extensions], ac_cv_c_fpu_sse, ++ [ac_cv_c_fpu_sse=no ++ AC_RUN_IFELSE([AC_LANG_PROGRAM([[ ++#include ++#define _FPU_SETMXCSR(cw_sse) asm volatile ("ldmxcsr %0" : : "m" (*&cw_sse)) ++]], [[ unsigned int mode = 0x1f80 ; _FPU_SETMXCSR(mode); exit(0); ]])],[ac_cv_c_fpu_sse="yes"],[ac_cv_c_fpu_sse="no"],[ ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ++#include ++#define _FPU_SETMXCSR(cw_sse) asm volatile ("ldmxcsr %0" : : "m" (*&cw_sse)) ++]], [[ unsigned int mode = 0x1f80 ; _FPU_SETMXCSR(mode); exit(0); ]])],[ac_cv_c_fpu_sse="yes"],[ac_cv_c_fpu_sse="no"]) ++])]) ++ ++ if test $ac_cv_c_fpu_sse = yes; then ++ AC_DEFINE([HAVE_FPU_X86_SSE], 1, ++ [Define if x86 processor has sse extensions.]) ++ fi ++fi ++ ++ac_tr_ieee_interface=HAVE_`echo $ac_cv_c_ieee_interface | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`_IEEE_INTERFACE ++AC_DEFINE_UNQUOTED($ac_tr_ieee_interface,1,[IEEE Interface Type]) ++ ++AC_SUBST(HAVE_GNUSPARC_IEEE_INTERFACE) ++AC_SUBST(HAVE_GNUM68K_IEEE_INTERFACE) ++AC_SUBST(HAVE_GNUPPC_IEEE_INTERFACE) ++AC_SUBST(HAVE_GNUX86_IEEE_INTERFACE) ++AC_SUBST(HAVE_SUNOS4_IEEE_INTERFACE) ++AC_SUBST(HAVE_SOLARIS_IEEE_INTERFACE) ++AC_SUBST(HAVE_HPUX11_IEEE_INTERFACE) ++AC_SUBST(HAVE_HPUX_IEEE_INTERFACE) ++AC_SUBST(HAVE_TRU64_IEEE_INTERFACE) ++AC_SUBST(HAVE_IRIX_IEEE_INTERFACE) ++AC_SUBST(HAVE_AIX_IEEE_INTERFACE) ++AC_SUBST(HAVE_FREEBSD_IEEE_INTERFACE) ++AC_SUBST(HAVE_OS2EMX_IEEE_INTERFACE) ++AC_SUBST(HAVE_NETBSD_IEEE_INTERFACE) ++AC_SUBST(HAVE_OPENBSD_IEEE_INTERFACE) ++AC_SUBST(HAVE_DARWIN_IEEE_INTERFACE) ++AC_SUBST(HAVE_DARWIN86_IEEE_INTERFACE) ++ ++dnl Check for IEEE control flags ++ ++save_cflags="$CFLAGS" ++AC_CACHE_CHECK([for IEEE compiler flags], ac_cv_c_ieee_flags, ++[ ++case "$host" in ++ alpha*-*-*) ++ if test X"$GCC" = Xyes ; then ++ ieee_flags='-mieee -mfp-rounding-mode=d' ++ else ++ # This assumes Compaq's C compiler. ++ ieee_flags='-ieee -fprm d' ++ fi ++ ;; ++esac ++if test X"$ieee_flags" != X ; then ++ CFLAGS="$ieee_flags $CFLAGS" ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int foo;]])],[ac_cv_c_ieee_flags="$ieee_flags"],[ac_cv_c_ieee_flags="none"]) ++else ++ ac_cv_c_ieee_flags="none" ++fi]) ++ ++if test "$ac_cv_c_ieee_flags" != "none" ; then ++ CFLAGS="$ac_cv_c_ieee_flags $save_cflags" ++else ++ CFLAGS="$save_cflags" ++fi ++ ++dnl Check IEEE comparisons, whether "x != x" is true for NaNs ++dnl ++AC_CACHE_CHECK([for IEEE comparisons], ac_cv_c_ieee_comparisons, ++[AC_RUN_IFELSE([AC_LANG_SOURCE([[ ++#include ++int main (void) ++{ ++ int status; double inf, nan; ++ inf = exp(1.0e10); ++ nan = inf / inf ; ++ status = (nan == nan); ++ exit (status); ++}]])],[ac_cv_c_ieee_comparisons="yes"],[ac_cv_c_ieee_comparisons="no"],[ac_cv_c_ieee_comparisons="yes"]) ++]) ++ ++if test "$ac_cv_c_ieee_comparisons" != no ; then ++ AC_DEFINE(HAVE_IEEE_COMPARISONS,1,[Define this if IEEE comparisons work correctly (e.g. NaN != NaN)]) ++fi ++ ++dnl Check for IEEE denormalized arithmetic ++dnl ++AC_CACHE_CHECK([for IEEE denormalized values], ac_cv_c_ieee_denormals, ++[AC_RUN_IFELSE([AC_LANG_SOURCE([[ ++#include ++int main (void) ++{ ++ int i, status; ++ volatile double z = 1e-308; ++ for (i = 0; i < 5; i++) { z = z / 10.0 ; }; ++ for (i = 0; i < 5; i++) { z = z * 10.0 ; }; ++ status = (z == 0.0); ++ exit (status); ++}]])],[ac_cv_c_ieee_denormals="yes"],[ac_cv_c_ieee_denormals="no"],[ac_cv_c_ieee_denormals="yes"]) ++]) ++ ++if test "$ac_cv_c_ieee_denormals" != no ; then ++ AC_DEFINE(HAVE_IEEE_DENORMALS,1,[Define this if IEEE denormalized numbers are available]) ++fi ++ ++AH_TEMPLATE([HIDE_INLINE_STATIC],[Define if you need to hide the static definitions of inline functions]) ++ ++AH_BOTTOM([/* Use 0 and 1 for EXIT_SUCCESS and EXIT_FAILURE if we don't have them */ ++#if !HAVE_EXIT_SUCCESS_AND_FAILURE ++#define EXIT_SUCCESS 0 ++#define EXIT_FAILURE 1 ++#endif]) ++ ++AH_BOTTOM([/* Define one of these if you have a known IEEE arithmetic interface */ ++#undef HAVE_GNUSPARC_IEEE_INTERFACE ++#undef HAVE_GNUM68K_IEEE_INTERFACE ++#undef HAVE_GNUPPC_IEEE_INTERFACE ++#undef HAVE_GNUX86_IEEE_INTERFACE ++#undef HAVE_SUNOS4_IEEE_INTERFACE ++#undef HAVE_SOLARIS_IEEE_INTERFACE ++#undef HAVE_HPUX11_IEEE_INTERFACE ++#undef HAVE_HPUX_IEEE_INTERFACE ++#undef HAVE_TRU64_IEEE_INTERFACE ++#undef HAVE_IRIX_IEEE_INTERFACE ++#undef HAVE_AIX_IEEE_INTERFACE ++#undef HAVE_FREEBSD_IEEE_INTERFACE ++#undef HAVE_OS2EMX_IEEE_INTERFACE ++#undef HAVE_NETBSD_IEEE_INTERFACE ++#undef HAVE_OPENBSD_IEEE_INTERFACE ++#undef HAVE_DARWIN_IEEE_INTERFACE ++#undef HAVE_DARWIN86_IEEE_INTERFACE]) ++ ++AH_BOTTOM([/* Define a rounding function which moves extended precision values ++ out of registers and rounds them to double-precision. This should ++ be used *sparingly*, in places where it is necessary to keep ++ double-precision rounding for critical expressions while running in ++ extended precision. For example, the following code should ensure ++ exact equality, even when extended precision registers are in use, ++ ++ double q = GSL_COERCE_DBL(3.0/7.0) ; ++ if (q == GSL_COERCE_DBL(3.0/7.0)) { ... } ; ++ ++ It carries a penalty even when the program is running in double ++ precision mode unless you compile a separate version of the ++ library with HAVE_EXTENDED_PRECISION_REGISTERS turned off. */ ++ ++#if HAVE_EXTENDED_PRECISION_REGISTERS ++#define GSL_COERCE_DBL(x) (gsl_coerce_double(x)) ++#else ++#define GSL_COERCE_DBL(x) (x) ++#endif]) ++ ++AH_BOTTOM([/* Substitute gsl functions for missing system functions */ ++ ++#if !HAVE_DECL_HYPOT ++#define hypot gsl_hypot ++#endif ++ ++#if !HAVE_DECL_LOG1P ++#define log1p gsl_log1p ++#endif ++ ++#if !HAVE_DECL_EXPM1 ++#define expm1 gsl_expm1 ++#endif ++ ++#if !HAVE_DECL_ACOSH ++#define acosh gsl_acosh ++#endif ++ ++#if !HAVE_DECL_ASINH ++#define asinh gsl_asinh ++#endif ++ ++#if !HAVE_DECL_ATANH ++#define atanh gsl_atanh ++#endif ++ ++#if !HAVE_DECL_LDEXP ++#define ldexp gsl_ldexp ++#endif ++ ++#if !HAVE_DECL_FREXP ++#define frexp gsl_frexp ++#endif ++ ++#if !HAVE_DECL_ISINF ++#define isinf gsl_isinf ++#endif ++ ++#if !HAVE_DECL_ISFINITE ++#define isfinite gsl_finite ++#endif ++ ++#if !HAVE_DECL_FINITE ++#define finite gsl_finite ++#endif ++ ++#if !HAVE_DECL_ISNAN ++#define isnan gsl_isnan ++#endif]) ++ ++AH_BOTTOM([#ifdef __GNUC__ ++#define DISCARD_POINTER(p) do { ; } while(p ? 0 : 0); ++#else ++#define DISCARD_POINTER(p) /* ignoring discarded pointer */ ++#endif]) ++ ++AH_BOTTOM([#if defined(GSL_RANGE_CHECK_OFF) || !defined(GSL_RANGE_CHECK) ++#define GSL_RANGE_CHECK 0 /* turn off range checking by default internally */ ++#endif]) ++ ++AH_BOTTOM([#define RETURN_IF_NULL(x) if (!x) { return ; } ++]) ++ ++AH_VERBATIM([GSL_DISABLE_DEPRECATED], ++[/* Disable deprecated functions and enums while building */ ++#define GSL_DISABLE_DEPRECATED 1]) ++ ++dnl ++AC_CONFIG_FILES([ \ ++Makefile \ ++gsl_version.h \ ++gsl.spec \ ++blas/Makefile \ ++block/Makefile \ ++bspline/Makefile \ ++cblas/Makefile \ ++cdf/Makefile \ ++cheb/Makefile \ ++combination/Makefile \ ++complex/Makefile \ ++const/Makefile \ ++deriv/Makefile \ ++dht/Makefile \ ++diff/Makefile \ ++doc/Makefile \ ++doc/examples/Makefile \ ++eigen/Makefile \ ++err/Makefile \ ++fit/Makefile \ ++fft/Makefile \ ++gsl/Makefile \ ++histogram/Makefile \ ++ieee-utils/Makefile \ ++integration/Makefile \ ++interpolation/Makefile \ ++linalg/Makefile \ ++matrix/Makefile \ ++min/Makefile \ ++monte/Makefile \ ++multifit/Makefile \ ++multifit_nlinear/Makefile \ ++multilarge/Makefile \ ++multilarge_nlinear/Makefile \ ++multimin/Makefile \ ++multiroots/Makefile \ ++multiset/Makefile \ ++ntuple/Makefile \ ++ode-initval/Makefile \ ++ode-initval2/Makefile \ ++permutation/Makefile \ ++poly/Makefile \ ++qrng/Makefile \ ++randist/Makefile \ ++rng/Makefile \ ++roots/Makefile \ ++rstat/Makefile \ ++siman/Makefile \ ++sort/Makefile \ ++spblas/Makefile \ ++splinalg/Makefile \ ++spmatrix/Makefile \ ++specfunc/Makefile \ ++statistics/Makefile \ ++sum/Makefile \ ++sys/Makefile \ ++test/Makefile \ ++utils/Makefile \ ++vector/Makefile \ ++wavelet/Makefile \ ++]) ++ ++AC_OUTPUT +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/eigen/Makefile.am.porig b/eigen/Makefile.am.porig +new file mode 100644 +index 0000000..c28bfde +--- /dev/null ++++ b/eigen/Makefile.am.porig +@@ -0,0 +1,18 @@ ++noinst_LTLIBRARIES = libgsleigen.la ++ ++check_PROGRAMS = test ++ ++pkginclude_HEADERS = gsl_eigen.h ++libgsleigen_la_SOURCES = jacobi.c symm.c symmv.c nonsymm.c nonsymmv.c herm.c hermv.c gensymm.c gensymmv.c genherm.c genhermv.c gen.c genv.c sort.c francis.c schur.c ++ ++AM_CPPFLAGS = -I$(top_srcdir) ++ ++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_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-config.in.porig b/gsl-config.in.porig +new file mode 100755 +index 0000000..3f3fa61 +--- /dev/null ++++ b/gsl-config.in.porig +@@ -0,0 +1,80 @@ ++#! /bin/sh ++ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++includedir=@includedir@ ++ ++usage() ++{ ++ cat < 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 +} diff --git a/sci-libs/gsl/gsl-2.1.ebuild b/sci-libs/gsl/gsl-2.1.ebuild new file mode 100644 index 000000000000..b380fcc5bb81 --- /dev/null +++ b/sci-libs/gsl/gsl-2.1.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +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 ~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 +} diff --git a/sci-libs/gsl/gsl-2.3.ebuild b/sci-libs/gsl/gsl-2.3.ebuild new file mode 100644 index 000000000000..9e70befa7198 --- /dev/null +++ b/sci-libs/gsl/gsl-2.3.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +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.3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~sparc-solaris ~x86-solaris" +IUSE="cblas-external +deprecated 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 + if use deprecated; then + sed -i -e "/GSL_DISABLE_DEPRECATED/,+2d" configure.ac || die + fi + eautoreconf + + cp "${FILESDIR}"/eselect.cblas.gsl "${T}"/ || die + 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 +} diff --git a/sci-libs/gsl/gsl-2.4.ebuild b/sci-libs/gsl/gsl-2.4.ebuild new file mode 100644 index 000000000000..659ed95f7978 --- /dev/null +++ b/sci-libs/gsl/gsl-2.4.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +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/23" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~sparc-solaris ~x86-solaris" +IUSE="cblas-external +deprecated static-libs" + +RDEPEND="cblas-external? ( virtual/cblas:= )" +DEPEND="${RDEPEND} + app-eselect/eselect-cblas + virtual/pkgconfig" + +PATCHES=( "${FILESDIR}"/${PN}-2.3-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 + if use deprecated; then + sed -i -e "/GSL_DISABLE_DEPRECATED/,+2d" configure.ac || die + fi + eautoreconf + + cp "${FILESDIR}"/eselect.cblas.gsl "${T}"/ || die + 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 +} diff --git a/sci-libs/gsl/metadata.xml b/sci-libs/gsl/metadata.xml new file mode 100644 index 000000000000..4a8296b2f944 --- /dev/null +++ b/sci-libs/gsl/metadata.xml @@ -0,0 +1,26 @@ + + + + + sci@gentoo.org + Gentoo Science Project + + + The GNU Scientific Library (GSL) is a collection of routines for + numerical analysis. The routines are written from scratch by the GSL + team in C, and present a modern API for C programmers, while allowing + wrappers to be written for very high level languages. + + GSL includes data types and routines for complex numbers, vectors, + matrices, basic linear algebra subroutines (BLAS), eigensystems, + simulated annealing, minimization, root finding, pseudo-random + numbers, least-squares fitting, fast Fourier transforms (FFT), + differential equations, quadrature, Monte Carlo integration, special + functions, physical constants, and much more. + + + Link gsl with external cblas provided by + (virtual/cblas) instead of shipped internal version + Enable deprecated functions + + -- cgit v1.2.3