1 |
commit: 471609fcab6425d25cb775092e422df83153b1b6 |
2 |
Author: Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de> |
3 |
AuthorDate: Thu Apr 2 09:56:27 2015 +0000 |
4 |
Commit: Justin Lecher <jlec <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Apr 2 09:56:27 2015 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=471609fc |
7 |
|
8 |
sci-libs/openblas: Cleanup symlinks and files |
9 |
|
10 |
sci-libs/openblas/openblas-0.2.11.ebuild | 228 ++++++++++++++++++++++++++++++- |
11 |
sci-libs/openblas/openblas-0.2.14.ebuild | 228 +------------------------------ |
12 |
2 files changed, 228 insertions(+), 228 deletions(-) |
13 |
|
14 |
diff --git a/sci-libs/openblas/openblas-0.2.11.ebuild b/sci-libs/openblas/openblas-0.2.11.ebuild |
15 |
deleted file mode 120000 |
16 |
index 2381753..0000000 |
17 |
--- a/sci-libs/openblas/openblas-0.2.11.ebuild |
18 |
+++ /dev/null |
19 |
@@ -1 +0,0 @@ |
20 |
-openblas-9999.ebuild |
21 |
\ No newline at end of file |
22 |
|
23 |
diff --git a/sci-libs/openblas/openblas-0.2.11.ebuild b/sci-libs/openblas/openblas-0.2.11.ebuild |
24 |
new file mode 100644 |
25 |
index 0000000..2b5f76d |
26 |
--- /dev/null |
27 |
+++ b/sci-libs/openblas/openblas-0.2.11.ebuild |
28 |
@@ -0,0 +1,227 @@ |
29 |
+# Copyright 1999-2015 Gentoo Foundation |
30 |
+# Distributed under the terms of the GNU General Public License v2 |
31 |
+# $Header: $ |
32 |
+ |
33 |
+EAPI=5 |
34 |
+ |
35 |
+EBASE_PROFNAME="openblas" |
36 |
+inherit alternatives-2 eutils fortran-2 multibuild multilib-build toolchain-funcs fortran-int64 |
37 |
+ |
38 |
+SRC_URI+="http://dev.gentoo.org/~gienah/distfiles/${PN}-0.2.11-gentoo.patch" |
39 |
+if [[ ${PV} == "9999" ]] ; then |
40 |
+ EGIT_REPO_URI="https://github.com/xianyi/OpenBLAS.git" |
41 |
+ EGIT_BRANCH="develop" |
42 |
+ inherit git-r3 |
43 |
+ KEYWORDS="" |
44 |
+else |
45 |
+ SRC_URI+=" http://github.com/xianyi/OpenBLAS/tarball/v${PV} -> ${P}.tar.gz" |
46 |
+ KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x86-macos ~ppc-macos ~x64-macos" |
47 |
+fi |
48 |
+ |
49 |
+DESCRIPTION="Optimized BLAS library based on GotoBLAS2" |
50 |
+HOMEPAGE="http://xianyi.github.com/OpenBLAS/" |
51 |
+LICENSE="BSD" |
52 |
+SLOT="0" |
53 |
+IUSE="dynamic int64 openmp static-libs threads" |
54 |
+ |
55 |
+RDEPEND="" |
56 |
+DEPEND="${RDEPEND} |
57 |
+ virtual/pkgconfig" |
58 |
+PDEPEND=" |
59 |
+ >=virtual/blas-2.1-r2[int64?] |
60 |
+ >=virtual/cblas-2.0-r1[int64?]" |
61 |
+ |
62 |
+MULTILIB_WRAPPED_HEADERS=( |
63 |
+ /usr/include/openblas/cblas.h |
64 |
+ /usr/include/openblas/f77blas.h |
65 |
+ /usr/include/openblas/openblas_config.h |
66 |
+) |
67 |
+ |
68 |
+get_openblas_flags() { |
69 |
+ local openblas_flags="" |
70 |
+ use dynamic && \ |
71 |
+ openblas_flags+=" DYNAMIC_ARCH=1 TARGET=GENERIC NUM_THREADS=64 NO_AFFINITY=1" |
72 |
+ $(fortran-int64_is_int64_build) && \ |
73 |
+ openblas_flags+=" INTERFACE64=1" |
74 |
+ # choose posix threads over openmp when the two are set |
75 |
+ # yet to see the need of having the two profiles simultaneously |
76 |
+ if use threads; then |
77 |
+ openblas_flags+=" USE_THREAD=1 USE_OPENMP=0" |
78 |
+ elif use openmp; then |
79 |
+ openblas_flags+=" USE_THREAD=0 USE_OPENMP=1" |
80 |
+ fi |
81 |
+ local profname=$(fortran-int64_get_profname) |
82 |
+ local libname="${profname//-/_}" |
83 |
+ local underscoresuffix="${libname#${PN}}" |
84 |
+ if [[ "${underscoresuffix}" != "_" ]]; then |
85 |
+ local libnamesuffix="${underscoresuffix#_}" |
86 |
+ openblas_flags+=" LIBNAMESUFFIX=${libnamesuffix}" |
87 |
+ fi |
88 |
+ echo "${openblas_flags}" |
89 |
+} |
90 |
+ |
91 |
+get_openblas_abi_cflags() { |
92 |
+ local openblas_abi_cflags="" |
93 |
+ if [[ "${ABI}" == "x86" ]]; then |
94 |
+ openblas_abi_cflags="-DOPENBLAS_ARCH_X86=1 -DOPENBLAS___32BIT__=1" |
95 |
+ else |
96 |
+ openblas_abi_cflags="-DOPENBLAS_ARCH_X86_64=1 -DOPENBLAS___64BIT__=1" |
97 |
+ fi |
98 |
+ $(fortran-int64_is_int64_build) && \ |
99 |
+ openblas_abi_cflags+=" -DOPENBLAS_USE64BITINT" |
100 |
+ echo "${openblas_abi_cflags}" |
101 |
+} |
102 |
+ |
103 |
+src_unpack() { |
104 |
+ if [[ ${PV} == "9999" ]] ; then |
105 |
+ git-r3_src_unpack |
106 |
+ else |
107 |
+ default |
108 |
+ if [[ ${PV} != "9999" ]] ; then |
109 |
+ find "${WORKDIR}" -maxdepth 1 -type d -name \*OpenBLAS\* && \ |
110 |
+ mv "${WORKDIR}"/*OpenBLAS* "${S}" |
111 |
+ fi |
112 |
+ fi |
113 |
+} |
114 |
+ |
115 |
+src_prepare() { |
116 |
+ local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
117 |
+ epatch "${DISTDIR}/${PN}-0.2.11-gentoo.patch" |
118 |
+ if [[ ${PV} == "0.2.11" ]] ; then |
119 |
+ epatch "${FILESDIR}/${PN}-0.2.11-cpuid_x86.patch" |
120 |
+ fi |
121 |
+ # lapack and lapacke are not modified from upstream lapack |
122 |
+ sed \ |
123 |
+ -e "s:^#\s*\(NO_LAPACK\)\s*=.*:\1=1:" \ |
124 |
+ -e "s:^#\s*\(NO_LAPACKE\)\s*=.*:\1=1:" \ |
125 |
+ -i Makefile.rule || die |
126 |
+ multibuild_copy_sources |
127 |
+} |
128 |
+ |
129 |
+src_configure() { |
130 |
+ local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
131 |
+ my_configure() { |
132 |
+ local openblas_abi_cflags="$(get_openblas_abi_cflags)" |
133 |
+ local internal_openblas_abi_cflags="${openblas_abi_cflags//OPENBLAS_}" |
134 |
+ sed \ |
135 |
+ -e "s:^#\s*\(CC\)\s*=.*:\1=$(tc-getCC) $(get_abi_CFLAGS):" \ |
136 |
+ -e "s:^#\s*\(FC\)\s*=.*:\1=$(tc-getFC) $(get_abi_CFLAGS):" \ |
137 |
+ -e "s:^#\s*\(COMMON_OPT\)\s*=.*:\1=${CFLAGS} ${internal_openblas_abi_cflags}:" \ |
138 |
+ -i Makefile.rule || die |
139 |
+ } |
140 |
+ multibuild_foreach_variant run_in_build_dir fortran-int64_multilib_multibuild_wrapper my_configure |
141 |
+} |
142 |
+ |
143 |
+src_compile() { |
144 |
+ local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
145 |
+ # openblas already does multi-jobs |
146 |
+ MAKEOPTS+=" -j1" |
147 |
+ my_src_compile () { |
148 |
+ local openblas_flags=$(get_openblas_flags) |
149 |
+ local profname=$(fortran-int64_get_profname) |
150 |
+ local libname="${profname//-/_}" |
151 |
+ einfo "Compiling profile ${profname}" |
152 |
+ # cflags already defined twice |
153 |
+ unset CFLAGS |
154 |
+ emake clean |
155 |
+ emake libs shared ${openblas_flags} |
156 |
+ mkdir -p libs && mv libopenblas* libs/ |
157 |
+ # avoid pic when compiling static libraries, so re-compiling |
158 |
+ if use static-libs; then |
159 |
+ emake clean |
160 |
+ emake libs ${openblas_flags} NO_SHARED=1 NEED_PIC= |
161 |
+ mv libopenblas* libs/ |
162 |
+ fi |
163 |
+ # Fix Bug 524612 - [science overlay] sci-libs/openblas-0.2.11 - Assembler messages: |
164 |
+ # ../kernel/x86_64/gemm_kernel_8x4_barcelona.S:451: Error: missing ')' |
165 |
+ # The problem is applying this patch in src_prepare() causes build failures on |
166 |
+ # assembler code as the assembler does not understand sizeof(float). So |
167 |
+ # delay applying the patch until after building the libraries. |
168 |
+ epatch "${FILESDIR}/${PN}-0.2.11-openblas_config_header_same_between_ABIs.patch" |
169 |
+ rm -f config.h config_last.h |
170 |
+ # Note: prints this spurious warning: make: Nothing to be done for 'config.h'. |
171 |
+ emake config.h |
172 |
+ cp config.h config_last.h || die |
173 |
+ cat <<-EOF > ${profname}.pc |
174 |
+ prefix=${EPREFIX}/usr |
175 |
+ libdir=\${prefix}/$(get_libdir) |
176 |
+ includedir=\${prefix}/include |
177 |
+ Name: ${profname} |
178 |
+ Description: ${DESCRIPTION} |
179 |
+ Version: ${PV} |
180 |
+ URL: ${HOMEPAGE} |
181 |
+ Libs: -L\${libdir} -l${libname} |
182 |
+ Libs.private: -lm |
183 |
+ EOF |
184 |
+ local openblas_abi_cflags=$(get_openblas_abi_cflags) |
185 |
+ local openblas_abi_fflags=$(fortran-int64_get_fortran_int64_abi_fflags) |
186 |
+ cat <<-EOF >> ${profname}.pc |
187 |
+ Cflags: -I\${includedir}/${PN} ${openblas_abi_cflags} |
188 |
+ Fflags=${openblas_abi_fflags} |
189 |
+ EOF |
190 |
+ mv libs/libopenblas* . || die |
191 |
+ } |
192 |
+ multibuild_foreach_variant run_in_build_dir fortran-int64_multilib_multibuild_wrapper my_src_compile |
193 |
+} |
194 |
+ |
195 |
+src_test() { |
196 |
+ local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
197 |
+ my_src_test () { |
198 |
+ local openblas_flags=$(get_openblas_flags) |
199 |
+ emake tests ${openblas_flags} |
200 |
+ } |
201 |
+ multibuild_foreach_variant run_in_build_dir fortran-int64_multilib_multibuild_wrapper my_src_test |
202 |
+} |
203 |
+ |
204 |
+src_install() { |
205 |
+ local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
206 |
+ my_src_install() { |
207 |
+ local openblas_flags=$(get_openblas_flags) |
208 |
+ local profname=$(fortran-int64_get_profname) |
209 |
+ local pcfile |
210 |
+ for pcfile in *.pc; do |
211 |
+ local profname=${pcfile%.pc} |
212 |
+ # The file /usr/include/openblas/openblas_config.h is generated during the install. |
213 |
+ # The sed on config_last.h removes the #define's OPENBLAS_USE64BITINT |
214 |
+ # OPENBLASS__32BIT__ OPENBLASS__64BIT__ OPENBLAS__ARCH_X86 OPENBLAS__ARCH_X86_64 |
215 |
+ # from /usr/include/openblas/openblas_config.h. We then specify it in Cflags in |
216 |
+ # the /usr/lib64/pkg-config/openblas-int64-{threads,openmp}.pc file. |
217 |
+ sed -e '/#define USE64BITINT/d' \ |
218 |
+ -e '/#define ARCH_X86/d' \ |
219 |
+ -e '/#define __\(32\|64\)BIT__/d' \ |
220 |
+ -i config_last.h \ |
221 |
+ || die "Could not ensure there is no definition of USE64BITINT in config_last.h" |
222 |
+ emake install \ |
223 |
+ PREFIX="${ED}"usr ${openblas_flags} \ |
224 |
+ OPENBLAS_INCLUDE_DIR="${ED}"usr/include/${PN} \ |
225 |
+ OPENBLAS_LIBRARY_DIR="${ED}"usr/$(get_libdir) |
226 |
+ use static-libs || rm "${ED}"usr/$(get_libdir)/lib*.a |
227 |
+ alternatives_for $(fortran-int64_get_blas_provider) ${profname} 0 \ |
228 |
+ /usr/$(get_libdir)/pkgconfig/$(fortran-int64_get_blas_provider).pc ${pcfile} |
229 |
+ alternatives_for $(fortran-int64_get_cblas_provider) ${profname} 0 \ |
230 |
+ /usr/$(get_libdir)/pkgconfig/$(fortran-int64_get_cblas_provider).pc ${pcfile} \ |
231 |
+ /usr/include/cblas.h ${PN}/cblas.h |
232 |
+ insinto /usr/$(get_libdir)/pkgconfig |
233 |
+ doins ${pcfile} |
234 |
+ done |
235 |
+ |
236 |
+ if [[ ${CHOST} == *-darwin* ]] ; then |
237 |
+ cd "${ED}"/usr/$(get_libdir) |
238 |
+ local d |
239 |
+ for d in *.dylib ; do |
240 |
+ ebegin "Correcting install_name of ${d}" |
241 |
+ install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/${d}" "${d}" |
242 |
+ eend $? |
243 |
+ done |
244 |
+ fi |
245 |
+ if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]]; then |
246 |
+ multilib_prepare_wrappers |
247 |
+ multilib_check_headers |
248 |
+ fi |
249 |
+ } |
250 |
+ multibuild_foreach_variant run_in_build_dir fortran-int64_multilib_multibuild_wrapper my_src_install |
251 |
+ multilib_install_wrappers |
252 |
+ |
253 |
+ dodoc GotoBLAS_{01Readme,03FAQ,04FAQ,05LargePage,06WeirdPerformance}.txt |
254 |
+ dodoc *md Changelog.txt |
255 |
+} |
256 |
|
257 |
diff --git a/sci-libs/openblas/openblas-0.2.14.ebuild b/sci-libs/openblas/openblas-0.2.14.ebuild |
258 |
deleted file mode 100644 |
259 |
index 2b5f76d..0000000 |
260 |
--- a/sci-libs/openblas/openblas-0.2.14.ebuild |
261 |
+++ /dev/null |
262 |
@@ -1,227 +0,0 @@ |
263 |
-# Copyright 1999-2015 Gentoo Foundation |
264 |
-# Distributed under the terms of the GNU General Public License v2 |
265 |
-# $Header: $ |
266 |
- |
267 |
-EAPI=5 |
268 |
- |
269 |
-EBASE_PROFNAME="openblas" |
270 |
-inherit alternatives-2 eutils fortran-2 multibuild multilib-build toolchain-funcs fortran-int64 |
271 |
- |
272 |
-SRC_URI+="http://dev.gentoo.org/~gienah/distfiles/${PN}-0.2.11-gentoo.patch" |
273 |
-if [[ ${PV} == "9999" ]] ; then |
274 |
- EGIT_REPO_URI="https://github.com/xianyi/OpenBLAS.git" |
275 |
- EGIT_BRANCH="develop" |
276 |
- inherit git-r3 |
277 |
- KEYWORDS="" |
278 |
-else |
279 |
- SRC_URI+=" http://github.com/xianyi/OpenBLAS/tarball/v${PV} -> ${P}.tar.gz" |
280 |
- KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x86-macos ~ppc-macos ~x64-macos" |
281 |
-fi |
282 |
- |
283 |
-DESCRIPTION="Optimized BLAS library based on GotoBLAS2" |
284 |
-HOMEPAGE="http://xianyi.github.com/OpenBLAS/" |
285 |
-LICENSE="BSD" |
286 |
-SLOT="0" |
287 |
-IUSE="dynamic int64 openmp static-libs threads" |
288 |
- |
289 |
-RDEPEND="" |
290 |
-DEPEND="${RDEPEND} |
291 |
- virtual/pkgconfig" |
292 |
-PDEPEND=" |
293 |
- >=virtual/blas-2.1-r2[int64?] |
294 |
- >=virtual/cblas-2.0-r1[int64?]" |
295 |
- |
296 |
-MULTILIB_WRAPPED_HEADERS=( |
297 |
- /usr/include/openblas/cblas.h |
298 |
- /usr/include/openblas/f77blas.h |
299 |
- /usr/include/openblas/openblas_config.h |
300 |
-) |
301 |
- |
302 |
-get_openblas_flags() { |
303 |
- local openblas_flags="" |
304 |
- use dynamic && \ |
305 |
- openblas_flags+=" DYNAMIC_ARCH=1 TARGET=GENERIC NUM_THREADS=64 NO_AFFINITY=1" |
306 |
- $(fortran-int64_is_int64_build) && \ |
307 |
- openblas_flags+=" INTERFACE64=1" |
308 |
- # choose posix threads over openmp when the two are set |
309 |
- # yet to see the need of having the two profiles simultaneously |
310 |
- if use threads; then |
311 |
- openblas_flags+=" USE_THREAD=1 USE_OPENMP=0" |
312 |
- elif use openmp; then |
313 |
- openblas_flags+=" USE_THREAD=0 USE_OPENMP=1" |
314 |
- fi |
315 |
- local profname=$(fortran-int64_get_profname) |
316 |
- local libname="${profname//-/_}" |
317 |
- local underscoresuffix="${libname#${PN}}" |
318 |
- if [[ "${underscoresuffix}" != "_" ]]; then |
319 |
- local libnamesuffix="${underscoresuffix#_}" |
320 |
- openblas_flags+=" LIBNAMESUFFIX=${libnamesuffix}" |
321 |
- fi |
322 |
- echo "${openblas_flags}" |
323 |
-} |
324 |
- |
325 |
-get_openblas_abi_cflags() { |
326 |
- local openblas_abi_cflags="" |
327 |
- if [[ "${ABI}" == "x86" ]]; then |
328 |
- openblas_abi_cflags="-DOPENBLAS_ARCH_X86=1 -DOPENBLAS___32BIT__=1" |
329 |
- else |
330 |
- openblas_abi_cflags="-DOPENBLAS_ARCH_X86_64=1 -DOPENBLAS___64BIT__=1" |
331 |
- fi |
332 |
- $(fortran-int64_is_int64_build) && \ |
333 |
- openblas_abi_cflags+=" -DOPENBLAS_USE64BITINT" |
334 |
- echo "${openblas_abi_cflags}" |
335 |
-} |
336 |
- |
337 |
-src_unpack() { |
338 |
- if [[ ${PV} == "9999" ]] ; then |
339 |
- git-r3_src_unpack |
340 |
- else |
341 |
- default |
342 |
- if [[ ${PV} != "9999" ]] ; then |
343 |
- find "${WORKDIR}" -maxdepth 1 -type d -name \*OpenBLAS\* && \ |
344 |
- mv "${WORKDIR}"/*OpenBLAS* "${S}" |
345 |
- fi |
346 |
- fi |
347 |
-} |
348 |
- |
349 |
-src_prepare() { |
350 |
- local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
351 |
- epatch "${DISTDIR}/${PN}-0.2.11-gentoo.patch" |
352 |
- if [[ ${PV} == "0.2.11" ]] ; then |
353 |
- epatch "${FILESDIR}/${PN}-0.2.11-cpuid_x86.patch" |
354 |
- fi |
355 |
- # lapack and lapacke are not modified from upstream lapack |
356 |
- sed \ |
357 |
- -e "s:^#\s*\(NO_LAPACK\)\s*=.*:\1=1:" \ |
358 |
- -e "s:^#\s*\(NO_LAPACKE\)\s*=.*:\1=1:" \ |
359 |
- -i Makefile.rule || die |
360 |
- multibuild_copy_sources |
361 |
-} |
362 |
- |
363 |
-src_configure() { |
364 |
- local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
365 |
- my_configure() { |
366 |
- local openblas_abi_cflags="$(get_openblas_abi_cflags)" |
367 |
- local internal_openblas_abi_cflags="${openblas_abi_cflags//OPENBLAS_}" |
368 |
- sed \ |
369 |
- -e "s:^#\s*\(CC\)\s*=.*:\1=$(tc-getCC) $(get_abi_CFLAGS):" \ |
370 |
- -e "s:^#\s*\(FC\)\s*=.*:\1=$(tc-getFC) $(get_abi_CFLAGS):" \ |
371 |
- -e "s:^#\s*\(COMMON_OPT\)\s*=.*:\1=${CFLAGS} ${internal_openblas_abi_cflags}:" \ |
372 |
- -i Makefile.rule || die |
373 |
- } |
374 |
- multibuild_foreach_variant run_in_build_dir fortran-int64_multilib_multibuild_wrapper my_configure |
375 |
-} |
376 |
- |
377 |
-src_compile() { |
378 |
- local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
379 |
- # openblas already does multi-jobs |
380 |
- MAKEOPTS+=" -j1" |
381 |
- my_src_compile () { |
382 |
- local openblas_flags=$(get_openblas_flags) |
383 |
- local profname=$(fortran-int64_get_profname) |
384 |
- local libname="${profname//-/_}" |
385 |
- einfo "Compiling profile ${profname}" |
386 |
- # cflags already defined twice |
387 |
- unset CFLAGS |
388 |
- emake clean |
389 |
- emake libs shared ${openblas_flags} |
390 |
- mkdir -p libs && mv libopenblas* libs/ |
391 |
- # avoid pic when compiling static libraries, so re-compiling |
392 |
- if use static-libs; then |
393 |
- emake clean |
394 |
- emake libs ${openblas_flags} NO_SHARED=1 NEED_PIC= |
395 |
- mv libopenblas* libs/ |
396 |
- fi |
397 |
- # Fix Bug 524612 - [science overlay] sci-libs/openblas-0.2.11 - Assembler messages: |
398 |
- # ../kernel/x86_64/gemm_kernel_8x4_barcelona.S:451: Error: missing ')' |
399 |
- # The problem is applying this patch in src_prepare() causes build failures on |
400 |
- # assembler code as the assembler does not understand sizeof(float). So |
401 |
- # delay applying the patch until after building the libraries. |
402 |
- epatch "${FILESDIR}/${PN}-0.2.11-openblas_config_header_same_between_ABIs.patch" |
403 |
- rm -f config.h config_last.h |
404 |
- # Note: prints this spurious warning: make: Nothing to be done for 'config.h'. |
405 |
- emake config.h |
406 |
- cp config.h config_last.h || die |
407 |
- cat <<-EOF > ${profname}.pc |
408 |
- prefix=${EPREFIX}/usr |
409 |
- libdir=\${prefix}/$(get_libdir) |
410 |
- includedir=\${prefix}/include |
411 |
- Name: ${profname} |
412 |
- Description: ${DESCRIPTION} |
413 |
- Version: ${PV} |
414 |
- URL: ${HOMEPAGE} |
415 |
- Libs: -L\${libdir} -l${libname} |
416 |
- Libs.private: -lm |
417 |
- EOF |
418 |
- local openblas_abi_cflags=$(get_openblas_abi_cflags) |
419 |
- local openblas_abi_fflags=$(fortran-int64_get_fortran_int64_abi_fflags) |
420 |
- cat <<-EOF >> ${profname}.pc |
421 |
- Cflags: -I\${includedir}/${PN} ${openblas_abi_cflags} |
422 |
- Fflags=${openblas_abi_fflags} |
423 |
- EOF |
424 |
- mv libs/libopenblas* . || die |
425 |
- } |
426 |
- multibuild_foreach_variant run_in_build_dir fortran-int64_multilib_multibuild_wrapper my_src_compile |
427 |
-} |
428 |
- |
429 |
-src_test() { |
430 |
- local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
431 |
- my_src_test () { |
432 |
- local openblas_flags=$(get_openblas_flags) |
433 |
- emake tests ${openblas_flags} |
434 |
- } |
435 |
- multibuild_foreach_variant run_in_build_dir fortran-int64_multilib_multibuild_wrapper my_src_test |
436 |
-} |
437 |
- |
438 |
-src_install() { |
439 |
- local MULTIBUILD_VARIANTS=( $(fortran-int64_multilib_get_enabled_abis) ) |
440 |
- my_src_install() { |
441 |
- local openblas_flags=$(get_openblas_flags) |
442 |
- local profname=$(fortran-int64_get_profname) |
443 |
- local pcfile |
444 |
- for pcfile in *.pc; do |
445 |
- local profname=${pcfile%.pc} |
446 |
- # The file /usr/include/openblas/openblas_config.h is generated during the install. |
447 |
- # The sed on config_last.h removes the #define's OPENBLAS_USE64BITINT |
448 |
- # OPENBLASS__32BIT__ OPENBLASS__64BIT__ OPENBLAS__ARCH_X86 OPENBLAS__ARCH_X86_64 |
449 |
- # from /usr/include/openblas/openblas_config.h. We then specify it in Cflags in |
450 |
- # the /usr/lib64/pkg-config/openblas-int64-{threads,openmp}.pc file. |
451 |
- sed -e '/#define USE64BITINT/d' \ |
452 |
- -e '/#define ARCH_X86/d' \ |
453 |
- -e '/#define __\(32\|64\)BIT__/d' \ |
454 |
- -i config_last.h \ |
455 |
- || die "Could not ensure there is no definition of USE64BITINT in config_last.h" |
456 |
- emake install \ |
457 |
- PREFIX="${ED}"usr ${openblas_flags} \ |
458 |
- OPENBLAS_INCLUDE_DIR="${ED}"usr/include/${PN} \ |
459 |
- OPENBLAS_LIBRARY_DIR="${ED}"usr/$(get_libdir) |
460 |
- use static-libs || rm "${ED}"usr/$(get_libdir)/lib*.a |
461 |
- alternatives_for $(fortran-int64_get_blas_provider) ${profname} 0 \ |
462 |
- /usr/$(get_libdir)/pkgconfig/$(fortran-int64_get_blas_provider).pc ${pcfile} |
463 |
- alternatives_for $(fortran-int64_get_cblas_provider) ${profname} 0 \ |
464 |
- /usr/$(get_libdir)/pkgconfig/$(fortran-int64_get_cblas_provider).pc ${pcfile} \ |
465 |
- /usr/include/cblas.h ${PN}/cblas.h |
466 |
- insinto /usr/$(get_libdir)/pkgconfig |
467 |
- doins ${pcfile} |
468 |
- done |
469 |
- |
470 |
- if [[ ${CHOST} == *-darwin* ]] ; then |
471 |
- cd "${ED}"/usr/$(get_libdir) |
472 |
- local d |
473 |
- for d in *.dylib ; do |
474 |
- ebegin "Correcting install_name of ${d}" |
475 |
- install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/${d}" "${d}" |
476 |
- eend $? |
477 |
- done |
478 |
- fi |
479 |
- if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]]; then |
480 |
- multilib_prepare_wrappers |
481 |
- multilib_check_headers |
482 |
- fi |
483 |
- } |
484 |
- multibuild_foreach_variant run_in_build_dir fortran-int64_multilib_multibuild_wrapper my_src_install |
485 |
- multilib_install_wrappers |
486 |
- |
487 |
- dodoc GotoBLAS_{01Readme,03FAQ,04FAQ,05LargePage,06WeirdPerformance}.txt |
488 |
- dodoc *md Changelog.txt |
489 |
-} |
490 |
|
491 |
diff --git a/sci-libs/openblas/openblas-0.2.14.ebuild b/sci-libs/openblas/openblas-0.2.14.ebuild |
492 |
new file mode 120000 |
493 |
index 0000000..2381753 |
494 |
--- /dev/null |
495 |
+++ b/sci-libs/openblas/openblas-0.2.14.ebuild |
496 |
@@ -0,0 +1 @@ |
497 |
+openblas-9999.ebuild |
498 |
\ No newline at end of file |