/[packages]/updates/1/mozilla-thunderbird/current/SPECS/mozilla-thunderbird.spec
ViewVC logotype

Annotation of /updates/1/mozilla-thunderbird/current/SPECS/mozilla-thunderbird.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 310912 - (hide annotations) (download)
Sat Oct 27 23:05:53 2012 UTC (11 years, 5 months ago) by fwang
File size: 22421 byte(s)
new version 10.0.10esr
1 ennael 55189 %define __libtoolize /bin/true
2     %define __cputoolize /bin/true
3    
4 doktor5000 210136 %define upstream_version %{version}esr
5     %define release_dir comm-esr10
6    
7 ennael 55189 %define official_branding 1
8    
9 ahmad 93463 %define release %mkrel 1
10 ahmad 68147
11 ennael 55189 %if %{official_branding}
12     %define title Mozilla Thunderbird
13     %else
14     %define title Mail/News
15     %endif
16    
17     %define oname thunderbird
18     %define tb_appid \{3550f703-e582-4d05-9a08-453d09bdfdc6\}
19     %define tbdir %{_libdir}/%{oname}-%{version}
20     %define tbextdir %{_libdir}/mozilla/extensions/%{tb_appid}
21    
22     %define xpi 0
23 doktor5000 233161 %define enigmail_version 1.4
24 doktor5000 210136 %define enigmail_short_version 1.4
25 ennael 55189 %define enigmail_id \{847b3a00-7ab1-11d4-8f02-006008948af5\}
26    
27     %define _provides_exceptions libgtkembedmoz.so\\|libxpcom.so
28 doktor5000 210136 %define _requires_exceptions libgtkembedmoz.so\\|libxpcom.so\\|libxul.so
29 ennael 55189
30     # FIXME: Bug in nsExtensionManager.js prevents using x86_64 as arch
31     # FIXME: I tried to modify nsExtensionManager.js.in, but it
32     # FIXME: complained that I had modified it
33     %ifarch %{ix86}
34     %define tbarch x86
35     %else # ix86
36     %ifarch x86_64
37     %define tbarch %{_arch}
38     %else # x86_64
39     %define tbarch %{_arch}
40     %endif # x86_64
41     %endif # ix86
42    
43     # this seems fragile, so require the exact version or later (#58754)
44     %define sqlite3_version %(pkg-config --modversion sqlite3 &>/dev/null && pkg-config --modversion sqlite3 2>/dev/null || echo 0)
45     # this one as well (#59759)
46     %define nss_libname %mklibname nss 3
47     %define nss_version %(pkg-config --modversion nss &>/dev/null && pkg-config --modversion nss 2>/dev/null || echo 0)
48    
49     Name: mozilla-thunderbird
50 doktor5000 210136 Epoch: 0
51 fwang 310912 Version: 10.0.10
52 ennael 55189 Release: %{release}
53     Summary: Full-featured email, RSS, and newsgroup client
54     License: MPL
55     Group: Networking/Mail
56 doktor5000 210136 URL: http://www.mozilla.org/en-US/thunderbird/organizations/all-esr.html
57     Source0: ftp://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/%{upstream_version}/source/thunderbird-%{upstream_version}.source.tar.bz2
58 dmorgan 61400 Source12: mozilla-thunderbird-mageia-default-prefs.js
59 ennael 55189 Source30: mozilla-thunderbird-open-browser.sh
60     Source31: mozilla-thunderbird-open-browser-xdg.sh
61     # Mandriva sources (Source300+)
62     Source300: http://www.mozilla-enigmail.org/download/source/enigmail-%{enigmail_version}.tar.gz
63     Source301: http://www.mozilla-enigmail.org/download/source/enigmail-%{enigmail_version}.tar.gz.asc
64     Source302: %{name}-icons.tar.bz2
65     # Language package template
66     Source400: mozilla-thunderbird-enigmail-l10n-template.in
67     # Build patches
68     Patch2: mozilla-firefox-1.0-prdtoa.patch
69 doktor5000 210136 # Mageia patches (patch100+)
70     # use libcanberra to play sounds rather than deprecated esound
71     # taken from upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=635918
72     Patch100: mozilla-thunderbird-mga-use-libcanberra.patch
73 ennael 55189 # Debian patches (Patch200+)
74 doktor5000 210136 Patch201: mozilla-thunderbird-5.0-mga-default-mailer.patch
75 ennael 55189 # Mandriva patches (Patch300+)
76     Patch300: mozilla-thunderbird-0.8-progname.patch
77     Patch301: mozilla-thunderbird-enigmail-package.patch
78     Patch304: mozilla-thunderbird-run-mozilla.patch
79     # OpenSuse patches (Patch400+)
80     Patch400: thunderbird-appname.patch
81 doktor5000 210136
82 ennael 55189 BuildRequires: autoconf2.1
83     BuildRequires: cairo-devel >= 1.8.8
84     Requires: %{mklibname sqlite3_ 0} >= %{sqlite3_version}
85 doktor5000 210136 BuildRequires: sqlite3-devel >= 3.7.5
86 ennael 55189 Requires: %{nss_libname} >= 2:%{nss_version}
87 doktor5000 210136 BuildRequires: yasm
88     BuildRequires: mesagl-devel
89 ennael 55189 BuildRequires: gtk2-devel
90     BuildRequires: gzip
91     BuildRequires: python-devel
92     BuildRequires: libjpeg-devel
93 doktor5000 210136 #(tpg) older versions doesn't support apng extension
94     # disabled because we use bundled libpng
95     #BuildRequires: libpng-devel >= 2:1.4
96     BuildRequires: nspr-devel >= 2:4.8.8
97     BuildRequires: nss-static-devel >= 2:3.12.10
98 ennael 55189 BuildRequires: unzip
99     BuildRequires: zip
100     BuildRequires: zlib-devel
101     BuildRequires: libIDL-devel
102     # Needed by xmlterm (not built) and unused enigmail scripts
103     #BuildRequires: tcsh
104     BuildRequires: freetype2-devel
105     BuildRequires: xft2-devel
106     BuildRequires: libxt-devel
107     BuildRequires: hunspell-devel
108 doktor5000 210136 BuildRequires: dbus-glib-devel
109 ennael 55189 Requires(post): mktemp
110     Requires(post): rpm-helper
111     Requires(postun): rpm-helper
112 doktor5000 210849 Suggests: %{_lib}canberra0
113 ennael 55189 # Integrates thunderbird with xdg-utils.
114     Requires: xdg-utils
115     %if %{official_branding}
116     BuildRequires: imagemagick
117     %endif
118     # Thunderbird 3 requires alsa
119     BuildRequires: libalsa-devel
120     BuildRequires: python
121     BuildRequires: libnotify-devel
122 doktor5000 210136 BuildRequires: startup-notification-devel
123 ennael 55189 BuildRequires: libiw-devel
124 doktor5000 210136 BuildRequires: libevent-devel >= 1.4.7
125     BuildRequires: libvpx-devel >= 0.9.7
126 ennael 55189
127     %description
128     %{title} is a full-featured email, RSS and newsgroup client that
129     makes emailing safer, faster and easier than ever before.
130    
131     #===============================================================================
132    
133     %package enigmail
134     Summary: Access the authentication and encryption features provided by GnuPG
135     Group: Networking/Mail
136 doktor5000 210136 Requires: %{name} = %{version}
137 ennael 55189 Obsoletes: %{name}-enigmime
138 doktor5000 210136 Provides: %{name}-enigmime = %{version}
139 ennael 55189 Requires: gnupg
140 doktor5000 210136 Requires(post): %{name} = %{version}
141     Requires(preun): %{name} = %{version}
142 ennael 55189 Requires(post): mktemp
143     Requires(postun): mktemp
144     Suggests: pinentry-gtk
145    
146     %description enigmail
147     Enigmail is an extension to the mail client of %{title}
148     which allows users to access the authentication and encryption
149     features provided by GnuPG.
150    
151     Main Features
152    
153     * Encrypt/sign mail when sending, decrypt/authenticate received
154     mail
155     * Support for inline-PGP (RFC 2440) and PGP/MIME (RFC 3156)
156     * Per-Account based encryption and signing defaults
157     * Per-Recipient rules for automated key selection, and
158     enabling/disabling encryption and signing
159     * OpenPGP key management interface
160    
161     #===============================================================================
162    
163     %package -n nsinstall
164     Summary: Netscape portable install command
165     Group: Development/Other
166    
167     %description -n nsinstall
168     Netscape portable install command.
169    
170     #===============================================================================
171     # enigmail-l10n
172     # Supported l10n language lists
173 doktor5000 210136 %define l10n_langlist ar ca cs de el es fi fr it ja ko nb nl pl pt pt_BR ru sl sv tr vi zh_CN zh_TW
174 ennael 55189
175     # Disabled l10n languages, for any reason
176     # nl sk es_AR do not support 0.95.0 yet
177 doktor5000 210136 %define disabled_l10n_langlist hu
178     # define disabled_l10n_langlist %{nil}
179 ennael 55189
180     # Language descriptions
181     %define language_ar ar
182     %define langname_ar Arabic
183     %define language_ca ca
184     %define langname_ca Catalan
185     %define language_cs cs-CZ
186     %define langname_cs Czech
187 doktor5000 210136 %define language_de de
188 ennael 55189 %define langname_de German
189     %define language_el el
190     %define langname_el Greek
191     %define language_es_AR es-AR
192     %define langname_es_AR Spanish (Argentina)
193     %define language_es es-ES
194     %define langname_es Spanish
195     %define language_fi fi-FI
196     %define langname_fi Finnish
197 doktor5000 210136 %define language_fr fr
198 ennael 55189 %define langname_fr French
199     %define language_hu hu-HU
200     %define langname_hu Hungarian
201     %define language_it it-IT
202     %define langname_it Italian
203     %define language_ja ja-JP
204     %define langname_ja Japanese
205     %define language_ko ko-KR
206     %define langname_ko Korean
207     %define language_nb nb-NO
208     %define langname_nb Norwegian Bokmaal
209     %define langname_nl Dutch
210 doktor5000 210136 %define language_nl nl
211     %define language_pl pl
212 ennael 55189 %define langname_pl Polish
213     %define langname_pt Portuguese
214     %define language_pt pt-PT
215     %define language_pt_BR pt-BR
216     %define langname_pt_BR Brazilian portuguese
217     %define language_ro ro-RO
218     %define langname_ro Romanian
219     %define language_ru ru-RU
220     %define langname_ru Russian
221 doktor5000 210136 %define language_sk sk
222 ennael 55189 %define langname_sk Slovak
223     %define language_sl sl-SI
224     %define langname_sl Slovenian
225     %define language_sv sv-SE
226     %define langname_sv Swedish
227 doktor5000 233161 %define language_tr tr
228 ennael 55189 %define langname_tr Turkish
229 doktor5000 233161 %define language_vi vi
230 ennael 55189 %define langname_vi Vietnamese
231     %define language_zh_CN zh-CN
232     %define langname_zh_CN Simplified Chinese
233     %define language_zh_TW zh-TW
234     %define langname_zh_TW Traditional Chinese
235    
236     # --- Danger line ---
237    
238     # All langs
239     %{expand:%%define langlist %(for lang in %l10n_langlist; do echo "$lang"; done | sort -u | sed ':a;$!N;s/\n/ /;ta')}
240    
241     # Defaults (all languages enabled by default)
242     # l10n
243     %{expand:%(for lang in %l10n_langlist; do echo "%%define l10n_$lang 1"; done)}
244     %{expand:%(for lang in %disabled_l10n_langlist; do echo "%%define l10n_$lang 0"; done)}
245    
246     # Params
247     %{expand:%(for lang in %langlist; do echo "%%bcond_without $lang"; done)}
248    
249     # Locales
250     %{expand:%(for lang in %l10n_langlist; do echo "%%define locale_$lang `echo $lang | cut -d _ -f 1` "; done)}
251    
252     # Expand all languages packages.
253     %{expand:%(\
254     for lang in %langlist; do\
255     echo "%%{expand:%%(sed "s!__LANG__!$lang!g" %{_sourcedir}/mozilla-thunderbird-enigmail-l10n-template.in 2> /dev/null)}";\
256     done\
257     )
258     }
259     #===============================================================================
260    
261     %prep
262     %setup -q -c -n %{name}-%{version}
263    
264     #===================
265     # Thunderbird itself
266 doktor5000 210136 %setup -q -T -D -n %{name}-%{version}/%{release_dir}
267 ennael 55189
268     %patch2 -p0
269    
270 doktor5000 210136 %patch100 -p2 -b .libcanberra
271 ahmad 68147
272 doktor5000 210136 %patch201 -p0 -b .default_mailer
273 ennael 55189 %patch300 -p0 -b .progname
274     %patch301 -p1 -b .enigmailpackage
275     %patch304 -p0 -b .run-mozilla
276    
277     %patch400 -p1 -b .appname
278    
279     #===============================================================================
280     # Enigmail
281 doktor5000 210136 %setup -q -T -D -n %{name}-%{version}/%{release_dir}/mozilla/extensions -a300
282 ennael 55189
283     %if !%{official_branding}
284 doktor5000 210136 %setup -q -T -D -n %{name}-%{version}/%{release_dir} -a302
285 ennael 55189 %endif
286    
287 doktor5000 210136 %setup -q -T -D -n %{name}-%{version}/%{release_dir}
288 ennael 55189
289     #===============================================================================
290    
291     %build
292     export BUILD_OFFICIAL=1
293     export MOZILLA_OFFICIAL=1
294    
295     CFLAGS=$(echo %optflags | %{__sed} -e 's/-fexceptions//')
296 doktor5000 210136 CFLAGS="$CFLAGS -fno-strict-aliasing -fpermissive"
297 ennael 55189 CXXFLAGS="$CFLAGS"
298     RPM_OPT_FLAGS="$CFLAGS"
299 doktor5000 210136 LDFLAGS="%ldflags"
300 ennael 55189 export CFLAGS
301     export CXXFLAGS
302     export RPM_OPT_FLAGS
303 doktor5000 210136 export LDFLAGS
304 ennael 55189
305 doktor5000 210136 export MOZCONFIG=`pwd`/.mozconfig
306     cat > $MOZCONFIG << EOF
307     mk_add_options MOZILLA_OFFICIAL=1
308     mk_add_options BUILD_OFFICIAL=1
309     mk_add_options MOZ_MAKE_FLAGS="%{_smp_mflags}"
310     mk_add_options MOZ_OBJDIR=@TOPSRCDIR@
311     ac_add_options --prefix="%{_prefix}"
312     ac_add_options --libdir="%{_libdir}"
313     ac_add_options --sysconfdir="%{_sysconfdir}"
314     ac_add_options --mandir="%{_mandir}"
315     ac_add_options --includedir="%{_includedir}"
316     ac_add_options --datadir="%{_datadir}"
317     ac_add_options --enable-application=mail
318     ac_add_options --with-system-nspr
319     ac_add_options --with-system-nss
320     ac_add_options --with-system-jpeg
321     ac_add_options --with-system-zlib
322     ac_add_options --without-system-png
323     ac_add_options --with-system-bz2
324     ac_add_options --enable-system-sqlite
325     ac_add_options --enable-system-hunspell
326     ac_add_options --enable-system-cairo
327     ac_add_options --with-pthreads
328     ac_add_options --disable-tests
329     ac_add_options --disable-debug
330     ac_add_options --disable-installer
331     ac_add_options --disable-updater
332     ac_add_options --enable-xinerama
333     ac_add_options --disable-crashreporter
334     ac_add_options --enable-default-toolkit=cairo-gtk2
335     ac_add_options --disable-xprint
336     ac_add_options --disable-strip
337     ac_add_options --enable-pango
338     ac_add_options --enable-startup-notification
339     ac_add_options --enable-svg
340     ac_add_options --enable-canvas
341     ac_add_options --enable-crypto
342     ac_add_options --enable-mathml
343     ac_add_options --disable-gnomevfs
344     ac_add_options --enable-gio
345     ac_add_options --disable-calendar
346     ac_add_options --with-system-libevent
347     ac_add_options --with-system-libvpx
348     ac_add_options --enable-optimize
349     ac_add_options --enable-official-branding
350     ac_add_options --with-distribution-id=org.mageia
351     EOF
352 ennael 55189
353     # Fix ABI for thunderbird and enigmail
354 doktor5000 210136 %{__perl} -pi -e 's|^TARGET_XPCOM_ABI =.*|TARGET_XPCOM_ABI = %{tbarch}-gcc3|' config/autoconf.mk.in
355     %{__perl} -pi -e 's|^ENIG_XPCOM_ABI =.*|ENIG_XPCOM_ABI = Linux_%{tbarch}-gcc3|' mozilla/extensions/enigmail/Makefile.in
356 ennael 55189
357     # Compress jars
358     %{__perl} -pi -e 's|\-0|\-9|g' config/make-jars.pl
359    
360 doktor5000 210136 %make -f client.mk build
361 ennael 55189
362     #===============================================================================
363    
364     pushd mozilla/extensions/enigmail
365    
366     for i in `find . -type f -name Makefile.in`; do
367     if [ -f $i.bak ]; then
368     cp $i.bak $i
369     else
370     %{__cp} $i $i.bak
371     fi
372     # %{__perl} -pi -e 's|^(DEPTH.*= )../|\1|;' $i
373     done
374    
375     ./makemake -r
376     %{make} LOCAL_INCLUDES+="-I\$(DEPTH)/mailnews/mime/src -I../build -I../src -I../ipc/src"
377    
378     (cd lang
379     %{__perl} -pi -e 's|es-AR/enigmail.properties|es-ES/enigmail.properties|' jar.mn
380     echo 'zh-TW' >> current-languages.txt
381     %{make} LOCAL_INCLUDES+="-I\$(DEPTH)/mailnews/mime/src -I../build -I../src -I../ipc/src"
382     for i in `cat current-languages.txt`; do
383     ./make-lang.sh $i %{enigmail_short_version}
384     done
385     )
386    
387     %{make} xpi
388    
389     popd
390    
391     #===============================================================================
392    
393     %install
394     %{__rm} -rf %{buildroot}
395     %{__mkdir_p} %{buildroot}{%{_libdir},%{_bindir},%{_datadir}/applications}
396     %{__mkdir_p} %buildroot%tbdir
397    
398     rm -f extensions/spellcheck/locales/en-US/hunspell/en-US.{dic,aff}
399    
400 doktor5000 223764 # workaround to use system nss shlibsign instead currently missing bundled one
401     # https://bugzilla.mozilla.org/show_bug.cgi?id=736327
402 doktor5000 223774 ln -s %{_bindir}/shlibsign %{_builddir}/%{name}-%{version}/%{release_dir}/mozilla/dist/bin/shlibsign
403 doktor5000 223764
404 doktor5000 210136 %makeinstall_std
405 ennael 55189
406     rm -rf %buildroot%tbdir/dictionaries
407     ln -s /usr/share/dict/mozilla %buildroot%tbdir/dictionaries
408    
409     %if %{official_branding}
410     %{__install} -p -D %{buildroot}/%{tbdir}/chrome/icons/default/default256.png %{buildroot}%{_datadir}/pixmaps/%{name}.png
411     %else
412     %{__install} -p -D %{SOURCE302} %{buildroot}%{_datadir}/pixmaps/%{name}.png
413     %endif
414    
415 dmorgan 61400 cat << EOF > %{buildroot}/%{_datadir}/applications/%_real_vendor-%{name}.desktop
416 ennael 55189 [Desktop Entry]
417     Version=1.0
418     Name=%{title}
419     GenericName=Mail/News
420     Comment=Mail and News Client
421     Exec=%{name}
422     Icon=mozilla-thunderbird
423     Terminal=false
424     Type=Application
425     StartupWMClass=Thunderbird-bin
426 doktor5000 210136 MimeType=message/rfc822;x-scheme-handler/mailto;
427 ennael 55189 Categories=GTK;Network;News;Email;X-MandrivaLinux-CrossDesktop;
428     EOF
429    
430     # set up the thunderbird start script
431     (cd %{buildroot}%{_bindir} && %{__ln_s} thunderbird %{name})
432    
433     %{__perl} -pi -e 's|^moz_libdir=.*|moz_libdir=%{tbdir}|' %{buildroot}/%{_bindir}/thunderbird
434     %{__perl} -pi -e 's|^MRE_HOME=.*|MRE_HOME=%{tbdir}|' %{buildroot}/%{_bindir}/thunderbird
435    
436     # <mrl> 200800 is safe here.
437     # For backwards compatibility with old profiles. Bug #37528
438     %{__install} -m 755 %{SOURCE31} %{buildroot}/%{tbdir}/open-browser.sh
439     # For new profiles
440     %define COMMAND /usr/bin/xdg-open
441    
442 doktor5000 210136 #used for matching system locale on startup
443 ennael 55189 %{__cat} %{SOURCE12} | %{__perl} -p -e 's,THUNDERBIRD_RPM_VR,%{version}-%{release},g;' \
444 doktor5000 210136 -e 's,THUNDERBIRD_VENDOR_COMMENT,%{product_release},g;' \
445 ennael 55189 -e 's,COMMAND,%{COMMAND},g' \
446 dmorgan 61407 > %{buildroot}/mga-default-prefs
447 doktor5000 210136 %{__cp} -a %{buildroot}/mga-default-prefs %{buildroot}%{tbdir}/defaults/pref/all-mageia.js
448 dmorgan 61407 %{__rm} -f %{buildroot}/mga-default-prefs
449 ennael 55189
450     #===============================================================================
451    
452     # icons
453     %{__mkdir_p} %{buildroot}{%{_liconsdir},%{_iconsdir},%{_miconsdir}}
454     %if %{official_branding}
455     %{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/{16x16,22x22,24x24,32x32,48x48,256x256}/apps
456     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default48.png %{buildroot}%{_liconsdir}/%{name}.png
457     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default32.png %{buildroot}%{_iconsdir}/%{name}.png
458     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default16.png %{buildroot}%{_miconsdir}/%{name}.png
459     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
460     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{name}.png
461     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{name}.png
462     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/%{name}.png
463     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
464     %{__install} -m 644 %{buildroot}/%{tbdir}/chrome/icons/default/default256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{name}.png
465     %else
466 doktor5000 210136 #%{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/{64x64,128x128}/apps
467     %{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/{16x16,22x22,24x24,32x32,48x48,256x256}/apps
468 ennael 55189 %{__install} -m 644 %{name}-48.png %{buildroot}%{_liconsdir}/%{name}.png
469     %{__install} -m 644 %{name}-32.png %{buildroot}%{_iconsdir}/%{name}.png
470     %{__install} -m 644 %{name}-16.png %{buildroot}%{_miconsdir}/%{name}.png
471     # Converting up, but not a big issue now that we have official branding
472 doktor5000 210136 %{__install} -m 644 %{name}-16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
473     %{__install} -m 644 %{name}-22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{name}.png
474     %{__install} -m 644 %{name}-24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{name}.png
475     %{__install} -m 644 %{name}-32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/%{name}.png
476     %{__install} -m 644 %{name}-48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
477     %{__install} -m 644 %{name}-256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{name}.png
478 ennael 55189 %endif
479    
480     #===============================================================================
481    
482     %{__mkdir_p} %{buildroot}%{tbextdir}/%{enigmail_id}
483     %if !%{xpi}
484 doktor5000 210136 %{_bindir}/unzip -q mozilla/dist/bin/enigmail-%{enigmail_short_version}*.xpi -d %{buildroot}%{tbextdir}/%{enigmail_id}
485 ennael 55189 %{__chmod} 644 %{buildroot}%{tbextdir}/%{enigmail_id}/chrome.manifest
486 doktor5000 210136 # as we rename libipc.so & libenigmime.so and don't install them into %%{tbdir}
487     # we need to remove them from %%{tbdir}/components/binary.manifest
488     # otherwise thunderbird will try to load them, which will fail
489     sed -i 's,binary-component libipc.so,,' %{buildroot}%{tbdir}/components/binary.manifest
490     sed -i 's,binary-component libenigmime.so,,' %{buildroot}%{tbdir}/components/binary.manifest
491 ennael 55189 %else
492 doktor5000 210136 %{__cp} -aL mozilla/dist/bin/enigmail-%{enigmail_short_version}*.xpi %{buildroot}%{tbextdir}/%{enigmail_id}/%{enigmail_id}.xpi
493 ennael 55189 %endif
494    
495     #==============================================================================
496     #enigmail lang package
497     # Convert rpm macros to bash variables
498     %{expand:%(for lang in %langlist; do echo "language_$lang=%%{language_$lang}"; done)}
499     %{expand:%(for lang in %langlist; do echo "with_$lang=%%{with $lang}"; done)}
500     %{expand:%(for lang in %l10n_langlist; do echo "l10n_$lang=%%{l10n_$lang}"; done)}
501     pushd mozilla/extensions/enigmail/lang
502     for lang in %langlist; do
503     %{__mkdir_p} %{buildroot}%{_datadir}/mozilla/extensions/%{tb_appid}/enigmail-$lang@enigmail.mozdev.org
504     language="language_$lang"
505     language=${!language}
506     %{_bindir}/unzip -q enigmail-${language}-%{enigmail_short_version}.xpi -d %{buildroot}%{_datadir}/mozilla/extensions/%{tb_appid}/enigmail-$lang@enigmail.mozdev.org/
507     done
508     popd
509    
510     #===============================================================================
511    
512     %{__cp} -aL mozilla/dist/bin/nsinstall %{buildroot}%{_bindir}
513    
514     #===============================================================================
515 doktor5000 210136 #exclude devel files
516     %{__rm} -rf %{buildroot}%{_datadir}/idl/%{oname}-%{version}
517     %{__rm} -rf %{buildroot}%{_includedir}/%{oname}-%{version}
518     %{__rm} -rf %{buildroot}%{_libdir}/%{oname}-devel-%{version}
519 ennael 55189
520     %clean
521     %{__rm} -rf %{buildroot}
522    
523     #===============================================================================
524    
525     %pre
526     if [ $1 == 2 ]; then
527     if [ -d %{tbdir}/dictionaries ]; then
528     # Otherelse rpm can't switch this into a symlink :(
529     rm -rf %{tbdir}/dictionaries
530     fi
531     fi
532    
533     %post
534    
535     mktemp="/bin/mktemp -d -q -p /tmp -t %{name}.XXXXXXXXXX"
536    
537     TMPDIR= TB_TMPDIR=`$mktemp` && {
538     HOME="$TB_TMPDIR" LD_LIBRARY_PATH="%{tbdir}" %{tbdir}/thunderbird-bin -nox -register
539     test -d "$TB_TMPDIR" && %{__rm} -rf -- "$TB_TMPDIR"
540     }
541    
542 doktor5000 210136
543 ennael 55189 #===============================================================================
544    
545     %post enigmail
546     if [ -f %{tbdir}/components/compreg.dat ]; then
547     %{__rm} -f %{tbdir}/components/compreg.dat
548     fi
549    
550     if [ -f %{tbdir}/components/xpti.dat ]; then
551     %{__rm} -f %{tbdir}/components/xpti.dat
552     fi
553    
554     mktemp="/bin/mktemp -d -q -p /tmp -t %{name}.XXXXXXXXXX"
555    
556     TMPDIR= TB_TMPDIR=`$mktemp` && {
557     %if %{xpi}
558     HOME="$TB_TMPDIR" LD_LIBRARY_PATH="%{tbdir}" %{tbdir}/thunderbird-bin -nox -install-global-extension %{tbextdir}/enigmail-%{enigmail_version}-linux-*.xpi
559     %endif
560     HOME="$TB_TMPDIR" LD_LIBRARY_PATH="%{tbdir}" %{tbdir}/thunderbird-bin -nox -register
561     test -d "$TB_TMPDIR" && %{__rm} -rf -- "$TB_TMPDIR"
562     }
563    
564     %preun enigmail
565     if [ -f %{tbdir}/components/compreg.dat ]; then
566     %{__rm} -f %{tbdir}/components/compreg.dat
567     fi
568    
569     if [ -f %{tbdir}/components/xpti.dat ]; then
570     %{__rm} -f %{tbdir}/components/xpti.dat
571     fi
572    
573     if [ -x %{tbdir}/thunderbird-bin ]; then
574     mktemp="/bin/mktemp -d -q -p /tmp -t %{name}.XXXXXXXXXX"
575    
576     TMPDIR= TB_TMPDIR=`$mktemp` && {
577     %if %{xpi}
578     HOME="$TB_TMPDIR" LD_LIBRARY_PATH="%{tbdir}" %{tbdir}/thunderbird-bin -nox -install-global-extension %{tbextdir}/enigmail-%{enigmail_version}-linux-*.xpi
579     %endif
580     HOME="$TB_TMPDIR" LD_LIBRARY_PATH="%{tbdir}" %{tbdir}/thunderbird-bin -nox -register
581     test -d "$TB_TMPDIR" && %{__rm} -rf -- "$TB_TMPDIR"
582     }
583     fi
584    
585     #===============================================================================
586    
587     %files
588     %defattr(-,root,root,-)
589     %doc mozilla/LEGAL
590     %attr(755,root,root) %{_bindir}/mozilla-thunderbird
591     %attr(755,root,root) %{_bindir}/thunderbird
592     %attr(644,root,root) %{_datadir}/applications/*.desktop
593     %attr(644,root,root) %{_datadir}/pixmaps/%{name}.png
594     %{tbdir}
595     %if %{xpi}
596     %dir %{tbextdir}
597     %endif
598     # Mandriva menu
599     %{_miconsdir}/%{name}.png
600     %{_iconsdir}/%{name}.png
601     %{_liconsdir}/%{name}.png
602     # other icons
603     %if %{official_branding}
604     %{_datadir}/icons/hicolor/16x16/apps/%{name}.png
605     %{_datadir}/icons/hicolor/22x22/apps/%{name}.png
606     %{_datadir}/icons/hicolor/24x24/apps/%{name}.png
607     %{_datadir}/icons/hicolor/32x32/apps/%{name}.png
608     %{_datadir}/icons/hicolor/48x48/apps/%{name}.png
609     %{_datadir}/icons/hicolor/256x256/apps/%{name}.png
610     %else
611 doktor5000 210136 %{_datadir}/icons/hicolor/16x16/apps/%{name}.png
612     %{_datadir}/icons/hicolor/22x22/apps/%{name}.png
613     %{_datadir}/icons/hicolor/24x24/apps/%{name}.png
614     %{_datadir}/icons/hicolor/32x32/apps/%{name}.png
615     %{_datadir}/icons/hicolor/48x48/apps/%{name}.png
616     %{_datadir}/icons/hicolor/256x256/apps/%{name}.png
617 ennael 55189 %endif
618     %exclude %{tbextdir}/%{enigmail_id}
619    
620     %files enigmail
621     %defattr(-,root,root)
622     %{tbextdir}/%{enigmail_id}
623    
624     %files -n nsinstall
625     %defattr(-,root,root)
626     %{_bindir}/nsinstall

  ViewVC Help
Powered by ViewVC 1.1.30