# TODO:
# - separate spec for enigmail
-# - fix icedove (building) and installing nss/nspr libs!
# - build with system mozldap
-# - about dialog broken:
-#XML Parsing Error: undefined entity
-#Location: chrome://messenger/content/aboutDialog.xul
-#Line Number 27, Column 37: <description id="copyright">&logoTrademark;</description>
-#------------------------------------^
#
# Conditional builds
%bcond_without enigmail # don't build enigmail - GPG/PGP support
-%bcond_without gnomeui # disable gnomeui support
-%bcond_without gnomevfs # disable GNOME comp. (gconf+libgnome+gnomevfs) and gnomevfs ext.
-%bcond_without gnome # disable all GNOME components (gnome+gnomeui+gnomevfs)
%bcond_without ldap # disable e-mail address lookups in LDAP directories
-%bcond_without lightning # disable sunbird calendar
-%bcond_with xulrunner # build with system xulrunner
+%bcond_without lightning # disable Sunbird/Lightning calendar
+%bcond_with xulrunner # system xulrunner
+%bcond_with crashreporter # report crashes to crash-stats.mozilla.com
-%if %{without gnome}
-%undefine with_gnomeui
-%undefine with_gnomevfs
+%if 0%{?_enable_debug_packages} != 1
+%undefine crashreporter
%endif
-%define enigmail_ver 1.1.2
+%define enigmail_ver 1.6
+%define nspr_ver 4.9.3
+%define nss_ver 3.15.3.1
+
+%define xulrunner_ver 2:24.0
%if %{without xulrunner}
# The actual sqlite version (see RHBZ#480989):
Summary: Icedove - email client
Summary(pl.UTF-8): Icedove - klient poczty
Name: icedove
-Version: 3.1
-Release: 0.3
+Version: 24.5.0
+Release: 1
License: MPL 1.1 or GPL v2+ or LGPL v2.1+
-Group: Applications/Networking
+Group: X11/Applications/Mail
Source0: http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/%{version}/source/thunderbird-%{version}.source.tar.bz2
-# Source0-md5: feb4d737d568066076879a09bd0d506e
+# Source0-md5: dbe164c48e42c04b4959910eda2e52ca
Source1: http://www.mozilla-enigmail.org/download/source/enigmail-%{enigmail_ver}.tar.gz
-# Source1-md5: 7d329d5e8afbbb28214ca1995beb09c9
+# Source1-md5: 4a2bbcb020bdb282a660fda8c70d5608
Source2: %{name}-branding.tar.bz2
-# Source2-md5: 2da351522bdd7f4a3bd8aaff4c776976
+# Source2-md5: d8e6897870bf288fdf264c0e9ef85f7d
Source3: %{name}-rm_nonfree.sh
Source4: %{name}.desktop
Source5: %{name}.sh
-Source6: %{name}-enigmail.manifest
Patch0: %{name}-branding.patch
Patch1: %{name}-enigmail-shared.patch
-Patch2: %{name}-gcc.patch
+Patch2: %{name}-sh.patch
Patch3: %{name}-fonts.patch
-Patch4: %{name}-install.patch
-Patch5: %{name}-hunspell.patch
Patch6: %{name}-prefs.patch
Patch7: system-mozldap.patch
Patch8: %{name}-makefile.patch
-Patch9: %{name}-libpng.patch
+Patch10: %{name}-extensiondir.patch
+Patch11: crashreporter.patch
+Patch12: no-subshell.patch
+# Edit patch below and restore --system-site-packages when system virtualenv gets 1.7 upgrade
+Patch13: system-virtualenv.patch
+Patch14: gyp-slashism.patch
+Patch15: enable-addons.patch
URL: http://www.pld-linux.org/Packages/Icedove
-%{?with_gnomevfs:BuildRequires: GConf2-devel >= 1.2.1}
+BuildRequires: GConf2-devel >= 1.2.1
+BuildRequires: alsa-lib-devel
BuildRequires: automake
+BuildRequires: bzip2-devel
+BuildRequires: cairo-devel >= 1.10
+BuildRequires: dbus-glib-devel >= 0.60
BuildRequires: freetype-devel >= 1:2.1.8
-%{?with_gnomevfs:BuildRequires: gnome-vfs2-devel >= 2.0}
-BuildRequires: gtk+2-devel >= 1:2.0.0
+BuildRequires: glib2-devel >= 2.0
+BuildRequires: gstreamer0.10-devel
+BuildRequires: gstreamer0.10-plugins-base-devel
+BuildRequires: gtk+2-devel >= 2:2.10.0
BuildRequires: hunspell-devel
BuildRequires: libIDL-devel >= 0.8.0
-%{?with_gnomevfs:BuildRequires: libgnome-devel >= 2.0}
-%{?with_gnomeui:BuildRequires: libgnomeui-devel >= 2.2.0}
+BuildRequires: libevent-devel
+BuildRequires: libiw-devel
+# requires libjpeg-turbo implementing at least libjpeg 6b API
BuildRequires: libjpeg-devel >= 6b
-BuildRequires: libpng-devel >= 1.2.0
+BuildRequires: libjpeg-turbo-devel
+BuildRequires: libnotify-devel >= 0.4
+BuildRequires: libpng-devel >= 1.4.1
BuildRequires: libstdc++-devel
-BuildRequires: nspr-devel >= 1:4.8
-BuildRequires: nss-devel >= 1:3.12.0
-BuildRequires: pango-devel >= 1:1.1.0
+BuildRequires: mozldap-devel
+BuildRequires: nspr-devel >= 1:%{nspr_ver}
+BuildRequires: nss-devel >= 1:%{nss_ver}
+BuildRequires: pango-devel >= 1:1.14.0
+BuildRequires: perl-base >= 1:5.6
+BuildRequires: python-virtualenv
BuildRequires: pkgconfig
+BuildRequires: python >= 1:2.5
BuildRequires: sed >= 4.0
-BuildRequires: sqlite3-devel >= 3.6.22
+BuildRequires: sqlite3-devel >= 3.7.4
BuildRequires: startup-notification-devel >= 0.8
+BuildRequires: libvpx-devel >= 1.0.0
BuildRequires: xorg-lib-libXext-devel
BuildRequires: xorg-lib-libXinerama-devel
BuildRequires: xorg-lib-libXt-devel
+BuildRequires: yasm
BuildRequires: zip
%if %{with xulrunner}
+BuildRequires: xulrunner-devel >= %{xulrunner_ver}
%else
Requires: myspell-common
-Requires: nspr >= 1:4.6.1
-Requires: nss >= 1:3.11.3
+Requires: nspr >= 1:%{nspr_ver}
+Requires: nss >= 1:%{nss_ver}
Requires: sqlite3 >= %{sqlite_build_version}
%endif
+Requires(post): mktemp >= 1.5-18
+%if %{with xulrunner}
+%requires_eq_to xulrunner xulrunner-devel
+%endif
+Requires: libjpeg-turbo
Obsoletes: mozilla-thunderbird
Obsoletes: mozilla-thunderbird-dictionary-en-US
+Conflicts: icedove-lang-resources < %{version}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define filterout_cpp -D_FORTIFY_SOURCE=[0-9]+
# iceweasel/icedove/iceape provide their own versions
-%define _noautoreqdep libgfxpsshar.so libgkgfx.so libgtkxtbin.so libjsj.so libxpcom_compat.so libxpcom_core.so libxpistub.so
%define _noautoprovfiles %{_libdir}/%{name}/components
-# we don't want these to satisfy xulrunner-devel
-%define _noautoprov libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so
+%if %{without xulrunner}
+# we don't want these to satisfy packages depending on xulrunner
+%define _noautoprov libmozalloc.so libxpcom.so libxul.so
# and as we don't provide them, don't require either
-%define _noautoreq libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so
+%define _noautoreq libmozalloc.so libxpcom.so libxul.so
+%endif
+
+%define topdir %{_builddir}/%{name}-%{version}
+%define objdir %{topdir}/obj-%{_target_cpu}
%description
-Icedove is an open-source,fast and portable email client.
+Icedove is an open-source, fast and portable email client.
%description -l pl.UTF-8
-Icedove jest open sourcowym, szybkim i przenośnym klientem poczty.
+Icedove jest mającym otwarte źródła, szybkim i przenośnym klientem
+poczty.
%package addon-lightning
Summary: An integrated calendar for Icedove
%prep
%setup -qc
-mv -f comm-1.9.2 mozilla
+mv comm-esr24 mozilla
%setup -q -T -D -a2
cd mozilla
-%{?with_enigmail:tar xvfz %{SOURCE1} -C mailnews/extensions}
+%{?with_enigmail:%{__gzip} -dc %{SOURCE1} | %{__tar} -xf - -C mailnews/extensions}
/bin/sh %{SOURCE3}
%patch0 -p1
%{?with_enigmail:%patch1 -p1}
%patch2 -p1
%patch3 -p1
-%patch4 -p1
-%patch5 -p1
%patch6 -p1
%patch7 -p1
-%patch8 -p0
-%patch9 -p0
+%patch8 -p2
+%patch10 -p2
+#patch11 -p2
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%patch15 -p1
+
+# the entire check in that configure is so wrong, it's simpler to just workaround it here temporarily
+%{__sed} -i -e 's|min_nss_version=3.15.3.1|min_nss_version=3.15.3|' mozilla/configure
%build
cd mozilla
-export CFLAGS="%{rpmcflags} `%{_bindir}/pkg-config mozilla-nspr --cflags-only-I`"
-export CXXFLAGS="%{rpmcflags} `%{_bindir}/pkg-config mozilla-nspr --cflags-only-I`"
-
cp -f %{_datadir}/automake/config.* mozilla/build/autoconf
cp -f %{_datadir}/automake/config.* mozilla/nsprpub/build/autoconf
-cp -f %{_datadir}/automake/config.* directory/c-sdk/config/autoconf
-
-install -d libxul-sdk
-ln -snf %{_libdir}/xulrunner-sdk libxul-sdk/sdk
+cp -f %{_datadir}/automake/config.* ldap/sdks/c-sdk/config/autoconf
cat << EOF > .mozconfig
-mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-%{_target_cpu}
+mk_add_options MOZ_OBJDIR=%{objdir}
+
+export CFLAGS="%{rpmcflags}"
+export CXXFLAGS="%{rpmcflags}"
+
+%if %{with crashreporter}
+export MOZ_DEBUG_SYMBOLS=1
+%endif
# Options for 'configure' (same as command-line options).
ac_add_options --prefix=%{_prefix}
%else
ac_add_options --disable-tests
%endif
-%if %{with gnomeui}
-ac_add_options --enable-gnomeui
-%else
+ac_add_options --enable-gio
ac_add_options --disable-gnomeui
-%endif
-%if %{with gnomevfs}
-ac_add_options --enable-gnomevfs
-%else
ac_add_options --disable-gnomevfs
-%endif
%if %{with ldap}
ac_add_options --enable-ldap
ac_add_options --with-system-ldap
%else
ac_add_options --disable-ldap
%endif
+%if %{with crashreporter}
+ac_add_options --enable-crashreporter
+%else
ac_add_options --disable-crashreporter
+%endif
ac_add_options --disable-xterm-updates
ac_add_options --enable-postscript
%if %{with lightning}
%else
ac_add_options --disable-calendar
%endif
+ac_add_options --disable-elf-dynstr-gc
ac_add_options --disable-installer
-ac_add_options --disable-jsd
+ac_add_options --disable-javaxpcom
ac_add_options --disable-updater
-ac_add_options --disable-xprint
-ac_add_options --disable-permissions
-ac_add_options --disable-pref-extensions
-ac_add_options --enable-canvas
ac_add_options --enable-crypto
-ac_add_options --enable-mathml
+ac_add_options --enable-libxul
ac_add_options --enable-pango
-ac_add_options --enable-reorder
+ac_add_options --enable-shared-js
ac_add_options --enable-startup-notification
-ac_add_options --enable-svg
ac_add_options --enable-system-cairo
ac_add_options --enable-system-hunspell
ac_add_options --enable-system-sqlite
-ac_add_options --enable-xft
ac_add_options --enable-application=mail
-ac_add_options --enable-default-toolkit=cairo-gtk2
-ac_add_options --enable-xinerama
ac_add_options --with-distribution-id=org.pld-linux
ac_add_options --with-branding=icedove/branding
%if %{with xulrunner}
-ac_add_options --with-libxul-sdk=$(pwd)/libxul-sdk
-ac_add_options --enable-shared
-%else
-ac_add_options --enable-static
+ac_add_options --with-system-libxul
+ac_add_options --with-libxul-sdk=$(pkg-config --variable=sdkdir libxul)
%endif
ac_add_options --with-pthreads
ac_add_options --with-system-bz2
+ac_add_options --with-system-ffi
ac_add_options --with-system-jpeg
+ac_add_options --with-system-libevent
+ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-png
ac_add_options --with-default-mozilla-five-home=%{_libdir}/%{name}
EOF
+mkdir -p %{objdir}/config
+ln -s %{topdir}/mozilla/config/*.mk %{objdir}/config
+
%{__make} -j1 -f client.mk build \
STRIP="/bin/true" \
+ MOZ_MAKE_FLAGS="%{?_smp_mflags}" \
+ installdir=%{_libdir}/%{name} \
+ XLIBS="-lX11 -lXt" \
CC="%{__cc}" \
CXX="%{__cxx}"
+%if %{with crashreporter}
+# create debuginfo for crash-stats.mozilla.com
+%{__make} -j1 -C obj-%{_target_cpu} buildsymbols
+%endif
+
%if %{with enigmail}
cd mailnews/extensions/enigmail
-./makemake -r
-%{__make} -C ../../../obj-%{_target_cpu}/mailnews/extensions/enigmail \
+./makemake -r -o %{objdir}
+%{__make} -j1 -C %{objdir}/mailnews/extensions/enigmail \
+ STRIP="/bin/true" \
+ CC="%{__cc}" \
+ CXX="%{__cxx}"
+
+%{__make} -j1 -C %{objdir}/mailnews/extensions/enigmail xpi \
STRIP="/bin/true" \
CC="%{__cc}" \
CXX="%{__cxx}"
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_pixmapsdir},%{_desktopdir}} \
- $RPM_BUILD_ROOT%{_datadir}/%{name}
-install -d $RPM_BUILD_ROOT%{_libdir}/%{name}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/%{name},%{_datadir}/%{name},%{_pixmapsdir},%{_desktopdir}}
-cd mozilla
-%{__make} -C obj-%{_target_cpu}/mail/installer stage-package \
+cd %{objdir}
+%{__make} -C mail/installer stage-package \
DESTDIR=$RPM_BUILD_ROOT \
- MOZ_PKG_APPDIR=%{_libdir}/%{name} \
+ installdir=%{_libdir}/%{name} \
PKG_SKIP_STRIP=1
+%{__make} -C icedove/branding install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+cp -a mozilla/dist/icedove/* $RPM_BUILD_ROOT%{_libdir}/%{name}/
+
+%if %{with xulrunner}
+# needed to find mozilla runtime
+ln -s ../xulrunner $RPM_BUILD_ROOT%{_libdir}/%{name}/xulrunner
+%endif
+
+# Enable crash reporter for Thunderbird application
+%if %{with crashreporter}
+%{__sed} -i -e 's/\[Crash Reporter\]/[Crash Reporter]\nEnabled=1/' $RPM_BUILD_ROOT%{_libdir}/%{name}/application.ini
+
+# Add debuginfo for crash-stats.mozilla.com
+install -d $RPM_BUILD_ROOT%{_exec_prefix}/lib/debug%{_libdir}/%{name}
+cp -a mozilla/dist/%{name}-%{version}.en-US.linux-*.crashreporter-symbols.zip $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_libdir}/%{name}
+%endif
+
+# copy manually lightning files, somewhy they are not installed by make
+cp -a mozilla/dist/bin/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103} \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/extensions
+
# move arch independant ones to datadir
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome $RPM_BUILD_ROOT%{_datadir}/%{name}/chrome
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults $RPM_BUILD_ROOT%{_datadir}/%{name}/defaults
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/greprefs $RPM_BUILD_ROOT%{_datadir}/%{name}/greprefs
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/isp $RPM_BUILD_ROOT%{_datadir}/%{name}/isp
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/modules $RPM_BUILD_ROOT%{_datadir}/%{name}/modules
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/res $RPM_BUILD_ROOT%{_datadir}/%{name}/res
-ln -s ../../share/%{name}/chrome $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome
-ln -s ../../share/%{name}/defaults $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults
-ln -s ../../share/%{name}/greprefs $RPM_BUILD_ROOT%{_libdir}/%{name}/greprefs
-ln -s ../../share/%{name}/isp $RPM_BUILD_ROOT%{_libdir}/%{name}/isp
-ln -s ../../share/%{name}/modules $RPM_BUILD_ROOT%{_libdir}/%{name}/modules
-ln -s ../../share/%{name}/res $RPM_BUILD_ROOT%{_libdir}/%{name}/res
-
-rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
+mv $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins $RPM_BUILD_ROOT%{_datadir}/%{name}/searchplugins
+ln -s ../../share/%{name}/searchplugins $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins
+
+# dir for arch independant extensions besides arch dependant extensions
+# see mozilla/xpcom/build/nsXULAppAPI.h
+# XRE_SYS_LOCAL_EXTENSION_PARENT_DIR and XRE_SYS_SHARE_EXTENSION_PARENT_DIR
+install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/extensions
+
+%if %{without xulrunner}
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
+%endif
+
+%{__sed} -e "s|%MOZAPPDIR%|%{_libdir}/%{name}|" \
+ -e "s|%MOZ_APP_DISPLAYNAME%|Icedove|" \
+ %{topdir}/mozilla/mozilla/build/unix/mozilla.in > $RPM_BUILD_ROOT%{_libdir}/%{name}/icedove
%{__sed} -e 's,@LIBDIR@,%{_libdir},' %{SOURCE5} > $RPM_BUILD_ROOT%{_bindir}/icedove
ln -s %{name} $RPM_BUILD_ROOT%{_bindir}/thunderbird
ln -s %{name} $RPM_BUILD_ROOT%{_bindir}/mozilla-thunderbird
-install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop
+# install icons and desktop file
+cp -p %{topdir}/mozilla/icedove/branding/content/icon64.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
+for i in 16 32 48 64 128 256; do
+ install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/${i}x${i}/apps
+ cp -a %{topdir}/mozilla/icedove/branding/icedove${i}.png \
+ $RPM_BUILD_ROOT%{_iconsdir}/hicolor/${i}x${i}/apps/icedove.png
+done
+install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/scalable/apps
+cp -a %{topdir}/mozilla/icedove/branding/icedove.svg $RPM_BUILD_ROOT%{_iconsdir}/hicolor/scalable/apps/icedove.svg
+
+cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop
+
+# files created by regxpcom -register in post
+touch $RPM_BUILD_ROOT%{_libdir}/%{name}/components/compreg.dat
+touch $RPM_BUILD_ROOT%{_libdir}/%{name}/components/xpti.dat
+cat << 'EOF' > $RPM_BUILD_ROOT%{_libdir}/%{name}/register
+#!/bin/sh
+umask 022
+# make temporary HOME, as it attempts to touch files in $HOME/.mozilla
+# dangerous if you run this with sudo with keep_env += HOME
+# also TMPDIR could be pointing to sudo user's homedir so we reset that too.
+t=$(mktemp -d)
+%{__rm} -f %{_libdir}/%{name}/components/{compreg,xpti}.dat
+TMPDIR= TMP= HOME=$t %{_libdir}/%{name}/icedove -register
+rm -rf $t
+EOF
+chmod a+rx $RPM_BUILD_ROOT%{_libdir}/%{name}/register
%if %{with enigmail}
ext_dir=$RPM_BUILD_ROOT%{_libdir}/%{name}/extensions/\{847b3a00-7ab1-11d4-8f02-006008948af5\}
-install -d $ext_dir/{chrome,components,defaults/preferences}
-mv -f $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome/enigmail.jar $ext_dir/chrome
-mv -f $RPM_BUILD_ROOT%{_libdir}/%{name}/components/enig* $ext_dir/components
-mv -f $RPM_BUILD_ROOT%{_libdir}/%{name}/components/libenigmime.so $ext_dir/components
-mv -f $RPM_BUILD_ROOT%{_libdir}/%{name}/components/ipc.xpt $ext_dir/components
-mv -f $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/preferences/enigmail.js $ext_dir/defaults/preferences
-cp -f mailnews/extensions/enigmail/package/install.rdf $ext_dir
-rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/preferences
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome/enigmail-en-US.jar
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome/enigmail-skin.jar
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome/enigmime.jar
-rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/components/enig*
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/components/libenigmime.so
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/components/ipc.xpt
-cp -f %{SOURCE6} $ext_dir/chrome.manifest
-cp -f icedove/branding/content/icon64.png $RPM_BUILD_ROOT%{_pixmapsdir}/icedove.png
+install -d $ext_dir/{chrome,components,defaults/preferences,modules}
+cd mozilla/dist/bin
+cp -rfLp chrome/enigmail.jar $ext_dir/chrome
+cp -rfLp components/enig* $ext_dir/components
+cp -rfLp defaults/preferences/enigmail.js $ext_dir/defaults/preferences
+cp -rfLp modules/{commonFuncs,enigmailCommon,keyManagement,pipeConsole,subprocess}.jsm $ext_dir/modules
+cp -rfLp modules/{subprocess_worker_unix,subprocess_worker_win}.js $ext_dir/modules
+cd -
+cp -p %{topdir}/mozilla/mailnews/extensions/enigmail/package/install.rdf $ext_dir
+cp -p %{topdir}/mozilla/mailnews/extensions/enigmail/package/chrome.manifest $ext_dir/chrome.manifest
%endif
-# remove unecessary stuff
-rm $RPM_BUILD_ROOT%{_libdir}/%{name}/README.txt
-
-# never package these
-# nss
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{freebl3,nss3,nssckbi,nssdbm3,nssutil3,smime3,softokn3,ssl3}.*
-# nspr
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{nspr4,plc4,plds4}.so
# mozldap
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{ldap,ldif,prldap,ssldap}60.so
+%{__sed} -i '/lib\(ldap\|ldif\|prldap\)60.so/d' $RPM_BUILD_ROOT%{_libdir}/%{name}/dependentlibs.list
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{ldap,ldif,prldap}60.so
%clean
rm -rf $RPM_BUILD_ROOT
if [ -d %{_libdir}/%{name}/dictionaries ] && [ ! -L %{_libdir}/%{name}/dictionaries ]; then
mv -v %{_libdir}/%{name}/dictionaries{,.rpmsave}
fi
-for d in chrome defaults greprefs icons isp modules res; do
+for d in chrome defaults icons isp modules res searchplugins; do
if [ -d %{_libdir}/%{name}/$d ] && [ ! -L %{_libdir}/%{name}/$d ]; then
install -d %{_datadir}/%{name}
mv %{_libdir}/%{name}/$d %{_datadir}/%{name}/$d
done
exit 0
+%post
+%{_libdir}/%{name}/register || :
+
%files
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/icedove
%attr(755,root,root) %{_bindir}/mozilla-thunderbird
%attr(755,root,root) %{_bindir}/thunderbird
%dir %{_libdir}/%{name}
-%{_libdir}/%{name}/*.ini
+%{_libdir}/%{name}/application.ini
+%{_libdir}/%{name}/blocklist.xml
+%{_libdir}/%{name}/chrome.manifest
%dir %{_libdir}/%{name}/components
-%attr(755,root,root) %{_libdir}/%{name}/components/*.so
-%{_libdir}/%{name}/components/*.js
-%{_libdir}/%{name}/components/*.xpt
-%attr(755,root,root) %{_libdir}/%{name}/libmozjs.so
-%attr(755,root,root) %{_libdir}/%{name}/libxpcom.so
-%attr(755,root,root) %{_libdir}/%{name}/libxpcom_core.so
+%{_libdir}/%{name}/components/components.manifest
%attr(755,root,root) %{_libdir}/%{name}/*.sh
%attr(755,root,root) %{_libdir}/%{name}/*-bin
-%attr(755,root,root) %{_libdir}/%{name}/mozilla-xremote-client
%attr(755,root,root) %{_libdir}/%{name}/icedove
+%attr(755,root,root) %{_libdir}/%{name}/register
+%{_libdir}/%{name}/omni.ja
+%if %{without xulrunner}
+%{_libdir}/%{name}/dependentlibs.list
+%{_libdir}/%{name}/platform.ini
+#%{_libdir}/%{name}/greprefs.js
+%attr(755,root,root) %{_libdir}/%{name}/components/*.so
+%attr(755,root,root) %{_libdir}/%{name}/libmozalloc.so
+%attr(755,root,root) %{_libdir}/%{name}/libmozjs.so
+%attr(755,root,root) %{_libdir}/%{name}/libxul.so
+%attr(755,root,root) %{_libdir}/%{name}/mozilla-xremote-client
+%attr(755,root,root) %{_libdir}/%{name}/plugin-container
+%endif
# symlinks
%{_libdir}/%{name}/chrome
%{_libdir}/%{name}/defaults
-%{_libdir}/%{name}/dictionaries
-%{_libdir}/%{name}/greprefs
%{_libdir}/%{name}/isp
-%{_libdir}/%{name}/modules
-%{_libdir}/%{name}/res
+#%{_libdir}/%{name}/modules
+%{_libdir}/%{name}/searchplugins
+%if %{with xulrunner}
+%{_libdir}/%{name}/xulrunner
+%else
+%{_libdir}/%{name}/dictionaries
+%endif
-%{_desktopdir}/*.desktop
+%{_pixmapsdir}/icedove.png
+%{_desktopdir}/icedove.desktop
%dir %{_datadir}/%{name}
-%{_datadir}/%{name}/chrome
-%{_datadir}/%{name}/defaults
-%{_datadir}/%{name}/greprefs
-%{_datadir}/%{name}/isp
-%{_datadir}/%{name}/modules
-%{_datadir}/%{name}/res
+%{_datadir}/%{name}/extensions
+%{_datadir}/%{name}/searchplugins
+
+%if %{with crashreporter}
+%attr(755,root,root) %{_libdir}/%{name}/crashreporter
+%{_libdir}/%{name}/crashreporter.ini
+%{_libdir}/%{name}/Throbber-small.gif
+%endif
%dir %{_libdir}/%{name}/extensions
%{_libdir}/%{name}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}
+# files created by regxpcom -register
+%ghost %{_libdir}/%{name}/components/compreg.dat
+%ghost %{_libdir}/%{name}/components/xpti.dat
+
+%{_iconsdir}/hicolor/*/apps/icedove.*
+
%if %{with lightning}
%files addon-lightning
%defattr(644,root,root,755)
-%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}
-%{_libdir}/%{name}/extensions/calendar-timezones@mozilla.org
+%dir %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/application.ini
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/chrome.manifest
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/defaults
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/install.rdf
+%dir %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components
+%attr(755,root,root) %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/*.so
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/*.js
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/*.manifest
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/*.xpt
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/modules
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/calendar-js
+%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/timezones.sqlite
%endif
%if %{with enigmail}
%files addon-enigmail
%defattr(644,root,root,755)
-%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}
-%{_pixmapsdir}/*.png
+%dir %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}
+%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/defaults
+%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/chrome
+%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/chrome.manifest
+%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/install.rdf
+%dir %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/components
+%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/components/*.xpt
+%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/components/*.js
+%dir %{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/modules
+%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/modules/*.jsm
+%{_libdir}/%{name}/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/modules/*.js
%endif