diff options
author | Andrea Arteaga <andyspiros@gmail.com> | 2012-08-20 11:20:04 +0200 |
---|---|---|
committer | Andrea Arteaga <andyspiros@gmail.com> | 2012-08-20 11:20:04 +0200 |
commit | d0833606ef86a2763e1c83a1199952aad2432ca5 (patch) | |
tree | 5f7556f6e948a19ab89d6cc2558c51f41d9bcf08 | |
parent | update to EAPI=4, cosmetics, deps (diff) | |
download | sci-d0833606ef86a2763e1c83a1199952aad2432ca5.tar.gz sci-d0833606ef86a2763e1c83a1199952aad2432ca5.tar.bz2 sci-d0833606ef86a2763e1c83a1199952aad2432ca5.zip |
[sci-libs/openblas] Version bump
-rw-r--r-- | sci-libs/openblas/ChangeLog | 6 | ||||
-rw-r--r-- | sci-libs/openblas/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/openblas/openblas-0.2.3.ebuild | 131 |
3 files changed, 138 insertions, 0 deletions
diff --git a/sci-libs/openblas/ChangeLog b/sci-libs/openblas/ChangeLog index 198533a79..43e11f410 100644 --- a/sci-libs/openblas/ChangeLog +++ b/sci-libs/openblas/ChangeLog @@ -2,6 +2,12 @@ # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ +*openblas-0.2.3 (20 Aug 2012) + + 20 Aug 2012; Andrea Arteaga <andyspiros@gmail.com> +openblas-0.2.3.ebuild: + Version bump + + *openblas-0.2.2 (09 Jul 2012) 09 Jul 2012; Sébastien Fabbro <bicatali@gentoo.org> -openblas-0.1.1.ebuild, diff --git a/sci-libs/openblas/Manifest b/sci-libs/openblas/Manifest index 836733108..aaa8067b6 100644 --- a/sci-libs/openblas/Manifest +++ b/sci-libs/openblas/Manifest @@ -1 +1,2 @@ DIST openblas-0.2.2.tar.gz 3230868 SHA256 19ffec70f9678f5c159feadc036ca47720681b782910fbaa95aa3867e7e86d8e SHA512 9d39c6a2dac7b45d2f6e0361adc7ad057c9f2d1ea67c6b00779b95dcdcb7ff37566075684f260d1387e713cb0607493a7c76088326b1a4099b8f363189cb7170 WHIRLPOOL 7c8cc9eaf895ea9586e1e9e557d537521bf2d7cb1600c49271689d1cdbe14a41198c3a73b20d2db33a10066e2466e4f4b11106fbad4dd840e0c0cf9cd215d25f +DIST openblas-0.2.3.tar.gz 3236430 SHA256 b9c10675a0c4b6b6adc4b0461749d6ec2d81f1498727935b9e38ec71a565a43e SHA512 4afd7add12ae9d262c32f8556a375d91df0c5d44a8b36fb883cb890bc8f5fce1c528b510ecad9a2b5083c22e8790071fe96898f1a1c07c3665e10a5650326824 WHIRLPOOL cf5ee6354b3d5d09cc90bbfc9cf3bf92a2a4dbcc65ba462610db1cf430dc1edc48712be0c7ad99ea48857e4543baf87963cd1be604d439bc1111c8998a7a79e0 diff --git a/sci-libs/openblas/openblas-0.2.3.ebuild b/sci-libs/openblas/openblas-0.2.3.ebuild new file mode 100644 index 000000000..27d5bb6bc --- /dev/null +++ b/sci-libs/openblas/openblas-0.2.3.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=4 + +if [[ ${PV} == "9999" ]] ; then + _SCM=git-2 + EGIT_REPO_URI="https://github.com/xianyi/OpenBLAS.git" + SRC_URI="" + KEYWORDS="" +else + SRC_URI="http://github.com/xianyi/OpenBLAS/tarball/v${PV} -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x86-macos ~ppc-macos ~x64-macos" + CID="e552452" # commit ID +fi + +inherit eutils toolchain-funcs alternatives-2 multilib ${_SCM} + +DESCRIPTION="Optimized BLAS library based on GotoBLAS2" +HOMEPAGE="http://xianyi.github.com/OpenBLAS/" + +LICENSE="BSD" +SLOT="0" + +IUSE="+incblas int64 dynamic openmp static-libs threads" + +RDEPEND="virtual/fortran" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/xianyi-OpenBLAS-${CID}" + +src_prepare() { + epatch "${FILESDIR}"/${PN}-{sharedlibs-0.2,aliasing}.patch + # respect LDFLAGS + sed -i -e '/^LDFLAGS\s*=/d' Makefile.* || die + # respect CFLAGS only if dynamic flag not enabled + if ! use dynamic; then + sed -i \ + -e "/^COMMON_OPT/s/-O2/${CFLAGS}/" \ + Makefile.rule || die + fi + # fix executable stacks + local i + for i in $(find . -name \*.S); do + cat >> ${i} <<-EOF + #if defined(__ELF__) + .section .note.GNU-stack,"",%progbits + #endif + EOF + done +} + +src_configure() { + local use_openmp=$(use openmp && echo 1) + use threads && use openmp && use_openmp="" && \ + einfo "openmp and threads enabled: using threads" + sed -i \ + -e "s:^#\s*\(NO_LAPACK\)\s*=.*:\1=1:" \ + -e "s:^#\s*\(NO_LAPACKE\)\s*=.*:\1=1:" \ + -e "s:^#\s*\(CC\)\s*=.*:\1=$(tc-getCC):" \ + -e "s:^#\s*\(FC\)\s*=.*:\1=$(tc-getFC):" \ + -e "s:^#\s*\(USE_THREAD\)\s*=.*:\1=$(use threads && echo 1 || echo 0):" \ + -e "s:^#\s*\(USE_OPENMP\)\s*=.*:\1=${use_openmp}:" \ + -e "s:^#\s*\(DYNAMIC_ARCH\)\s*=.*:\1=$(use dynamic && echo 1):" \ + -e "s:^#\s*\(INTERFACE64\)\s*=.*:\1=$(use int64 && echo 1):" \ + -e "s:^#\s*\(NO_CBLAS\)\s*=.*:\1=$(use incblas || echo 1):" \ + Makefile.rule || die +} + +src_compile() { + mkdir solibs + emake libs shared && mv *$(get_libname) solibs/ + use static-libs && emake clean && emake libs NEED_PIC= +} + +src_test() { + emake tests +} + +src_install() { + local profname=${PN} threads + use int64 && profname=${profname}-int64 + if use threads; then + threads="-pthread" + profname=${profname}-threads + elif use openmp; then + profname=${profname}-openmp + fi + + dolib.so solibs/lib*$(get_libname) + use static-libs && dolib.a lib*.a + + # create pkg-config file and associated eselect file + cat <<-EOF > ${profname}.pc + prefix=${EPREFIX}/usr + libdir=\${prefix}/$(get_libdir) + includedir=\${prefix}/include + Name: ${PN} + Description: ${DESCRIPTION} + Version: ${PV} + URL: ${HOMEPAGE} + Libs: -L\${libdir} -lopenblas ${threads} + Libs.private: -lm + EOF + + alternatives_for blas ${profname} 0 \ + /usr/$(get_libdir)/pkgconfig/blas.pc ${profname}.pc + + if use incblas; then + echo >> ${profname}.pc "Cflags: -I\${includedir}/${PN}" + insinto /usr/include/${PN} + doins cblas.h common*.h config.h param.h + alternatives_for cblas ${profname} 0 \ + /usr/$(get_libdir)/pkgconfig/cblas.pc ${profname}.pc \ + /usr/include/cblas.h ${PN}/cblas.h + fi + + insinto /usr/$(get_libdir)/pkgconfig + doins ${profname}.pc + dodoc GotoBLAS_{01Readme,03FAQ,04FAQ,05LargePage,06WeirdPerformance}.txt + + if [[ ${CHOST} == *-darwin* ]] ; then + cd "${ED}"/usr/$(get_libdir) + for d in *.dylib ; do + ebegin "Correcting install_name of ${d}" + install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/${d}" "${d}" + eend $? + done + fi +} |