]>
Commit | Line | Data |
---|---|---|
00238d6b | 1 | # TODO: separate fortran lib/tools? c++ too? |
d08d4924 JB |
2 | # |
3 | # Conditional build: | |
4 | %bcond_with blcr # blcr application checkpointing support (no support for recent kernels) | |
5 | # | |
55b4cae8 | 6 | Summary: Portable MPI Model Implementation |
5807d627 | 7 | Summary(pl.UTF-8): Przenośna implementacja standardu MPI |
55b4cae8 | 8 | Name: mpich |
00238d6b JB |
9 | Version: 3.1.4 |
10 | Release: 1 | |
dc8c0b94 | 11 | License: BSD-like |
55b4cae8 | 12 | Group: Development/Libraries |
00238d6b JB |
13 | Source0: https://www.mpich.org/static/downloads/%{version}/%{name}-%{version}.tar.gz |
14 | # Source0-md5: 2ab544607986486562e076b83937bba2 | |
dc8c0b94 | 15 | Patch0: %{name}-sh.patch |
00238d6b JB |
16 | Patch1: x32-misdetected-as-i386.patch |
17 | URL: https://www.mpich.org/ | |
dc8c0b94 JB |
18 | BuildRequires: autoconf >= 2.63 |
19 | BuildRequires: automake >= 1:1.12.3 | |
d08d4924 | 20 | %{?with_blcr:BuildRequires: blcr-devel} |
dc8c0b94 JB |
21 | BuildRequires: ftb-devel |
22 | BuildRequires: gcc-fortran | |
23 | BuildRequires: hwloc-devel >= 1.9.0 | |
55b4cae8 | 24 | BuildRequires: libstdc++-devel |
dc8c0b94 JB |
25 | BuildRequires: libtool >= 2:2 |
26 | BuildRequires: openpa-devel | |
e6fc440a | 27 | BuildRequires: rpmbuild(macros) >= 1.750 |
dc8c0b94 | 28 | Requires: hwloc-libs >= 1.9.0 |
8791ac7a | 29 | Provides: mpi |
55b4cae8 JB |
30 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
31 | ||
32 | %description | |
dc8c0b94 JB |
33 | MPICH is a high-performance and widely portable implementation of the |
34 | MPI-3.0 standard from the Argonne National Laboratory. This release | |
35 | has all MPI 3.0 functions and features required by the standard with | |
36 | the exception of support for the "external32" portable I/O format and | |
37 | user-defined data representations for I/O. | |
38 | ||
39 | This package contains MPICH shared libraries and runtime utilities, | |
40 | including Hydra PM. | |
55b4cae8 | 41 | |
f33abeef | 42 | %description -l pl.UTF-8 |
dc8c0b94 JB |
43 | MPICH to wysoko wydajna i przenośna implementacja standardu MPI-3.0 |
44 | pochodząca z Argonne National Laboratory. To wydanie zawiera całą | |
45 | funkcjonalność i możliwości MPI 3.0 wymagane przez standard z | |
46 | wyjątkiem obsługi przenośnego formatu we-wy "external32" oraz | |
47 | definiowanych przez użytkownika reprezentacji danych dla we/wy. | |
48 | ||
49 | Ten pakiet zawiera biblioteki współdzielone MPICH oraz narzędzia | |
50 | uruchomieniowe, w tym Hydra PM. | |
51 | ||
52 | %package devel | |
53 | Summary: MPICH header files and development tools | |
54 | Summary(pl.UTF-8): Pliki nagłówkowe oraz narzędzia programistyczne MPICH | |
55 | Group: Development | |
56 | Requires: %{name} = %{version}-%{release} | |
00238d6b JB |
57 | Requires: gcc-fortran |
58 | Requires: libstdc++-devel | |
59 | Requires: openpa-devel | |
42f03ea9 | 60 | Provides: mpi-devel |
dc8c0b94 JB |
61 | |
62 | %description devel | |
63 | MPICH header files and development tools. | |
64 | ||
65 | %description devel | |
66 | Pliki nagłówkowe oraz narzędzia programistyczne MPICH. | |
67 | ||
68 | %package static | |
69 | Summary: MPICH static libraries | |
70 | Summary(pl.UTF-8): Biblioteki statyczne MPICH | |
71 | Group: Development/Libraries | |
72 | Requires: %{name}-devel = %{version}-%{release} | |
42f03ea9 | 73 | Provides: mpi-static |
dc8c0b94 JB |
74 | |
75 | %description static | |
76 | MPICH static libraries. | |
77 | ||
78 | %description static -l pl.UTF-8 | |
79 | Biblioteki statyczne MPICH. | |
55b4cae8 JB |
80 | |
81 | %prep | |
8e991428 | 82 | %setup -q |
55b4cae8 | 83 | %patch0 -p1 |
0dad8207 | 84 | %patch1 -p1 |
0e91bc8e | 85 | |
55b4cae8 | 86 | %build |
dc8c0b94 JB |
87 | %{__libtoolize} |
88 | %{__aclocal} -I confdb | |
89 | %{__autoconf} | |
90 | %{__autoheader} | |
91 | %{__automake} | |
a0cba296 | 92 | %define gfortran_version %(gfortran -dumpversion) |
e6fc440a JB |
93 | %if "%{_ver_ge '%{gfortran_version}' '10.0'}" == "1" |
94 | FFLAGS="%{rpmcflags} -fallow-argument-mismatch" | |
95 | FCFLAGS="%{rpmcflags} -fallow-argument-mismatch" | |
96 | %endif | |
dc8c0b94 JB |
97 | %configure \ |
98 | --disable-silent-rules \ | |
d08d4924 | 99 | %{?with_blcr:--enable-checkpointing} \ |
dc8c0b94 | 100 | --with-hwloc-prefix=system \ |
d08d4924 | 101 | %{!?with_blcr:--with-hydra-ckpointlib=none} \ |
dc8c0b94 JB |
102 | --with-openpa-prefix=system |
103 | ||
104 | %{__make} | |
55b4cae8 JB |
105 | |
106 | %install | |
107 | rm -rf $RPM_BUILD_ROOT | |
108 | ||
dc8c0b94 JB |
109 | %{__make} install \ |
110 | DESTDIR=$RPM_BUILD_ROOT | |
55b4cae8 | 111 | |
55b4cae8 | 112 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
dc8c0b94 JB |
113 | cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
114 | %{__rm} $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/{cpi,cpi.o,examples.sln} | |
55b4cae8 | 115 | |
dc8c0b94 JB |
116 | # see openpa.spec |
117 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/libopa.so | |
55b4cae8 | 118 | |
dc8c0b94 JB |
119 | # PDFs packaged as %doc |
120 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/mpich | |
d03126ce | 121 | |
55b4cae8 JB |
122 | %clean |
123 | rm -rf $RPM_BUILD_ROOT | |
124 | ||
125 | %post -p /sbin/ldconfig | |
126 | %postun -p /sbin/ldconfig | |
127 | ||
128 | %files | |
129 | %defattr(644,root,root,755) | |
dc8c0b94 JB |
130 | %doc CHANGES COPYRIGHT README README.envvar RELEASE_NOTES doc/{installguide/install.pdf,logging/logging.pdf,userguide/user.pdf} |
131 | %attr(755,root,root) %{_bindir}/hydra_nameserver | |
132 | %attr(755,root,root) %{_bindir}/hydra_persist | |
133 | %attr(755,root,root) %{_bindir}/hydra_pmi_proxy | |
134 | %attr(755,root,root) %{_bindir}/mpichversion | |
135 | %attr(755,root,root) %{_bindir}/mpiexec | |
136 | %attr(755,root,root) %{_bindir}/mpiexec.hydra | |
137 | %attr(755,root,root) %{_bindir}/mpirun | |
138 | %attr(755,root,root) %{_bindir}/mpivars | |
139 | %attr(755,root,root) %{_bindir}/parkill | |
140 | %attr(755,root,root) %{_libdir}/libmpi.so.*.*.* | |
141 | %attr(755,root,root) %ghost %{_libdir}/libmpi.so.12 | |
142 | %attr(755,root,root) %{_libdir}/libmpicxx.so.*.*.* | |
143 | %attr(755,root,root) %ghost %{_libdir}/libmpicxx.so.12 | |
144 | %attr(755,root,root) %{_libdir}/libmpifort.so.*.*.* | |
145 | %attr(755,root,root) %ghost %{_libdir}/libmpifort.so.12 | |
146 | %{_mandir}/man1/hydra_nameserver.1* | |
147 | %{_mandir}/man1/hydra_persist.1* | |
148 | %{_mandir}/man1/hydra_pmi_proxy.1* | |
149 | %{_mandir}/man1/mpiexec.1* | |
150 | ||
151 | %files devel | |
152 | %defattr(644,root,root,755) | |
153 | %attr(755,root,root) %{_bindir}/mpic++ | |
154 | %attr(755,root,root) %{_bindir}/mpicc | |
155 | %attr(755,root,root) %{_bindir}/mpicxx | |
156 | %attr(755,root,root) %{_bindir}/mpif77 | |
157 | %attr(755,root,root) %{_bindir}/mpif90 | |
158 | %attr(755,root,root) %{_bindir}/mpifort | |
159 | %attr(755,root,root) %{_libdir}/libmpi.so | |
160 | %attr(755,root,root) %{_libdir}/libmpicxx.so | |
161 | %attr(755,root,root) %{_libdir}/libmpifort.so | |
162 | %attr(755,root,root) %{_libdir}/libfmpich.so | |
163 | %attr(755,root,root) %{_libdir}/libmpich.so | |
164 | %attr(755,root,root) %{_libdir}/libmpichcxx.so | |
165 | %attr(755,root,root) %{_libdir}/libmpichf90.so | |
166 | %attr(755,root,root) %{_libdir}/libmpl.so | |
167 | %{_libdir}/libmpi.la | |
168 | %{_libdir}/libmpicxx.la | |
169 | %{_libdir}/libmpifort.la | |
170 | %{_includedir}/mpi*.h | |
171 | %{_includedir}/mpi*.mod | |
172 | %{_pkgconfigdir}/mpich.pc | |
173 | %{_mandir}/man1/mpicc.1* | |
174 | %{_mandir}/man1/mpicxx.1* | |
175 | %{_mandir}/man1/mpif77.1* | |
176 | %{_mandir}/man1/mpifort.1* | |
177 | %{_mandir}/man3/MPIX_*.3* | |
178 | %{_mandir}/man3/MPI_*.3* | |
55b4cae8 | 179 | %{_examplesdir}/%{name}-%{version} |
dc8c0b94 JB |
180 | |
181 | %files static | |
182 | %defattr(644,root,root,755) | |
183 | %{_libdir}/libmpi.a | |
184 | %{_libdir}/libmpicxx.a | |
185 | %{_libdir}/libmpifort.a |