]> git.pld-linux.org Git - packages/icedove.git/blobdiff - icedove.spec
- really try to use system xulrunner, if bcond is enabled; but it doesn't work in...
[packages/icedove.git] / icedove.spec
index c26b3c8d893efdd70b7cb558d439d422e685524e..55f8548cfb198aa4a0f61ce533fbaef4a4214d23 100644 (file)
@@ -1,55 +1,31 @@
 # TODO:
 # - separate spec for enigmail
 # - build with system mozldap
-# - files:
-#   /usr/lib/icedove/blocklist.xml
-#   /usr/lib/icedove/chrome.manifest
-#   /usr/lib/icedove/components/components.manifest
-#   /usr/lib/icedove/components/interfaces.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/application.ini
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calCompositeCalendar.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calDavCalendar.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calICSCalendar.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calImportExportModule.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItemModule.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipEmailTransport.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calItipProtocolHandler.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calMemoryCalendar.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calStorageCalendar.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/calWcapCalendarModule.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/components.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/interfaces.manifest
-#   /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/lightningTextCalendarConverter.manifest
-#   /usr/lib/icedove/greprefs.js
-#   /usr/lib/icedove/hyphenation/hyph_en_US.dic
-#   /usr/lib/icedove/plugin-container
 #
 # 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 gnome           # alias for gnomeui
 %bcond_without ldap            # disable e-mail address lookups in LDAP directories
-%bcond_without  lightning      # disable sunbird calendar
-%bcond_without xulrunner       # build with 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
 %endif
 
 %if 0%{?_enable_debug_packages} != 1
 %undefine      crashreporter
 %endif
 
-%define                enigmail_ver    1.3.2
+%define                enigmail_ver    1.3.5
 %define                nspr_ver        4.8.8
 %define                nss_ver         3.12.10
 
-# convert firefox release number to platform version: 7.0.x -> 7.0.x
-%define                xulrunner_main  7.0
-%define                xulrunner_ver   %(v=%{version}; echo %{xulrunner_main}${v#7.0})
+# 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})
 
 %if %{without xulrunner}
 # The actual sqlite version (see RHBZ#480989):
 Summary:       Icedove - email client
 Summary(pl.UTF-8):     Icedove - klient poczty
 Name:          icedove
-Version:       7.0.1
-Release:       0.1
+Version:       10.0.2
+Release:       3
 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: ad177fe5202deabda44882ff5c871f1b
+# Source0-md5: 624bef982d7ac610b1175737d9905150
 Source1:       http://www.mozilla-enigmail.org/download/source/enigmail-%{enigmail_ver}.tar.gz
-# Source1-md5: 2318d60320dc6c3db3c34d968bb7d533
+# Source1-md5: 1b008b0d106e238c11e4bead08126bc0
 Source2:       %{name}-branding.tar.bz2
 # Source2-md5: 2da351522bdd7f4a3bd8aaff4c776976
 Source3:       %{name}-rm_nonfree.sh
@@ -74,38 +50,43 @@ Source4:    %{name}.desktop
 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
+
 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: 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: 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: libgnome-devel >= 2.0}
 %{?with_gnomeui:BuildRequires: libgnome-keyring-devel}
 %{?with_gnomeui:BuildRequires: libgnomeui-devel >= 2.2.0}
 BuildRequires: libiw-devel
 BuildRequires: libjpeg-devel >= 6b
 BuildRequires: libnotify-devel >= 0.4
-BuildRequires: libpng-devel >= 1.2.0
+BuildRequires: libpng-devel >= 1.4.1
 BuildRequires: libstdc++-devel
 BuildRequires: nspr-devel >= 1:%{nspr_ver}
 BuildRequires: nss-devel >= 1:%{nss_ver}
 BuildRequires: pango-devel >= 1:1.1.0
+BuildRequires: perl-base >= 1:5.6
 BuildRequires: pkgconfig
+BuildRequires: python >= 1:2.5
 BuildRequires: sed >= 4.0
 BuildRequires: sqlite3-devel >= 3.7.4
 BuildRequires: startup-notification-devel >= 0.8
@@ -133,21 +114,21 @@ 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 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}
 
 %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
@@ -209,7 +190,7 @@ cd mozilla
 /bin/sh %{SOURCE3}
 %patch0 -p1
 %{?with_enigmail:%patch1 -p1}
-%patch2 -p1
+%{?with_system_xulrunner:%patch2 -p1}
 %patch3 -p1
 %patch4 -p1
 %patch6 -p1
@@ -225,14 +206,12 @@ cp -f %{_datadir}/automake/config.* mozilla/build/autoconf
 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
@@ -271,16 +250,13 @@ ac_add_options --enable-tests
 %else
 ac_add_options --disable-tests
 %endif
+ac_add_options --enable-gio
 %if %{with gnomeui}
 ac_add_options --enable-gnomeui
 %else
 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
@@ -322,10 +298,9 @@ 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/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
@@ -388,16 +363,16 @@ cp -a mozilla/dist/bin/extensions/calendar-timezones@mozilla.org \
 # 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
+mv $RPM_BUILD_ROOT%{_libdir}/%{name}/searchplugins $RPM_BUILD_ROOT%{_datadir}/%{name}/searchplugins
 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
+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
@@ -407,6 +382,9 @@ 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
 
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{name}/hyphenation
+ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{_libdir}/%{name}/hyphenation
+
 %{__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
@@ -446,11 +424,6 @@ cp -p %{topdir}/mozilla/mailnews/extensions/enigmail/package/install.rdf $ext_di
 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}.*
@@ -466,7 +439,7 @@ 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
@@ -485,41 +458,46 @@ exit 0
 %dir %{_libdir}/%{name}
 %{_libdir}/%{name}/application.ini
 %{_libdir}/%{name}/platform.ini
+%{_libdir}/%{name}/blocklist.xml
+%{_libdir}/%{name}/chrome.manifest
+%{_libdir}/%{name}/greprefs.js
 %dir %{_libdir}/%{name}/components
 %attr(755,root,root) %{_libdir}/%{name}/components/*.so
 %{_libdir}/%{name}/components/*.js
 %{_libdir}/%{name}/components/*.xpt
+%{_libdir}/%{name}/components/components.manifest
+%{_libdir}/%{name}/components/interfaces.manifest
 %attr(755,root,root) %{_libdir}/%{name}/libmozalloc.so
-#%%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
 %attr(755,root,root) %{_libdir}/%{name}/libxul.so
 %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}/plugin-container
 %attr(755,root,root) %{_libdir}/%{name}/register
 
 # symlinks
 %{_libdir}/%{name}/chrome
 %{_libdir}/%{name}/defaults
 %{_libdir}/%{name}/dictionaries
-#%%{_libdir}/%{name}/greprefs
+%{_libdir}/%{name}/hyphenation
 %{_libdir}/%{name}/isp
 %{_libdir}/%{name}/modules
 %{_libdir}/%{name}/res
+%{_libdir}/%{name}/searchplugins
 
-%{_pixmapsdir}/*.png
-%{_desktopdir}/*.desktop
+%{_pixmapsdir}/icedove.png
+%{_desktopdir}/icedove.desktop
 
 %dir %{_datadir}/%{name}
 %{_datadir}/%{name}/chrome
 %{_datadir}/%{name}/defaults
-#%%{_datadir}/%{name}/greprefs
+%{_datadir}/%{name}/extensions
 %{_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
@@ -538,18 +516,19 @@ exit 0
 %files addon-lightning
 %defattr(644,root,root,755)
 %dir %{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}
-%{_libdir}/%{name}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/defaults
+%{_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/*.xpt
 %{_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
-
 %{_libdir}/%{name}/extensions/calendar-timezones@mozilla.org
 %endif
 
This page took 0.054785 seconds and 4 git commands to generate.