]> git.pld-linux.org Git - packages/crossmingw32-boost.git/blob - crossmingw32-boost.spec
- updated to 1.59.0
[packages/crossmingw32-boost.git] / crossmingw32-boost.spec
1 #
2 # Conditional build:
3 %bcond_with     context         # enable Boost Context [gas+PE combination not supported]
4 #
5 %define         realname        boost
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}
9 Version:        1.59.0
10 %define fver    %(echo %{version} | tr . _)
11 Release:        1
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)
29
30 %define         no_install_post_strip   1
31
32 %define         target          i386-mingw32
33 %define         target_platform i386-pc-mingw32
34
35 %define         _sysprefix      /usr
36 %define         _prefix         %{_sysprefix}/%{target}
37 %define         _libdir         %{_prefix}/lib
38 %define         _dlldir         /usr/share/wine/windows/system
39
40 %define         __cc            %{target}-gcc
41 %define         __cxx           %{target}-g++
42
43 %ifnarch %{ix86}
44 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
45 %define         optflags        -O2
46 %endif
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=]*
51
52 %define         abi_tag         1_59
53
54 %description
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.
62
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++.
71
72 %package static
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}
77
78 %description static
79 Static Boost libraries (cross MinGW32 version).
80
81 %description static -l pl.UTF-8
82 Statyczne biblioteki Boost (wersja skrośna MinGW32).
83
84 %package dll
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
90 Requires:       wine
91
92 %description dll
93 Boost - DLL libraries for Windows.
94
95 %description dll -l pl.UTF-8
96 Boost - biblioteki DLL dla Windows.
97
98 %prep
99 %setup -q -n %{realname}_%{fver}
100 %patch0 -p1
101 %patch1 -p0
102
103 echo 'using gcc : : %{target}-g++ : ' \
104         '<cxxflags>"%{rpmcxxflags}"' \
105         '<archiver>%{target}-ar' \
106         '<rc>%{target}-windres ;' >tools/build/src/user-config.jam
107
108 # use Windows Message Compiler, not Midnight Commander
109 %{__sed} -i -e 's,mc $(MCFLAGS),%{target}-windmc $(MCFLAGS),' tools/build/src/tools/mc.jam
110
111 %build
112 ./bootstrap.sh --prefix=%{_prefix}
113 ./b2 \
114         -d2 \
115         %{_smp_mflags} \
116         -sBZIP2_BINARY=bzip2 \
117         --layout=versioned \
118         %{!?with_context:--without-context --without-coroutine --without-coroutine2} \
119         --without-python \
120         --without-test \
121         abi=ms \
122         binary-format=pe \
123         debug-symbols=on \
124         inlining=on \
125         link=static,shared \
126         target-os=windows \
127         threadapi=win32 \
128         threading=multi \
129         toolset=gcc \
130         variant=release
131
132 %if 0%{!?debug:1}
133 %{target}-strip stage/lib/*.dll
134 %{target}-strip -g -R.comment -R.note stage/lib/*.a
135 %endif
136
137 %install
138 rm -rf $RPM_BUILD_ROOT
139 install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_dlldir}}
140
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}
144
145 %clean
146 rm -rf $RPM_BUILD_ROOT
147
148 %files
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
178 # static-only
179 %{_libdir}/libboost_exception-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 %{_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
212
213 %files dll
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
This page took 0.119281 seconds and 3 git commands to generate.