]> git.pld-linux.org Git - packages/crossmingw32-boost.git/blob - crossmingw32-boost.spec
- updated to 1.82.0
[packages/crossmingw32-boost.git] / crossmingw32-boost.spec
1 # TODO: fix serialization
2 #
3 # Conditional build:
4 %bcond_without  context         # Boost Context and dependent modules [gas+PE not supported by upstream]
5 %bcond_with     serialization   # Boost Serialization [broken for MinGW in 1.61: https://svn.boost.org/trac/boost/ticket/12205]
6 #
7 %define         realname        boost
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}
11 Version:        1.63.0
12 %define fver    %(echo %{version} | tr . _)
13 Release:        1
14 License:        Boost Software License and others
15 Group:          Development/Libraries
16 Source0:        http://downloads.sourceforge.net/boost/%{realname}_%{fver}.tar.bz2
17 # Source0-md5:  1c837ecd990bb022d07e7aab32b09847
18 URL:            http://www.boost.org/
19 BuildRequires:  crossmingw32-bzip2
20 BuildRequires:  crossmingw32-gcc-c++
21 BuildRequires:  crossmingw32-runtime
22 BuildRequires:  crossmingw32-w32api
23 BuildRequires:  crossmingw32-zlib
24 Requires:       crossmingw32-bzip2
25 Requires:       crossmingw32-runtime
26 Requires:       crossmingw32-zlib
27 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
28
29 %define         no_install_post_strip   1
30
31 %define         target          i386-mingw32
32 %define         target_platform i386-pc-mingw32
33
34 %define         _sysprefix      /usr
35 %define         _prefix         %{_sysprefix}/%{target}
36 %define         _libdir         %{_prefix}/lib
37 %define         _dlldir         /usr/share/wine/windows/system
38
39 %define         __cc            %{target}-gcc
40 %define         __cxx           %{target}-g++
41
42 %ifnarch %{ix86}
43 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
44 %define         optflags        -O2
45 %endif
46 # -z options are invalid for mingw linker, most of -f options are Linux-specific
47 %define         filterout_ld    -Wl,-z,.*
48 %define         filterout_c     -f[-a-z0-9=]*
49 %define         filterout_cxx   -f[-a-z0-9=]*
50
51 %define         abi_tag         1_63
52
53 %description
54 The Boost web site provides free peer-reviewed portable C++ source
55 libraries. The emphasis is on libraries which work well with the C++
56 Standard Library. One goal is to establish "existing practice" and
57 provide reference implementations so that the Boost libraries are
58 suitable for eventual standardization. Some of the libraries have
59 already been proposed for inclusion in the C++ Standards Committee's
60 upcoming C++ Standard Library Technical Report.
61
62 %description -l pl.UTF-8
63 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
64 kodem źródłowym. Nacisk położono na biblioteki, które dobrze
65 współpracują ze standardową biblioteką C++. Celem jest ustanowienie
66 "istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki
67 "Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek
68 już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym
69 Raporcie Technicznym Biblioteki Standardowej C++.
70
71 %package static
72 Summary:        Static Boost libraries (cross MinGW32 version)
73 Summary(pl.UTF-8):      Statyczne biblioteki Boost (wersja skrośna MinGW32)
74 Group:          Development/Libraries
75 Requires:       %{name} = %{version}-%{release}
76
77 %description static
78 Static Boost libraries (cross MinGW32 version).
79
80 %description static -l pl.UTF-8
81 Statyczne biblioteki Boost (wersja skrośna MinGW32).
82
83 %package dll
84 Summary:        Boost - DLL libraries for Windows
85 Summary(pl.UTF-8):      Boost - biblioteki DLL dla Windows
86 Group:          Applications/Emulators
87 Requires:       crossmingw32-bzip2-dll
88 Requires:       crossmingw32-zlib-dll
89 Requires:       wine
90
91 %description dll
92 Boost - DLL libraries for Windows.
93
94 %description dll -l pl.UTF-8
95 Boost - biblioteki DLL dla Windows.
96
97 %prep
98 %setup -q -n %{realname}_%{fver}
99
100 echo 'using gcc : : %{target}-g++ : ' \
101         '<cxxflags>"%{rpmcxxflags}"' \
102         '<archiver>%{target}-ar' \
103         '<rc>%{target}-windres ;' >tools/build/src/user-config.jam
104
105 # use Windows Message Compiler, not Midnight Commander
106 %{__sed} -i -e 's,mc $(MCFLAGS),%{target}-windmc $(MCFLAGS),' tools/build/src/tools/mc.jam
107
108 %build
109 ./bootstrap.sh --prefix=%{_prefix}
110 ./b2 \
111         -d2 \
112         %{_smp_mflags} \
113         -sBZIP2_BINARY=bzip2 \
114         --layout=versioned \
115         %{!?with_context:--without-context --without-coroutine --without-coroutine2} \
116         --without-python \
117         %{!?with_serialization:--without-serialization} \
118         --without-test \
119         abi=ms \
120         binary-format=pe \
121         debug-symbols=on \
122         inlining=on \
123         link=static,shared \
124         target-os=windows \
125         threadapi=win32 \
126         threading=multi \
127         toolset=gcc \
128         variant=release
129
130 %if 0%{!?debug:1}
131 %{target}-strip stage/lib/*.dll
132 %{target}-strip -g -R.comment -R.note stage/lib/*.a
133 %endif
134
135 %install
136 rm -rf $RPM_BUILD_ROOT
137 install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_dlldir}}
138
139 cp -r boost $RPM_BUILD_ROOT%{_includedir}
140 cp -a stage/lib/*.a $RPM_BUILD_ROOT%{_libdir}
141 install stage/lib/*.dll $RPM_BUILD_ROOT%{_dlldir}
142
143 %clean
144 rm -rf $RPM_BUILD_ROOT
145
146 %files
147 %defattr(644,root,root,755)
148 %{_libdir}/libboost_atomic-mgw*-mt-%{abi_tag}.dll.a
149 %{_libdir}/libboost_chrono-mgw*-mt-%{abi_tag}.dll.a
150 %{_libdir}/libboost_container-mgw*-mt-%{abi_tag}.dll.a
151 %{?with_context:%{_libdir}/libboost_context-mgw*-mt-%{abi_tag}.dll.a}
152 %{?with_context:%{_libdir}/libboost_coroutine-mgw*-mt-%{abi_tag}.dll.a}
153 %{_libdir}/libboost_date_time-mgw*-mt-%{abi_tag}.dll.a
154 %{_libdir}/libboost_filesystem-mgw*-mt-%{abi_tag}.dll.a
155 %{_libdir}/libboost_graph-mgw*-mt-%{abi_tag}.dll.a
156 %{_libdir}/libboost_iostreams-mgw*-mt-%{abi_tag}.dll.a
157 %{_libdir}/libboost_locale-mgw*-mt-%{abi_tag}.dll.a
158 %{_libdir}/libboost_log-mgw*-mt-%{abi_tag}.dll.a
159 %{_libdir}/libboost_log_setup-mgw*-mt-%{abi_tag}.dll.a
160 %{_libdir}/libboost_math_c99-mgw*-mt-%{abi_tag}.dll.a
161 %{_libdir}/libboost_math_c99f-mgw*-mt-%{abi_tag}.dll.a
162 %{_libdir}/libboost_math_c99l-mgw*-mt-%{abi_tag}.dll.a
163 %{_libdir}/libboost_math_tr1-mgw*-mt-%{abi_tag}.dll.a
164 %{_libdir}/libboost_math_tr1f-mgw*-mt-%{abi_tag}.dll.a
165 %{_libdir}/libboost_math_tr1l-mgw*-mt-%{abi_tag}.dll.a
166 %{_libdir}/libboost_program_options-mgw*-mt-%{abi_tag}.dll.a
167 %{_libdir}/libboost_random-mgw*-mt-%{abi_tag}.dll.a
168 %{_libdir}/libboost_regex-mgw*-mt-%{abi_tag}.dll.a
169 %{?with_serialization:%{_libdir}/libboost_serialization-mgw*-mt-%{abi_tag}.dll.a}
170 %{_libdir}/libboost_signals-mgw*-mt-%{abi_tag}.dll.a
171 %{_libdir}/libboost_system-mgw*-mt-%{abi_tag}.dll.a
172 %{_libdir}/libboost_thread_win32-mgw*-mt-%{abi_tag}.dll.a
173 %{_libdir}/libboost_timer-mgw*-mt-%{abi_tag}.dll.a
174 %{_libdir}/libboost_type_erasure-mgw*-mt-%{abi_tag}.dll.a
175 %{_libdir}/libboost_wave-mgw*-mt-%{abi_tag}.dll.a
176 %{?with_serialization:%{_libdir}/libboost_wserialization-mgw*-mt-%{abi_tag}.dll.a}
177 # static-only
178 %{_libdir}/libboost_exception-mgw*-mt-%{abi_tag}.a
179 %{_libdir}/libboost_unit_test_framework-mgw*-mt-%{abi_tag}.a
180 %{_includedir}/boost
181
182 %files static
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 %{?with_serialization:%{_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_type_erasure-mgw*-mt-%{abi_tag}.a
211 %{_libdir}/libboost_wave-mgw*-mt-%{abi_tag}.a
212 %{?with_serialization:%{_libdir}/libboost_wserialization-mgw*-mt-%{abi_tag}.a}
213
214 %files dll
215 %defattr(644,root,root,755)
216 %{_dlldir}/libboost_atomic-mgw*-mt-%{abi_tag}.dll
217 %{_dlldir}/libboost_chrono-mgw*-mt-%{abi_tag}.dll
218 %{_dlldir}/libboost_container-mgw*-mt-%{abi_tag}.dll
219 %{?with_context:%{_dlldir}/libboost_context-mgw*-mt-%{abi_tag}.dll}
220 %{?with_context:%{_dlldir}/libboost_coroutine-mgw*-mt-%{abi_tag}.dll}
221 %{_dlldir}/libboost_date_time-mgw*-mt-%{abi_tag}.dll
222 %{_dlldir}/libboost_filesystem-mgw*-mt-%{abi_tag}.dll
223 %{_dlldir}/libboost_graph-mgw*-mt-%{abi_tag}.dll
224 %{_dlldir}/libboost_iostreams-mgw*-mt-%{abi_tag}.dll
225 %{_dlldir}/libboost_locale-mgw*-mt-%{abi_tag}.dll
226 %{_dlldir}/libboost_log-mgw*-mt-%{abi_tag}.dll
227 %{_dlldir}/libboost_log_setup-mgw*-mt-%{abi_tag}.dll
228 %{_dlldir}/libboost_math_c99-mgw*-mt-%{abi_tag}.dll
229 %{_dlldir}/libboost_math_c99f-mgw*-mt-%{abi_tag}.dll
230 %{_dlldir}/libboost_math_c99l-mgw*-mt-%{abi_tag}.dll
231 %{_dlldir}/libboost_math_tr1-mgw*-mt-%{abi_tag}.dll
232 %{_dlldir}/libboost_math_tr1f-mgw*-mt-%{abi_tag}.dll
233 %{_dlldir}/libboost_math_tr1l-mgw*-mt-%{abi_tag}.dll
234 %{_dlldir}/libboost_program_options-mgw*-mt-%{abi_tag}.dll
235 %{_dlldir}/libboost_random-mgw*-mt-%{abi_tag}.dll
236 %{_dlldir}/libboost_regex-mgw*-mt-%{abi_tag}.dll
237 %{?with_serialization:%{_dlldir}/libboost_serialization-mgw*-mt-%{abi_tag}.dll}
238 %{_dlldir}/libboost_signals-mgw*-mt-%{abi_tag}.dll
239 %{_dlldir}/libboost_system-mgw*-mt-%{abi_tag}.dll
240 %{_dlldir}/libboost_thread_win32-mgw*-mt-%{abi_tag}.dll
241 %{_dlldir}/libboost_timer-mgw*-mt-%{abi_tag}.dll
242 %{_dlldir}/libboost_type_erasure-mgw*-mt-%{abi_tag}.dll
243 %{_dlldir}/libboost_wave-mgw*-mt-%{abi_tag}.dll
244 %{?with_serialization:%{_dlldir}/libboost_wserialization-mgw*-mt-%{abi_tag}.dll}
This page took 0.058396 seconds and 3 git commands to generate.