diff options
author | Sebastien Fabbro <bicatali@gentoo.org> | 2007-10-10 13:22:40 +0000 |
---|---|---|
committer | Sebastien Fabbro <bicatali@gentoo.org> | 2007-10-10 13:22:40 +0000 |
commit | 7405e15451cfa6a6e1de022a4e81d05cbd44210f (patch) | |
tree | 55f0c6cd2708a7abccb0d1c9efeafad58cd4877f /sci-libs/gsl/gsl-1.10.ebuild | |
parent | Removed old versions, workaround for eselect bug #189942, cleanups. (diff) | |
download | gentoo-2-7405e15451cfa6a6e1de022a4e81d05cbd44210f.tar.gz gentoo-2-7405e15451cfa6a6e1de022a4e81d05cbd44210f.tar.bz2 gentoo-2-7405e15451cfa6a6e1de022a4e81d05cbd44210f.zip |
Version bump, removed old versions, added work around eselect bug #189942. Added new cblas use flag to allow use of external cblas library.
(Portage version: 2.1.3.12)
Diffstat (limited to 'sci-libs/gsl/gsl-1.10.ebuild')
-rw-r--r-- | sci-libs/gsl/gsl-1.10.ebuild | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/sci-libs/gsl/gsl-1.10.ebuild b/sci-libs/gsl/gsl-1.10.ebuild new file mode 100644 index 000000000000..a646b0593c73 --- /dev/null +++ b/sci-libs/gsl/gsl-1.10.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/gsl/gsl-1.10.ebuild,v 1.1 2007/10/10 13:22:40 bicatali Exp $ + +inherit eutils flag-o-matic toolchain-funcs autotools + +DESCRIPTION="The GNU Scientific Library" +HOMEPAGE="http://www.gnu.org/software/gsl/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="cblas" + +RDEPEND="app-admin/eselect-cblas + cblas? ( virtual/cblas )" + +DEPEND="${RDEPEND} + dev-util/pkgconfig" + +pkg_setup() { + # icc-10.0.026 did not pass rng tests (last check: gsl-1.10) + if [[ $(tc-getCC) == icc ]]; then + eerror "icc known to fail tests. Revert to safer compiler and re-emerge." + die "gsl does not work when compiled with icc" + fi +} + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/gsl-cblas.patch + eautoreconf +} + +src_compile() { + # could someone check if they are still needed? + replace-cpu-flags k6 k6-2 k6-3 i586 + filter-flags -ffast-math + local myconf= + use cblas && myconf="--with-cblas=$(pkg-config --libs cblas)" + econf "${myconf}"|| die "econf failed" + emake || die "emake failed" +} + +src_install() { + emake install DESTDIR="${D}" || die "emake install failed." + dodoc AUTHORS BUGS ChangeLog NEWS README SUPPORT \ + THANKS TODO || die "dodoc failed" + + # take care of pkgconfig file for cblas implementation. + sed -e "s/@LIBDIR@/$(get_libdir)/" \ + -e "s/@PV@/${PV}/" \ + "${FILESDIR}"/cblas.pc.in > cblas.pc \ + || die "sed cblas.pc failed" + insinto /usr/$(get_libdir)/blas/gsl + doins cblas.pc || die "installing cblas.pc failed" + ESELECT_PROF=gsl + eselect cblas add $(get_libdir) "${FILESDIR}"/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="${ROOT}"/etc/env.d/${p}/lib/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 +} |