From 69a4b2c57b5bcbb06dd7b6bd6f182abfe936fa6c Mon Sep 17 00:00:00 2001 From: François Bissey Date: Sat, 4 Mar 2017 17:26:28 +1300 Subject: sci-libs/gsl: remove int64 support since it doesn't exist upstream. Bump the ebuild as the current one produce broken install for the gslcblas alternative. Package-Manager: portage-2.3.3 --- sci-libs/gsl/files/gsl-2.3-cblas-external.patch | 1402 +---------------------- sci-libs/gsl/gsl-2.1-r1.ebuild | 82 ++ sci-libs/gsl/gsl-2.1.ebuild | 78 -- sci-libs/gsl/gsl-2.3-r1.ebuild | 84 ++ sci-libs/gsl/gsl-2.3.ebuild | 78 -- sci-libs/gsl/metadata.xml | 1 - 6 files changed, 175 insertions(+), 1550 deletions(-) create mode 100644 sci-libs/gsl/gsl-2.1-r1.ebuild delete mode 100644 sci-libs/gsl/gsl-2.1.ebuild create mode 100644 sci-libs/gsl/gsl-2.3-r1.ebuild delete mode 100644 sci-libs/gsl/gsl-2.3.ebuild diff --git a/sci-libs/gsl/files/gsl-2.3-cblas-external.patch b/sci-libs/gsl/files/gsl-2.3-cblas-external.patch index 7e12b370b..38b25aacc 100644 --- a/sci-libs/gsl/files/gsl-2.3-cblas-external.patch +++ b/sci-libs/gsl/files/gsl-2.3-cblas-external.patch @@ -1,36 +1,3 @@ - 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 @@ -66,188 +33,6 @@ index c522001..4513bc8 100644 -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 @@ -269,696 +54,17 @@ index a26fc1e..564d426 100644 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) +diff --git a/doc/examples/Makefile.am b/doc/examples/Makefile.am +index f0dcc02..b2f0c0e 100644 +--- a/doc/examples/Makefile.am ++++ b/doc/examples/Makefile.am +@@ -8,5 +8,5 @@ examples_txt = blas.txt block.txt bspline.txt cblas.txt cdf.txt cheb.txt combina --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 + dist_noinst_DATA = $(examples_src) $(examples_txt) - 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 -+ -+ +-LDADD = ../../libgsl.la ../../cblas/libgslcblas.la ++LDADD = ../../libgsl.la @CBLAS_LINK_LIBS@ + AM_DEFAULT_SOURCE_EXT = .c diff --git a/gsl-config.in b/gsl-config.in old mode 100755 new mode 100644 @@ -979,92 +85,6 @@ index 3f3fa61..c9c4262 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 < "${T}"/alternative-cblas-generic.sh || die - - use cblas-external || \ - numeric-int64-multibuild_install_alternative cblas ${NUMERIC_MODULE_NAME} -} diff --git a/sci-libs/gsl/gsl-2.3-r1.ebuild b/sci-libs/gsl/gsl-2.3-r1.ebuild new file mode 100644 index 000000000..95b4344be --- /dev/null +++ b/sci-libs/gsl/gsl-2.3-r1.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit alternatives-2 autotools multilib-build numeric toolchain-funcs + +DESCRIPTION="GNU Scientific Library" +HOMEPAGE="http://www.gnu.org/software/gsl/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0/19" +KEYWORDS="~amd64 ~mips ~s390 ~sh ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris" +IUSE="cblas-external static-libs" + +RDEPEND="cblas-external? ( >=virtual/cblas-2.0-r3[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]" + +PATCHES=( + "${FILESDIR}"/${PN}-2.3-cblas-external.patch + ) + +src_prepare() { + default + eautoreconf + multilib_copy_sources +} + +src_configure() { + gsl_configure() { + cd "${BUILD_DIR}" + if use cblas-external; then + export CBLAS_LIBS="$($(tc-getPKG_CONFIG) --libs cblas)" + export CBLAS_CFLAGS="$($(tc-getPKG_CONFIG) --cflags cblas)" + fi + econf $(use_with cblas-external) + } + multilib_foreach_abi gsl_configure +} + +src_compile() { + gsl_compile() { + cd "${BUILD_DIR}" + default + } + multilib_foreach_abi gsl_compile +} + +src_install() { + gsl_install() { + cd "${BUILD_DIR}" + local libname=gslcblas + + create_pkgconfig \ + --name "${libname}" \ + --description "${PN} CBLAS implementation" \ + --libs "-l${libname}" \ + --libs-private "-lm" \ + --cflags "-I\${includedir}/${PN}" \ + --version "${PV}" \ + --url "${HOMEPAGE}" \ + "${libname}" + + GSL_ALTERNATIVES+=( /usr/$(get_libdir)/pkgconfig/cblas.pc ${libname}.pc ) + + default + } + multilib_foreach_abi gsl_install + + # Don't add gsl as a cblas alternative if using cblas-external + use cblas-external || alternatives_for cblas gsl 0 \ + ${GSL_ALTERNATIVES[@]} \ + /usr/include/cblas.h gsl/gsl_cblas.h +} + +src_test() { + gsl_test() { + cd "${BUILD_DIR}" + default + } + multilib_foreach_abi gsl_test +} diff --git a/sci-libs/gsl/gsl-2.3.ebuild b/sci-libs/gsl/gsl-2.3.ebuild deleted file mode 100644 index c70483d8a..000000000 --- a/sci-libs/gsl/gsl-2.3.ebuild +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -NUMERIC_MODULE_NAME="gsl" - -inherit autotools flag-o-matic numeric-int64-multibuild toolchain-funcs - -DESCRIPTION="GNU Scientific Library" -HOMEPAGE="http://www.gnu.org/software/gsl/" -SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" - -LICENSE="GPL-3" -SLOT="0/19.3" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="cblas-external static-libs" - -RDEPEND="cblas-external? ( >=virtual/cblas-2.0-r3[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND} - >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]" - -PATCHES=( "${FILESDIR}"/${P}-cblas-external.patch ) - -src_prepare() { - default - eautoreconf - numeric-int64-multibuild_copy_sources -} - -src_configure() { - gsl_configure() { - if use cblas-external; then - export CBLAS_LIBS="$($(tc-getPKG_CONFIG) --libs cblas)" - export CBLAS_CFLAGS="$($(tc-getPKG_CONFIG) --cflags cblas)" - fi - if numeric-int64_is_int64_build; then - append-fflags $(fortran_int64_abi_fflags) - fi - econf $(use_with cblas-external) - } - numeric-int64-multibuild_foreach_all_abi_variants run_in_build_dir gsl_configure -} - -src_compile() { - numeric-int64-multibuild_foreach_all_abi_variants run_in_build_dir default -} - -src_test() { - local MAKEOPTS="${MAKEOPTS} -j1" - numeric-int64-multibuild_foreach_all_abi_variants run_in_build_dir default -} - -src_install() { - gsl_src_install() { - local profname=$(numeric-int64_get_module_name) - local libname="${profname//-/_}" - - default - - if ! numeric-int64_is_static_build; then - create_pkgconfig \ - --name ${profname} \ - --description "${DESCRIPTION} CBLAS implementation" \ - --libs "-L\${libdir} -l${libname}" \ - --libs-private "-lm" \ - --cflags "-I\${includedir} $(numeric-int64_get_fortran_int64_abi_fflags)" \ - ${profname} - fi - - } - numeric-int64-multibuild_foreach_all_abi_variants run_in_build_dir gsl_src_install - - printf "/usr/include/cblas.h ${PN}/cblas.h" > "${T}"/alternative-cblas-generic.sh || die - - use cblas-external || \ - numeric-int64-multibuild_install_alternative cblas ${NUMERIC_MODULE_NAME} -} diff --git a/sci-libs/gsl/metadata.xml b/sci-libs/gsl/metadata.xml index bac5f4993..6e2e8e11f 100644 --- a/sci-libs/gsl/metadata.xml +++ b/sci-libs/gsl/metadata.xml @@ -21,6 +21,5 @@ Link gsl with external cblas provided by (virtual/cblas) instead of shipped internal version - Build the 64 bits integer library -- cgit v1.2.3-18-g5258