3 %bcond_with context # enable Boost Context [gas+PE combination not supported]
6 Summary: The Boost C++ Libraries - MinGW32 cross version
7 Summary(pl.UTF-8): Biblioteki C++ "Boost" - wersja skrośna dla MinGW32
8 Name: crossmingw32-%{realname}
10 %define fver %(echo %{version} | tr . _)
12 License: Boost Software License and others
13 Group: Development/Libraries
14 Source0: http://downloads.sourceforge.net/boost/%{realname}_%{fver}.tar.bz2
15 # Source0-md5: 6aa9a5c6a4ca1016edd0ed1178e3cb87
16 # https://github.com/boostorg/serialization/pull/19.patch
17 Patch0: boost-windows-decl.patch
18 Patch1: boost-context-mingw.patch
19 URL: http://www.boost.org/
20 BuildRequires: crossmingw32-bzip2
21 BuildRequires: crossmingw32-gcc-c++
22 BuildRequires: crossmingw32-runtime
23 BuildRequires: crossmingw32-w32api
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
32 %define target i386-mingw32
33 %define target_platform i386-pc-mingw32
35 %define _sysprefix /usr
36 %define _prefix %{_sysprefix}/%{target}
37 %define _libdir %{_prefix}/lib
38 %define _dlldir /usr/share/wine/windows/system
40 %define __cc %{target}-gcc
41 %define __cxx %{target}-g++
44 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
47 # -z options are invalid for mingw linker, most of -f options are Linux-specific
48 %define filterout_ld -Wl,-z,.*
49 %define filterout_c -f[-a-z0-9=]*
50 %define filterout_cxx -f[-a-z0-9=]*
55 The Boost web site provides free peer-reviewed portable C++ source
56 libraries. The emphasis is on libraries which work well with the C++
57 Standard Library. One goal is to establish "existing practice" and
58 provide reference implementations so that the Boost libraries are
59 suitable for eventual standardization. Some of the libraries have
60 already been proposed for inclusion in the C++ Standards Committee's
61 upcoming C++ Standard Library Technical Report.
63 %description -l pl.UTF-8
64 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
65 kodem źródłowym. Nacisk położono na biblioteki, które dobrze
66 współpracują ze standardową biblioteką C++. Celem jest ustanowienie
67 "istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki
68 "Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek
69 już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym
70 Raporcie Technicznym Biblioteki Standardowej C++.
73 Summary: Static Boost libraries (cross MinGW32 version)
74 Summary(pl.UTF-8): Statyczne biblioteki Boost (wersja skrośna MinGW32)
75 Group: Development/Libraries
76 Requires: %{name} = %{version}-%{release}
79 Static Boost libraries (cross MinGW32 version).
81 %description static -l pl.UTF-8
82 Statyczne biblioteki Boost (wersja skrośna MinGW32).
85 Summary: Boost - DLL libraries for Windows
86 Summary(pl.UTF-8): Boost - biblioteki DLL dla Windows
87 Group: Applications/Emulators
88 Requires: crossmingw32-bzip2-dll
89 Requires: crossmingw32-zlib-dll
93 Boost - DLL libraries for Windows.
95 %description dll -l pl.UTF-8
96 Boost - biblioteki DLL dla Windows.
99 %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} \
133 %{target}-strip stage/lib/*.dll
134 %{target}-strip -g -R.comment -R.note stage/lib/*.a
138 rm -rf $RPM_BUILD_ROOT
139 install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_dlldir}}
141 cp -r boost $RPM_BUILD_ROOT%{_includedir}
142 cp -a stage/lib/*.a $RPM_BUILD_ROOT%{_libdir}
143 install stage/lib/*.dll $RPM_BUILD_ROOT%{_dlldir}
146 rm -rf $RPM_BUILD_ROOT
149 %defattr(644,root,root,755)
150 %{_libdir}/libboost_atomic-mgw*-mt-%{abi_tag}.dll.a
151 %{_libdir}/libboost_chrono-mgw*-mt-%{abi_tag}.dll.a
152 %{_libdir}/libboost_container-mgw*-mt-%{abi_tag}.dll.a
153 %{?with_context:%{_libdir}/libboost_context-mgw*-mt-%{abi_tag}.dll.a}
154 %{?with_context:%{_libdir}/libboost_coroutine-mgw*-mt-%{abi_tag}.dll.a}
155 %{_libdir}/libboost_date_time-mgw*-mt-%{abi_tag}.dll.a
156 %{_libdir}/libboost_filesystem-mgw*-mt-%{abi_tag}.dll.a
157 %{_libdir}/libboost_graph-mgw*-mt-%{abi_tag}.dll.a
158 %{_libdir}/libboost_iostreams-mgw*-mt-%{abi_tag}.dll.a
159 %{_libdir}/libboost_locale-mgw*-mt-%{abi_tag}.dll.a
160 %{_libdir}/libboost_log-mgw*-mt-%{abi_tag}.dll.a
161 %{_libdir}/libboost_log_setup-mgw*-mt-%{abi_tag}.dll.a
162 %{_libdir}/libboost_math_c99-mgw*-mt-%{abi_tag}.dll.a
163 %{_libdir}/libboost_math_c99f-mgw*-mt-%{abi_tag}.dll.a
164 %{_libdir}/libboost_math_c99l-mgw*-mt-%{abi_tag}.dll.a
165 %{_libdir}/libboost_math_tr1-mgw*-mt-%{abi_tag}.dll.a
166 %{_libdir}/libboost_math_tr1f-mgw*-mt-%{abi_tag}.dll.a
167 %{_libdir}/libboost_math_tr1l-mgw*-mt-%{abi_tag}.dll.a
168 %{_libdir}/libboost_program_options-mgw*-mt-%{abi_tag}.dll.a
169 %{_libdir}/libboost_random-mgw*-mt-%{abi_tag}.dll.a
170 %{_libdir}/libboost_regex-mgw*-mt-%{abi_tag}.dll.a
171 %{_libdir}/libboost_serialization-mgw*-mt-%{abi_tag}.dll.a
172 %{_libdir}/libboost_signals-mgw*-mt-%{abi_tag}.dll.a
173 %{_libdir}/libboost_system-mgw*-mt-%{abi_tag}.dll.a
174 %{_libdir}/libboost_thread_win32-mgw*-mt-%{abi_tag}.dll.a
175 %{_libdir}/libboost_timer-mgw*-mt-%{abi_tag}.dll.a
176 %{_libdir}/libboost_wave-mgw*-mt-%{abi_tag}.dll.a
177 %{_libdir}/libboost_wserialization-mgw*-mt-%{abi_tag}.dll.a
179 %{_libdir}/libboost_exception-mgw*-mt-%{abi_tag}.a
183 %defattr(644,root,root,755)
184 %{_libdir}/libboost_atomic-mgw*-mt-%{abi_tag}.a
185 %{_libdir}/libboost_chrono-mgw*-mt-%{abi_tag}.a
186 %{_libdir}/libboost_container-mgw*-mt-%{abi_tag}.a
187 %{?with_context:%{_libdir}/libboost_context-mgw*-mt-%{abi_tag}.a}
188 %{?with_context:%{_libdir}/libboost_coroutine-mgw*-mt-%{abi_tag}.a}
189 %{_libdir}/libboost_date_time-mgw*-mt-%{abi_tag}.a
190 %{_libdir}/libboost_filesystem-mgw*-mt-%{abi_tag}.a
191 %{_libdir}/libboost_graph-mgw*-mt-%{abi_tag}.a
192 %{_libdir}/libboost_iostreams-mgw*-mt-%{abi_tag}.a
193 %{_libdir}/libboost_locale-mgw*-mt-%{abi_tag}.a
194 %{_libdir}/libboost_log-mgw*-mt-%{abi_tag}.a
195 %{_libdir}/libboost_log_setup-mgw*-mt-%{abi_tag}.a
196 %{_libdir}/libboost_math_c99-mgw*-mt-%{abi_tag}.a
197 %{_libdir}/libboost_math_c99f-mgw*-mt-%{abi_tag}.a
198 %{_libdir}/libboost_math_c99l-mgw*-mt-%{abi_tag}.a
199 %{_libdir}/libboost_math_tr1-mgw*-mt-%{abi_tag}.a
200 %{_libdir}/libboost_math_tr1f-mgw*-mt-%{abi_tag}.a
201 %{_libdir}/libboost_math_tr1l-mgw*-mt-%{abi_tag}.a
202 %{_libdir}/libboost_program_options-mgw*-mt-%{abi_tag}.a
203 %{_libdir}/libboost_random-mgw*-mt-%{abi_tag}.a
204 %{_libdir}/libboost_regex-mgw*-mt-%{abi_tag}.a
205 %{_libdir}/libboost_serialization-mgw*-mt-%{abi_tag}.a
206 %{_libdir}/libboost_signals-mgw*-mt-%{abi_tag}.a
207 %{_libdir}/libboost_system-mgw*-mt-%{abi_tag}.a
208 %{_libdir}/libboost_thread_win32-mgw*-mt-%{abi_tag}.a
209 %{_libdir}/libboost_timer-mgw*-mt-%{abi_tag}.a
210 %{_libdir}/libboost_wave-mgw*-mt-%{abi_tag}.a
211 %{_libdir}/libboost_wserialization-mgw*-mt-%{abi_tag}.a
214 %defattr(644,root,root,755)
215 %{_dlldir}/libboost_atomic-mgw*-mt-%{abi_tag}.dll
216 %{_dlldir}/libboost_chrono-mgw*-mt-%{abi_tag}.dll
217 %{_dlldir}/libboost_container-mgw*-mt-%{abi_tag}.dll
218 %{?with_context:%{_dlldir}/libboost_context-mgw*-mt-%{abi_tag}.dll}
219 %{?with_context:%{_dlldir}/libboost_coroutine-mgw*-mt-%{abi_tag}.dll}
220 %{_dlldir}/libboost_date_time-mgw*-mt-%{abi_tag}.dll
221 %{_dlldir}/libboost_filesystem-mgw*-mt-%{abi_tag}.dll
222 %{_dlldir}/libboost_graph-mgw*-mt-%{abi_tag}.dll
223 %{_dlldir}/libboost_iostreams-mgw*-mt-%{abi_tag}.dll
224 %{_dlldir}/libboost_locale-mgw*-mt-%{abi_tag}.dll
225 %{_dlldir}/libboost_log-mgw*-mt-%{abi_tag}.dll
226 %{_dlldir}/libboost_log_setup-mgw*-mt-%{abi_tag}.dll
227 %{_dlldir}/libboost_math_c99-mgw*-mt-%{abi_tag}.dll
228 %{_dlldir}/libboost_math_c99f-mgw*-mt-%{abi_tag}.dll
229 %{_dlldir}/libboost_math_c99l-mgw*-mt-%{abi_tag}.dll
230 %{_dlldir}/libboost_math_tr1-mgw*-mt-%{abi_tag}.dll
231 %{_dlldir}/libboost_math_tr1f-mgw*-mt-%{abi_tag}.dll
232 %{_dlldir}/libboost_math_tr1l-mgw*-mt-%{abi_tag}.dll
233 %{_dlldir}/libboost_program_options-mgw*-mt-%{abi_tag}.dll
234 %{_dlldir}/libboost_random-mgw*-mt-%{abi_tag}.dll
235 %{_dlldir}/libboost_regex-mgw*-mt-%{abi_tag}.dll
236 %{_dlldir}/libboost_serialization-mgw*-mt-%{abi_tag}.dll
237 %{_dlldir}/libboost_signals-mgw*-mt-%{abi_tag}.dll
238 %{_dlldir}/libboost_system-mgw*-mt-%{abi_tag}.dll
239 %{_dlldir}/libboost_thread_win32-mgw*-mt-%{abi_tag}.dll
240 %{_dlldir}/libboost_timer-mgw*-mt-%{abi_tag}.dll
241 %{_dlldir}/libboost_wave-mgw*-mt-%{abi_tag}.dll
242 %{_dlldir}/libboost_wserialization-mgw*-mt-%{abi_tag}.dll