%bcond_without gnome # alias for gnomeui
%bcond_without ldap # disable e-mail address lookups in LDAP directories
%bcond_without lightning # disable Sunbird/Lightning calendar
-%bcond_without xulrunner # build with xulrunner
+%bcond_with xulrunner # system xulrunner
%bcond_with crashreporter # report crashes to crash-stats.mozilla.com
%if %{without gnome}
%define nspr_ver 4.8.8
%define nss_ver 3.12.10
-# convert firefox release number to platform version: 9.0.x -> 9.0.x
+# convert thunderbird release number to platform version: 9.0.x -> 9.0.x
%define xulrunner_main 10.0
%define xulrunner_ver %(v=%{version}; echo %{xulrunner_main}${v#10.0})
Source5: %{name}.sh
Patch0: %{name}-branding.patch
Patch1: %{name}-enigmail-shared.patch
-Patch2: %{name}-gcc.patch
+Patch2: %{name}-system-xulrunner.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
%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 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 libxpcom_core.so
+%define _noautoprov libmozjs.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 libxpcom_core.so
+%define _noautoreq libmozjs.so libxpcom.so libxul.so
%define topdir %{_builddir}/%{name}-%{version}
%define objdir %{topdir}/obj-%{_target_cpu}
/bin/sh %{SOURCE3}
%patch0 -p1
%{?with_enigmail:%patch1 -p1}
-%patch2 -p1
+%{?with_system_xulrunner:%patch2 -p1}
%patch3 -p1
%patch4 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p2
-#%%patch9 -p1
%patch10 -p2
%patch11 -p2
%patch12 -p1
cp -f %{_datadir}/automake/config.* mozilla/nsprpub/build/autoconf
cp -f %{_datadir}/automake/config.* ldap/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} -fpermissive -I/usr/include/xulrunner"
-export CXXFLAGS="%{rpmcflags} -fpermissive -I/usr/include/xulrunner"
+export CFLAGS="%{rpmcflags}"
+# use c++0x for char16_t (like in xulrunner 10.0.x)
+export CXXFLAGS="%{rpmcflags}%{?with_system_xulrunner: -std=gnu++0x}"
%if %{with crashreporter}
export MOZ_DEBUG_SYMBOLS=1
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/sdk
+ac_add_options --enable-shared-js
+ac_add_options --with-libxul-sdk=$(pkg-config --variable=sdkdir libxul)
ac_add_options --with-system-libxul
-ac_add_options --enable-shared
-ac_add_options --enable-libxul
%else
ac_add_options --disable-xul
%endif
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
-
# never package these. always remove
# nss
%{__rm} -f $RPM_BUILD_ROOT%{_libdir}/%{name}/lib{freebl3,nss3,nssckbi,nssdbm3,nssutil3,smime3,softokn3,ssl3}.*
%{_libdir}/%{name}/res
%{_libdir}/%{name}/searchplugins
-%{_pixmapsdir}/*.png
-%{_desktopdir}/*.desktop
+%{_pixmapsdir}/icedove.png
+%{_desktopdir}/icedove.desktop
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/chrome