aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrea Arteaga <andyspiros@gmail.com>2012-08-20 11:20:04 +0200
committerAndrea Arteaga <andyspiros@gmail.com>2012-08-20 11:20:04 +0200
commitd0833606ef86a2763e1c83a1199952aad2432ca5 (patch)
tree5f7556f6e948a19ab89d6cc2558c51f41d9bcf08
parentupdate to EAPI=4, cosmetics, deps (diff)
downloadsci-d0833606ef86a2763e1c83a1199952aad2432ca5.tar.gz
sci-d0833606ef86a2763e1c83a1199952aad2432ca5.tar.bz2
sci-d0833606ef86a2763e1c83a1199952aad2432ca5.zip
[sci-libs/openblas] Version bump
-rw-r--r--sci-libs/openblas/ChangeLog6
-rw-r--r--sci-libs/openblas/Manifest1
-rw-r--r--sci-libs/openblas/openblas-0.2.3.ebuild131
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
+}