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