# - 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
%undefine with_gnomevfs
%endif
-%define enigmail_ver 1.0.1
+%define enigmail_ver 1.1.2
%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.0.4
-Release: 3
+Version: 3.1.2
+Release: 0.2
License: MPL 1.1 or GPL v2+ or LGPL v2.1+
-Group: Applications/Networking
+Group: X11/Applications/Networking
Source0: http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/%{version}/source/thunderbird-%{version}.source.tar.bz2
-# Source0-md5: bb87ca7e62d5869422137765126798be
+# Source0-md5: 48e80576a7af70e64d30a5162364525a
Source1: http://www.mozilla-enigmail.org/download/source/enigmail-%{enigmail_ver}.tar.gz
-# Source1-md5: 508ca9ab0396afb49e82eda88014924b
+# Source1-md5: 7d329d5e8afbbb28214ca1995beb09c9
Source2: %{name}-branding.tar.bz2
# Source2-md5: 2da351522bdd7f4a3bd8aaff4c776976
Source3: %{name}-rm_nonfree.sh
Patch4: %{name}-install.patch
Patch5: %{name}-hunspell.patch
Patch6: %{name}-prefs.patch
+Patch7: system-mozldap.patch
+Patch8: %{name}-makefile.patch
+Patch9: %{name}-libpng.patch
URL: http://www.pld-linux.org/Packages/Icedove
%{?with_gnomevfs:BuildRequires: GConf2-devel >= 1.2.1}
BuildRequires: automake
BuildRequires: libstdc++-devel
BuildRequires: nspr-devel >= 1:4.8
BuildRequires: nss-devel >= 1:3.12.0
-BuildRequires: sqlite3-devel
BuildRequires: pango-devel >= 1:1.1.0
BuildRequires: pkgconfig
BuildRequires: sed >= 4.0
+BuildRequires: sqlite3-devel >= 3.6.22
BuildRequires: startup-notification-devel >= 0.8
BuildRequires: xorg-lib-libXext-devel
BuildRequires: xorg-lib-libXinerama-devel
%if %{with xulrunner}
%else
Requires: myspell-common
-Requires: sqlite3 >= %{sqlite_build_version}
Requires: nspr >= 1:4.6.1
Requires: nss >= 1:3.11.3
+Requires: sqlite3 >= %{sqlite_build_version}
%endif
Obsoletes: mozilla-thunderbird
Obsoletes: mozilla-thunderbird-dictionary-en-US
%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 libldap60.so libmozjs.so libprldap60.so libssldap60.so libxpcom.so libxul.so
+%define _noautoprov libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so
# and as we don't provide them, don't require either
-%define _noautoreq libgtkembedmoz.so libldap60.so libmozjs.so libprldap60.so libssldap60.so libxpcom.so libxul.so
+%define _noautoreq libgtkembedmoz.so libmozjs.so libxpcom.so libxul.so
%description
Icedove is an open-source,fast and portable email client.
%prep
%setup -qc
-mv -f comm-1.9.1 mozilla
+mv -f comm-1.9.2 mozilla
%setup -q -T -D -a2
cd mozilla
%{?with_enigmail:tar xvfz %{SOURCE1} -C mailnews/extensions}
%patch4 -p1
%patch5 -p1
%patch6 -p1
+%patch7 -p1
+%patch8 -p0
+%patch9 -p0
%build
cd mozilla
cp -f %{_datadir}/automake/config.* mozilla/nsprpub/build/autoconf
cp -f %{_datadir}/automake/config.* directory/c-sdk/config/autoconf
-cat << 'EOF' > .mozconfig
+install -d libxul-sdk
+ln -snf %{_libdir}/xulrunner-sdk libxul-sdk/sdk
+
+cat << EOF > .mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-%{_target_cpu}
# Options for 'configure' (same as command-line options).
%endif
%if %{with ldap}
ac_add_options --enable-ldap
+ac_add_options --with-system-ldap
%else
ac_add_options --disable-ldap
%endif
ac_add_options --enable-mathml
ac_add_options --enable-pango
ac_add_options --enable-reorder
-ac_add_options --enable-static
ac_add_options --enable-startup-notification
ac_add_options --enable-svg
ac_add_options --enable-system-cairo
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=%{_libdir}/xulrunner-sdk
+ac_add_options --with-libxul-sdk=$(pwd)/libxul-sdk
+ac_add_options --enable-shared
+%else
+ac_add_options --enable-static
%endif
ac_add_options --with-pthreads
ac_add_options --with-system-bz2
CXX="%{__cxx}"
%if %{with enigmail}
+top=$(pwd)
cd mailnews/extensions/enigmail
-./makemake -r
-%{__make} -C ../../../obj-%{_target_cpu}/mailnews/extensions/enigmail \
+./makemake -r -o $top/obj-%{_target_cpu}
+%{__make} -C $top/obj-%{_target_cpu}/mailnews/extensions/enigmail \
STRIP="/bin/true" \
CC="%{__cc}" \
CXX="%{__cxx}"
$RPM_BUILD_ROOT%{_datadir}/%{name}
install -d $RPM_BUILD_ROOT%{_libdir}/%{name}
-cd mozilla
-%{__make} -C obj-%{_target_cpu}/mail/installer stage-package \
+cd mozilla/obj-%{_target_cpu}
+%{__make} -C mail/installer stage-package \
DESTDIR=$RPM_BUILD_ROOT \
MOZ_PKG_APPDIR=%{_libdir}/%{name} \
PKG_SKIP_STRIP=1
+# copy manually lightning files, somewhy they are not installed by make
+cp -a mozilla/dist/bin/extensions/calendar-timezones@mozilla.org \
+ 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
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
+cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop
+cp -a ../icedove/branding/content/icon64.png $RPM_BUILD_ROOT%{_pixmapsdir}/icedove.png
%if %{with enigmail}
ext_dir=$RPM_BUILD_ROOT%{_libdir}/%{name}/extensions/\{847b3a00-7ab1-11d4-8f02-006008948af5\}
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
%endif
-# win32 stuff
-rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/dirver
+# remove unecessary stuff
+rm $RPM_BUILD_ROOT%{_libdir}/%{name}/README.txt
+rm $RPM_BUILD_ROOT%{_libdir}/%{name}/components/components.list
+# never package these
# nss
rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{freebl3,nss3,nssckbi,nssdbm3,nssutil3,smime3,softokn3,ssl3}.*
# nspr
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 res; do
+for d in chrome defaults greprefs icons isp modules res; do
if [ -d %{_libdir}/%{name}/$d ] && [ ! -L %{_libdir}/%{name}/$d ]; then
install -d %{_datadir}/%{name}
mv %{_libdir}/%{name}/$d %{_datadir}/%{name}/$d
%{_libdir}/%{name}/dictionaries
%{_libdir}/%{name}/greprefs
%{_libdir}/%{name}/isp
+%{_libdir}/%{name}/modules
%{_libdir}/%{name}/res
-%{_libdir}/%{name}/dependentlibs.list
%{_pixmapsdir}/*.png
%{_desktopdir}/*.desktop
%{_datadir}/%{name}/defaults
%{_datadir}/%{name}/greprefs
%{_datadir}/%{name}/isp
+%{_datadir}/%{name}/modules
%{_datadir}/%{name}/res
-%dir %{_libdir}/%{name}/modules
-%{_libdir}/%{name}/modules/*.js*
-%dir %{_libdir}/%{name}/modules/activity
-%{_libdir}/%{name}/modules/activity/*.js
-%dir %{_libdir}/%{name}/modules/gloda
-%{_libdir}/%{name}/modules/gloda/*.js
-
%dir %{_libdir}/%{name}/extensions
%{_libdir}/%{name}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}