From 6f77138fd8f6b6e3c0cdfbe72acc964da48cc04c Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Sat, 26 Jun 2010 07:46:49 +0200 Subject: import sunbird (for thunderbird-lightning) --- sunbird.spec | 523 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 523 insertions(+) create mode 100644 sunbird.spec (limited to 'sunbird.spec') diff --git a/sunbird.spec b/sunbird.spec new file mode 100644 index 0000000..ccbcd15 --- /dev/null +++ b/sunbird.spec @@ -0,0 +1,523 @@ +%define nspr_version 4.8 +%define nss_version 3.12.3.99 +%define cairo_version 1.8.8 +%define dbus_glib_version 0.6 +%define sqlite_version 3.6.22 +%define lcms_version 1.19 + +%bcond_without lightning +%ifarch ppc +%if 0%{?rhel} +%define with_lightning %{nil} +%endif +%endif + +%define version_internal 1.0b2 +%define progdir %{_libdir}/%{name}-%{version_internal}pre +%define thunderbird_version 3.1 +%define libnotify_version 0.4 + +# This is to filter unwanted provides, that should be provided only by gecko-devel +%define _use_internal_dependency_generator 0 +%define __find_requires %{SOURCE100} %{buildroot} + +Name: sunbird +Version: 1.0 +Release: 0.25.b2pre%{?dist} +Summary: Calendar application built upon Mozilla toolkit + +Group: Applications/Productivity +License: MPLv1.1 or GPLv2+ or LGPLv2+ +URL: http://www.mozilla.org/projects/calendar/sunbird/ +#Source0: http://releases.mozilla.org/pub/mozilla.org/calendar/sunbird/releases/%{version}/source/lightning-sunbird-%{version}-source.tar.bz2 +Source0: thunderbird-%{thunderbird_version}.source.tar.bz2 +Source1: sunbird.desktop +Source2: sunbird-l10n.tar +#sunbird-langpacks-0.9.tar.gz +Source3: mozilla-extension-update.sh +# This is used just for langpacks. +# TODO: build them! +#Source4: http://releases.mozilla.org/pub/mozilla.org/calendar/lightning/releases/0.9/lightning-0.9.linux-i686.xpi +Source100: find-external-requires + +# Pulled from Thunderbird +Patch0: mozilla-jemalloc.patch +# Fixes gcc complain that nsFrame::delete is protected +Patch1: xulrunner-1.9.2.1-build.patch + +# Ours +Patch10: sunbird-1.0-libical.patch +Patch11: sunbird-1.0-uilocale.patch + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildRequires: libIDL-devel +BuildRequires: desktop-file-utils +BuildRequires: libgnomeui-devel +BuildRequires: krb5-devel +BuildRequires: pango-devel >= 1.22 +BuildRequires: freetype-devel >= 2.1.9 +BuildRequires: libXt-devel +BuildRequires: libXrender-devel +BuildRequires: desktop-file-utils +%if 0%{?fedora} >= 11 +BuildRequires: nspr-devel >= %{nspr_version} +BuildRequires: nss-devel >= %{nss_version} +%endif +BuildRequires: dbus-glib-devel >= %{dbus_glib_version} +BuildRequires: libpng-devel, libjpeg-devel, gtk2-devel +BuildRequires: zlib-devel, gzip, zip, unzip +BuildRequires: GConf2-devel +BuildRequires: gnome-vfs2-devel +BuildRequires: libical-devel +BuildRequires: zip +BuildRequires: autoconf213 +BuildRequires: alsa-lib-devel +%if 0%{fedora} >= 11 +BuildRequires: cairo-devel >= %{cairo_version} +Requires: nspr >= %{nspr_version} +Requires: nss >= %{nss_version} +%endif +%if 0%{?fedora} >= 13 +BuildRequires: sqlite-devel >= %{sqlite_version} +%endif +%if %{fedora} >= 10 +BuildRequires: libnotify-devel >= %{libnotify_version} +%endif +%if %{fedora} >= 9 +BuildRequires: lcms-devel >= %{lcms_version} +%endif + + +Requires(post): desktop-file-utils +Requires(postun): desktop-file-utils + +AutoProv: 0 + +%description +Mozilla Sunbird is a cross-platform calendar application, built upon +Mozilla Toolkit. It brings Mozilla-style ease-of-use to your +calendar, without tying you to a particular storage solution. + + +%if %with lightning +%package -n thunderbird-lightning +Summary: The calendar extension to Thunderbird +Group: Applications/Productivity +Requires: thunderbird >= %{thunderbird_version} +Obsoletes: thunderbird-lightning-wcap <= 0.8 +Provides: thunderbird-lightning-wcap = %{version}-%{release} +AutoProv: 0 + +%description -n thunderbird-lightning +Lightning brings the Sunbird calendar to the popular email client, +Mozilla Thunderbird. Since it's an extension, Lightning is tightly +integrated with Thunderbird, allowing it to easily perform email-related +calendaring tasks. + +%define lightning_extname '{e2fda1a4-762b-4020-b5ad-a41df1933103}' +%define tbupdate_lightning \\\ + %{_libdir}/thunderbird-lightning/mozilla-extension-update.sh \\\ + --appname thunderbird \\\ + --extname %{lightning_extname} \\\ + --basedir %{_libdir} \\\ + --extpath %{_libdir}/thunderbird-lightning \\\ + --action + +%define gdata_extname '{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}' +%define tbupdate_gdata \\\ + %{_libdir}/thunderbird-lightning/mozilla-extension-update.sh \\\ + --appname thunderbird \\\ + --extname %{gdata_extname} \\\ + --basedir %{_libdir} \\\ + --extpath %{_libdir}/thunderbird-lightning-gdata \\\ + --action +%endif + + +%prep +%setup -n comm-1.9.2 -q -a 2 +%patch0 -p0 -b .jemalloc +%patch1 -p1 -b .protected +%patch10 -p0 -b .libical +%patch11 -p0 -b .uilocale + +find . -name '*.cpp' -o -name '*.h' |xargs chmod -x + + +%build +cat >.mozconfig <= 11 +ac_add_options --enable-system-cairo +%endif +ac_add_options --enable-xinerama +ac_add_options --libdir="%{_libdir}" +ac_add_options --prefix="%{_prefix}" +ac_add_options --with-pthreads +ac_add_options --with-system-jpeg +%if %{fedora} >= 11 +ac_add_options --with-system-nspr +ac_add_options --with-system-nss +%endif +ac_add_options --with-system-zlib +%if %{fedora} >= 10 +ac_add_options --enable-libnotify +%else +ac_add_options --disable-libnotify +%endif +%if %{fedora} >= 11 +ac_add_options --enable-system-lcms +%endif +%if %{fedora} >= 13 +ac_add_options --enable-system-sqlite +%endif +EOF + +make -f client.mk build + + +%install +rm -rf $RPM_BUILD_ROOT + +# make install is bogus +# copy tree, break symlinks +mkdir -p $RPM_BUILD_ROOT%{progdir} +cp -rL mozilla/dist/bin/* $RPM_BUILD_ROOT%{progdir} +mkdir $RPM_BUILD_ROOT%{_bindir} +mv $RPM_BUILD_ROOT%{progdir}/%{name} $RPM_BUILD_ROOT%{_bindir}/%{name} + +desktop-file-install --vendor="fedora" \ + --dir=$RPM_BUILD_ROOT%{_datadir}/applications/ \ + %{SOURCE1} + +# Icon +mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/128x128/apps +cp $RPM_BUILD_ROOT%{progdir}/chrome/icons/default/default128.png \ + $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/128x128/apps/%{name}.png + +# Install langpacks +mkdir -p $RPM_BUILD_ROOT%{progdir}/extensions +ls sunbird-l10n/*.xpi |while read PACK +do + LANGUAGE=$(echo $PACK |sed 's,sunbird-l10n/sunbird-%{version_internal}pre.\(.*\).langpack.xpi,\1,') + DIR=$RPM_BUILD_ROOT%{progdir}/extensions/langpack-$LANGUAGE@sunbird.mozilla.org + mkdir -p $DIR + unzip -qod $DIR $PACK + find $DIR -type f |xargs chmod 0644 + + # Fix #441500 + sed 's/\r//g' $DIR/install.rdf |awk '/^$/ {next} {print}' >lala + touch -r $DIR/install.rdf lala + mv lala $DIR/install.rdf + +done + +# GData provider for sunbird +mkdir -p $RPM_BUILD_ROOT%{progdir}/extensions/%{gdata_extname} +touch $RPM_BUILD_ROOT%{progdir}/extensions/%{gdata_extname}/chrome.manifest +unzip -qod $RPM_BUILD_ROOT%{progdir}/extensions/%{gdata_extname} \ + mozilla/dist/xpi-stage/gdata-provider.xpi + +%if %with lightning +# Avoid "Chrome Registration Failed" message on first startup and extension installation +touch $RPM_BUILD_ROOT%{progdir}/extensions/%{lightning_extname}/chrome.manifest +touch $RPM_BUILD_ROOT%{progdir}/extensions/%{gdata_extname}/chrome.manifest + +# Lightning and GData provider for it +unzip -qod $RPM_BUILD_ROOT%{_libdir}/thunderbird-lightning mozilla/dist/xpi-stage/lightning.xpi +unzip -qod $RPM_BUILD_ROOT%{_libdir}/thunderbird-lightning-gdata mozilla/dist/xpi-stage/gdata-provider.xpi +install -p -m 755 %{SOURCE3} $RPM_BUILD_ROOT%{_libdir}/thunderbird-lightning/mozilla-extension-update.sh + +# No langpacks for preview release +%if 0 +# Unpack lightning language packs, except en_US +unzip -l %{SOURCE4} '*.jar' | + awk '/-[^\/]*\.jar/ && !/en-US/ {print $4}' | + xargs unzip -qod $RPM_BUILD_ROOT%{_libdir}/thunderbird-lightning %{SOURCE4} + +# Register them +ls $RPM_BUILD_ROOT%{_libdir}/thunderbird-lightning/chrome | + sed -n '/en-US/n;s/\(\([^-]*\)-\(.*\)\.jar\)/locale \2 \3 jar:chrome\/\1!\/locale\/\3\/\2\//p' \ + >>$RPM_BUILD_ROOT%{_libdir}/thunderbird-lightning/chrome.manifest + # ^^^ I'm going to burn in hell for this ^^^ +%endif +%endif + +# Permissions fixup +find $RPM_BUILD_ROOT -name '*.xpm' -o -name '*.js' | + xargs chmod 0644 mozilla/LICENSE +find $RPM_BUILD_ROOT -name '*.so' |xargs chmod 0755 + +%clean +rm -rf $RPM_BUILD_ROOT + + +%post +update-desktop-database %{_datadir}/applications +touch --no-create %{_datadir}/icons/hicolor +if [ -x %{_bindir}/gtk-update-icon-cache ]; then + %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : +fi + + +%postun +update-desktop-database %{_datadir}/applications +touch --no-create %{_datadir}/icons/hicolor +if [ -x %{_bindir}/gtk-update-icon-cache ]; then + %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : +fi + + +%if %with lightning +%post -n thunderbird-lightning +%{tbupdate_lightning} install || : +%{tbupdate_gdata} install || : + + +%preun -n thunderbird-lightning +if [ $1 = 0 ]; then + %{tbupdate_lightning} remove || : + %{tbupdate_gdata} remove || : +fi + + +%postun -n thunderbird-lightning +# This is needed not to reverse the effect of our preun, which +# is guarded against upgrade, but because of our triggerun, +# which is run on self-upgrade, though triggerpostun isn't +if [ $1 != 0 ]; then + %{tbupdate_lightning} install || : + %{tbupdate_gdata} install || : +fi + +%triggerin -n thunderbird-lightning -- thunderbird +%{tbupdate_lightning} install || : +%{tbupdate_gdata} install || : + +%triggerun -n thunderbird-lightning -- thunderbird +%{tbupdate_lightning} remove || : +%{tbupdate_gdata} remove || : + +%triggerpostun -n thunderbird-lightning -- thunderbird +# Guard against being run post-self-uninstall, even though that +# doesn't happen currently (see comment above) +if [ $1 != 0 ]; then + %{tbupdate_lightning} install || : + %{tbupdate_gdata} install || : +fi +%endif + + +%files +%defattr(-,root,root,-) +%doc mozilla/LEGAL mozilla/LICENSE mozilla/README.txt +%{progdir} +%{_bindir}/sunbird +%{_datadir}/applications/*.desktop +%{_datadir}/icons/hicolor/128x128/apps/sunbird.png + + +%if %with lightning +%files -n thunderbird-lightning +%doc mozilla/LEGAL mozilla/LICENSE mozilla/README.txt +%defattr(-,root,root,-) +%{_libdir}/thunderbird-lightning +%{_libdir}/thunderbird-lightning-gdata +%endif + + +%changelog +* Sat Jun 25 2010 Remi Collet 1.0-0.25.b2pre +- Rebuild for remi repo + +* Thu Jun 24 2010 Jan Horak - 1.0-0.25.b2pre +- Rebuild against Thunderbird 3.1 + +* Tue Jun 22 2010 Jan Horak - 1.0-0.24.b2pre +- Fixed Thunderbird requires version + +* Tue Jun 22 2010 Jan Horak - 1.0-0.23.b2pre +- Rebuild against Thunderbird 3.1 RC2 + +* Tue Mar 30 2010 Remi Collet 1.0-0.21.20090916hg.fc#.remi +- Rebuild for Fedora <= 10 + +* Tue Mar 30 2010 Jan Horak - 1.0-0.21.20090916hg +- Rebuild against new Thunderbird + +* Mon Mar 1 2010 Remi Collet 1.0-0.20.20090916hg.fc#.remi +- Rebuild for Fedora <= 10 + +* Mon Mar 1 2010 Jan Horak - 1.0-0.20.20090916hg +- Rebuild against new Thunderbird + +* Thu Feb 25 2010 Remi Collet 1.0-0.19.20090916hg.fc#.remi +- Rebuild for Fedora <= 10 + +* Thu Feb 25 2010 Jan Horak - 1.0-0.19.20090916hg +- Rebuild against new Thunderbird + +* Thu Jan 21 2010 Remi Collet 1.0-0.17.20090916hg.fc#.remi +- Rebuild for Fedora <= 10 + +* Thu Jan 21 2010 Jan Horak - 1.0-0.17.20090916hg +- Rebuild against new Thunderbird + +* Wed Nov 25 2009 Remi Collet 1.0-0.14.20090916hg.fc#.remi +- Rebuild for Fedora <= 10 + +* Wed Nov 25 2009 Jan Horak - 1.0-0.14.20090916hg +- Rebuild against new Thunderbird + +* Thu Sep 24 2009 Remi Collet 1.0-0.7.20090715hg.fc#.remi +- Rebuild for Fedora <= 10 + +* Tue Sep 22 2009 Jan Horak - 1.0-0.7.20090715hg +- Sync up with Thunderbird + +* Sun Aug 16 2009 Remi Collet 1.0-0.5.20090715hg.fc#.remi +- Rebuild for Fedora <= 10 + +* Sun Jun 28 2009 Lubomir Rintel - 1.0-0.5.20090715hg +- Sync up with Thunderbird + +* Sun Jun 28 2009 Lubomir Rintel - 1.0-0.5.20090513hg +- Sync up with Thunderbird +- Enable the Google Data Provider + +* Sat May 02 2009 Remi Collet 1.0-0.2.20090302hg.fc#.remi +- Rebuild for Fedora <= 10 + +* Wed Apr 29 2009 Lubomir Rintel - 1.0-0.2.20090302hg +- Fix the permissions for real now + +* Tue Apr 28 2009 Lubomir Rintel - 1.0-0.1.20090302hg +- Update to version matching current Thunderbird + +* Sun Mar 1 2009 Lubomir Rintel 0.9-6 +- Fix build with GCC 4.4 + +* Wed Feb 25 2009 Fedora Release Engineering - 0.9-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Mon Nov 24 2008 Lubomir Rintel 0.9-4 +- Disable lightning on EL-5 ppc, since there's no Desktop with thunderbird +- Fix summary + +* Thu Oct 2 2008 Lubomir Rintel 0.9-3 +- Attempt to fix the libical patch's timezone problem + +* Wed Sep 24 2008 Lubomir Rintel 0.9-2 +- Fix problem with symbol visibility and newer gcc I introduced with libical patch + +* Tue Sep 23 2008 Lubomir Rintel 0.9-1 +- 0.9 GOLD +- Fix use of system nss and nspr4 +- Link against system libical (#459923) +- Add language packs for lightning (#449770) + +* Sun Aug 24 2008 Lubomir Rintel 0.9-0.3.20080824cvs +- Newer snapshot closer to RC +- New langpacks +- Fix install root path + +* Mon Aug 11 2008 Lubomir Rintel 0.9-0.2.20080807cvs +- Get rid of relative symlinks +- Remove lignthing's libcalbasecomps.so provide +- Fix dependencies of scriptlets + +* Sun Aug 10 2008 Lubomir Rintel 0.9-0.1.20080807cvs +- First attempt at 0.9, CVS snapshot close to first RC +- Rewrite the requires generation, for it suffered bitrot + +* Mon May 19 2008 Lubomir Rintel 0.8-4 +- Rebuild for new hunspell + +* Tue Apr 08 2008 Lubomir Kundrak 0.8-3 +- Really fix lightning dependencies (#441340) +- Fix "da" and "it" lanugage packs (#441500) + +* Mon Apr 07 2008 Lubomir Kundrak 0.8-2 +- Blacklist dependencies of lightning on files included in tb (#441340) +- Fix the extension update scriptlet escaping + +* Fri Apr 04 2008 Lubomir Kundrak 0.8-1 +- 0.8 GA + +* Fri Apr 04 2008 Lubomir Kundrak 0.8-0.3.cvs20080331 +- Translations + +* Tue Apr 01 2008 Lubomir Kundrak 0.8-0.2.cvs20080331 +- Unbreak dependencies (hopefully) +- Try concurrent builds again, they seem to work now + +* Tue Apr 01 2008 Lubomir Kundrak 0.8-0.1.cvs20080331 +- Corrected license tag to mention all the applicable Licenses +- Use libxul from XULrunner +- Post 0.8 Release Candidate 1 +- Obsolete wcap subpackage -- got merged into mainline lightning + +* Sun Mar 09 2008 Lubomir Kundrak 0.7-10 +- Parralel makes were failing unpredictably + +* Thu Feb 28 2008 Lubomir Kundrak 0.7-9 +- Try to use the correct locale (#436693) + +* Mon Jan 21 2008 Lubomir Kundrak 0.7-8 +- Streamlined BuildRequires a bit +- Do not provide stuff that has to be provided by firefox +- Do not require what's in our fileset +- Removed redundant and useless Source0 without upstream + +* Thu Jan 03 2008 Lubomir Kundrak 0.7-7 +- Add patch to correct build with FORTIFY_SOURCE +- Replace the name in .desktop file with a more descriptive one +- Add translations to .desktop file + +* Sun Dec 30 2007 Aurelien Bompard 0.7-6 +- disable updater + +* Tue Dec 11 2007 Aurelien Bompard 0.7-5 +- fix debuginfo package + +* Tue Oct 30 2007 Aurelien Bompard 0.7-4 +- rename the mozilla-lightning subpackage to thunderbird-lightning + since it's a thunderbird extension +- create a "chrome.manifest" file to avoid "Chrome Registration Failed" message + +* Mon Oct 29 2007 Aurelien Bompard 0.7-3 +- be even more complicated: build the wcap-enabler extension + (really, it's just cut'n'paste) + +* Mon Oct 29 2007 Aurelien Bompard 0.7-2 +- split the lightning package +- use scriptlets and triggers based on the mugshot package + +* Sat Oct 27 2007 Aurelien Bompard 0.7-1 +- version 0.7 + +* Tue Sep 11 2007 Aurelien Bompard 0.5-3 +- minor spec cleanups +- build the Lightning extension +- add an option to build with official branding + +* Sun Sep 09 2007 Aurelien Bompard 0.5-2 +- fix icon + +* Wed Jul 25 2007 Aurelien Bompard 0.5-1 +- initial release -- cgit