1 |
This is a straightforward import of the latest fflas-ffpack-2.4.3.ebuild |
2 |
that François Bissey has been maintaining in the sage-on-gentoo overlay, |
3 |
with only a few minor changes: |
4 |
|
5 |
* I added a "+" to the LICENSE to match the upstream LGPL-2.1+. |
6 |
|
7 |
* I switched the openmp check to use tc-check-openmp() conditionally |
8 |
on the MERGE_TYPE variable. |
9 |
|
10 |
* Added BDEPEND="virtual/pkgconfig" since we patch in a call to |
11 |
PKG_CHECK_MODULES. |
12 |
|
13 |
I also removed a warning about build failures with USE=openmp. From what |
14 |
I can tell, this stems from an older report (upstream Github issue 48) |
15 |
using gcc-4.9.x that was never fully debugged. If the problems persist, |
16 |
we can revisit that report, or just mask the flag. |
17 |
|
18 |
Closes: https://bugs.gentoo.org/show_bug.cgi?id=715678 |
19 |
Package-Manager: Portage-2.3.89, Repoman-2.3.20 |
20 |
Signed-off-by: Michael Orlitzky <mjo@g.o> |
21 |
--- |
22 |
sci-libs/fflas-ffpack/Manifest | 1 + |
23 |
.../fflas-ffpack/fflas-ffpack-2.4.3.ebuild | 62 +++++++++++++ |
24 |
.../files/fflas-ffpack-2.3.2-blaslapack.patch | 90 +++++++++++++++++++ |
25 |
sci-libs/fflas-ffpack/metadata.xml | 37 ++++++++ |
26 |
4 files changed, 190 insertions(+) |
27 |
create mode 100644 sci-libs/fflas-ffpack/Manifest |
28 |
create mode 100644 sci-libs/fflas-ffpack/fflas-ffpack-2.4.3.ebuild |
29 |
create mode 100644 sci-libs/fflas-ffpack/files/fflas-ffpack-2.3.2-blaslapack.patch |
30 |
create mode 100644 sci-libs/fflas-ffpack/metadata.xml |
31 |
|
32 |
diff --git a/sci-libs/fflas-ffpack/Manifest b/sci-libs/fflas-ffpack/Manifest |
33 |
new file mode 100644 |
34 |
index 00000000000..d10a12abc35 |
35 |
--- /dev/null |
36 |
+++ b/sci-libs/fflas-ffpack/Manifest |
37 |
@@ -0,0 +1 @@ |
38 |
+DIST fflas-ffpack-2.4.3.tar.gz 1059033 BLAKE2B e416429bb426a81cf9c25d54c83380ff9a9d658c711da06e6359d968843d4d9d26cf8389379f9ad4a5cbcee93e0afc9fe0497bb7a8f190e0c72c0b1f7b67de18 SHA512 c7620ba5a92e4114a581a6bea32267f9d5a9f0eb7e23fc0a7a97ce4b8124bb7b29f89ff2ad6ad270d97c76489625b57a354e581905b74ee57b35f4ca3e196a44 |
39 |
diff --git a/sci-libs/fflas-ffpack/fflas-ffpack-2.4.3.ebuild b/sci-libs/fflas-ffpack/fflas-ffpack-2.4.3.ebuild |
40 |
new file mode 100644 |
41 |
index 00000000000..4115dc61ace |
42 |
--- /dev/null |
43 |
+++ b/sci-libs/fflas-ffpack/fflas-ffpack-2.4.3.ebuild |
44 |
@@ -0,0 +1,62 @@ |
45 |
+# Copyright 1999-2020 Gentoo Authors |
46 |
+# Distributed under the terms of the GNU General Public License v2 |
47 |
+ |
48 |
+EAPI=7 |
49 |
+ |
50 |
+inherit autotools toolchain-funcs |
51 |
+ |
52 |
+DESCRIPTION="Library for dense linear algebra over word-size finite fields" |
53 |
+HOMEPAGE="https://linbox-team.github.io/fflas-ffpack/" |
54 |
+SRC_URI="https://github.com/linbox-team/${PN}/releases/download/${PV}/${P}.tar.gz" |
55 |
+ |
56 |
+LICENSE="LGPL-2.1+" |
57 |
+SLOT="0" |
58 |
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" |
59 |
+IUSE="static-libs openmp cpu_flags_x86_fma3 cpu_flags_x86_fma4 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_avx512dq cpu_flags_x86_avx512vl" |
60 |
+ |
61 |
+# Our autotools patch hacks in PKG_CHECK_MODULES calls. |
62 |
+BDEPEND="virtual/pkgconfig" |
63 |
+DEPEND="virtual/cblas |
64 |
+ virtual/blas |
65 |
+ virtual/lapack |
66 |
+ dev-libs/gmp[cxx] |
67 |
+ =sci-libs/givaro-4.1*" |
68 |
+RDEPEND="${DEPEND}" |
69 |
+ |
70 |
+PATCHES=( "${FILESDIR}/${PN}-2.3.2-blaslapack.patch" ) |
71 |
+ |
72 |
+pkg_pretend() { |
73 |
+ [[ "${MERGE_TYPE}" != "binary" ]] && use openmp && tc-check-openmp |
74 |
+} |
75 |
+ |
76 |
+pkg_setup(){ |
77 |
+ tc-export PKG_CONFIG |
78 |
+} |
79 |
+ |
80 |
+src_prepare(){ |
81 |
+ default |
82 |
+ eautoreconf |
83 |
+} |
84 |
+ |
85 |
+src_configure() { |
86 |
+ econf \ |
87 |
+ --enable-precompilation \ |
88 |
+ $(use_enable openmp) \ |
89 |
+ $(use_enable cpu_flags_x86_fma3 fma) \ |
90 |
+ $(use_enable cpu_flags_x86_fma4 fma4) \ |
91 |
+ $(use_enable cpu_flags_x86_sse3 sse3) \ |
92 |
+ $(use_enable cpu_flags_x86_ssse3 ssse3) \ |
93 |
+ $(use_enable cpu_flags_x86_sse4_1 sse41) \ |
94 |
+ $(use_enable cpu_flags_x86_sse4_2 sse42) \ |
95 |
+ $(use_enable cpu_flags_x86_avx avx) \ |
96 |
+ $(use_enable cpu_flags_x86_avx2 avx2) \ |
97 |
+ $(use_enable cpu_flags_x86_avx512f avx512f) \ |
98 |
+ $(use_enable cpu_flags_x86_avx512dq avx512dq) \ |
99 |
+ $(use_enable cpu_flags_x86_avx512vl avx512vl) \ |
100 |
+ $(use_enable static-libs static) |
101 |
+} |
102 |
+ |
103 |
+src_install(){ |
104 |
+ default |
105 |
+ find "${ED}" -name '*.la' -delete || die |
106 |
+} |
107 |
diff --git a/sci-libs/fflas-ffpack/files/fflas-ffpack-2.3.2-blaslapack.patch b/sci-libs/fflas-ffpack/files/fflas-ffpack-2.3.2-blaslapack.patch |
108 |
new file mode 100644 |
109 |
index 00000000000..3154a261819 |
110 |
--- /dev/null |
111 |
+++ b/sci-libs/fflas-ffpack/files/fflas-ffpack-2.3.2-blaslapack.patch |
112 |
@@ -0,0 +1,90 @@ |
113 |
+diff --git a/configure.ac b/configure.ac |
114 |
+index 5b46b18..5e0264a 100644 |
115 |
+--- a/configure.ac |
116 |
++++ b/configure.ac |
117 |
+@@ -248,49 +248,24 @@ dnl echo '********************************************************************** |
118 |
+ dnl exit 1 |
119 |
+ dnl ]) |
120 |
+ |
121 |
+-BLAS_FOUND=false |
122 |
+- |
123 |
+-FF_CHECK_BLAS_CFLAGS |
124 |
+-FF_CHECK_BLAS_LIBS |
125 |
+-FF_CHECK_MKL |
126 |
+-FF_CHECK_USER_BLAS |
127 |
+-FF_CHECK_USER_LAPACK |
128 |
+- |
129 |
+-FF_OPENBLAS_NUM_THREADS |
130 |
+- |
131 |
+-# FF_CHECK_BLAS |
132 |
+- |
133 |
+-# FF_CHECK_GOTOBLAS |
134 |
+- |
135 |
+-# FF_CHECK_GSL |
136 |
+- |
137 |
+-# if test "$BLAS_FOUND" = "false" ; then |
138 |
+- # FF_CHECK_CBLAS |
139 |
+-# fi |
140 |
+- |
141 |
+-# if test "$BLAS_FOUND" = "false" ; then |
142 |
+- # FF_CHECK_OTHERBLAS |
143 |
+-# fi |
144 |
+- |
145 |
+-# FF_CHECK_LAPACK |
146 |
+- |
147 |
+-# if test "$BLAS_FOUND" = "false" ; then |
148 |
+- # FF_CHECK_BLAS2 |
149 |
+-# fi |
150 |
+- |
151 |
+- |
152 |
+- |
153 |
+-# BLAS_LIBS="${BLAS_LIBS}" |
154 |
+-# BLAS_LIBS="-L/${BLAS_PATH} ${LAPACK_LIBS} ${BLAS_LIBS}" |
155 |
+-# AC_SUBST(BLAS_LIBS) |
156 |
+- |
157 |
+-# FF_CHECK_CUDA |
158 |
+- |
159 |
+-# AM_CONDITIONAL(FFLASFFPACK_HAVE_BLAS, test "x$BLAS_FOUND" != "xfalse") |
160 |
+- |
161 |
+- |
162 |
+-# FF_BENCH |
163 |
+- |
164 |
++PKG_PROG_PKG_CONFIG |
165 |
++ |
166 |
++PKG_CHECK_MODULES([BLAS], [cblas blas],[ |
167 |
++ AC_DEFINE(HAVE_BLAS,1,[Define if BLAS is installed]) |
168 |
++ AC_DEFINE(HAVE_CBLAS,1,[Define if C interface to BLAS is installed]) |
169 |
++ HAVE_BLAS=yes |
170 |
++ BLAS_PATH="" |
171 |
++ CBLAS_LIBS="${BLAS_LIBS}" |
172 |
++ AC_SUBST(BLAS_LIBS) |
173 |
++ AC_SUBST(CBLAS_LIBS) |
174 |
++ AC_SUBST(BLAS_CFLAGS) |
175 |
++ AC_SUBST(BLAS_PATH)]) |
176 |
++ |
177 |
++PKG_CHECK_MODULES([LAPACK], [lapack],[ |
178 |
++ AC_DEFINE(HAVE_LAPACK,1,[Define if LAPACK is installed]) |
179 |
++ AC_SUBST(LAPACK_LIBS)]) |
180 |
++ |
181 |
++AM_CONDITIONAL(FFLASFFPACK_HAVE_LAPACK, test "x$HAVE_LAPACK" == "x1") |
182 |
+ |
183 |
+ FF_DOC |
184 |
+ |
185 |
+diff --git a/fflas-ffpack-config.in b/fflas-ffpack-config.in |
186 |
+index f1dac22..17633a0 100644 |
187 |
+--- a/fflas-ffpack-config.in |
188 |
++++ b/fflas-ffpack-config.in |
189 |
+@@ -107,11 +107,11 @@ while test $# -gt 0; do |
190 |
+ ;; |
191 |
+ |
192 |
+ --libs) |
193 |
+- echo @PARLIBS@ @PRECOMPILE_LIBS@ @BLAS_LIBS@ @GIVARO_LIBS@ # @CUDA_LIBS@ |
194 |
++ echo @PARLIBS@ @PRECOMPILE_LIBS@ @LAPACK_LIBS@ @BLAS_LIBS@ @GIVARO_LIBS@ # @CUDA_LIBS@ |
195 |
+ ;; |
196 |
+ |
197 |
+ --blas-libs) |
198 |
+- echo @BLAS_LIBS@ |
199 |
++ echo @LAPACK_LIBS@ @BLAS_LIBS@ |
200 |
+ ;; |
201 |
+ |
202 |
+ --blas-home) |
203 |
diff --git a/sci-libs/fflas-ffpack/metadata.xml b/sci-libs/fflas-ffpack/metadata.xml |
204 |
new file mode 100644 |
205 |
index 00000000000..9de9afc41f1 |
206 |
--- /dev/null |
207 |
+++ b/sci-libs/fflas-ffpack/metadata.xml |
208 |
@@ -0,0 +1,37 @@ |
209 |
+<?xml version="1.0" encoding="UTF-8"?> |
210 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
211 |
+<pkgmetadata> |
212 |
+ <maintainer type="person"> |
213 |
+ <email>mjo@g.o</email> |
214 |
+ </maintainer> |
215 |
+ <!-- |
216 |
+ mjo: François maintained this package in the sage-on-gentoo overlay |
217 |
+ long before I moved it into ::gentoo. You don't need an ACK from me |
218 |
+ to merge his changes. |
219 |
+ --> |
220 |
+ <maintainer type="person"> |
221 |
+ <email>frp.bissey@×××××.com</email> |
222 |
+ <name>François Bissey</name> |
223 |
+ </maintainer> |
224 |
+ <maintainer type="project"> |
225 |
+ <email>proxy-maint@g.o</email> |
226 |
+ <name>Proxy Maintainers</name> |
227 |
+ </maintainer> |
228 |
+ |
229 |
+ <longdescription lang="en"> |
230 |
+ FFLAS-FFPACK is a library for basic linear algebra operations over |
231 |
+ a finite field. It is inspired by the BLAS interface (Basic Linear |
232 |
+ Algebra Subprograms) and the LAPACK library for numerical linear |
233 |
+ algebra, and shares part of their design. Yet it differs in many |
234 |
+ aspects due to the specifics of computing over a finite field: it |
235 |
+ is generic with respect to the finite field, so as to accommodate |
236 |
+ a large variety of field sizes and implementations; consequently, |
237 |
+ all routines use C++ template generics and the library is |
238 |
+ primarily meant to be used as a source code library, to be |
239 |
+ included and compiled in the user's software. |
240 |
+ </longdescription> |
241 |
+ |
242 |
+ <upstream> |
243 |
+ <remote-id type="github">linbox-team/fflas-ffpack</remote-id> |
244 |
+ </upstream> |
245 |
+</pkgmetadata> |
246 |
-- |
247 |
2.24.1 |