diff options
-rw-r--r-- | sci-libs/gsl/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/gsl/gsl-2.5.ebuild | 78 |
2 files changed, 79 insertions, 0 deletions
diff --git a/sci-libs/gsl/Manifest b/sci-libs/gsl/Manifest index fd13241e5..7b6e10425 100644 --- a/sci-libs/gsl/Manifest +++ b/sci-libs/gsl/Manifest @@ -2,3 +2,4 @@ DIST gsl-1.16.tar.gz 3534080 BLAKE2B 1c55a41e5ed57b57f671074240d23416aa8f23e3cc2 DIST gsl-2.1.tar.gz 3827265 BLAKE2B 2b359dc9f74ed69aa033508923cff4541894c26a6d2e5c606ee5cf4e4e95c58d270351998537c8c4f4bc8130ee5870b6f64133ede9079f20d8309d83637164f5 SHA512 d63660fdfae9c9ec9f4fd1894b0af705297cefb6169973ef10faacd0b8a3d52f537508e9c07f4f9f4253138cc48e5570bb10ef303538226d7febd92e8fd184b0 DIST gsl-2.3.tar.gz 4510731 BLAKE2B 5bc58346340a04f039405d4b256598b14f33e9b4e265c4fb159e691f5ea3372a0f9b7526b6ea6e259d5968ef8e7ce5b4d4e2465a78fb0b42f85a383fdc32d4bf SHA512 ada622079f4ac667d95f74b38aa368726fc1b18fd34555bcefe90920d3da93a9289ebff966be43325af806107001bc8973daf9f8418e6c97b866be2296b566ff DIST gsl-2.4.tar.gz 5916715 BLAKE2B f22c07b2d5759a383e05b8bfdba70071672cc27f12ff2a8c755451fe7e10c8e2d80e3fcc601508c5e9942e4cfd05e51c43ba96666326b760e4390eb0c2552886 SHA512 12442b023dd959e8b22a9c486646b5cedec7fdba0daf2604cda365cf96d10d99aefdec2b42e59c536cc071da1525373454e5ed6f4b15293b305ca9b1dc6db130 +DIST gsl-2.5.tar.gz 7303881 BLAKE2B 7c6d10c21071a1af1f03123f83244476d2e90fcd27d05a115b03a74fe631eb7d8081f5260e534ae58ab0997c1111f980a5e4cb50d110ca626fe810c44be70180 SHA512 5b4c5c023f9029ce220f4e09aa4d0234fed94d42ac224d58fda095fe0532d54237a7c33278f8b5d0ba051f6004486edb38d0adb4fcb49337a8c1d8a18cf4a24a diff --git a/sci-libs/gsl/gsl-2.5.ebuild b/sci-libs/gsl/gsl-2.5.ebuild new file mode 100644 index 000000000..3dda7b878 --- /dev/null +++ b/sci-libs/gsl/gsl-2.5.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit alternatives-2 autotools flag-o-matic multilib-build numeric toolchain-funcs + +DESCRIPTION="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="~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}"/${PN}-2.3-cblas-external.patch + ) + +src_prepare() { + default + eautoreconf + multilib_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 + econf $(use_with cblas-external) + } + # fma flags, which can be enabled by -march=native, cause some tests to fail. + # https://github.com/gentoo/sci/pull/815 + append-cflags $(test-flags-CC -mno-fma -mno-fma4) + + multilib_foreach_abi run_in_build_dir gsl_configure +} + +src_compile() { + multilib_foreach_abi run_in_build_dir default +} + +src_test() { + multilib_foreach_abi run_in_build_dir default +} + +src_install() { + gsl_install() { + 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 run_in_build_dir 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 +} |