]> git.pld-linux.org Git - packages/iceape.git/blob - iceape.spec
- rebuild with hunspell 1.6
[packages/iceape.git] / iceape.spec
1 #
2 # Conditional build:
3 %bcond_without  gtk3            # GTK+ 3.x instead of 2.x
4 %bcond_without  ldap            # disable e-mail address lookups in LDAP directories
5 %bcond_without  kerberos        # disable krb5 support
6 %bcond_with     crashreporter   # report crashes to crash-stats.mozilla.com
7 %bcond_with     tests           # enable tests (whatever they check)
8
9 %define         nspr_ver        4.10.3
10 %define         nss_ver         3.16
11
12 # The actual sqlite version (see RHBZ#480989):
13 %define         sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo ERROR)
14
15 Summary:        Iceape - web browser
16 Summary(es.UTF-8):      Navegador de Internet Iceape
17 Summary(pl.UTF-8):      Iceape - przeglądarka WWW
18 Summary(pt_BR.UTF-8):   Navegador Iceape
19 Name:           iceape
20 Version:        2.46
21 Release:        4
22 License:        MPL v2.0
23 Group:          X11/Applications/Networking
24 Source0:        http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/%{version}/source/seamonkey-%{version}.source.tar.xz
25 # Source0-md5:  436a158e16eee151b97f96c053b82d45
26 Source1:        %{name}-branding.tar.xz
27 # Source1-md5:  2eca62062b4d1022f94b5cf49bc024d3
28 Source3:        %{name}-rm_nonfree.sh
29 Source4:        %{name}.desktop
30 Source5:        %{name}-composer.desktop
31 Source7:        %{name}-mail.desktop
32 Source8:        %{name}.sh
33 Patch0:         %{name}-branding.patch
34 Patch1:         %{name}-pld-branding.patch
35 Patch2:         %{name}-agent.patch
36 Patch3:         enable-addons.patch
37 # Edit patch below and restore --system-site-packages when system virtualenv gets 1.7 upgrade
38 Patch4:         system-virtualenv.patch
39 Patch5:         icu-detect.patch
40 Patch6:         nss-http2.patch
41 Patch7:         libevent21.patch
42 URL:            http://www.pld-linux.org/Packages/Iceape
43 BuildRequires:  GConf2-devel >= 1.2.1
44 BuildRequires:  OpenGL-devel
45 BuildRequires:  alsa-lib-devel
46 BuildRequires:  automake
47 BuildRequires:  autoconf2_13
48 BuildRequires:  bzip2-devel
49 BuildRequires:  cairo-devel >= 1.10.2-5
50 BuildRequires:  dbus-glib-devel >= 0.60
51 BuildRequires:  freetype-devel >= 1:2.1.8
52 BuildRequires:  glib2-devel >= 1:2.20
53 %{!?with_gtk3:BuildRequires:    gtk+2-devel >= 2:2.18}
54 %{?with_gtk3:BuildRequires:     gtk+3-devel >= 3.0.0}
55 %{?with_kerberos:BuildRequires: heimdal-devel >= 0.7.1}
56 BuildRequires:  hunspell-devel
57 BuildRequires:  libIDL-devel >= 0.8.0
58 BuildRequires:  libdnet-devel
59 BuildRequires:  libevent-devel >= 1.4.7
60 # standalone libffi 3.0.9 or gcc's from 4.5(?)+
61 BuildRequires:  libffi-devel >= 6:3.0.9
62 BuildRequires:  libicu-devel >= 50.1
63 # requires libjpeg-turbo implementing at least libjpeg 6b API
64 BuildRequires:  libjpeg-devel >= 6b
65 BuildRequires:  libjpeg-turbo-devel
66 BuildRequires:  libnotify-devel >= 0.4
67 BuildRequires:  libpng(APNG)-devel >= 0.10
68 BuildRequires:  libpng-devel >= 2:1.6.7
69 # rsvg-convert for iceape/branding
70 BuildRequires:  librsvg
71 BuildRequires:  libstdc++-devel
72 BuildRequires:  libvpx-devel >= 1.3.0
73 BuildRequires:  mozldap-devel
74 BuildRequires:  nspr-devel >= 1:%{nspr_ver}
75 BuildRequires:  nss-devel >= 1:%{nss_ver}
76 BuildRequires:  pango-devel >= 1:1.14.0
77 BuildRequires:  perl-base >= 1:5.6
78 BuildRequires:  perl-modules >= 5.004
79 BuildRequires:  pkgconfig
80 BuildRequires:  python >= 1:2.5
81 BuildRequires:  python-modules
82 BuildRequires:  python-simplejson
83 BuildRequires:  python-virtualenv >= 15
84 BuildRequires:  rpm >= 4.4.9-56
85 BuildRequires:  rpmbuild(macros) >= 1.601
86 BuildRequires:  sed >= 4.0
87 BuildRequires:  sqlite3-devel >= 3.8.2
88 BuildRequires:  startup-notification-devel >= 0.8
89 BuildRequires:  xorg-lib-libX11-devel
90 BuildRequires:  xorg-lib-libXScrnSaver-devel
91 BuildRequires:  xorg-lib-libXext-devel
92 BuildRequires:  xorg-lib-libXinerama-devel
93 BuildRequires:  xorg-lib-libXt-devel
94 BuildRequires:  yasm
95 BuildRequires:  zip
96 BuildRequires:  zlib-devel >= 1.2.3
97 Requires(post): mktemp >= 1.5-18
98 Requires:       desktop-file-utils
99 Requires:       hicolor-icon-theme
100 Requires:       browser-plugins >= 2.0
101 Requires:       cairo >= 1.10.2-5
102 Requires:       dbus-glib >= 0.60
103 Requires:       glib2 >= 1:2.20
104 %{!?with_gtk3:Requires: gtk+2 >= 2:2.18}
105 %{?with_gtk3:Requires:  gtk+3 >= 3.0.0}
106 Requires:       libjpeg-turbo
107 Requires:       libpng >= 2:1.6.7
108 Requires:       libpng(APNG) >= 0.10
109 Requires:       libvpx >= 1.3.0
110 Requires:       myspell-common
111 Requires:       nspr >= 1:%{nspr_ver}
112 Requires:       nss >= 1:%{nss_ver}
113 Requires:       pango >= 1:1.14.0
114 Requires:       sqlite3 >= %{sqlite_build_version}
115 Requires:       startup-notification >= 0.8
116 Provides:       iceape-embedded = %{version}-%{release}
117 Provides:       wwwbrowser
118 Obsoletes:      iceape-addon-lightning < 2.46-1
119 Obsoletes:      iceape-chat < 2.46-1
120 Obsoletes:      iceape-dom-inspector < 2.46-1
121 Obsoletes:      iceape-mailnews
122 Obsoletes:      iceape-gnomevfs
123 Obsoletes:      light
124 Obsoletes:      mozilla
125 Obsoletes:      mozilla-gnomevfs
126 Obsoletes:      seamonkey
127 Obsoletes:      seamonkey-calendar
128 Obsoletes:      seamonkey-libs
129 Obsoletes:      seamonkey-mailnews
130 Obsoletes:      seamonkey-gnomevfs
131 Conflicts:      iceape-lang-resources < %{version}
132 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
133
134 %define         topdir          %{_builddir}/seamonkey-%{version}
135 %define         objdir          %{topdir}/obj-%{_target_cpu}
136
137 %define         filterout_cpp   -D_FORTIFY_SOURCE=[0-9]+
138
139 # don't satisfy other packages
140 %define         _noautoprovfiles        %{_libdir}/%{name}
141 # and as we don't provide them, don't require either
142 %define         _noautoreq      libmozjs.so libxpcom.so libxul.so libjemalloc.so libmozalloc.so
143 %define         _noautoreqdep   libgfxpsshar.so libgkgfx.so libgtkxtbin.so libjsj.so libxpcom_compat.so libxpistub.so
144
145 %description
146 Iceape is an open-source web browser, designed for standards
147 compliance, performance and portability.
148
149 %description -l es.UTF-8
150 Iceape es un navegador de Internet que se basa en una versión inicial
151 de Netscape Communicator.
152
153 %description -l pl.UTF-8
154 Iceape jest potężną graficzną przeglądarką WWW, która jest następcą
155 Mozilli, która następnie była następczynią Netscape Communikatora.
156
157 %description -l pt_BR.UTF-8
158 O Iceape é um web browser baseado numa versão inicial do Netscape
159 Communicator.
160
161 %description -l ru.UTF-8
162 Iceape - полнофункциональный web-browser с открытыми исходными
163 текстами, разработанный для максимального соотвествия стандартам,
164 максмимальной переносимости и скорости работы
165
166 %package addon-lightning
167 Summary:        An integrated calendar for Iceape
168 Summary(pl.UTF-8):      Zintegrowany kalendarz dla Iceape
169 License:        MPL 1.1 or GPL v2+ or LGPL v2.1+
170 Group:          Applications/Networking
171 Requires:       %{name} = %{version}-%{release}
172 Obsoletes:      seamonkey-addon-lightning
173
174 %description addon-lightning
175 Lightning is an calendar extension to Icedove email client.
176
177 %description addon-lightning -l pl.UTF-8
178 Lightning to rozszerzenie do klienta poczty Icedove dodające
179 funkcjonalność kalendarza.
180
181 %package chat
182 Summary:        Iceape Chat - integrated IRC client
183 Summary(pl.UTF-8):      Iceape Chat - zintegrowany klient IRC-a
184 Group:          X11/Applications/Networking
185 Requires(post,postun):  %{name} = %{version}-%{release}
186 Requires:       %{name} = %{version}-%{release}
187 Obsoletes:      mozilla-chat
188 Obsoletes:      seamonkey-chat
189
190 %description chat
191 Iceape Chat - IRC client that is integrated with the Iceape web
192 browser.
193
194 %description chat -l pl.UTF-8
195 Iceape - klient IRC-a zintegrowany z przeglądarką Iceape.
196
197 %package dom-inspector
198 Summary:        A tool for inspecting the DOM of pages in Iceape
199 Summary(pl.UTF-8):      Narzędzie do oglądania DOM stron w Iceape
200 Group:          X11/Applications/Networking
201 Requires(post,postun):  %{name} = %{version}-%{release}
202 Requires:       %{name} = %{version}-%{release}
203 Obsoletes:      mozilla-dom-inspector
204 Obsoletes:      seamonkey-dom-inspector
205
206 %description dom-inspector
207 This is a tool that allows you to inspect the DOM for web pages in
208 Iceape. This is of great use to people who are doing Iceape chrome
209 development or web page development.
210
211 %description dom-inspector -l pl.UTF-8
212 To narzędzie pozwala na oglądanie DOM dla stron WWW w Iceape. Jest
213 bardzo przydatne dla ludzi rozwijających chrome w Iceape lub
214 tworzących strony WWW.
215
216 %prep
217 %setup -q -a1 -n seamonkey-%{version}
218 %patch0 -p1
219 %patch1 -p1
220 %patch2 -p1
221 %patch3 -p1
222 %patch4 -p1
223 %patch5 -p1
224 %patch6 -p1
225 %patch7 -p1
226
227 %build
228 cat << EOF > .mozconfig
229 mk_add_options MOZ_OBJDIR=%{objdir}
230
231 %if %{with crashreporter}
232 export MOZ_DEBUG_SYMBOLS=1
233 %endif
234
235 # Options for 'configure' (same as command-line options).
236 ac_add_options --prefix=%{_prefix}
237 %if %{?debug:1}0
238 ac_add_options --disable-optimize
239 ac_add_options --enable-debug
240 ac_add_options --enable-debug-modules
241 ac_add_options --enable-debugger-info-modules
242 ac_add_options --enable-crash-on-assert
243 %else
244 ac_add_options --disable-debug
245 ac_add_options --enable-optimize="%{rpmcflags} -Os"
246 %endif
247 ac_add_options --disable-strip
248 %if %{with tests}
249 ac_add_options --enable-tests
250 %else
251 ac_add_options --disable-tests
252 %endif
253 %if %{with crashreporter}
254 ac_add_options --enable-crashreporter
255 %else
256 ac_add_options --disable-crashreporter
257 %endif
258 ac_add_options --disable-elf-hack
259 ac_add_options --disable-gnomeui
260 ac_add_options --disable-updater
261 ac_add_options --enable-application=suite
262 ac_add_options --enable-default-toolkit=%{?with_gtk3:cairo-gtk3}%{!?with_gtk3:cairo-gtk2}
263 ac_add_options --enable-extensions=default,irc
264 ac_add_options --enable-gio
265 %if %{with ldap}
266 ac_add_options --enable-ldap
267 %else
268 ac_add_options --disable-ldap
269 %endif
270 # breaks build
271 #ac_add_options --enable-shared-js
272 ac_add_options --enable-startup-notification
273 ac_add_options --enable-system-cairo
274 ac_add_options --enable-system-hunspell
275 ac_add_options --enable-system-sqlite
276 ac_add_options --with-branding=iceape/branding
277 ac_add_options --with-default-mozilla-five-home=%{_libdir}/%{name}
278 ac_add_options --with-distribution-id=org.pld-linux
279 ac_add_options --with-pthreads
280 ac_add_options --with-system-bz2
281 ac_add_options --with-system-ffi
282 ac_add_options --with-system-icu
283 ac_add_options --with-system-jpeg
284 ac_add_options --with-system-libevent
285 ac_add_options --with-system-libvpx
286 ac_add_options --with-system-nspr
287 ac_add_options --with-system-nss
288 ac_add_options --with-system-png
289 ac_add_options --with-system-zlib
290 ac_add_options --enable-safe-browsing
291 ac_add_options --enable-chrome-format=omni
292 ac_add_options --disable-necko-wifi
293 EOF
294
295 %{__make} -j1 -f client.mk build \
296         AUTOCONF=/usr/bin/autoconf2_13 \
297         STRIP="/bin/true" \
298         MOZ_MAKE_FLAGS="%{?_smp_mflags}" \
299         installdir=%{_libdir}/%{name} \
300         XLIBS="-lX11 -lXt" \
301         CC="%{__cc}" \
302         CXX="%{__cxx}"
303
304 %if %{with crashreporter}
305 # create debuginfo for crash-stats.mozilla.com
306 %{__make} -j1 -C obj-%{_target_cpu} buildsymbols
307 %endif
308
309 %install
310 rm -rf $RPM_BUILD_ROOT
311 install -d \
312         $RPM_BUILD_ROOT{%{_bindir},%{_libdir}} \
313         $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}} \
314         $RPM_BUILD_ROOT%{_datadir}/%{name} \
315         $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
316
317 %browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/plugins
318
319 cd %{objdir}
320 cwd=`pwd`
321 %{__make} -C suite/installer stage-package \
322         DESTDIR=$RPM_BUILD_ROOT \
323         installdir=%{_libdir}/%{name} \
324         PKG_SKIP_STRIP=1
325
326 %{__make} -C iceape/branding install \
327         DESTDIR=$RPM_BUILD_ROOT
328
329 cp -a dist/iceape/* $RPM_BUILD_ROOT%{_libdir}/%{name}/
330
331 # Enable crash reporter for Thunderbird application
332 %if %{with crashreporter}
333 %{__sed} -i -e 's/\[Crash Reporter\]/[Crash Reporter]\nEnabled=1/' $RPM_BUILD_ROOT%{_libdir}/%{name}/application.ini
334
335 # Add debuginfo for crash-stats.mozilla.com
336 install -d $RPM_BUILD_ROOT%{_exec_prefix}/lib/debug%{_libdir}/%{name}
337 cp -a dist/%{name}-%{version}.en-US.linux-*.crashreporter-symbols.zip $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_libdir}/%{name}
338 %endif
339
340 # move arch independant ones to datadir
341 mv $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome $RPM_BUILD_ROOT%{_datadir}/%{name}/chrome
342 mv $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults $RPM_BUILD_ROOT%{_datadir}/%{name}/defaults
343 mv $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins $RPM_BUILD_ROOT%{_datadir}/%{name}/searchplugins
344
345 ln -s ../../share/%{name}/chrome $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome
346 ln -s ../../share/%{name}/defaults $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults
347 ln -s ../../share/%{name}/searchplugins $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins
348
349 mv $RPM_BUILD_ROOT%{_libdir}/%{name}/isp $RPM_BUILD_ROOT%{_datadir}/%{name}/isp
350 ln -s ../../share/%{name}/isp $RPM_BUILD_ROOT%{_libdir}/%{name}/isp
351
352 # dir for arch independant extensions besides arch dependant extensions
353 # see mozilla/xpcom/build/nsXULAppAPI.h
354 # XRE_SYS_LOCAL_EXTENSION_PARENT_DIR and XRE_SYS_SHARE_EXTENSION_PARENT_DIR
355 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/extensions
356  
357 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
358 ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
359
360 %{__sed} -e "s|%MOZAPPDIR%|%{_libdir}/%{name}|" \
361          -e "s|%MOZ_APP_DISPLAYNAME%|Iceape|" \
362         %{topdir}/mozilla/build/unix/mozilla.in > $RPM_BUILD_ROOT%{_libdir}/%{name}/iceape
363
364 sed 's,@LIBDIR@,%{_libdir},' %{SOURCE8} > $RPM_BUILD_ROOT%{_bindir}/iceape
365 chmod a+rx $RPM_BUILD_ROOT%{_bindir}/iceape
366
367 install %{SOURCE4} %{SOURCE5} %{SOURCE7} \
368         $RPM_BUILD_ROOT%{_desktopdir}
369
370 # files created by iceape -register
371 touch $RPM_BUILD_ROOT%{_libdir}/%{name}/components/compreg.dat
372 touch $RPM_BUILD_ROOT%{_libdir}/%{name}/components/xpti.dat
373
374 cat << 'EOF' > $RPM_BUILD_ROOT%{_libdir}/%{name}/register
375 #!/bin/sh
376 umask 022
377 rm -f %{_libdir}/%{name}/components/{compreg,xpti}.dat
378
379 # it attempts to touch files in $HOME/.mozilla
380 # beware if you run this with sudo!!!
381 export HOME=$(mktemp -d)
382 # also TMPDIR could be pointing to sudo user's homedir
383 unset TMPDIR TMP || :
384
385 %{_libdir}/%{name}/iceape -register
386
387 rm -rf $HOME
388 EOF
389 chmod 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/register
390
391 # never package these. always remove
392 # mozldap
393 %{__sed} -i '/lib\(ldap\|ldif\|prldap\)60.so/d' $RPM_BUILD_ROOT%{_libdir}/%{name}/dependentlibs.list
394 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{ldap,ldif,prldap}60.so
395
396 %clean
397 rm -rf $RPM_BUILD_ROOT
398
399 %post
400 %{_libdir}/%{name}/register || :
401 %update_browser_plugins
402 %update_icon_cache hicolor
403 %update_desktop_database
404
405 %postun
406 if [ "$1" = 0 ]; then
407         %update_browser_plugins
408         %update_icon_cache hicolor
409 fi
410
411 %files
412 %defattr(644,root,root,755)
413 %attr(755,root,root) %{_bindir}/iceape
414
415 # browser plugins v2
416 %{_browserpluginsconfdir}/browsers.d/%{name}.*
417 %config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist
418
419 %dir %{_libdir}/%{name}
420 %attr(755,root,root) %{_libdir}/%{name}/liblgpllibs.so
421 #%attr(755,root,root) %{_libdir}/%{name}/libmozjs.so
422 %attr(755,root,root) %{_libdir}/%{name}/libxul.so
423 %dir %{_libdir}/%{name}/gtk2
424 %attr(755,root,root) %{_libdir}/%{name}/gtk2/libmozgtk.so
425 %attr(755,root,root) %{_libdir}/%{name}/libmozgtk.so
426
427 %{_libdir}/%{name}/blocklist.xml
428 %{_libdir}/%{name}/omni.ja
429 %attr(755,root,root) %{_libdir}/%{name}/register
430
431 %if %{with crashreporter}
432 %{_libdir}/%{name}/crashreporter
433 %{_libdir}/%{name}/crashreporter-override.ini
434 %{_libdir}/%{name}/crashreporter.ini
435 %{_libdir}/%{name}/Throbber-small.gif
436 %endif
437
438 # config?
439 %{_libdir}/%{name}/application.ini
440 %{_libdir}/%{name}/chrome.manifest
441
442 %dir %{_libdir}/%{name}/components
443 %{_libdir}/%{name}/components/components.manifest
444 %attr(755,root,root) %{_libdir}/%{name}/components/libsuite.so
445
446 %{_libdir}/%{name}/dependentlibs.list
447 %{_libdir}/%{name}/platform.ini
448 %attr(755,root,root) %{_libdir}/%{name}/run-mozilla.sh
449 %attr(755,root,root) %{_libdir}/%{name}/iceape-bin
450 %attr(755,root,root) %{_libdir}/%{name}/plugin-container
451
452 %attr(755,root,root) %{_libdir}/%{name}/iceape
453 %dir %{_libdir}/%{name}/plugins
454
455 # symlinks
456 %{_libdir}/%{name}/chrome
457 %{_libdir}/%{name}/defaults
458 %{_libdir}/%{name}/searchplugins
459 %{_libdir}/%{name}/dictionaries
460
461 %dir %{_datadir}/%{name}
462 %{_datadir}/%{name}/chrome
463 %{_datadir}/%{name}/defaults
464 %{_datadir}/%{name}/searchplugins
465
466 %dir %{_datadir}/%{name}/extensions
467 %dir %{_libdir}/%{name}/extensions
468 # the signature of the default theme
469 %{_libdir}/%{name}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi
470 %{_libdir}/%{name}/extensions/modern@themes.mozilla.org.xpi
471
472 # files created by iceape -register
473 %ghost %{_libdir}/%{name}/components/compreg.dat
474 %ghost %{_libdir}/%{name}/components/xpti.dat
475
476 %{_libdir}/%{name}/isp
477 %dir %{_datadir}/%{name}/isp
478 %{_datadir}/%{name}/isp/Bogofilter.sfd
479 %{_datadir}/%{name}/isp/DSPAM.sfd
480 %{_datadir}/%{name}/isp/POPFile.sfd
481 %{_datadir}/%{name}/isp/SpamAssassin.sfd
482 %{_datadir}/%{name}/isp/SpamPal.sfd
483 %{_datadir}/%{name}/isp/movemail.rdf
484 %{_datadir}/%{name}/isp/rss.rdf
485
486 %{_iconsdir}/hicolor/*/apps/iceape.png
487 %{_iconsdir}/hicolor/scalable/apps/iceape.svg
488 %{_desktopdir}/%{name}.desktop
489 %{_desktopdir}/%{name}-composer.desktop
490 %{_desktopdir}/%{name}-mail.desktop
This page took 0.096425 seconds and 3 git commands to generate.