]>
Commit | Line | Data |
---|---|---|
1d0185d8 | 1 | # |
2 | # Conditional build: | |
e6c84359 | 3 | %bcond_with enigmail # don't build enigmail - GPG/PGP support |
2ded22a1 | 4 | %bcond_with gtk3 # GTK+ 3.x instead of 2.x |
dae07f1c JR |
5 | %bcond_without ldap # disable e-mail address lookups in LDAP directories |
6 | %bcond_without lightning # disable Sunbird/Lightning calendar | |
2ded22a1 | 7 | %bcond_without kerberos # disable krb5 support |
dae07f1c | 8 | %bcond_with xulrunner # build with system xulrunner |
2ded22a1 | 9 | %bcond_with crashreporter # report crashes to crash-stats.mozilla.com |
dae07f1c | 10 | %bcond_with tests # enable tests (whatever they check) |
05361369 | 11 | |
9084fc2b | 12 | %define enigmail_ver 1.6 |
2ded22a1 JB |
13 | %define nspr_ver 4.10.3 |
14 | %define nss_ver 3.16 | |
15 | %define xulrunner_ver 29.0 | |
dae07f1c JR |
16 | |
17 | %if %{without xulrunner} | |
18 | # The actual sqlite version (see RHBZ#480989): | |
19 | %define sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo ERROR) | |
20 | %endif | |
21 | ||
1d0185d8 | 22 | Summary: Iceape - web browser |
23 | Summary(es.UTF-8): Navegador de Internet Iceape | |
24 | Summary(pl.UTF-8): Iceape - przeglądarka WWW | |
25 | Summary(pt_BR.UTF-8): Navegador Iceape | |
26 | Name: iceape | |
2ded22a1 | 27 | Version: 2.26 |
2c28e650 | 28 | Release: 1 |
e429291d | 29 | License: MPL v2.0 |
1d0185d8 | 30 | Group: X11/Applications/Networking |
9d5ee07b | 31 | Source0: http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/%{version}/source/seamonkey-%{version}.source.tar.bz2 |
2ded22a1 | 32 | # Source0-md5: 1749f6350209e35e0bede3bf4e56c42c |
1d0185d8 | 33 | Source1: http://www.mozilla-enigmail.org/download/source/enigmail-%{enigmail_ver}.tar.gz |
9084fc2b | 34 | # Source1-md5: 4a2bbcb020bdb282a660fda8c70d5608 |
1d0185d8 | 35 | Source2: %{name}-branding.tar.bz2 |
505c350f | 36 | # Source2-md5: 3feee544ef515f1dbf19b14479916784 |
1d0185d8 | 37 | Source3: %{name}-rm_nonfree.sh |
38 | Source4: %{name}.desktop | |
39 | Source5: %{name}-composer.desktop | |
40 | Source6: %{name}-chat.desktop | |
41 | Source7: %{name}-mail.desktop | |
42 | Source8: %{name}-venkman.desktop | |
03e92ac3 | 43 | Source9: %{name}.sh |
1d0185d8 | 44 | Patch0: %{name}-branding.patch |
dae07f1c JR |
45 | Patch1: %{name}-pld-branding.patch |
46 | Patch2: %{name}-agent.patch | |
2c28e650 | 47 | Patch3: enable-addons.patch |
dae07f1c JR |
48 | Patch4: system-mozldap.patch |
49 | Patch5: makefile.patch | |
2ded22a1 | 50 | Patch6: %{name}-pixman.patch |
888f80ab JR |
51 | # Edit patch below and restore --system-site-packages when system virtualenv gets 1.7 upgrade |
52 | Patch7: system-virtualenv.patch | |
740e5f43 | 53 | Patch9: %{name}-system-xulrunner.patch |
e99fd609 | 54 | URL: http://www.pld-linux.org/Packages/Iceape |
dae07f1c JR |
55 | BuildRequires: GConf2-devel >= 1.2.1 |
56 | BuildRequires: OpenGL-devel | |
57 | BuildRequires: alsa-lib-devel | |
1d0185d8 | 58 | BuildRequires: automake |
dae07f1c JR |
59 | BuildRequires: bzip2-devel |
60 | BuildRequires: cairo-devel >= 1.10.2-5 | |
61 | BuildRequires: dbus-glib-devel >= 0.60 | |
1d0185d8 | 62 | BuildRequires: freetype-devel >= 1:2.1.8 |
2ded22a1 JB |
63 | BuildRequires: glib2-devel >= 1:2.20 |
64 | %{!?with_gtk3:BuildRequires: gtk+2-devel >= 2:2.18} | |
65 | %{?with_gtk3:BuildRequires: gtk+3-devel >= 3.0.0} | |
dae07f1c JR |
66 | %{?with_kerberos:BuildRequires: heimdal-devel >= 0.7.1} |
67 | BuildRequires: hunspell-devel | |
1d0185d8 | 68 | BuildRequires: libIDL-devel >= 0.8.0 |
dae07f1c JR |
69 | BuildRequires: libdnet-devel |
70 | BuildRequires: libevent-devel >= 1.4.7 | |
71 | # standalone libffi 3.0.9 or gcc's from 4.5(?)+ | |
72 | BuildRequires: libffi-devel >= 6:3.0.9 | |
2ded22a1 | 73 | BuildRequires: libicu-devel >= 50.1 |
f7c8750c | 74 | # requires libjpeg-turbo implementing at least libjpeg 6b API |
1d0185d8 | 75 | BuildRequires: libjpeg-devel >= 6b |
f7c8750c | 76 | BuildRequires: libjpeg-turbo-devel |
dae07f1c JR |
77 | BuildRequires: libnotify-devel >= 0.4 |
78 | BuildRequires: libpng(APNG)-devel >= 0.10 | |
2ded22a1 | 79 | BuildRequires: libpng-devel >= 2:1.6.7 |
03e92ac3 JR |
80 | # rsvg-convert for iceape/branding |
81 | BuildRequires: librsvg | |
1d0185d8 | 82 | BuildRequires: libstdc++-devel |
2ded22a1 | 83 | BuildRequires: libvpx-devel >= 1.3.0 |
505c350f | 84 | BuildRequires: mozldap-devel |
dae07f1c JR |
85 | BuildRequires: nspr-devel >= 1:%{nspr_ver} |
86 | BuildRequires: nss-devel >= 1:%{nss_ver} | |
87 | BuildRequires: pango-devel >= 1:1.14.0 | |
88 | BuildRequires: perl-base >= 1:5.6 | |
89 | BuildRequires: perl-modules >= 5.004 | |
1d0185d8 | 90 | BuildRequires: pkgconfig |
dae07f1c JR |
91 | BuildRequires: python >= 1:2.5 |
92 | BuildRequires: python-modules | |
888f80ab | 93 | BuildRequires: python-virtualenv |
1d0185d8 | 94 | BuildRequires: rpm >= 4.4.9-56 |
dae07f1c | 95 | BuildRequires: rpmbuild(macros) >= 1.601 |
1d0185d8 | 96 | BuildRequires: sed >= 4.0 |
2ded22a1 | 97 | BuildRequires: sqlite3-devel >= 3.8.2 |
dae07f1c | 98 | BuildRequires: startup-notification-devel >= 0.8 |
2ded22a1 | 99 | BuildRequires: xorg-lib-libX11-devel |
dae07f1c | 100 | BuildRequires: xorg-lib-libXScrnSaver-devel |
1d0185d8 | 101 | BuildRequires: xorg-lib-libXext-devel |
1d0185d8 | 102 | BuildRequires: xorg-lib-libXinerama-devel |
1d0185d8 | 103 | BuildRequires: xorg-lib-libXt-devel |
dae07f1c JR |
104 | %if %{with xulrunner} |
105 | BuildRequires: xulrunner-devel >= 2:%{xulrunner_ver} | |
2ded22a1 | 106 | BuildRequires: xulrunner-devel < 2:30 |
dae07f1c JR |
107 | %endif |
108 | BuildRequires: yasm | |
109 | BuildRequires: zip | |
1d0185d8 | 110 | BuildRequires: zlib-devel >= 1.2.3 |
dae07f1c JR |
111 | Requires(post): mktemp >= 1.5-18 |
112 | Requires: desktop-file-utils | |
113 | Requires: hicolor-icon-theme | |
114 | %if %{with xulrunner} | |
115 | %requires_eq_to xulrunner xulrunner-devel | |
116 | %else | |
1d0185d8 | 117 | Requires: browser-plugins >= 2.0 |
dae07f1c JR |
118 | Requires: cairo >= 1.10.2-5 |
119 | Requires: dbus-glib >= 0.60 | |
2ded22a1 JB |
120 | Requires: glib2 >= 1:2.20 |
121 | %{!?with_gtk3:Requires: gtk+2 >= 2:2.18} | |
122 | %{?with_gtk3:Requires: gtk+3 >= 3.0.0} | |
f7c8750c | 123 | Requires: libjpeg-turbo |
2ded22a1 | 124 | Requires: libpng >= 2:1.6.7 |
dae07f1c | 125 | Requires: libpng(APNG) >= 0.10 |
2ded22a1 | 126 | Requires: libvpx >= 1.3.0 |
dae07f1c JR |
127 | Requires: myspell-common |
128 | Requires: nspr >= 1:%{nspr_ver} | |
129 | Requires: nss >= 1:%{nss_ver} | |
130 | Requires: pango >= 1:1.14.0 | |
131 | Requires: sqlite3 >= %{sqlite_build_version} | |
132 | Requires: startup-notification >= 0.8 | |
133 | %endif | |
1d0185d8 | 134 | Provides: iceape-embedded = %{epoch}:%{version}-%{release} |
135 | Provides: wwwbrowser | |
75dcd787 JR |
136 | Obsoletes: iceape-mailnews |
137 | Obsoletes: iceape-gnomevfs | |
1d0185d8 | 138 | Obsoletes: light |
139 | Obsoletes: mozilla | |
03504870 | 140 | Obsoletes: mozilla-gnomevfs |
1d0185d8 | 141 | Obsoletes: seamonkey |
142 | Obsoletes: seamonkey-calendar | |
143 | Obsoletes: seamonkey-libs | |
03504870 JR |
144 | Obsoletes: seamonkey-mailnews |
145 | Obsoletes: seamonkey-gnomevfs | |
b289d808 | 146 | Conflicts: iceape-lang-resources < %{version} |
1d0185d8 | 147 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
148 | ||
dae07f1c JR |
149 | %define topdir %{_builddir}/%{name}-%{version} |
150 | %define objdir %{topdir}/obj-%{_target_cpu} | |
1d0185d8 | 151 | |
dea9725e AM |
152 | %define filterout_cpp -D_FORTIFY_SOURCE=[0-9]+ |
153 | ||
dae07f1c JR |
154 | # don't satisfy other packages |
155 | %define _noautoprovfiles %{_libdir}/%{name} | |
1d0185d8 | 156 | # and as we don't provide them, don't require either |
dae07f1c JR |
157 | %define _noautoreq libmozjs.so libxpcom.so libxul.so libjemalloc.so %{!?with_xulrunner:libmozalloc.so} |
158 | %define _noautoreqdep libgfxpsshar.so libgkgfx.so libgtkxtbin.so libjsj.so libxpcom_compat.so libxpistub.so | |
1d0185d8 | 159 | |
160 | %description | |
161 | Iceape is an open-source web browser, designed for standards | |
162 | compliance, performance and portability. | |
163 | ||
164 | %description -l es.UTF-8 | |
165 | Iceape es un navegador de Internet que se basa en una versión inicial | |
166 | de Netscape Communicator. | |
167 | ||
168 | %description -l pl.UTF-8 | |
71fda434 ER |
169 | Iceape jest potężną graficzną przeglądarką WWW, która jest następcą |
170 | Mozilli, która następnie była następczynią Netscape Communikatora. | |
1d0185d8 | 171 | |
172 | %description -l pt_BR.UTF-8 | |
173 | O Iceape é um web browser baseado numa versão inicial do Netscape | |
174 | Communicator. | |
175 | ||
176 | %description -l ru.UTF-8 | |
71fda434 ER |
177 | Iceape - полнофункциональный web-browser с открытыми исходными |
178 | текстами, разработанный для максимального соотвествия стандартам, | |
179 | максмимальной переносимости и скорости работы | |
1d0185d8 | 180 | |
dae07f1c JR |
181 | %package addon-lightning |
182 | Summary: An integrated calendar for Iceape | |
183 | Summary(pl.UTF-8): Zintegrowany kalendarz dla Iceape | |
184 | License: MPL 1.1 or GPL v2+ or LGPL v2.1+ | |
185 | Group: Applications/Networking | |
186 | Requires: %{name} = %{version}-%{release} | |
187 | Obsoletes: seamonkey-addon-lightning | |
188 | ||
189 | %description addon-lightning | |
190 | Lightning is an calendar extension to Icedove email client. | |
191 | ||
192 | %description addon-lightning -l pl.UTF-8 | |
193 | Lightning to rozszerzenie do klienta poczty Icedove dodające | |
194 | funkcjonalność kalendarza. | |
195 | ||
1d0185d8 | 196 | %package addon-enigmail |
197 | Summary: Enigmail %{enigmail_ver} - PGP/GPG support for Iceape | |
198 | Summary(pl.UTF-8): Enigmail %{enigmail_ver} - obsługa PGP/GPG dla Iceape | |
199 | Group: X11/Applications/Networking | |
dae07f1c | 200 | Requires: %{name} = %{epoch}:%{version}-%{release} |
1d0185d8 | 201 | Requires: gnupg >= 1.4.2.2 |
5a8ef4bc | 202 | Obsoletes: seamonkey-addon-enigmail |
1d0185d8 | 203 | |
204 | %description addon-enigmail | |
205 | Enigmail is an extension to the mail client of Iceape / SeaMonkey / | |
206 | Mozilla / Netscape and Mozilla Thunderbird which allows users to | |
207 | access the authentication and encryption features provided by GnuPG. | |
208 | ||
209 | %description addon-enigmail -l pl.UTF-8 | |
210 | Enigmail jest rozszerzeniem dla klienta pocztowego Iceape, SeaMonkey, | |
71fda434 ER |
211 | Mozilla i Mozilla Thunderdbird pozwalającym użytkownikowi korzystać z |
212 | funkcjonalności GnuPG. | |
1d0185d8 | 213 | |
214 | %package chat | |
215 | Summary: Iceape Chat - integrated IRC client | |
216 | Summary(pl.UTF-8): Iceape Chat - zintegrowany klient IRC-a | |
217 | Group: X11/Applications/Networking | |
218 | Requires(post,postun): %{name} = %{epoch}:%{version}-%{release} | |
219 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
220 | Obsoletes: mozilla-chat | |
221 | Obsoletes: seamonkey-chat | |
222 | ||
223 | %description chat | |
224 | Iceape Chat - IRC client that is integrated with the Iceape web | |
225 | browser. | |
226 | ||
227 | %description chat -l pl.UTF-8 | |
228 | Iceape - klient IRC-a zintegrowany z przeglądarką Iceape. | |
229 | ||
230 | %package js-debugger | |
231 | Summary: JavaScript debugger for use with Iceape | |
232 | Summary(pl.UTF-8): Odpluskwiacz JavaScriptu do używania z Iceape | |
233 | Group: X11/Applications/Networking | |
234 | Requires(post,postun): %{name} = %{epoch}:%{version}-%{release} | |
235 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
236 | Obsoletes: mozilla-js-debugger | |
237 | Obsoletes: seamonkey-js-debugger | |
238 | ||
239 | %description js-debugger | |
240 | JavaScript debugger for use with Iceape. | |
241 | ||
242 | %description js-debugger -l pl.UTF-8 | |
243 | Odpluskwiacz JavaScriptu do używania z Iceape. | |
244 | ||
245 | %package dom-inspector | |
246 | Summary: A tool for inspecting the DOM of pages in Iceape | |
247 | Summary(pl.UTF-8): Narzędzie do oglądania DOM stron w Iceape | |
248 | Group: X11/Applications/Networking | |
249 | Requires(post,postun): %{name} = %{epoch}:%{version}-%{release} | |
250 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
251 | Obsoletes: mozilla-dom-inspector | |
252 | Obsoletes: seamonkey-dom-inspector | |
253 | ||
254 | %description dom-inspector | |
255 | This is a tool that allows you to inspect the DOM for web pages in | |
256 | Iceape. This is of great use to people who are doing Iceape chrome | |
257 | development or web page development. | |
258 | ||
259 | %description dom-inspector -l pl.UTF-8 | |
260 | To narzędzie pozwala na oglądanie DOM dla stron WWW w Iceape. Jest | |
261 | bardzo przydatne dla ludzi rozwijających chrome w Iceape lub | |
262 | tworzących strony WWW. | |
263 | ||
1d0185d8 | 264 | %prep |
265 | %setup -qc | |
dae07f1c | 266 | cd comm-release |
1d0185d8 | 267 | tar -C mailnews/extensions -zxf %{SOURCE1} |
03e92ac3 | 268 | tar -jxf %{SOURCE2} |
1d0185d8 | 269 | %patch0 -p1 |
270 | %patch1 -p1 | |
271 | %patch2 -p1 | |
2c28e650 | 272 | %patch3 -p2 |
505c350f | 273 | %patch4 -p1 |
1d0185d8 | 274 | %patch5 -p1 |
2ded22a1 | 275 | %patch6 -p1 |
888f80ab | 276 | %patch7 -p1 |
740e5f43 | 277 | %patch9 -p2 |
1d0185d8 | 278 | |
279 | %build | |
dae07f1c JR |
280 | cd comm-release |
281 | %if %{with xulrunner} | |
282 | if [ "$(grep -E '^[0-9]+\.' mozilla/config/milestone.txt)" != "%{xulrunner_ver}" ]; then | |
283 | echo >&2 | |
284 | echo >&2 "Xulrunner version %{xulrunner_ver} does not match mozilla/config/milestone.txt!" | |
285 | echo >&2 | |
286 | exit 1 | |
287 | fi | |
288 | %endif | |
289 | ||
290 | cp -f %{_datadir}/automake/config.* build/autoconf | |
291 | cp -f %{_datadir}/automake/config.* mozilla/build/autoconf | |
292 | cp -f %{_datadir}/automake/config.* mozilla/nsprpub/build/autoconf | |
293 | cp -f %{_datadir}/automake/config.* ldap/sdks/c-sdk/config/autoconf | |
294 | ||
295 | cat << EOF > .mozconfig | |
296 | mk_add_options MOZ_OBJDIR=%{objdir} | |
297 | ||
298 | export CFLAGS="%{rpmcflags}" | |
299 | export CXXFLAGS="%{rpmcflags}" | |
300 | ||
301 | %if %{with crashreporter} | |
302 | export MOZ_DEBUG_SYMBOLS=1 | |
303 | %endif | |
304 | ||
305 | # Options for 'configure' (same as command-line options). | |
306 | ac_add_options --prefix=%{_prefix} | |
307 | ac_add_options --exec-prefix=%{_exec_prefix} | |
308 | ac_add_options --bindir=%{_bindir} | |
309 | ac_add_options --sbindir=%{_sbindir} | |
310 | ac_add_options --sysconfdir=%{_sysconfdir} | |
311 | ac_add_options --datadir=%{_datadir} | |
312 | ac_add_options --includedir=%{_includedir} | |
313 | ac_add_options --libdir=%{_libdir} | |
314 | ac_add_options --libexecdir=%{_libexecdir} | |
315 | ac_add_options --localstatedir=%{_localstatedir} | |
316 | ac_add_options --sharedstatedir=%{_sharedstatedir} | |
317 | ac_add_options --mandir=%{_mandir} | |
318 | ac_add_options --infodir=%{_infodir} | |
dae07f1c JR |
319 | %if %{?debug:1}0 |
320 | ac_add_options --disable-optimize | |
321 | ac_add_options --enable-debug | |
322 | ac_add_options --enable-debug-modules | |
323 | ac_add_options --enable-debugger-info-modules | |
324 | ac_add_options --enable-crash-on-assert | |
325 | %else | |
326 | ac_add_options --disable-debug | |
327 | ac_add_options --disable-debug-modules | |
328 | ac_add_options --disable-logging | |
329 | ac_add_options --enable-optimize="%{rpmcflags} -Os" | |
330 | %endif | |
331 | ac_add_options --disable-strip | |
332 | ac_add_options --disable-strip-libs | |
333 | %if %{with tests} | |
334 | ac_add_options --enable-tests | |
335 | %else | |
336 | ac_add_options --disable-tests | |
337 | %endif | |
2ded22a1 JB |
338 | %if %{with lightning} |
339 | ac_add_options --enable-calendar | |
dae07f1c | 340 | %else |
2ded22a1 | 341 | ac_add_options --disable-calendar |
dae07f1c JR |
342 | %endif |
343 | %if %{with crashreporter} | |
344 | ac_add_options --enable-crashreporter | |
345 | %else | |
346 | ac_add_options --disable-crashreporter | |
347 | %endif | |
505c350f | 348 | ac_add_options --disable-elf-dynstr-gc |
2ded22a1 JB |
349 | ac_add_options --disable-gnomeui |
350 | ac_add_options --disable-gnomevfs | |
dae07f1c JR |
351 | ac_add_options --disable-installer |
352 | ac_add_options --disable-javaxpcom | |
353 | ac_add_options --disable-updater | |
2ded22a1 JB |
354 | ac_add_options --disable-xterm-updates |
355 | ac_add_options --enable-application=suite | |
dae07f1c | 356 | ac_add_options --enable-crypto |
2ded22a1 JB |
357 | ac_add_options --enable-default-toolkit=%{?with_gtk3:cairo-gtk3}%{!?with_gtk3:cairo-gtk2} |
358 | ac_add_options --enable-gio | |
359 | %if %{with ldap} | |
360 | ac_add_options --enable-ldap | |
361 | ac_add_options --with-system-ldap | |
362 | %else | |
363 | ac_add_options --disable-ldap | |
364 | %endif | |
dae07f1c JR |
365 | ac_add_options --enable-libxul |
366 | ac_add_options --enable-pango | |
2ded22a1 | 367 | ac_add_options --enable-postscript |
dae07f1c JR |
368 | ac_add_options --enable-shared-js |
369 | ac_add_options --enable-startup-notification | |
370 | ac_add_options --enable-system-cairo | |
371 | ac_add_options --enable-system-hunspell | |
372 | ac_add_options --enable-system-sqlite | |
03e92ac3 | 373 | ac_add_options --with-branding=iceape/branding |
2ded22a1 JB |
374 | ac_add_options --with-default-mozilla-five-home=%{_libdir}/%{name} |
375 | ac_add_options --with-distribution-id=org.pld-linux | |
dae07f1c | 376 | %if %{with xulrunner} |
dae07f1c | 377 | ac_add_options --with-libxul-sdk=$(pkg-config --variable=sdkdir libxul) |
2ded22a1 | 378 | ac_add_options --with-system-libxul |
dae07f1c JR |
379 | %endif |
380 | ac_add_options --with-pthreads | |
381 | ac_add_options --with-system-bz2 | |
382 | ac_add_options --with-system-ffi | |
383 | ac_add_options --with-system-jpeg | |
384 | ac_add_options --with-system-libevent | |
385 | ac_add_options --with-system-libvpx | |
386 | ac_add_options --with-system-nspr | |
387 | ac_add_options --with-system-nss | |
388 | ac_add_options --with-system-png | |
389 | ac_add_options --with-system-zlib | |
dae07f1c JR |
390 | EOF |
391 | ||
392 | %{__make} -j1 -f client.mk build \ | |
393 | STRIP="/bin/true" \ | |
394 | MOZ_MAKE_FLAGS="%{?_smp_mflags}" \ | |
395 | installdir=%{_libdir}/%{name} \ | |
a089ecfd | 396 | XLIBS="-lX11 -lXt" \ |
dae07f1c JR |
397 | CC="%{__cc}" \ |
398 | CXX="%{__cxx}" | |
1d0185d8 | 399 | |
dae07f1c JR |
400 | %if %{with crashreporter} |
401 | # create debuginfo for crash-stats.mozilla.com | |
402 | %{__make} -j1 -C obj-%{_target_cpu} buildsymbols | |
403 | %endif | |
404 | ||
405 | %if %{with enigmail} | |
1d0185d8 | 406 | cd mailnews/extensions/enigmail |
dae07f1c | 407 | ./makemake -r -o %{objdir} |
e6c84359 | 408 | %{__make} -j1 -C %{objdir}/mailnews/extensions/enigmail \ |
dae07f1c JR |
409 | STRIP="/bin/true" \ |
410 | CC="%{__cc}" \ | |
411 | CXX="%{__cxx}" | |
c4a50216 | 412 | |
e6c84359 | 413 | %{__make} -j1 -C %{objdir}/mailnews/extensions/enigmail xpi \ |
c4a50216 JR |
414 | STRIP="/bin/true" \ |
415 | CC="%{__cc}" \ | |
416 | CXX="%{__cxx}" | |
dae07f1c | 417 | %endif |
1d0185d8 | 418 | |
419 | %install | |
420 | rm -rf $RPM_BUILD_ROOT | |
dae07f1c | 421 | cd comm-release |
1d0185d8 | 422 | install -d \ |
dae07f1c | 423 | $RPM_BUILD_ROOT{%{_bindir},%{_libdir}} \ |
1d0185d8 | 424 | $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}} \ |
dae07f1c JR |
425 | $RPM_BUILD_ROOT%{_datadir}/%{name} \ |
426 | $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins | |
1d0185d8 | 427 | |
dae07f1c | 428 | %browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/plugins |
1d0185d8 | 429 | |
dae07f1c | 430 | cd %{objdir} |
738e838e | 431 | cwd=`pwd` |
dae07f1c | 432 | %{__make} -C suite/installer stage-package \ |
738e838e | 433 | LD_LIBRARY_PATH=$cwd/mozilla/dist/lib \ |
dae07f1c JR |
434 | DESTDIR=$RPM_BUILD_ROOT \ |
435 | installdir=%{_libdir}/%{name} \ | |
436 | PKG_SKIP_STRIP=1 | |
1d0185d8 | 437 | |
fcecc2a1 JR |
438 | %{__make} -C iceape/branding install \ |
439 | DESTDIR=$RPM_BUILD_ROOT | |
440 | ||
dae07f1c | 441 | cp -a mozilla/dist/iceape/* $RPM_BUILD_ROOT%{_libdir}/%{name}/ |
1d0185d8 | 442 | |
dae07f1c JR |
443 | %if %{with xulrunner} |
444 | # >= 5.0 seems to require this | |
445 | ln -s ../xulrunner $RPM_BUILD_ROOT%{_libdir}/%{name}/xulrunner | |
446 | %endif | |
1d0185d8 | 447 | |
dae07f1c JR |
448 | # Enable crash reporter for Thunderbird application |
449 | %if %{with crashreporter} | |
450 | %{__sed} -i -e 's/\[Crash Reporter\]/[Crash Reporter]\nEnabled=1/' $RPM_BUILD_ROOT%{_libdir}/%{name}/application.ini | |
1d0185d8 | 451 | |
dae07f1c JR |
452 | # Add debuginfo for crash-stats.mozilla.com |
453 | install -d $RPM_BUILD_ROOT%{_exec_prefix}/lib/debug%{_libdir}/%{name} | |
454 | cp -a mozilla/dist/%{name}-%{version}.en-US.linux-*.crashreporter-symbols.zip $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_libdir}/%{name} | |
455 | %endif | |
1d0185d8 | 456 | |
dae07f1c | 457 | # copy manually lightning files, somewhy they are not installed by make |
505c350f | 458 | cp -a mozilla/dist/bin/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103} \ |
dae07f1c | 459 | $RPM_BUILD_ROOT%{_libdir}/%{name}/extensions |
35486651 | 460 | |
dae07f1c JR |
461 | # move arch independant ones to datadir |
462 | mv $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome $RPM_BUILD_ROOT%{_datadir}/%{name}/chrome | |
463 | mv $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults $RPM_BUILD_ROOT%{_datadir}/%{name}/defaults | |
dae07f1c | 464 | mv $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins $RPM_BUILD_ROOT%{_datadir}/%{name}/searchplugins |
1d0185d8 | 465 | |
dae07f1c JR |
466 | ln -s ../../share/%{name}/chrome $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome |
467 | ln -s ../../share/%{name}/defaults $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults | |
dae07f1c | 468 | ln -s ../../share/%{name}/searchplugins $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins |
dae07f1c | 469 | |
2ded22a1 JB |
470 | %if %{without xulrunner} |
471 | mv $RPM_BUILD_ROOT%{_libdir}/%{name}/isp $RPM_BUILD_ROOT%{_datadir}/%{name}/isp | |
472 | ln -s ../../share/%{name}/isp $RPM_BUILD_ROOT%{_libdir}/%{name}/isp | |
473 | %endif | |
474 | ||
dae07f1c JR |
475 | mv $RPM_BUILD_ROOT%{_libdir}/%{name}/distribution/extensions/* \ |
476 | $RPM_BUILD_ROOT%{_libdir}/%{name}/extensions/ | |
477 | ||
478 | # dir for arch independant extensions besides arch dependant extensions | |
479 | # see mozilla/xpcom/build/nsXULAppAPI.h | |
480 | # XRE_SYS_LOCAL_EXTENSION_PARENT_DIR and XRE_SYS_SHARE_EXTENSION_PARENT_DIR | |
481 | install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/extensions | |
482 | ||
483 | %if %{without xulrunner} | |
484 | %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries | |
485 | ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries | |
dae07f1c | 486 | %endif |
1d0185d8 | 487 | |
afec21d4 JR |
488 | %{__sed} -e "s|%MOZAPPDIR%|%{_libdir}/%{name}|" \ |
489 | -e "s|%MOZ_APP_DISPLAYNAME%|Iceape|" \ | |
490 | %{topdir}/comm-release/mozilla/build/unix/mozilla.in > $RPM_BUILD_ROOT%{_libdir}/%{name}/iceape | |
491 | ||
03e92ac3 | 492 | sed 's,@LIBDIR@,%{_libdir},' %{SOURCE9} > $RPM_BUILD_ROOT%{_bindir}/iceape |
dae07f1c | 493 | chmod a+rx $RPM_BUILD_ROOT%{_bindir}/iceape |
1d0185d8 | 494 | |
03e92ac3 | 495 | install %{SOURCE4} %{SOURCE5} %{SOURCE6} %{SOURCE7} %{SOURCE8} \ |
dae07f1c | 496 | $RPM_BUILD_ROOT%{_desktopdir} |
1d0185d8 | 497 | |
dae07f1c JR |
498 | # files created by iceape -register |
499 | touch $RPM_BUILD_ROOT%{_libdir}/%{name}/components/compreg.dat | |
500 | touch $RPM_BUILD_ROOT%{_libdir}/%{name}/components/xpti.dat | |
1d0185d8 | 501 | |
dae07f1c | 502 | cat << 'EOF' > $RPM_BUILD_ROOT%{_libdir}/%{name}/register |
1d0185d8 | 503 | #!/bin/sh |
504 | umask 022 | |
dae07f1c JR |
505 | rm -f %{_libdir}/%{name}/components/{compreg,xpti}.dat |
506 | ||
507 | # it attempts to touch files in $HOME/.mozilla | |
508 | # beware if you run this with sudo!!! | |
509 | export HOME=$(mktemp -d) | |
510 | # also TMPDIR could be pointing to sudo user's homedir | |
511 | unset TMPDIR TMP || : | |
1d0185d8 | 512 | |
dae07f1c | 513 | %{_libdir}/%{name}/iceape -register |
1d0185d8 | 514 | |
dae07f1c | 515 | rm -rf $HOME |
1d0185d8 | 516 | EOF |
dae07f1c JR |
517 | chmod 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/register |
518 | ||
519 | %if %{with enigmail} | |
520 | ext_dir=$RPM_BUILD_ROOT%{_libdir}/%{name}/extensions/\{847b3a00-7ab1-11d4-8f02-006008948af5\} | |
c4a50216 | 521 | install -d $ext_dir/{chrome,components,defaults/preferences,modules} |
dae07f1c | 522 | cd mozilla/dist/bin |
c4a50216 | 523 | cp -rfLp chrome/enigmail.jar $ext_dir/chrome |
dae07f1c | 524 | cp -rfLp components/enig* $ext_dir/components |
dae07f1c | 525 | cp -rfLp defaults/preferences/enigmail.js $ext_dir/defaults/preferences |
a089ecfd | 526 | cp -rfLp modules/{commonFuncs,enigmailCommon,keyManagement,pipeConsole,subprocess}.jsm $ext_dir/modules |
c4a50216 | 527 | cp -rfLp modules/{subprocess_worker_unix,subprocess_worker_win}.js $ext_dir/modules |
dae07f1c JR |
528 | cd - |
529 | cp -p %{topdir}/comm-release/mailnews/extensions/enigmail/package/install.rdf $ext_dir | |
530 | cp -p %{topdir}/comm-release/mailnews/extensions/enigmail/package/chrome.manifest $ext_dir/chrome.manifest | |
531 | %endif | |
1d0185d8 | 532 | |
2ded22a1 | 533 | %if %{without xulrunner} |
dae07f1c | 534 | # never package these. always remove |
dae07f1c | 535 | # mozldap |
2c28e650 | 536 | %{__sed} -i '/lib\(ldap\|ldif\|prldap\)60.so/d' $RPM_BUILD_ROOT%{_libdir}/%{name}/dependentlibs.list |
505c350f | 537 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{ldap,ldif,prldap}60.so |
2ded22a1 | 538 | %endif |
1d0185d8 | 539 | |
540 | %clean | |
541 | rm -rf $RPM_BUILD_ROOT | |
542 | ||
543 | %post | |
dae07f1c | 544 | %{_libdir}/%{name}/register || : |
1d0185d8 | 545 | %update_browser_plugins |
fcecc2a1 | 546 | %update_icon_cache hicolor |
dae07f1c | 547 | %update_desktop_database |
1d0185d8 | 548 | |
549 | %postun | |
1d0185d8 | 550 | if [ "$1" = 0 ]; then |
551 | %update_browser_plugins | |
fcecc2a1 | 552 | %update_icon_cache hicolor |
1d0185d8 | 553 | fi |
554 | ||
1d0185d8 | 555 | %files |
556 | %defattr(644,root,root,755) | |
557 | %attr(755,root,root) %{_bindir}/iceape | |
1d0185d8 | 558 | |
559 | # browser plugins v2 | |
560 | %{_browserpluginsconfdir}/browsers.d/%{name}.* | |
561 | %config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist | |
562 | ||
dae07f1c JR |
563 | %dir %{_libdir}/%{name} |
564 | %if %{without xulrunner} | |
565 | %attr(755,root,root) %{_libdir}/%{name}/libmozalloc.so | |
566 | %attr(755,root,root) %{_libdir}/%{name}/libmozjs.so | |
dae07f1c JR |
567 | %attr(755,root,root) %{_libdir}/%{name}/libxul.so |
568 | %endif | |
1d0185d8 | 569 | |
dae07f1c | 570 | %{_libdir}/%{name}/blocklist.xml |
505c350f | 571 | %{_libdir}/%{name}/omni.ja |
dae07f1c | 572 | %attr(755,root,root) %{_libdir}/%{name}/register |
1d0185d8 | 573 | |
dae07f1c JR |
574 | %if %{with crashreporter} |
575 | %{_libdir}/%{name}/crashreporter | |
576 | %{_libdir}/%{name}/crashreporter-override.ini | |
577 | %{_libdir}/%{name}/crashreporter.ini | |
578 | %{_libdir}/%{name}/Throbber-small.gif | |
579 | %endif | |
1d0185d8 | 580 | |
dae07f1c JR |
581 | # config? |
582 | %{_libdir}/%{name}/application.ini | |
583 | %{_libdir}/%{name}/chrome.manifest | |
584 | ||
585 | %dir %{_libdir}/%{name}/components | |
dae07f1c | 586 | %{_libdir}/%{name}/components/components.manifest |
978e314f JR |
587 | %attr(755,root,root) %{_libdir}/%{name}/components/libsuite.so |
588 | ||
dae07f1c | 589 | %if %{without xulrunner} |
9d5ee07b | 590 | %{_libdir}/%{name}/dependentlibs.list |
dae07f1c | 591 | %{_libdir}/%{name}/platform.ini |
dae07f1c | 592 | %attr(755,root,root) %{_libdir}/%{name}/components/libdbusservice.so |
dae07f1c | 593 | %attr(755,root,root) %{_libdir}/%{name}/components/libmozgnome.so |
dae07f1c JR |
594 | %attr(755,root,root) %{_libdir}/%{name}/run-mozilla.sh |
595 | %attr(755,root,root) %{_libdir}/%{name}/iceape-bin | |
596 | %attr(755,root,root) %{_libdir}/%{name}/mozilla-xremote-client | |
597 | %attr(755,root,root) %{_libdir}/%{name}/plugin-container | |
598 | %endif | |
599 | ||
978e314f JR |
600 | %attr(755,root,root) %{_libdir}/%{name}/iceape |
601 | %dir %{_libdir}/%{name}/plugins | |
602 | ||
dae07f1c JR |
603 | # symlinks |
604 | %{_libdir}/%{name}/chrome | |
605 | %{_libdir}/%{name}/defaults | |
dae07f1c JR |
606 | %{_libdir}/%{name}/searchplugins |
607 | %if %{with xulrunner} | |
608 | %{_libdir}/%{name}/xulrunner | |
609 | %else | |
610 | %{_libdir}/%{name}/dictionaries | |
dae07f1c JR |
611 | %endif |
612 | ||
613 | %dir %{_datadir}/%{name} | |
614 | %{_datadir}/%{name}/chrome | |
615 | %{_datadir}/%{name}/defaults | |
dae07f1c | 616 | %{_datadir}/%{name}/searchplugins |
1d0185d8 | 617 | |
dae07f1c JR |
618 | %dir %{_datadir}/%{name}/extensions |
619 | %dir %{_libdir}/%{name}/extensions | |
620 | # the signature of the default theme | |
621 | %{_libdir}/%{name}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi | |
622 | %{_libdir}/%{name}/extensions/modern@themes.mozilla.org.xpi | |
623 | ||
624 | # files created by iceape -register | |
625 | %ghost %{_libdir}/%{name}/components/compreg.dat | |
626 | %ghost %{_libdir}/%{name}/components/xpti.dat | |
627 | ||
2ded22a1 | 628 | %if %{without xulrunner} |
dae07f1c JR |
629 | %{_libdir}/%{name}/isp |
630 | %dir %{_datadir}/%{name}/isp | |
631 | %{_datadir}/%{name}/isp/Bogofilter.sfd | |
632 | %{_datadir}/%{name}/isp/DSPAM.sfd | |
633 | %{_datadir}/%{name}/isp/POPFile.sfd | |
634 | %{_datadir}/%{name}/isp/SpamAssassin.sfd | |
635 | %{_datadir}/%{name}/isp/SpamPal.sfd | |
636 | %{_datadir}/%{name}/isp/movemail.rdf | |
637 | %{_datadir}/%{name}/isp/rss.rdf | |
2ded22a1 | 638 | %endif |
1d0185d8 | 639 | |
fcecc2a1 JR |
640 | %{_iconsdir}/hicolor/*/apps/iceape.png |
641 | %{_iconsdir}/hicolor/scalable/apps/iceape.svg | |
dae07f1c JR |
642 | %{_desktopdir}/%{name}.desktop |
643 | %{_desktopdir}/%{name}-composer.desktop | |
1d0185d8 | 644 | %{_desktopdir}/%{name}-mail.desktop |
645 | ||
dae07f1c JR |
646 | %if %{with lightning} |
647 | %files addon-lightning | |
648 | %defattr(644,root,root,755) | |
649 | %dir %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103} | |
650 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/application.ini | |
651 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome | |
652 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome.manifest | |
653 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/defaults | |
654 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/install.rdf | |
655 | %dir %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components | |
656 | %attr(755,root,root) %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/*.so | |
657 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/*.js | |
658 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/*.manifest | |
659 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/*.xpt | |
660 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules | |
661 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js | |
662 | %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/timezones.sqlite | |
dae07f1c JR |
663 | %endif |
664 | ||
665 | %if %{with enigmail} | |
1d0185d8 | 666 | %files addon-enigmail |
667 | %defattr(644,root,root,755) | |
dae07f1c JR |
668 | %dir %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5} |
669 | %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/defaults | |
670 | %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/chrome | |
671 | %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/chrome.manifest | |
672 | %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/install.rdf | |
673 | %dir %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/components | |
dae07f1c JR |
674 | %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/components/*.xpt |
675 | %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/components/*.js | |
c4a50216 JR |
676 | %dir %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/modules |
677 | %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/modules/*.jsm | |
678 | %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/modules/*.js | |
dae07f1c | 679 | %endif |
1d0185d8 | 680 | |
681 | %files chat | |
682 | %defattr(644,root,root,755) | |
dae07f1c | 683 | %{_libdir}/%{name}/extensions/{59c81df5-4b7a-477b-912d-4e0fdf64e5f2}.xpi |
1d0185d8 | 684 | %{_desktopdir}/%{name}-chat.desktop |
685 | ||
686 | %files js-debugger | |
687 | %defattr(644,root,root,755) | |
dae07f1c | 688 | %{_libdir}/%{name}/extensions/{f13b157f-b174-47e7-a34d-4815ddfdfeb8}.xpi |
1d0185d8 | 689 | %{_desktopdir}/%{name}-venkman.desktop |
690 | ||
691 | %files dom-inspector | |
692 | %defattr(644,root,root,755) | |
dae07f1c | 693 | %{_libdir}/%{name}/extensions/inspector@mozilla.org.xpi |