Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/mumps/
Date: Sat, 02 Jan 2021 07:02:47
Message-Id: 1609570956.19f9ce40925db25b1d735a7f7e45ea78e24bd0d0.sam@gentoo
1 commit: 19f9ce40925db25b1d735a7f7e45ea78e24bd0d0
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 2 07:02:36 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 2 07:02:36 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=19f9ce40
7
8 sci-libs/mumps: cleanup old
9
10 Package-Manager: Portage-3.0.12, Repoman-3.0.2
11 Signed-off-by: Sam James <sam <AT> gentoo.org>
12
13 sci-libs/mumps/Manifest | 1 -
14 sci-libs/mumps/mumps-5.3.3.ebuild | 201 --------------------------------------
15 2 files changed, 202 deletions(-)
16
17 diff --git a/sci-libs/mumps/Manifest b/sci-libs/mumps/Manifest
18 index ef756342a87..1e1a3ef905b 100644
19 --- a/sci-libs/mumps/Manifest
20 +++ b/sci-libs/mumps/Manifest
21 @@ -1,3 +1,2 @@
22 DIST MUMPS_5.1.2.tar.gz 3351215 BLAKE2B 1c77c2a217c101245a9a96a59be6b9bfd67ceffa603d807b5a7173026c5c33e2c4de78c14833d7b7f0a90130b9ebc0ac9c7d4ebfbf881d0bd2210a542887c239 SHA512 38a63b14a8df835be68b5fa310b39aa1815799220d56c176e4005797800959e9e08c9a6bf11d308ab82ea40b6f34d36072cebe7c1de39e0c314eb138b93f1b74
23 -DIST MUMPS_5.3.3.tar.gz 3912935 BLAKE2B 03b88e23b8dd49832c43aef4717edd440328ca7c63eed9005a6baa008090f63089e7a259fb8091ce462e249196c2a1de0ec1e864173e3ecc3265d5a9cef8b869 SHA512 fb2da6acfd0a413ed5a9b2ea346a191ecea4a057f26a8c3b8ed2400843753a354055eb911e53d9f6ed5a6818e653ab926579c1a4a261b791c5ae421fcd5a7945
24 DIST MUMPS_5.3.5.tar.gz 3940501 BLAKE2B f1767483bb23744a2c5ed11b0823c5b023377d5212abbe29a177cce5b5e51e6f2f391d7caa17022646e36c9e4b4fb4af80b03ac6cf8e89f37502ed960138bbbe SHA512 6e3bb081f38af8540ada7b4fb54c6e766739c854e2a3dd253e3e012eee05dae30064b1b4a8d7493f10691725aba4cc9e80544b0fe5b71670cb0b2726ccfc4439
25
26 diff --git a/sci-libs/mumps/mumps-5.3.3.ebuild b/sci-libs/mumps/mumps-5.3.3.ebuild
27 deleted file mode 100644
28 index 43b0f37be67..00000000000
29 --- a/sci-libs/mumps/mumps-5.3.3.ebuild
30 +++ /dev/null
31 @@ -1,201 +0,0 @@
32 -# Copyright 1999-2020 Gentoo Authors
33 -# Distributed under the terms of the GNU General Public License v2
34 -
35 -EAPI=7
36 -
37 -inherit fortran-2 toolchain-funcs
38 -
39 -MYP=MUMPS_${PV}
40 -
41 -DESCRIPTION="MUltifrontal Massively Parallel sparse direct matrix Solver"
42 -HOMEPAGE="http://mumps.enseeiht.fr/"
43 -SRC_URI="http://mumps.enseeiht.fr/${MYP}.tar.gz"
44 -S="${WORKDIR}/${MYP}"
45 -
46 -LICENSE="public-domain"
47 -SLOT="0"
48 -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
49 -IUSE="doc examples metis mpi +scotch static-libs"
50 -
51 -BDEPEND="virtual/pkgconfig"
52 -RDEPEND="
53 - virtual/blas
54 - metis? (
55 - || ( >=sci-libs/metis-5 >=sci-libs/parmetis-4 )
56 - mpi? ( >=sci-libs/parmetis-4 )
57 - )
58 - mpi? ( sci-libs/scalapack )
59 - scotch? ( >=sci-libs/scotch-6.0.1:=[mpi=] )
60 -"
61 -DEPEND="${RDEPEND}"
62 -
63 -get_version_component_count() {
64 - local cnt=( $(ver_rs 1- ' ') )
65 - echo ${#cnt[@]} || die
66 -}
67 -
68 -static_to_shared() {
69 - local libstatic=${1}
70 - shift
71 - local libname=$(basename ${libstatic%.a})
72 - local soname=${libname}$(get_libname $(ver_cut 1-2))
73 - local libdir=$(dirname ${libstatic})
74 -
75 - einfo "Making ${soname} from ${libstatic}"
76 - if [[ ${CHOST} == *-darwin* ]] ; then
77 - ${LINK:-$(tc-getCC)} ${LDFLAGS} \
78 - -dynamiclib -install_name "${EPREFIX}"/usr/lib/"${soname}" \
79 - -Wl,-all_load -Wl,${libstatic} \
80 - "$@" -o ${libdir}/${soname} || die "${soname} failed"
81 - else
82 - ${LINK:-$(tc-getCC)} ${LDFLAGS} \
83 - -shared -Wl,-soname=${soname} \
84 - -Wl,--whole-archive ${libstatic} -Wl,--no-whole-archive \
85 - "$@" -o ${libdir}/${soname} || die "${soname} failed"
86 -
87 - if [[ $(get_version_component_count) -ge 1 ]] ; then
88 - ln -s ${soname} ${libdir}/${libname}$(get_libname $(ver_cut 1)) || die
89 - fi
90 -
91 - ln -s ${soname} ${libdir}/${libname}$(get_libname) || die
92 - fi
93 -}
94 -
95 -src_prepare() {
96 - sed -e "s;^\(CC\s*=\).*;\1$(tc-getCC);" \
97 - -e "s;^\(FC\s*=\).*;\1$(tc-getFC);" \
98 - -e "s;^\(FL\s*=\).*;\1$(tc-getFC);" \
99 - -e "s;^\(AR\s*=\).*;\1$(tc-getAR) cr ;" \
100 - -e "s;^\(RANLIB\s*=\).*;\1$(tc-getRANLIB);" \
101 - -e "s;^\(LIBBLAS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs blas);" \
102 - -e "s;^\(INCPAR\s*=\).*;\1;" \
103 - -e 's;^\(LIBPAR\s*=\).*;\1$(SCALAP);' \
104 - -e "s;^\(OPTF\s*=\).*;\1${FFLAGS} -DALLOW_NON_INIT \$(PIC);" \
105 - -e "s;^\(OPTC\s*=\).*;\1${CFLAGS} \$(PIC);" \
106 - -e "s;^\(OPTL\s*=\).*;\1${LDFLAGS};" \
107 - Make.inc/Makefile.inc.generic > Makefile.inc || die
108 - # fixed a missing copy of libseq to libdir
109 -
110 - default
111 -}
112 -
113 -src_configure() {
114 - LIBADD="$($(tc-getPKG_CONFIG) --libs blas) -Llib -lpord"
115 - local ord="-Dpord"
116 - if use metis && use mpi; then
117 - sed -i \
118 - -e "s;#\s*\(LMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs parmetis);" \
119 - -e "s;#\s*\(IMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --cflags parmetis);" \
120 - Makefile.inc || die
121 - LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs parmetis)"
122 - ord="${ord} -Dparmetis"
123 - elif use metis; then
124 - sed -i \
125 - -e "s;#\s*\(LMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs metis);" \
126 - -e "s;#\s*\(IMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --cflags metis);" \
127 - Makefile.inc || die
128 - LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs metis)"
129 - ord="${ord} -Dmetis"
130 - fi
131 - if use scotch && use mpi; then
132 - sed -i \
133 - -e "s;#\s*\(LSCOTCH\s*=\).*;\1-lptesmumps -lptscotch -lptscotcherr;" \
134 - -e "s;#\s*\(ISCOTCH\s*=\).*;\1-I${ESYSROOT}/usr/include/scotch;" \
135 - Makefile.inc || die
136 - LIBADD="${LIBADD} -lptesmumps -lptscotch -lptscotcherr"
137 - ord="${ord} -Dptscotch"
138 - elif use scotch; then
139 - sed -i \
140 - -e "s;#\s*\(LSCOTCH\s*=\).*;\1-lesmumps -lscotch -lscotcherr;" \
141 - -e "s;#\s*\(ISCOTCH\s*=\).*;\1-I${ESYSROOT}/usr/include/scotch;" \
142 - Makefile.inc || die
143 - LIBADD="${LIBADD} -lesmumps -lscotch -lscotcherr"
144 - ord="${ord} -Dscotch"
145 - fi
146 - if use mpi; then
147 - sed -i \
148 - -e "s;^\(CC\s*=\).*;\1mpicc;" \
149 - -e "s;^\(FC\s*=\).*;\1mpif90;" \
150 - -e "s;^\(FL\s*=\).*;\1mpif90;" \
151 - -e "s;^\(SCALAP\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs scalapack);" \
152 - Makefile.inc || die
153 - export LINK=mpif90
154 - LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs scalapack)"
155 - else
156 - sed -i \
157 - -e 's;-Llibseq;-L$(topdir)/libseq;' \
158 - -e 's;PAR);SEQ);g' \
159 - -e "s;^\(SCALAP\s*=\).*;\1;" \
160 - -e 's;^LIBSEQNEEDED =;LIBSEQNEEDED = libseqneeded;g' \
161 - Makefile.inc || die
162 - export LINK="$(tc-getFC)"
163 - fi
164 - sed -i -e "s;^\s*\(ORDERINGSF\s*=\).*;\1 ${ord};" Makefile.inc || die
165 -}
166 -
167 -src_compile() {
168 - # Workaround #462602
169 - export FAKEROOTKEY=1
170 -
171 - # -j1 because of static archive race
172 - emake -j1 alllib PIC="-fPIC"
173 - if ! use mpi; then
174 - #$(tc-getAR) crs lib/libmumps_common.a libseq/*.o || die
175 - LIBADD+=" -Llibseq -lmpiseq"
176 - static_to_shared libseq/libmpiseq.a
177 - fi
178 -
179 - static_to_shared lib/libpord.a ${LIBADD}
180 - static_to_shared lib/libmumps_common.a ${LIBADD}
181 -
182 - local i
183 - for i in c d s z; do
184 - static_to_shared lib/lib${i}mumps.a -Llib -lmumps_common ${LIBADD}
185 - done
186 -
187 - if use static-libs; then
188 - emake clean
189 - emake -j1 alllib
190 - fi
191 -}
192 -
193 -src_test() {
194 - emake all
195 -
196 - local dotest
197 - if use mpi; then
198 - dotest="mpirun -np 2"
199 - else
200 - export LD_LIBRARY_PATH="${S}/libseq:${LD_LIBRARY_PATH}"
201 - fi
202 -
203 - cd examples
204 - ${dotest} ./ssimpletest < input_simpletest_real || die
205 - ${dotest} ./dsimpletest < input_simpletest_real || die
206 - ${dotest} ./csimpletest < input_simpletest_cmplx || die
207 - ${dotest} ./zsimpletest < input_simpletest_cmplx || die
208 - einfo "The solutions should be close to (1,2,3,4,5)"
209 - ${dotest} ./c_example || die
210 - einfo "The solution should be close to (1,2)"
211 - emake clean
212 -}
213 -
214 -src_install() {
215 - dolib.so lib/lib*$(get_libname)*
216 - use static-libs && dolib.a lib/lib*.a
217 - insinto /usr
218 -
219 - doins -r include
220 - if ! use mpi; then
221 - dolib.so libseq/lib*$(get_libname)*
222 - insinto /usr/include/mpiseq
223 - doins libseq/*.h
224 - use static-libs && dolib.a libseq/libmpiseq.a
225 - fi
226 -
227 - dodoc README ChangeLog VERSION
228 - use doc && dodoc doc/*.pdf
229 - if use examples; then
230 - dodoc -r examples
231 - fi
232 -}