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