Summary: Icedove - email client
Summary(pl.UTF-8): Icedove - klient poczty
Name: icedove
-Version: 3.1.2
-Release: 1
+Version: 3.1.11
+Release: 2
License: MPL 1.1 or GPL v2+ or LGPL v2.1+
Group: X11/Applications/Networking
Source0: http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/%{version}/source/thunderbird-%{version}.source.tar.bz2
-# Source0-md5: 48e80576a7af70e64d30a5162364525a
+# Source0-md5: 25833b3f90925d96285630d22c85cd5c
Source1: http://www.mozilla-enigmail.org/download/source/enigmail-%{enigmail_ver}.tar.gz
# Source1-md5: 7d329d5e8afbbb28214ca1995beb09c9
Source2: %{name}-branding.tar.bz2
-# Source2-md5: 85fdf877e2f1bc41329d8086ef5cf0f1
+# Source2-md5: 2da351522bdd7f4a3bd8aaff4c776976
Source3: %{name}-rm_nonfree.sh
Source4: %{name}.desktop
Source5: %{name}.sh
Patch9: %{name}-libpng.patch
Patch10: %{name}-extensiondir.patch
Patch11: crashreporter.patch
+Patch12: no-subshell.patch
URL: http://www.pld-linux.org/Packages/Icedove
%{?with_gnomevfs:BuildRequires: GConf2-devel >= 1.2.1}
BuildRequires: alsa-lib-devel
BuildRequires: pango-devel >= 1:1.1.0
BuildRequires: pkgconfig
BuildRequires: sed >= 4.0
-BuildRequires: sqlite3-devel >= 3.6.22
+BuildRequires: sqlite3-devel >= 3.7.4
BuildRequires: startup-notification-devel >= 0.8
BuildRequires: xorg-lib-libXext-devel
BuildRequires: xorg-lib-libXinerama-devel
BuildRequires: xorg-lib-libXt-devel
BuildRequires: zip
+Requires(post): mktemp >= 1.5-18
%if %{with xulrunner}
%else
Requires: myspell-common
%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 _noautoreqdep libgfxpsshar.so libgkgfx.so libgtkxtbin.so libjsj.so libxpcom_compat.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
+%define _noautoprov libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so libxpcom_core.so
# and as we don't provide them, don't require either
-%define _noautoreq libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so
+%define _noautoreq libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so libxpcom_core.so
%define topdir %{_builddir}/%{name}-%{version}
%define objdir %{topdir}/obj-%{_target_cpu}
mv -f comm-1.9.2 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}
%patch9 -p0
%patch10 -p2
%patch11 -p2
+%patch12 -p1
%build
cd mozilla
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
+cp -f %{_datadir}/automake/config.* directory/sdks/c-sdk/config/autoconf
install -d libxul-sdk
ln -snf %{_libdir}/xulrunner-sdk libxul-sdk/sdk
cat << EOF > .mozconfig
mk_add_options MOZ_OBJDIR=%{objdir}
-export CFLAGS="%{rpmcflags}"
-export CXXFLAGS="%{rpmcflags}"
+export CFLAGS="%{rpmcflags} -fpermissive"
+export CXXFLAGS="%{rpmcflags} -fpermissive"
%if %{with crashreporter}
export MOZ_DEBUG_SYMBOLS=1
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
+# 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
+
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{_libdir}/%{name}/dictionaries
%{__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
-cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop
-cp -a %{topdir}/mozilla/icedove/branding/content/icon64.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
+cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop
+cp -p %{topdir}/mozilla/icedove/branding/content/icon64.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
-# files created by regxpcom -register
+# 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\}
cp -rfLp components/ipc.xpt $ext_dir/components
cp -rfLp defaults/preferences/enigmail.js $ext_dir/defaults/preferences
cd -
-cp -a %{topdir}/mozilla/mailnews/extensions/enigmail/package/install.rdf $ext_dir
-cp -a %{topdir}/mozilla/mailnews/extensions/enigmail/package/chrome.manifest $ext_dir/chrome.manifest
+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
-rm $RPM_BUILD_ROOT%{_libdir}/%{name}/components/components.list
-rm $RPM_BUILD_ROOT%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/components.list
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/README.txt
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/components/components.list
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/components.list
-# never package these
+# never package these. always remove
# nss
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{freebl3,nss3,nssckbi,nssdbm3,nssutil3,smime3,softokn3,ssl3}.*
+%{__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
+%{__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
+%{__rm} -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{ldap,ldif,prldap,ssldap}60.so
%clean
rm -rf $RPM_BUILD_ROOT
done
exit 0
+%post
+%{_libdir}/%{name}/register || :
+
%files
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/icedove
%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
# symlinks
%{_libdir}/%{name}/chrome
%{_datadir}/%{name}/isp
%{_datadir}/%{name}/modules
%{_datadir}/%{name}/res
+%{_datadir}/%{name}/extensions
%if %{with crashreporter}
%attr(755,root,root) %{_libdir}/%{name}/crashreporter