]> git.pld-linux.org Git - packages/opera.git/blob - opera.spec
- fix md5
[packages/opera.git] / opera.spec
1 # TODO:
2 # - move translations into a separate, noarch package
3 #
4 %bcond_without  shared          # static or shared version
5 %bcond_without  distributable   # distributable or not
6 %bcond_without  incall          # include all tarballs into src.rpm (but splitted into shared/static)
7 %bcond_with     snap            # snap version
8 %bcond_with     weekly          # weekly snapshot version
9
10 %ifarch sparc sparcv9
11 %undefine with_shared
12 %endif
13
14 %if %{with weekly}
15 %define ver             9.21
16 %define sver            %{ver}
17 %define fix             %{nil}
18 %define dirrel          20070510
19 %define magicstr        641
20 %define with_snap       1
21 %else
22 %if %{with snap}
23 %define ver             9.0
24 %define sver            %{ver}
25 %define fix             %{nil}
26 %define dirrel          20060206
27 %define reltype         Preview-2
28 %define magicstr        %{nil}
29 %else
30 %define ver             9.21
31 %define sver            9.21
32 %define fix             %{nil}
33 %define dirrel          20070510
34 %define reltype         final
35 %define magicstr        641
36 %endif
37 %endif
38
39 %define shver           %(echo %{ver} | tr -d .)%{fix}
40 %define x86_shared_rel          %{dirrel}.5
41 %define x86_static_rel          %{dirrel}.1
42 %define sparc_shared_rel        %{dirrel}.2
43 %define sparc_static_rel        %{dirrel}.1
44 %define ppc_shared_rel          %{dirrel}.3
45 %define ppc_static_rel          %{dirrel}.1
46 %if %{with shared}
47 %define type            shared
48 # We should be able to build src.rpm also on not supported archs
49 %define rel             %{x86_shared_rel}
50 %ifarch sparc sparcv9
51 #%%define       rel             %{sparc_shared_rel}
52 %define rel             %{sparc_static_rel}
53 %else
54 %ifarch ppc
55 %define rel             %{ppc_shared_rel}
56 %endif
57 %endif
58 %else
59 %define type            static
60 %define rel             %{x86_static_rel}
61 %ifarch sparc sparcv9
62 %define rel             %{sparc_static_rel}
63 %else
64 %ifarch ppc
65 %define rel             %{ppc_static_rel}
66 %endif
67 %endif
68 %endif
69
70 # define to 0 and then redefine to avoid
71 # not defined macros
72 %define need_ix86_shared_snap   0
73 %define need_sparc_shared_snap  0
74 %define need_ppc_shared_snap    0
75 %define need_ix86_static_snap   0
76 %define need_sparc_static_snap  0
77 %define need_ppc_static_snap    0
78
79 %define need_ix86_shared        0
80 %define need_sparc_shared       0
81 %define need_ppc_shared         0
82 %define need_ix86_static        0
83 %define need_sparc_static       0
84 %define need_ppc_static         0
85
86 %if %{with incall}
87 #       with incall?    [if]
88 %if     %{with snap}
89 #               with snap?      [if]
90 %if     %{with shared}
91 #                       with shared?    [if]
92 %define need_ix86_shared_snap   1
93 %define need_sparc_shared_snap  0
94 %define need_ppc_shared_snap    1
95 %else
96 #                       with shared:    [else]
97 %define need_ix86_static_snap   1
98 %define need_sparc_static_snap  1
99 %define need_ppc_static_snap    1
100 %endif
101 #                       with shared;    [endif]
102 %else
103 #               with snap:      [else]
104 %if %{with shared}
105 #                       with shared?    [if]
106 %define need_ix86_shared        1
107 #%%define       need_sparc_shared       1
108 %define need_sparc_static       1
109 %define need_ppc_shared 1
110 %else
111 #                       with shared:    [else]
112 %define need_ix86_static        1
113 %define need_sparc_static       1
114 %define need_ppc_static 1
115 %endif
116 #                       with shared;    [endif]
117 %endif
118 #               with snap;      [endif]
119 %else
120 #       with incall:    [else]
121 %ifarch %{ix86}
122 #               is ix86?        [if]
123 %if     %{with snap}
124 #                       with snap?      [if]
125 %if     %{with shared}
126 #                               with shared?    [if]
127 %define need_ix86_shared_snap   1
128 %else
129 #                               with shared:    [else]
130 %define need_ix86_static_snap   1
131 %endif
132 #                               with shared;    [endif]
133 %else
134 #                       with snap:      [else]
135 %if     %{with shared}
136 #                               with shared?    [if]
137 %define need_ix86_shared        1
138 %else
139 #                               with shared:    [else]
140 %define need_ix86_static        1
141 %endif
142 #                               with shared;    [endif]
143 %endif
144 #                       with snap;      [endif]
145 %else
146 #               is ix86:        [else]
147 %ifarch sparc sparc64
148 #               is sparc?       [if]
149 %if     %{with snap}
150 #                       with snap?      [if]
151 %if     %{with shared}
152 #                               with shared?    [if]
153 %define need_sparc_shared_snap  1
154 %else
155 #                               with shared:    [else]
156 %define need_sparc_static_snap  1
157 %endif
158 #                               with shared;    [endif]
159 %else
160 #                       with snap:      [else]
161 %if     %{with shared}
162 #                               with shared?    [if]
163 #%%define       need_sparc_shared       1
164 %define need_sparc_static       1
165 %else
166 #                               with shared:    [else]
167 %define need_sparc_static       1
168 %endif
169 #                               with shared;    [endif]
170 %endif
171 #                       with snap;      [endif]
172 %else
173 #               is sparc:       [else]
174 %ifarch ppc
175 #               is ppc?         [if]
176 %if     %{with snap}
177 #                       with snap?      [if]
178 %if     %{with shared}
179 #                               with shared?    [if]
180 %define need_ppc_shared_snap    1
181 %else
182 #                               with shared:    [else]
183 %define need_ppc_static_snap    1
184 %endif
185 #                               with shared;    [endif]
186 %else
187 #                       with snap:      [else]
188 %if     %{with shared}
189 #                               with shared?    [if]
190 %define need_ppc_shared 1
191 %else
192 #                               with shared:    [else]
193 %define need_ppc_static 1
194 %endif
195 #                               with shared;    [endif]
196 %endif
197 #                       with snap;      [endif]
198 %endif
199 #               is ppc;         [endif]
200 %endif
201 #               is sparc;       [endif]
202 %endif
203 #               is ix86;        [endif]
204 %endif
205 #       with incall;    [endif]
206
207 %if %{with weekly}
208 %define need_ppc_shared_snap    0
209 %define need_ppc_static_snap    0
210 %define need_sparc_shared_snap  0
211 %define need_sparc_static_snap  0
212 %endif
213
214 %define         _rel    1
215 Summary:        World fastest web browser
216 Summary(pl.UTF-8):      Najszybsza przeglądarka WWW na świecie
217 Name:           opera
218 Version:        %{ver}%{fix}
219 Release:        %{?with_snap:1.%{rel}.}%{_rel}
220 Epoch:          2
221 License:        Distributable for PLD until 31 Dec 2006 - http://distribute.opera.com/ (otherwise restricted, see file LICENSE)
222 Group:          X11/Applications/Networking
223
224 %if %{need_ix86_static}
225 Source0:        ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/i386/static/%{name}-%{sver}-%{x86_static_rel}-static-qt.i386-en.tar.bz2
226 # Source0-md5:  42e3039163f7bbfd49119860cfac60d0
227 %{!?with_distributable:NoSource:        0}
228 %endif
229
230 %if %{need_ix86_static_snap}
231 %if %{with weekly}
232 Source30100:    http://snapshot.opera.com/unix/Weekly-%{magicstr}/intel-linux/%{name}-%{sver}-%{x86_static_rel}-static-qt.i386-en-%{magicstr}.tar.bz2
233 %else
234 Source100:      http://snapshot.opera.com/unix/%{ver}-%{reltype}/%{magicstr}/intel-linux/%{name}-%{sver}-%{x86_static_rel}-static-qt.i386-en-%{magicstr}.tar.bz2
235 %endif
236 %{!?with_distributable:NoSource:        100}
237 %endif
238
239 %if %{need_sparc_static}
240 Source1:        ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/sparc/static/%{name}-%{sver}-%{sparc_static_rel}-static-qt.sparc-en.tar.bz2
241 # Source1-md5:  031f3e4ea5d0e691f8bc4a1631396ffa
242 %{!?with_distributable:NoSource:        1}
243 %endif
244
245 %if %{need_sparc_static_snap}
246 Source101:      http://snapshot.opera.com/unix/%{ver}-%{reltype}/%{magicstr}/sparc-linux/%{name}-%{sver}-%{sparc_static_rel}-static-qt.sparc-en.tar.bz2
247 # Source101-md5:        913ccb28106f9f5acd3d94c8dc71ae1
248 %{!?with_distributable:NoSource:        101}
249 %endif
250
251 %if %{need_ppc_static}
252 Source2:        ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/ppc/static/%{name}-%{sver}-%{ppc_static_rel}-static-qt.ppc-en.tar.bz2
253 # Source2-md5:  5a74849836a5cd0315983e5f1e6852a4
254 %{!?with_distributable:NoSource:        2}
255 %endif
256
257 %if %{need_ppc_static_snap}
258 %if %{with weekly}
259 Source30102:    http://snapshot.opera.com/unix/Weekly-%{magicstr}/ppc-linux/%{name}-%{sver}-%{ppc_static_rel}-static-qt.ppc-en-%{magicstr}.tar.bz2
260 %else
261 Source102:      http://snapshot.opera.com/unix/%{ver}-%{reltype}/%{magicstr}/ppc-linux/%{name}-%{sver}-%{ppc_static_rel}-static-qt.ppc-en.tar.bz2
262 %endif
263 %{!?with_distributable:NoSource:        102}
264 %endif
265
266 %if %{need_ix86_shared}
267 Source20:       ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/i386/shared/%{name}-%{sver}-%{x86_shared_rel}-shared-qt.i386-en.tar.bz2
268 # Source20-md5: f369e702495cf4ef8b230b80dca6073d
269 %{!?with_distributable:NoSource:        20}
270 %endif
271
272 %if %{need_ix86_shared_snap}
273 %if %{with weekly}
274 Source301020:   http://snapshot.opera.com/unix/Weekly-%{magicstr}/intel-linux/%{name}-%{sver}-%{x86_shared_rel}-shared-qt.i386-en-%{magicstr}.tar.bz2
275 # Source301020-md5:     f369e702495cf4ef8b230b80dca6073d
276 %else
277 Source1020:     http://snapshot.opera.com/unix/%{ver}-%{reltype}/%{magicstr}/intel-linux/%{name}-%{sver}-%{x86_shared_rel}-shared-qt.i386-en.tar.bz2
278 # Source1020-md5:       6f296be6b9fc3001588d4509016062bd
279 %{!?with_distributable:NoSource:        1020}
280 %endif
281 %endif
282
283 %if %{need_sparc_shared}
284 Source21:       ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/sparc/shared/gcc-2.95/%{name}-%{sver}-%{sparc_shared_rel}-shared-qt.sparc-en.tar.bz2
285 # Source21-md5: 883df8058672cf52678a07d714dcfce
286 %{!?with_distributable:NoSource:        21}
287 %endif
288
289 %if %{need_sparc_shared_snap}
290 Source1021:     http://snapshot.opera.com/unix/%{ver}-%{reltype}/%{magicstr}/sparc-linux/%{name}-%{sver}-%{sparc_shared_rel}-shared-qt.sparc-en.tar.bz2
291 # Source1021-md5:       e190021f5530de3f711006cd9f6bb339
292 %{!?with_distributable:NoSource:        1021}
293 %endif
294
295 %if %{need_ppc_shared}
296 Source22:       ftp://ftp.opera.com/pub/opera/linux/%{shver}/%{reltype}/en/ppc/shared/gcc-2.95/%{name}-%{sver}-%{ppc_shared_rel}-shared-qt.ppc-en.tar.bz2
297 # Source22-md5: 37ecddcf83a24d4747c3b366f632796d
298 %{!?with_distributable:NoSource:        22}
299 %endif
300
301 %if %{need_ppc_shared_snap}
302 %if %{with weekly}
303 Source301022:   http://snapshot.opera.com/unix/Weekly-%{magicstr}/ppc-linux/%{name}-%{sver}-%{ppc_shared_rel}-shared-qt.ppc-en-%{magicstr}.tar.bz2
304 # Source301022-md5:     65293d788e18d0c23cccac71b9fe567c
305 %else
306 Source1022:     http://snapshot.opera.com/unix/%{ver}-%{reltype}/%{magicstr}/ppc-linux/%{name}-%{sver}-%{ppc_shared_rel}-shared-qt.ppc-en.tar.bz2
307 # Source1022-md5:       74985fa6da49b2e54c9d03dab1119325
308 %{!?with_distributable:NoSource:        1022}
309 %endif
310 %endif
311
312 Source4:        %{name}.desktop
313 Patch0:         %{name}-wrapper.patch
314 URL:            http://www.opera.com/
315 BuildRequires:  rpmbuild(macros) >= 1.356
316 BuildRequires:  sed >= 4.0
317 Requires:       browser-plugins >= 2.0
318 Requires:       freetype >= 2
319 Provides:       wwwbrowser
320 ExclusiveArch:  %{ix86} ppc sparc sparcv9
321 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
322
323 %define         _plugindir      %{_libdir}/opera/plugins
324 %define         _operadocdir    %{_docdir}/%{name}-%{ver}
325
326 %description
327 Opera is world fastest web browser. It supports most of nowaday
328 extensions of HTML. And it is quite stable. This version is %{?with_shared:shared}%{!?with_shared:statically}
329 linked with Qt.
330
331 %description -l pl.UTF-8
332 Opera jest najszybszą przeglądarką WWW na świecie. Obsługuje większość
333 dzisiejszych rozszerzeń HTML-a. Dodatkowo jest w miarę stabilna. Ta
334 wersja jest skonsolidowana %{?with_shared:dynamicznie}%{!?with_shared:statycznie} z Qt.
335
336 %prep
337 %ifarch %{ix86}
338 %setup -q -T -b %{?with_weekly:30}%{?with_snap:10}%{?with_shared:2}0 -n %{name}-%{sver}-%{rel}-%{type}-qt.i386-en%{?magicstr:-%{magicstr}}
339 %endif
340 %ifarch sparc sparcv9
341 %setup -q -T -b %{?with_weekly:30}%{?with_snap:10}%{?with_shared:2}1 -n %{name}-%{sver}-%{rel}-%{type}-qt.sparc-en%{?magicstr:-%{magicstr}}
342 %endif
343 %ifarch ppc
344 %setup -q -T -b %{?with_weekly:30}%{?with_snap:10}%{?with_shared:2}2 -n %{name}-%{sver}-%{rel}-%{type}-qt.ppc-en%{?magicstr:-%{magicstr}}
345 %endif
346 %patch0 -p1
347
348 %install
349 rm -rf $RPM_BUILD_ROOT
350 install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_sysconfdir}}
351
352 %browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/plugins -b <<'EOF'
353 # opera does not use for .xpt files
354 *.xpt
355
356 # use mplayerplug-in-opera instead
357 mplayerplug-in*
358
359 # opera uses libjava.so to run java
360 libjavaplugin_oji.so
361 EOF
362
363 sh install.sh \
364         DESTDIR=$RPM_BUILD_ROOT \
365         --prefix=%{_prefix} \
366         --exec_prefix=%{_libdir}/opera/bin \
367         --docdir=%{_operadocdir}
368
369 # install in kde etc.
370 install images/opera.xpm $RPM_BUILD_ROOT%{_pixmapsdir}
371 install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}
372
373 mv -f $RPM_BUILD_ROOT%{_datadir}/%{name}/config/* $RPM_BUILD_ROOT%{_sysconfdir}
374
375 %clean
376 rm -rf $RPM_BUILD_ROOT
377
378 %post
379 %update_browser_plugins
380
381 %postun
382 if [ "$1" = 0 ]; then
383         %update_browser_plugins
384 fi
385
386 %files
387 %defattr(644,root,root,755)
388 %doc LICENSE
389 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opera*rc*
390
391 # browser plugins v2
392 %{_browserpluginsconfdir}/browsers.d/%{name}.*
393 %config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist
394
395 %attr(755,root,root) %{_bindir}/*
396 %dir %{_libdir}/opera
397 %dir %{_libdir}/opera/bin
398 %attr(755,root,root) %{_libdir}/opera/bin/*
399 %dir %{_plugindir}
400 %attr(755,root,root) %{_plugindir}/*
401 %dir %{_datadir}/opera
402 %{_datadir}/opera/*.*
403 %{_datadir}/opera/images
404 %{_datadir}/opera/ini
405 %{_datadir}/opera/java
406 %{_datadir}/opera/skin
407 %{_datadir}/opera/styles
408 %dir %{_datadir}/opera/locale
409 %{_datadir}/opera/locale/en
410 %{_datadir}/opera/locale/english.lng
411 %{_desktopdir}/*.desktop
412 %{_mandir}/man1/opera.1*
413 %{_pixmapsdir}/opera.xpm
This page took 0.110325 seconds and 4 git commands to generate.