3 %bcond_without context # Boost Context and dependent modules [gas+PE not supported officially by upstream]
4 %bcond_without serialization # Boost Serialization
5 %bcond_without test # Boost Test
8 Summary: The Boost C++ Libraries - MinGW32 cross version
9 Summary(pl.UTF-8): Biblioteki C++ "Boost" - wersja skrośna dla MinGW32
10 Name: crossmingw32-%{realname}
12 %define fver %(echo %{version} | tr . _)
14 License: Boost Software License and others
15 Group: Development/Libraries
16 Source0: https://boostorg.jfrog.io/artifactory/main/release/%{version}/source/%{realname}_%{fver}.tar.bz2
17 # Source0-md5: b45dac8b54b58c087bfbed260dbfc03a
18 Patch0: boost-allow-mingw32-thread-local.patch
19 URL: http://www.boost.org/
20 BuildRequires: crossmingw32-bzip2
21 BuildRequires: crossmingw32-gcc-c++
22 BuildRequires: crossmingw32-runtime
23 BuildRequires: crossmingw32-w32api >= 1:5.4.2-2
24 BuildRequires: crossmingw32-zlib
25 Requires: crossmingw32-bzip2
26 Requires: crossmingw32-runtime
27 Requires: crossmingw32-zlib
28 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
30 %define no_install_post_strip 1
31 %define _enable_debug_packages 0
33 %define target i386-mingw32
34 %define target_platform i386-pc-mingw32
36 %define _sysprefix /usr
37 %define _prefix %{_sysprefix}/%{target}
38 %define _libdir %{_prefix}/lib
39 %define _dlldir /usr/share/wine/windows/system
41 %define __cc %{target}-gcc
42 %define __cxx %{target}-g++
45 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
48 # -z options are invalid for mingw linker, most of -f options are Linux-specific
49 %define filterout_ld -Wl,-z,.*
50 %define filterout_c -f[-a-z0-9=]*
51 %define filterout_cxx -f[-a-z0-9=]*
53 %define abi_tag mgw*-mt-x32-1_82
56 The Boost web site provides free peer-reviewed portable C++ source
57 libraries. The emphasis is on libraries which work well with the C++
58 Standard Library. One goal is to establish "existing practice" and
59 provide reference implementations so that the Boost libraries are
60 suitable for eventual standardization. Some of the libraries have
61 already been proposed for inclusion in the C++ Standards Committee's
62 upcoming C++ Standard Library Technical Report.
64 %description -l pl.UTF-8
65 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
66 kodem źródłowym. Nacisk położono na biblioteki, które dobrze
67 współpracują ze standardową biblioteką C++. Celem jest ustanowienie
68 "istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki
69 "Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek
70 już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym
71 Raporcie Technicznym Biblioteki Standardowej C++.
74 Summary: Static Boost libraries (cross MinGW32 version)
75 Summary(pl.UTF-8): Statyczne biblioteki Boost (wersja skrośna MinGW32)
76 Group: Development/Libraries
77 Requires: %{name} = %{version}-%{release}
80 Static Boost libraries (cross MinGW32 version).
82 %description static -l pl.UTF-8
83 Statyczne biblioteki Boost (wersja skrośna MinGW32).
86 Summary: Boost - DLL libraries for Windows
87 Summary(pl.UTF-8): Boost - biblioteki DLL dla Windows
88 Group: Applications/Emulators
89 Requires: crossmingw32-bzip2-dll
90 Requires: crossmingw32-zlib-dll
94 Boost - DLL libraries for Windows.
96 %description dll -l pl.UTF-8
97 Boost - biblioteki DLL dla Windows.
100 %setup -q -n %{realname}_%{fver}
103 echo 'using gcc : : %{target}-g++ : ' \
104 '<cxxflags>"%{rpmcxxflags}"' \
105 '<archiver>%{target}-ar' \
106 '<rc>%{target}-windres ;' >tools/build/src/user-config.jam
108 # use Windows Message Compiler, not Midnight Commander
109 %{__sed} -i -e 's,mc $(MCFLAGS),%{target}-windmc $(MCFLAGS),' tools/build/src/tools/mc.jam
112 ./bootstrap.sh --prefix=%{_prefix}
116 -sBZIP2_BINARY=bzip2 \
118 %{!?with_context:--without-context --without-coroutine --without-coroutine2} \
120 %{!?with_serialization:--without-serialization} \
121 %{!?with_test:--without-test} \
135 %{target}-strip stage/lib/*.dll
136 %{target}-strip -g -R.comment -R.note stage/lib/*.a
140 rm -rf $RPM_BUILD_ROOT
141 install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_dlldir}}
143 cp -r boost $RPM_BUILD_ROOT%{_includedir}
144 cp -a stage/lib/*.a $RPM_BUILD_ROOT%{_libdir}
145 install stage/lib/*.dll $RPM_BUILD_ROOT%{_dlldir}
148 rm -rf $RPM_BUILD_ROOT
151 %defattr(644,root,root,755)
152 %{_libdir}/libboost_atomic-%{abi_tag}.dll.a
153 %{_libdir}/libboost_chrono-%{abi_tag}.dll.a
154 %{_libdir}/libboost_container-%{abi_tag}.dll.a
155 %{?with_context:%{_libdir}/libboost_context-%{abi_tag}.dll.a}
156 %{_libdir}/libboost_contract-%{abi_tag}.dll.a
157 %{?with_context:%{_libdir}/libboost_coroutine-%{abi_tag}.dll.a}
158 %{_libdir}/libboost_date_time-%{abi_tag}.dll.a
159 %{_libdir}/libboost_fiber-%{abi_tag}.dll.a
160 %{_libdir}/libboost_filesystem-%{abi_tag}.dll.a
161 %{_libdir}/libboost_graph-%{abi_tag}.dll.a
162 %{_libdir}/libboost_iostreams-%{abi_tag}.dll.a
163 %{_libdir}/libboost_json-%{abi_tag}.dll.a
164 %{_libdir}/libboost_locale-%{abi_tag}.dll.a
165 %{_libdir}/libboost_log-%{abi_tag}.dll.a
166 %{_libdir}/libboost_log_setup-%{abi_tag}.dll.a
167 %{_libdir}/libboost_math_c99-%{abi_tag}.dll.a
168 %{_libdir}/libboost_math_c99f-%{abi_tag}.dll.a
169 %{_libdir}/libboost_math_c99l-%{abi_tag}.dll.a
170 %{_libdir}/libboost_math_tr1-%{abi_tag}.dll.a
171 %{_libdir}/libboost_math_tr1f-%{abi_tag}.dll.a
172 %{_libdir}/libboost_math_tr1l-%{abi_tag}.dll.a
173 %{_libdir}/libboost_nowide-%{abi_tag}.dll.a
174 %{?with_test:%{_libdir}/libboost_prg_exec_monitor-%{abi_tag}.dll.a}
175 %{_libdir}/libboost_program_options-%{abi_tag}.dll.a
176 %{_libdir}/libboost_random-%{abi_tag}.dll.a
177 %{_libdir}/libboost_regex-%{abi_tag}.dll.a
178 %{?with_serialization:%{_libdir}/libboost_serialization-%{abi_tag}.dll.a}
179 %{_libdir}/libboost_stacktrace_basic-%{abi_tag}.dll.a
180 %{_libdir}/libboost_stacktrace_noop-%{abi_tag}.dll.a
181 %{_libdir}/libboost_system-%{abi_tag}.dll.a
182 %{?with_test:%{_libdir}/libboost_test_exec_monitor-%{abi_tag}.a}
183 %{_libdir}/libboost_thread-%{abi_tag}.dll.a
184 %{_libdir}/libboost_timer-%{abi_tag}.dll.a
185 %{_libdir}/libboost_type_erasure-%{abi_tag}.dll.a
186 %{?with_test:%{_libdir}/libboost_unit_test_framework-%{abi_tag}.dll.a}
187 %{_libdir}/libboost_url-%{abi_tag}.dll.a
188 %{_libdir}/libboost_wave-%{abi_tag}.dll.a
189 %{?with_serialization:%{_libdir}/libboost_wserialization-%{abi_tag}.dll.a}
191 %{_libdir}/libboost_exception-%{abi_tag}.a
195 %defattr(644,root,root,755)
196 %{_libdir}/libboost_atomic-%{abi_tag}.a
197 %{_libdir}/libboost_chrono-%{abi_tag}.a
198 %{_libdir}/libboost_container-%{abi_tag}.a
199 %{?with_context:%{_libdir}/libboost_context-%{abi_tag}.a}
200 %{_libdir}/libboost_contract-%{abi_tag}.a
201 %{?with_context:%{_libdir}/libboost_coroutine-%{abi_tag}.a}
202 %{_libdir}/libboost_date_time-%{abi_tag}.a
203 %{_libdir}/libboost_fiber-%{abi_tag}.a
204 %{_libdir}/libboost_filesystem-%{abi_tag}.a
205 %{_libdir}/libboost_graph-%{abi_tag}.a
206 %{_libdir}/libboost_iostreams-%{abi_tag}.a
207 %{_libdir}/libboost_json-%{abi_tag}.a
208 %{_libdir}/libboost_locale-%{abi_tag}.a
209 %{_libdir}/libboost_log-%{abi_tag}.a
210 %{_libdir}/libboost_log_setup-%{abi_tag}.a
211 %{_libdir}/libboost_math_c99-%{abi_tag}.a
212 %{_libdir}/libboost_math_c99f-%{abi_tag}.a
213 %{_libdir}/libboost_math_c99l-%{abi_tag}.a
214 %{_libdir}/libboost_math_tr1-%{abi_tag}.a
215 %{_libdir}/libboost_math_tr1f-%{abi_tag}.a
216 %{_libdir}/libboost_math_tr1l-%{abi_tag}.a
217 %{_libdir}/libboost_nowide-%{abi_tag}.a
218 %{?with_test:%{_libdir}/libboost_prg_exec_monitor-%{abi_tag}.a}
219 %{_libdir}/libboost_program_options-%{abi_tag}.a
220 %{_libdir}/libboost_random-%{abi_tag}.a
221 %{_libdir}/libboost_regex-%{abi_tag}.a
222 %{?with_serialization:%{_libdir}/libboost_serialization-%{abi_tag}.a}
223 %{_libdir}/libboost_stacktrace_basic-%{abi_tag}.a
224 %{_libdir}/libboost_stacktrace_noop-%{abi_tag}.a
225 %{_libdir}/libboost_system-%{abi_tag}.a
226 %{_libdir}/libboost_thread-%{abi_tag}.a
227 %{_libdir}/libboost_timer-%{abi_tag}.a
228 %{_libdir}/libboost_type_erasure-%{abi_tag}.a
229 %{?with_test:%{_libdir}/libboost_unit_test_framework-%{abi_tag}.a}
230 %{_libdir}/libboost_url-%{abi_tag}.a
231 %{_libdir}/libboost_wave-%{abi_tag}.a
232 %{?with_serialization:%{_libdir}/libboost_wserialization-%{abi_tag}.a}
235 %defattr(644,root,root,755)
236 %{_dlldir}/libboost_atomic-%{abi_tag}.dll
237 %{_dlldir}/libboost_chrono-%{abi_tag}.dll
238 %{_dlldir}/libboost_container-%{abi_tag}.dll
239 %{?with_context:%{_dlldir}/libboost_context-%{abi_tag}.dll}
240 %{_dlldir}/libboost_contract-%{abi_tag}.dll
241 %{?with_context:%{_dlldir}/libboost_coroutine-%{abi_tag}.dll}
242 %{_dlldir}/libboost_date_time-%{abi_tag}.dll
243 %{_dlldir}/libboost_fiber-%{abi_tag}.dll
244 %{_dlldir}/libboost_filesystem-%{abi_tag}.dll
245 %{_dlldir}/libboost_graph-%{abi_tag}.dll
246 %{_dlldir}/libboost_iostreams-%{abi_tag}.dll
247 %{_dlldir}/libboost_json-%{abi_tag}.dll
248 %{_dlldir}/libboost_locale-%{abi_tag}.dll
249 %{_dlldir}/libboost_log-%{abi_tag}.dll
250 %{_dlldir}/libboost_log_setup-%{abi_tag}.dll
251 %{_dlldir}/libboost_math_c99-%{abi_tag}.dll
252 %{_dlldir}/libboost_math_c99f-%{abi_tag}.dll
253 %{_dlldir}/libboost_math_c99l-%{abi_tag}.dll
254 %{_dlldir}/libboost_math_tr1-%{abi_tag}.dll
255 %{_dlldir}/libboost_math_tr1f-%{abi_tag}.dll
256 %{_dlldir}/libboost_math_tr1l-%{abi_tag}.dll
257 %{_dlldir}/libboost_nowide-%{abi_tag}.dll
258 %{?with_test:%{_dlldir}/libboost_prg_exec_monitor-%{abi_tag}.dll}
259 %{_dlldir}/libboost_program_options-%{abi_tag}.dll
260 %{_dlldir}/libboost_random-%{abi_tag}.dll
261 %{_dlldir}/libboost_regex-%{abi_tag}.dll
262 %{?with_serialization:%{_dlldir}/libboost_serialization-%{abi_tag}.dll}
263 %{_dlldir}/libboost_stacktrace_basic-%{abi_tag}.dll
264 %{_dlldir}/libboost_stacktrace_noop-%{abi_tag}.dll
265 %{_dlldir}/libboost_system-%{abi_tag}.dll
266 %{_dlldir}/libboost_thread-%{abi_tag}.dll
267 %{_dlldir}/libboost_timer-%{abi_tag}.dll
268 %{_dlldir}/libboost_type_erasure-%{abi_tag}.dll
269 %{?with_test:%{_dlldir}/libboost_unit_test_framework-%{abi_tag}.dll}
270 %{_dlldir}/libboost_url-%{abi_tag}.dll
271 %{_dlldir}/libboost_wave-%{abi_tag}.dll
272 %{?with_serialization:%{_dlldir}/libboost_wserialization-%{abi_tag}.dll}