]> git.pld-linux.org Git - SPECS.git/blob - mpich.spec
SPECS updated Sun 1 Aug 11:02:02 CEST 2021
[SPECS.git] / mpich.spec
1 #
2 # Conditional build:
3 %bcond_with     blcr    # blcr application checkpointing support (no support for recent kernels)
4 #
5 Summary:        Portable MPI Model Implementation
6 Summary(pl.UTF-8):      Przenośna implementacja standardu MPI
7 Name:           mpich
8 Version:        3.1.4
9 Release:        1
10 License:        BSD-like
11 Group:          Development/Libraries
12 Source0:        https://www.mpich.org/static/downloads/%{version}/%{name}-%{version}.tar.gz
13 # Source0-md5:  2ab544607986486562e076b83937bba2
14 Patch0:         %{name}-sh.patch
15 Patch1:         x32-misdetected-as-i386.patch
16 URL:            https://www.mpich.org/
17 BuildRequires:  autoconf >= 2.63
18 BuildRequires:  automake >= 1:1.12.3
19 %{?with_blcr:BuildRequires:     blcr-devel}
20 BuildRequires:  ftb-devel
21 BuildRequires:  gcc-fortran
22 BuildRequires:  hwloc-devel >= 1.9.0
23 BuildRequires:  libstdc++-devel
24 BuildRequires:  libtool >= 2:2
25 BuildRequires:  openpa-devel
26 BuildRequires:  rpmbuild(macros) >= 1.750
27 Requires:       hwloc-libs >= 1.9.0
28 Provides:       mpi
29 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
30
31 %description
32 MPICH is a high-performance and widely portable implementation of the
33 MPI-3.0 standard from the Argonne National Laboratory. This release
34 has all MPI 3.0 functions and features required by the standard with
35 the exception of support for the "external32" portable I/O format and
36 user-defined data representations for I/O.
37
38 This package contains MPICH shared libraries and runtime utilities,
39 including Hydra PM.
40
41 %description -l pl.UTF-8
42 MPICH to wysoko wydajna i przenośna implementacja standardu MPI-3.0
43 pochodząca z Argonne National Laboratory. To wydanie zawiera całą
44 funkcjonalność i możliwości MPI 3.0 wymagane przez standard z
45 wyjątkiem obsługi przenośnego formatu we-wy "external32" oraz
46 definiowanych przez użytkownika reprezentacji danych dla we/wy.
47
48 Ten pakiet zawiera biblioteki współdzielone MPICH oraz narzędzia
49 uruchomieniowe, w tym Hydra PM.
50
51 %package devel
52 Summary:        MPICH header files and development tools
53 Summary(pl.UTF-8):      Pliki nagłówkowe oraz narzędzia programistyczne MPICH
54 Group:          Development/Libraries
55 Requires:       %{name} = %{version}-%{release}
56 Requires:       openpa-devel
57 Provides:       mpi-devel
58
59 %description devel
60 MPICH header files and development tools.
61
62 %description devel
63 Pliki nagłówkowe oraz narzędzia programistyczne MPICH.
64
65 %package static
66 Summary:        MPICH static libraries
67 Summary(pl.UTF-8):      Biblioteki statyczne MPICH
68 Group:          Development/Libraries
69 Requires:       %{name}-devel = %{version}-%{release}
70 Provides:       mpi-static
71
72 %description static
73 MPICH static libraries.
74
75 %description static -l pl.UTF-8
76 Biblioteki statyczne MPICH.
77
78 %package c++
79 Summary:        MPICH C++ library
80 Summary(pl.UTF-8):      Biblioteka MPICH dla C++
81 Group:          Libraries
82 Requires:       %{name} = %{version}-%{release}
83 Provides:       mpi-c++
84
85 %description c++
86 MPICH C++ library.
87
88 %description c++ -l pl.UTF-8
89 Biblioteka MPICH dla C++.
90
91 %package c++-devel
92 Summary:        MPICH C++ development package
93 Summary(pl.UTF-8):      Pakiet programistyczny MPICH dla C++
94 Group:          Development/Libraries
95 Requires:       %{name}-c++ = %{version}-%{release}
96 Requires:       %{name}-devel = %{version}-%{release}
97 Requires:       libstdc++-devel
98 Provides:       mpi-c++-devel
99
100 %description c++-devel
101 MPICH C++ development package.
102
103 %description c++-devel -l pl.UTF-8
104 Pakiet programistyczny MPICH dla C++.
105
106 %package c++-static
107 Summary:        MPICH C++ static library
108 Summary(pl.UTF-8):      Biblioteka statyczna MPICH dla C++
109 Group:          Development/Libraries
110 Requires:       %{name}-c++-devel = %{version}-%{release}
111 Provides:       mpi-c++-static
112
113 %description c++-static
114 MPICH C++ static library.
115
116 %description c++-static -l pl.UTF-8
117 Biblioteka statyczna MPICH dla C++.
118
119 %package fortran
120 Summary:        MPICH Fortran library
121 Summary(pl.UTF-8):      Biblioteka MPICH dla Fortranu
122 Group:          Libraries
123 Requires:       %{name} = %{version}-%{release}
124 Provides:       mpi-fortran
125
126 %description fortran
127 MPICH Fortran library.
128
129 %description fortran -l pl.UTF-8
130 Biblioteka MPICH dla Fortranu.
131
132 %package fortran-devel
133 Summary:        MPICH Fortran development package
134 Summary(pl.UTF-8):      Pakiet programistyczny MPICH dla Fortranu
135 Group:          Development/Libraries
136 Requires:       %{name}-devel = %{version}-%{release}
137 Requires:       %{name}-fortran = %{version}-%{release}
138 Requires:       gcc-fortran
139 Provides:       mpi-fortran-devel
140
141 %description fortran-devel
142 MPICH Fortran development package.
143
144 %description fortran-devel -l pl.UTF-8
145 Pakiet programistyczny MPICH dla Fortranu.
146
147 %package fortran-static
148 Summary:        MPICH Fortran static library
149 Summary(pl.UTF-8):      Biblioteka statyczna MPICH dla Fortranu
150 Group:          Development/Libraries
151 Requires:       %{name}-fortran-devel = %{version}-%{release}
152 Provides:       mpi-fortran-static
153
154 %description fortran-static
155 MPICH Fortran static library.
156
157 %description fortran-static -l pl.UTF-8
158 Biblioteka statyczna MPICH dla Fortranu.
159
160 %prep
161 %setup -q
162 %patch0 -p1
163 %patch1 -p1
164
165 %build
166 %{__libtoolize}
167 %{__aclocal} -I confdb
168 %{__autoconf}
169 %{__autoheader}
170 %{__automake}
171 %define gfortran_version        %(gfortran -dumpversion)
172 %if "%{_ver_ge '%{gfortran_version}' '10.0'}" == "1"
173 FFLAGS="%{rpmcflags} -fallow-argument-mismatch"
174 FCFLAGS="%{rpmcflags} -fallow-argument-mismatch"
175 %endif
176 %configure \
177         --disable-silent-rules \
178         %{?with_blcr:--enable-checkpointing} \
179         --with-hwloc-prefix=system \
180         %{!?with_blcr:--with-hydra-ckpointlib=none} \
181         --with-openpa-prefix=system
182
183 %{__make}
184
185 %install
186 rm -rf $RPM_BUILD_ROOT
187
188 %{__make} install \
189         DESTDIR=$RPM_BUILD_ROOT
190
191 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
192 cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
193 %{__rm} $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/{cpi,cpi.o,examples.sln}
194
195 # see openpa.spec
196 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libopa.so
197
198 # PDFs packaged as %doc
199 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/mpich
200
201 %clean
202 rm -rf $RPM_BUILD_ROOT
203
204 %post   -p /sbin/ldconfig
205 %postun -p /sbin/ldconfig
206
207 %post   c++ -p /sbin/ldconfig
208 %postun c++ -p /sbin/ldconfig
209
210 %post   fortran -p /sbin/ldconfig
211 %postun fortran -p /sbin/ldconfig
212
213 %files
214 %defattr(644,root,root,755)
215 %doc CHANGES COPYRIGHT README README.envvar RELEASE_NOTES doc/{installguide/install.pdf,logging/logging.pdf,userguide/user.pdf}
216 %attr(755,root,root) %{_bindir}/hydra_nameserver
217 %attr(755,root,root) %{_bindir}/hydra_persist
218 %attr(755,root,root) %{_bindir}/hydra_pmi_proxy
219 %attr(755,root,root) %{_bindir}/mpichversion
220 %attr(755,root,root) %{_bindir}/mpiexec
221 %attr(755,root,root) %{_bindir}/mpiexec.hydra
222 %attr(755,root,root) %{_bindir}/mpirun
223 %attr(755,root,root) %{_bindir}/mpivars
224 %attr(755,root,root) %{_bindir}/parkill
225 %attr(755,root,root) %{_libdir}/libmpi.so.*.*.*
226 %attr(755,root,root) %ghost %{_libdir}/libmpi.so.12
227 %{_mandir}/man1/hydra_nameserver.1*
228 %{_mandir}/man1/hydra_persist.1*
229 %{_mandir}/man1/hydra_pmi_proxy.1*
230 %{_mandir}/man1/mpiexec.1*
231
232 %files devel
233 %defattr(644,root,root,755)
234 %attr(755,root,root) %{_bindir}/mpicc
235 %attr(755,root,root) %{_libdir}/libmpi.so
236 %attr(755,root,root) %{_libdir}/libmpich.so
237 %attr(755,root,root) %{_libdir}/libmpl.so
238 %{_libdir}/libmpi.la
239 %{_includedir}/mpi.h
240 %{_includedir}/mpio.h
241 %{_pkgconfigdir}/mpich.pc
242 %{_mandir}/man1/mpicc.1*
243 %{_mandir}/man3/MPIX_*.3*
244 %{_mandir}/man3/MPI_*.3*
245 %{_examplesdir}/%{name}-%{version}
246
247 %files static
248 %defattr(644,root,root,755)
249 %{_libdir}/libmpi.a
250
251 %files c++
252 %defattr(644,root,root,755)
253 %attr(755,root,root) %{_libdir}/libmpicxx.so.*.*.*
254 %attr(755,root,root) %ghost %{_libdir}/libmpicxx.so.12
255
256 %files c++-devel
257 %defattr(644,root,root,755)
258 %attr(755,root,root) %{_bindir}/mpic++
259 %attr(755,root,root) %{_bindir}/mpicxx
260 %attr(755,root,root) %{_libdir}/libmpicxx.so
261 %attr(755,root,root) %{_libdir}/libmpichcxx.so
262 %{_libdir}/libmpicxx.la
263 %{_includedir}/mpicxx.h
264 %{_mandir}/man1/mpicxx.1*
265
266 %files c++-static
267 %defattr(644,root,root,755)
268 %{_libdir}/libmpicxx.a
269
270 %files fortran
271 %defattr(644,root,root,755)
272 %attr(755,root,root) %{_libdir}/libmpifort.so.*.*.*
273 %attr(755,root,root) %ghost %{_libdir}/libmpifort.so.12
274
275 %files fortran-devel
276 %defattr(644,root,root,755)
277 %attr(755,root,root) %{_bindir}/mpif77
278 %attr(755,root,root) %{_bindir}/mpif90
279 %attr(755,root,root) %{_bindir}/mpifort
280 %attr(755,root,root) %{_libdir}/libmpifort.so
281 %attr(755,root,root) %{_libdir}/libfmpich.so
282 %attr(755,root,root) %{_libdir}/libmpichf90.so
283 %{_libdir}/libmpifort.la
284 %{_includedir}/mpif.h
285 %{_includedir}/mpiof.h
286 %{_includedir}/mpi*.mod
287 %{_mandir}/man1/mpif77.1*
288 %{_mandir}/man1/mpifort.1*
289
290 %files fortran-static
291 %defattr(644,root,root,755)
292 %{_libdir}/libmpifort.a
This page took 0.253515 seconds and 3 git commands to generate.