Gentoo Archives: gentoo-commits

From: "Sebastien Fabbro (bicatali)" <bicatali@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sci-libs/blas-goto: ChangeLog blas-goto-1.19.ebuild
Date: Thu, 20 Sep 2007 14:48:04
Message-Id: E1IYNCF-0005KV-Ee@stork.gentoo.org
1 bicatali 07/09/20 14:40:03
2
3 Modified: ChangeLog
4 Added: blas-goto-1.19.ebuild
5 Log:
6 Version bump. Added pkg-config support, re-added PROVIDE temporarly
7 (Portage version: 2.1.3.9)
8
9 Revision Changes Path
10 1.10 sci-libs/blas-goto/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/blas-goto/ChangeLog?rev=1.10&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/blas-goto/ChangeLog?rev=1.10&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/blas-goto/ChangeLog?r1=1.9&r2=1.10
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/sci-libs/blas-goto/ChangeLog,v
19 retrieving revision 1.9
20 retrieving revision 1.10
21 diff -u -r1.9 -r1.10
22 --- ChangeLog 20 Aug 2007 14:38:26 -0000 1.9
23 +++ ChangeLog 20 Sep 2007 14:40:02 -0000 1.10
24 @@ -1,6 +1,14 @@
25 # ChangeLog for sci-libs/blas-goto
26 # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/sci-libs/blas-goto/ChangeLog,v 1.9 2007/08/20 14:38:26 markusle Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/blas-goto/ChangeLog,v 1.10 2007/09/20 14:40:02 bicatali Exp $
29 +
30 +*blas-goto-1.19 (20 Sep 2007)
31 +
32 + 20 Sep 2007; Sébastien Fabbro <bicatali@g.o> +files/blas.pc.in,
33 + +files/eselect.blas.goto, +blas-goto-1.19.ebuild:
34 + Version bump. Added pkg-config support, re-added PROVIDE temporarly
35 + until new virtuals are in main tree. Re-added intel compilers support,
36 + cleanup with seds.
37
38 20 Aug 2007; Markus Dittrich <markusle@g.o> -blas-goto-1.09.ebuild,
39 -blas-goto-1.11.ebuild:
40
41
42
43 1.1 sci-libs/blas-goto/blas-goto-1.19.ebuild
44
45 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/blas-goto/blas-goto-1.19.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/blas-goto/blas-goto-1.19.ebuild?rev=1.1&content-type=text/plain
47
48 Index: blas-goto-1.19.ebuild
49 ===================================================================
50 # Copyright 1999-2007 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/sci-libs/blas-goto/blas-goto-1.19.ebuild,v 1.1 2007/09/20 14:40:02 bicatali Exp $
53
54 inherit eutils fortran flag-o-matic toolchain-funcs
55
56 MY_PN="GotoBLAS"
57 MY_P="${MY_PN}-${PV}"
58 DESCRIPTION="The fastest implementations of the Basic Linear Algebra Subroutines"
59 HOMEPAGE="http://www.tacc.utexas.edu/resources/software/software.php"
60 SRC_URI="http://www.tacc.utexas.edu/resources/software/login/gotoblas/${MY_P}.tar.gz"
61 LICENSE="tacc"
62 SLOT="0"
63 # See http://www.tacc.utexas.edu/resources/software/gotoblasfaq.php
64 # for supported architectures
65 KEYWORDS="~x86 ~amd64"
66 IUSE="threads doc"
67 RESTRICT="mirror"
68 RDEPEND="app-admin/eselect-blas
69 dev-util/pkgconfig
70 doc? ( app-doc/blas-docs )"
71
72 DEPEND="app-admin/eselect-blas
73 >=sys-devel/binutils-2.17"
74
75 S="${WORKDIR}/${MY_PN}"
76 FORTRAN="g77 gfortran ifc"
77
78 # remove when we have new virtuals in main tree.
79 PROVIDE="virtual/blas"
80
81 src_unpack() {
82 unpack ${A}
83 cd "${S}"
84
85 # Set up C compiler
86 if [[ $(tc-getCC) = *gcc ]]; then
87 C_COMPILER="GNU"
88 elif [[ $(tc-getCC) = icc ]]; then
89 C_COMPILER="INTEL"
90 else
91 die "tc-getCC() returned an invalid C compiler; valid are gcc or icc."
92 fi
93
94 # Set up FORTRAN 77 compiler
95 case ${FORTRANC} in
96 g77)
97 F_COMPILER="G77"
98 ;;
99 gfortran)
100 F_COMPILER="GFORTRAN"
101 F_LIB="-lgfortran"
102 ;;
103 ifc|ifort)
104 F_COMPILER="INTEL"
105 ;;
106 *)
107 die "fortran.eclass returned an invalid Fortran compiler \'${FORTRANC}\'; valid are ${FORTRAN}."
108 esac
109
110 # Fix shared lib build
111 sed -i \
112 -e "s:\(&& echo OK\):${F_LIB} \1:g" \
113 "${S}"/exports/Makefile \
114 || die "sed for shared libs failed"
115
116 # Set up compilers
117 sed -i \
118 -e "s:^# \(C_COMPILER =\) GNU:\1 ${C_COMPILER}:g" \
119 -e "s:^# \(F_COMPILER =\) G77:\1 ${F_COMPILER}:g" \
120 -e "s:^# \(SMP = 1\):\1:g" \
121 -e "s:\$(COMPILER_PREFIX)ar:$(tc-getAR):" \
122 -e "s:\$(COMPILER_PREFIX)as:$(tc-getAS):" \
123 -e "s:\$(COMPILER_PREFIX)ld:$(tc-getLD):" \
124 -e "s:\$(COMPILER_PREFIX)ranlib:$(tc-getRANLIB):" \
125 "${S}"/Makefile.rule \
126 || die "sed for setting up compilers failed"
127
128 # Threaded?
129 if use threads; then
130 sed -i \
131 -e "s:^# \(SMP = 1\):\1:g" \
132 "${S}"/Makefile.rule \
133 || die "sed for threads failed"
134 fi
135
136 # If you need a 64-bit integer interface, also do this for "INTERFACE64 = 1"
137 if use amd64; then
138 sed -i \
139 -e "s:^# \(BINARY64 = 1\):\1:g" \
140 "${S}"/Makefile.rule \
141 || die "sed for 64 binary failed"
142 fi
143
144 # Respect CFLAGS/FFLAGS
145 if [[ -z "${FFLAGS}" ]]; then
146 ewarn "FORTRAN FFLAGS undefined, using -O2"
147 export FFLAGS="-O2"
148 fi
149
150 sed -i \
151 -e '/^CFLAGS/s:=:+=:' \
152 -e '/^FFLAGS/s:=:+=:' \
153 "${S}"/Makefile.rule \
154 || die "sed for flags failed"
155 }
156
157 src_compile() {
158
159 # Make static library
160 emake LDFLAGS=$(raw-ldflags) || die "emake failed"
161
162 # Make shared library
163 cd exports
164 emake so -j1 || die "emake failed"
165 }
166
167 src_test() {
168 cd test
169 emake || die "emake test failed"
170 make clean
171 }
172
173 src_install() {
174 local MAIN_DIR="/usr/$(get_libdir)/blas"
175 local DIR="${MAIN_DIR}/goto"
176
177 # dolib.so doesn't support our alternate locations
178 exeinto ${DIR}
179 doexe libgoto_*.so
180 dosym libgoto_*.so ${DIR}/libgoto.so
181 dosym libgoto_*.so ${DIR}/libgoto.so.0
182 dosym libgoto_*.so ${DIR}/libgoto.so.0.0.0
183
184 # dolib.a doesn't support our alternate locations
185 insinto ${DIR}
186 doins libgoto_*.a
187 dosym libgoto_*.a ${DIR}/libgoto.a
188
189 dodoc 01Readme.txt 03History.txt 04FAQ.txt
190
191 cp "${FILESDIR}"/blas.pc.in blas.pc
192 local extlibs=""
193 use threads && extlibs="${extlibs} -lpthread"
194 extlibs="${extlibs}"
195 sed -i \
196 -e "s/@LIBDIR@/$(get_libdir)/" \
197 -e "s/@PV@/${PV}/" \
198 -e "s/@EXTLIBS@/${extlibs}/" \
199 blas.pc || die "sed blas.pc failed"
200 insinto /usr/$(get_libdir)/blas/goto
201 doins blas.pc
202 eselect blas add $(get_libdir) "${FILESDIR}"/eselect.blas.goto goto
203 }
204
205 pkg_postinst() {
206 [[ -z "$(eselect blas show)" ]] && eselect blas set goto
207 elog "To use BLAS GOTO implementation, you have to issue (as root):"
208 elog "\teselect blas set goto\n"
209 }
210
211
212
213 --
214 gentoo-commits@g.o mailing list