diff options
| -rw-r--r-- | crashreporter-remove-static.patch | 2 | ||||
| -rw-r--r-- | mozilla-build-s390.patch | 8 | ||||
| -rw-r--r-- | mozilla-jemalloc.patch | 57 | ||||
| -rw-r--r-- | thunderbird-default.patch | 34 | ||||
| -rw-r--r-- | thunderbird-mozconfig | 5 | ||||
| -rw-r--r-- | thunderbird-open-browser.sh | 76 | ||||
| -rw-r--r-- | thunderbird-redhat-default-prefs.js | 5 | ||||
| -rw-r--r-- | thunderbird-shared-error.patch | 16 | ||||
| -rw-r--r-- | thunderbird.desktop | 7 | ||||
| -rw-r--r-- | thunderbird.png | bin | 21835 -> 0 bytes | |||
| -rw-r--r-- | thunderbird.sh.in | 32 | ||||
| -rw-r--r-- | thunderbird.spec | 215 | ||||
| -rw-r--r-- | xulrunner-1.9.2.1-build.patch | 4 | ||||
| -rw-r--r-- | xulrunner-2.0-os2cc.patch | 21 | 
14 files changed, 204 insertions, 278 deletions
diff --git a/crashreporter-remove-static.patch b/crashreporter-remove-static.patch index 9cc94fb..330ab1a 100644 --- a/crashreporter-remove-static.patch +++ b/crashreporter-remove-static.patch @@ -1,3 +1,5 @@ +Remove static build option from crashreporter to remove dependency on static libraries +  diff -up comm-1.9.2/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/Makefile.in.static comm-1.9.2/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/Makefile.in  --- comm-1.9.2/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/Makefile.in.static	2010-06-23 19:47:11.000000000 +0200  +++ comm-1.9.2/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/Makefile.in	2010-07-12 15:51:41.000000000 +0200 diff --git a/mozilla-build-s390.patch b/mozilla-build-s390.patch index efdc54e..2bfe1d5 100644 --- a/mozilla-build-s390.patch +++ b/mozilla-build-s390.patch @@ -1,8 +1,8 @@ -diff -up mozilla/js/src/jstl.h.old mozilla/js/src/jstl.h ---- mozilla/js/src/jstl.h.old	2010-03-10 10:01:51.000000000 +0100 -+++ mozilla/js/src/jstl.h	2010-03-10 12:24:55.000000000 +0100 +diff -up mozilla-1.9.2/js/src/jstl.h.s390 mozilla-1.9.2/js/src/jstl.h +--- mozilla-1.9.2/js/src/jstl.h.s390	2011-02-18 19:33:24.000000000 +0100 ++++ mozilla-1.9.2/js/src/jstl.h	2011-03-07 08:41:29.000000000 +0100  @@ -195,7 +195,6 @@ class ReentrancyGuard - static JS_ALWAYS_INLINE size_t + JS_ALWAYS_INLINE size_t   RoundUpPow2(size_t x)   {  -    typedef tl::StaticAssert<tl::IsSameType<size_t,JSUword>::result>::result _; diff --git a/mozilla-jemalloc.patch b/mozilla-jemalloc.patch index 2ef0b97..ed255c0 100644 --- a/mozilla-jemalloc.patch +++ b/mozilla-jemalloc.patch @@ -1,24 +1,47 @@ -diff -r f1af606531f5 memory/jemalloc/jemalloc.h ---- mozilla/memory/jemalloc/jemalloc.h	Sat Nov 22 20:22:22 2008 +0100 -+++ mozilla/memory/jemalloc/jemalloc.h	Mon Dec 01 16:53:06 2008 -0500 -@@ -45,14 +45,14 @@ +# HG changeset patch +# User Takanori MATSUURA <t.matsuu@gmail.com> +# Date 1267955626 -3600 +# Node ID 7a2802932585e73f9fc817497b1d323f820d8fc9 +# Parent  c2630edd612be6e301616c5219327560ea3955f5 +Bug 526389 - Skip redefinition of memory allocation functions for MacOS X and Linux. r=jasone + +diff --git mozilla/memory/jemalloc/jemalloc.h mozilla/memory/jemalloc/jemalloc.h +--- mozilla/memory/jemalloc/jemalloc.h ++++ mozilla/memory/jemalloc/jemalloc.h +@@ -74,26 +74,31 @@ typedef struct { + 	 * Current memory usage statistics. + 	 */ + 	size_t	mapped;		/* Bytes mapped (not necessarily committed). */ + 	size_t	committed;	/* Bytes committed (readable/writable). */ + 	size_t	allocated;	/* Bytes allocted (in use by application). */ + 	size_t	dirty;		/* Bytes dirty (committed unused pages). */   } jemalloc_stats_t; - #ifndef MOZ_MEMORY_DARWIN --void	*malloc(size_t size); --void	*valloc(size_t size); --void	*calloc(size_t num, size_t size); --void	*realloc(void *ptr, size_t size); --void	free(void *ptr); -+void	*malloc(size_t size)  __THROW __attribute_malloc__ __wur; -+void	*valloc(size_t size)  __THROW __attribute_malloc__ __wur; -+void	*calloc(size_t num, size_t size)  __THROW __attribute_malloc__ __wur; -+void	*realloc(void *ptr, size_t size)  __THROW __attribute_malloc__ __wur; -+void	free(void *ptr)  __THROW __attribute_malloc__ __wur; - #endif +-#ifndef MOZ_MEMORY_DARWIN ++/* Darwin and Linux already have memory allocation functions */ ++#if (!defined(MOZ_MEMORY_DARWIN) && !defined(MOZ_MEMORY_LINUX)) + void	*malloc(size_t size); + void	*valloc(size_t size); + void	*calloc(size_t num, size_t size); + void	*realloc(void *ptr, size_t size); + void	free(void *ptr); +-#endif ++int	posix_memalign(void **memptr, size_t alignment, size_t size); ++#endif /* MOZ_MEMORY_DARWIN, MOZ_MEMORY_LINUX */  -int	posix_memalign(void **memptr, size_t alignment, size_t size); -+int	posix_memalign(void **memptr, size_t alignment, size_t size)  __THROW __attribute_malloc__ __wur; ++/* Linux has memalign */ ++#if !defined(MOZ_MEMORY_LINUX)   void	*memalign(size_t alignment, size_t size); ++#endif /* MOZ_MEMORY_LINUX */ ++   size_t	malloc_usable_size(const void *ptr);   void	jemalloc_stats(jemalloc_stats_t *stats); +  + #ifdef __cplusplus + } /* extern "C" */ + #endif +  + #endif /* _JEMALLOC_H_ */ + + diff --git a/thunderbird-default.patch b/thunderbird-default.patch new file mode 100644 index 0000000..7ab2104 --- /dev/null +++ b/thunderbird-default.patch @@ -0,0 +1,34 @@ +diff -up comm-1.9.2/mozilla/browser/components/shell/src/nsGNOMEShellService.cpp.default comm-1.9.2/mozilla/browser/components/shell/src/nsGNOMEShellService.cpp +--- comm-1.9.2/mozilla/browser/components/shell/src/nsGNOMEShellService.cpp.default	2010-12-07 08:35:33.000000000 -0800 ++++ comm-1.9.2/mozilla/browser/components/shell/src/nsGNOMEShellService.cpp	2011-02-07 17:32:42.866343508 -0800 +@@ -104,8 +104,6 @@ static const char kDesktopColorKey[] = D + nsresult + nsGNOMEShellService::Init() + { +-  nsresult rv; +- +   // GConf and GnomeVFS _must_ be available, or we do not allow +   // CreateInstance to succeed. +  +@@ -120,19 +118,9 @@ nsGNOMEShellService::Init() +   // the locale encoding.  If it's not set, they use UTF-8. +   mUseLocaleFilenames = PR_GetEnv("G_BROKEN_FILENAMES") != nsnull; +  +-  nsCOMPtr<nsIProperties> dirSvc +-    (do_GetService("@mozilla.org/file/directory_service;1")); +-  NS_ENSURE_TRUE(dirSvc, NS_ERROR_NOT_AVAILABLE); +- +-  nsCOMPtr<nsILocalFile> appPath; +-  rv = dirSvc->Get(NS_XPCOM_CURRENT_PROCESS_DIR, NS_GET_IID(nsILocalFile), +-                   getter_AddRefs(appPath)); +-  NS_ENSURE_SUCCESS(rv, rv); ++  mAppPath.Assign(NS_LITERAL_CSTRING(MOZ_APP_NAME)); +  +-  rv = appPath->AppendNative(NS_LITERAL_CSTRING(MOZ_APP_NAME)); +-  NS_ENSURE_SUCCESS(rv, rv); +- +-  return appPath->GetNativePath(mAppPath); ++  return NS_OK; + } +  + NS_IMPL_ISUPPORTS1(nsGNOMEShellService, nsIShellService) diff --git a/thunderbird-mozconfig b/thunderbird-mozconfig index 3bbd52c..6b5fc85 100644 --- a/thunderbird-mozconfig +++ b/thunderbird-mozconfig @@ -1,6 +1,6 @@  mk_add_options MOZ_CO_PROJECT=mail  ac_add_options --enable-application=mail -mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-tb/ +mk_add_options MOZ_OBJDIR=@TOPSRCDIR@  mk_add_options AUTOCONF=autoconf-2.13  #ac_add_options --with-system-png @@ -15,7 +15,7 @@ ac_add_options --with-pthreads  ac_add_options --disable-tests  ac_add_options --disable-debug  ac_add_options --disable-installer -ac_add_options --enable-optimize="$RPM_OPT_FLAGS" +ac_add_options --enable-optimize  ac_add_options --enable-xinerama  ac_add_options --enable-default-toolkit=cairo-gtk2  ac_add_options --disable-xprint @@ -30,6 +30,7 @@ ac_add_options --disable-crashreporter  ac_add_options --disable-necko-wifi  ac_add_options --disable-updater  ac_add_options --enable-static +ac_add_options --enable-startup-notification  export BUILD_OFFICIAL=1  export MOZILLA_OFFICIAL=1 diff --git a/thunderbird-open-browser.sh b/thunderbird-open-browser.sh deleted file mode 100644 index c9cefb4..0000000 --- a/thunderbird-open-browser.sh +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/bash -## Copyright (C) 2004 Warren Togami <wtogami@redhat.com> -## Contributors:   David Hill <djh[at]ii.net> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -# -# open-browser.sh for MozillaThunderbird -# Release 5 -# -# This script is called by MozillaThunderbird in order to launch the web  -# browser specified in gconf key /desktop/gnome/url-handlers/http/command -# - -# Exit with Error Message -function error_exit() { -    echo "$1" -    if [ -a /usr/bin/zenity ]; then -        /usr/bin/zenity --error --text="$1" -    else -        xmessage "$1" & -    fi -    exit 1 -} - -# No URL specified so set to blank -url=$1 -if [ -z $url ]; then -    url=about:blank -fi - -# Use xdg-open if it exists (Gnome 2.6+ only) -if [ -f /usr/bin/xdg-open ]; then -    OUTPUT="$(/usr/bin/xdg-open "$url" 2>&1)" -    if [ $? -ne 0 ]; then -        error_exit "$OUTPUT" -    fi -    exit 0 -fi - -# Pull key from gconf, remove %s or "%s", trim leading & trailing spaces -GCONF=$(gconftool-2 -g /desktop/gnome/url-handlers/http/command 2>/dev/null | sed -e 's/%s//; s/\"\"//; s/^\ *//; s/\ *$//') -NEEDTERM=$(gconftool-2 -g /desktop/gnome/url-handlers/http/need-terminal 2>/dev/null | sed -e 's/^\ *//; s/\ *$//') - -# Check if browser really exists -which $GCONF 2> /dev/null > /dev/null -if [ $? -ne 0 ]; then -    error_exit "ERROR: The browser $GCONF specified in Preferences -> Preferred Applications does not exist." -fi - -# Check if text-mode browser -if [ "$NEEDTERM" == "true" ]; then -    PREFTERM=$(gconftool-2 -g /desktop/gnome/applications/terminal/exec 2>/dev/null | sed -e 's/^\ *//; s/\ *$//') -    TERMARGS=$(gconftool-2 -g /desktop/gnome/applications/terminal/exec_arg 2>/dev/null | sed -e 's/^\ *//; s/\ *$//') -    # Check if terminal exists -    which $PREFTERM 2> /dev/null > /dev/null -    if [ $? -ne 0 ]; then -        error_exit "ERROR: The terminal $GCONF specified in Preferences -> Preferred Applications does not exist." -    fi -    # Execute -    exec $PREFTERM $TERMARGS $GCONF "$url" -fi - -exec $GCONF "$url" - diff --git a/thunderbird-redhat-default-prefs.js b/thunderbird-redhat-default-prefs.js index a4bd7a9..eeb5c98 100644 --- a/thunderbird-redhat-default-prefs.js +++ b/thunderbird-redhat-default-prefs.js @@ -8,11 +8,6 @@ pref("intl.locale.matchOS", true);  pref("mail.shell.checkDefaultClient", false);  pref("toolkit.networkmanager.disable", false); -# Make hyperlinks work -pref("network.protocol-handler.app.http", "COMMAND"); -pref("network.protocol-handler.app.https", "COMMAND"); -pref("network.protocol-handler.app.ftp", "COMMAND"); -  # Disable global indexing by default  pref("mailnews.database.global.indexer.enabled", false); diff --git a/thunderbird-shared-error.patch b/thunderbird-shared-error.patch deleted file mode 100644 index 2869fd8..0000000 --- a/thunderbird-shared-error.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up comm-central/mail/installer/Makefile.in.shared-error comm-central/mail/installer/Makefile.in ---- comm-central/mail/installer/Makefile.in.shared-error	2009-09-16 13:47:43.000000000 +0200 -+++ comm-central/mail/installer/Makefile.in	2009-09-16 13:48:25.000000000 +0200 -@@ -95,9 +95,11 @@ endif - # mozconfig instead. - ifndef MAIL_PKG_SHARED - ifndef BUILD_STATIC_LIBS -+ifeq (BUILD_STATIC_LIBS, 1) - $(error you need an "--enable-static" build to package a build) - endif - endif -+endif -  - include $(MOZILLA_SRCDIR)/toolkit/mozapps/installer/packager.mk -  - diff --git a/thunderbird.desktop b/thunderbird.desktop index 81dda0f..37086d0 100644 --- a/thunderbird.desktop +++ b/thunderbird.desktop @@ -3,11 +3,12 @@ Version=1.0  Name=Thunderbird  GenericName=Email  Comment=Send and Receive Email -Exec=thunderbird +Exec=thunderbird %u  TryExec=thunderbird  Icon=thunderbird  Terminal=false  Type=Application  StartupWMClass=Thunderbird-bin -MimeType=message/rfc822; -StartupNotify=true
\ No newline at end of file +MimeType=message/rfc822;x-scheme-handler/mailto; +StartupNotify=true +Categories=Network;Email; diff --git a/thunderbird.png b/thunderbird.png Binary files differdeleted file mode 100644 index d1f9827..0000000 --- a/thunderbird.png +++ /dev/null diff --git a/thunderbird.sh.in b/thunderbird.sh.in index 0630fd3..cf8d3ec 100644 --- a/thunderbird.sh.in +++ b/thunderbird.sh.in @@ -99,26 +99,20 @@ if [ $MOZILLA_DOWN -ne 0 ]; then      SHORTMOZLOCALE=`echo $CURRENT_LOCALE | sed "s|_\([^.]*\).*||g"`      MOZLOCALE=`echo $CURRENT_LOCALE | sed "s|_\([^.]*\).*|-\1|g"` -    # Try to link global langpacks to an extension directory -    if [ -f $MOZ_LANGPACKS_DIR/langpack-${SHORTMOZLOCALE}@thunderbird.mozilla.org/chrome/$SHORTMOZLOCALE.jar ]; then -        if [ -d $MOZ_EXTENSIONS_PROFILE_DIR/langpack-${SHORTMOZLOCALE}@thunderbird.mozilla.org ]; then -            rmdir "$MOZ_EXTENSIONS_PROFILE_DIR/langpack-${SHORTMOZLOCALE}@thunderbird.mozilla.org" > /dev/null 2>&1 -        fi  -        if ! [ -e $MOZ_EXTENSIONS_PROFILE_DIR/langpack-${SHORTMOZLOCALE}@thunderbird.mozilla.org ]; then -            ln -s $MOZ_LANGPACKS_DIR/langpack-${SHORTMOZLOCALE}@thunderbird.mozilla.org \ -                  $MOZ_EXTENSIONS_PROFILE_DIR/langpack-${SHORTMOZLOCALE}@thunderbird.mozilla.org -            echo "$MOZ_EXTENSIONS_PROFILE_DIR/langpack-${SHORTMOZLOCALE}@thunderbird.mozilla.org" > $FEDORA_LANGPACK_CONFIG +    function create_langpack_link() { +        local language=$* +        local langpack=langpack-${language}@thunderbird.mozilla.org +        if [ -f $MOZ_LANGPACKS_DIR/$langpack/chrome.manifest ]; then +            rm -rf $MOZ_EXTENSIONS_PROFILE_DIR/$langpack +            ln -s $MOZ_LANGPACKS_DIR/$langpack \ +                  $MOZ_EXTENSIONS_PROFILE_DIR/$langpack +            echo $MOZ_EXTENSIONS_PROFILE_DIR/$langpack > $FEDORA_LANGPACK_CONFIG +            return 0          fi -    elif [ -f $MOZ_LANGPACKS_DIR/langpack-${MOZLOCALE}@thunderbird.mozilla.org/chrome/$MOZLOCALE.jar ]; then -        if [ -d $MOZ_EXTENSIONS_PROFILE_DIR/langpack-${MOZLOCALE}@thunderbird.mozilla.org ]; then -            rmdir "$MOZ_EXTENSIONS_PROFILE_DIR/langpack-${MOZLOCALE}@thunderbird.mozilla.org" > /dev/null 2>&1 -        fi  -        if ! [ -e $MOZ_EXTENSIONS_PROFILE_DIR/langpack-${MOZLOCALE}@thunderbird.mozilla.org ]; then -            ln -s $MOZ_LANGPACKS_DIR/langpack-${MOZLOCALE}@thunderbird.mozilla.org \ -                  $MOZ_EXTENSIONS_PROFILE_DIR/langpack-${MOZLOCALE}@thunderbird.mozilla.org -            echo "$MOZ_EXTENSIONS_PROFILE_DIR/langpack-${MOZLOCALE}@thunderbird.mozilla.org" > $FEDORA_LANGPACK_CONFIG -        fi -    fi +        return 1 +    } + +    create_langpack_link $SHORTMOZLOCALE || create_langpack_link $MOZLOCALE || true  fi  exec $MOZ_PROGRAM "$@" diff --git a/thunderbird.spec b/thunderbird.spec index cbff333..3759f19 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -6,13 +6,7 @@  %define sqlite_version 3.6.22  %define libnotify_version 0.4  %define build_langpacks 1 -%define thunderbird_version 3.1.9 -%define moz_objdir objdir-tb  %define thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\}  -%define with_lightning_extension 1 -%define lightning_release 0.40.b3pre -%define lightning_extname %{_libdir}/mozilla/extensions/{3550f703-e582-4d05-9a08-453d09bdfdc6}/{e2fda1a4-762b-4020-b5ad-a41df1933103} -%define gdata_extname %{_libdir}/mozilla/extensions/{3550f703-e582-4d05-9a08-453d09bdfdc6}/{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}  # The tarball is pretty inconsistent with directory structure.  # Sometimes there is a top level directory.  That goes here. @@ -35,7 +29,7 @@  Summary:        Mozilla Thunderbird mail/newsgroup client  Name:           thunderbird -Version:        %{thunderbird_version} +Version:        3.1.10  Release:        1%{?dist}  URL:            http://www.mozilla.org/projects/thunderbird/  License:        MPLv1.1 or GPLv2+ or LGPLv2+ @@ -47,40 +41,27 @@ Group:          Applications/Internet  %endif  Source0:        %{tarball}  %if %{build_langpacks} -# Language package archive is build by RH -Source1:        thunderbird-langpacks-%{version}-20110305.tar.bz2 +Source1:        thunderbird-langpacks-%{version}-20110430.tar.bz2  %endif -Source4:        http://releases.mozilla.org/pub/mozilla.org/calendar/lightning/releases/1.0b2/linux-i686/lightning.xpi -Source5:        http://releases.mozilla.org/pub/mozilla.org/calendar/lightning/releases/1.0b2/linux-i686/gdata-provider.xpi -# Config file for compilation  Source10:       thunderbird-mozconfig -# Config file for branded compilation  Source11:       thunderbird-mozconfig-branded -# Default preferences for Thunderbird  Source12:       thunderbird-redhat-default-prefs.js -# Config file for debug builds  Source13:       thunderbird-mozconfig-debuginfo -# Desktop file  Source20:       thunderbird.desktop -# TB execute script  Source21:       thunderbird.sh.in -# Script called when user click on link in message -Source30:       thunderbird-open-browser.sh -# Finds requirements provided outside of the current file set  Source100:      find-external-requires -# Fix for version issues +# Mozilla (XULRunner) patches  Patch0:         thunderbird-version.patch -# Fix for jemalloc -Patch1:         mozilla-jemalloc.patch -# Fixes gcc complain that nsFrame::delete is protected -Patch4:         xulrunner-1.9.2.1-build.patch -Patch6:         mozilla-libjpeg-turbo.patch -Patch7:         mozilla-missing-cflags.patch -Patch8:         mozilla-build-s390.patch -# Remove static build option from crashreporter to remove dependency on static libraries -Patch9:         crashreporter-remove-static.patch +Patch1:         thunderbird-default.patch +Patch2:         mozilla-jemalloc.patch +Patch3:         xulrunner-1.9.2.1-build.patch +Patch4:         mozilla-libjpeg-turbo.patch +Patch5:         mozilla-missing-cflags.patch +Patch6:         mozilla-build-s390.patch +Patch7:         crashreporter-remove-static.patch +Patch9:         xulrunner-2.0-os2cc.patch  %if %{official_branding}  # Required by Mozilla Corporation @@ -156,32 +137,32 @@ AutoProv: 0  %description  Mozilla Thunderbird is a standalone mail and newsgroup client. -%if %{with_lightning_extension} -%package -n thunderbird-lightning -Summary:        The calendar extension to Thunderbird -Version:        1.0 -Release:        %{lightning_release}%{?dist} -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. - +%if %{enable_mozilla_crashreporter} +%global moz_debug_prefix %{_prefix}/lib/debug +%global moz_debug_dir %{moz_debug_prefix}%{mozappdir} +%global uname_m %(uname -m) +%global symbols_file_name %{name}-%{version}.en-US.%{_os}-%{uname_m}.crashreporter-symbols.zip +%global symbols_file_path %{moz_debug_dir}/%{symbols_file_name} +%global _find_debuginfo_opts -p %{symbols_file_path} -o debugcrashreporter.list +%global crashreporter_pkg_name mozilla-crashreporter-%{name}-debuginfo +%package -n %{crashreporter_pkg_name} +Summary: Debugging symbols used by Mozilla's crash reporter servers +Group: Development/Debug +%description -n %{crashreporter_pkg_name} +This package provides debug information for XULRunner, for use by +Mozilla's crash reporter servers.  If you are trying to locally +debug %{name}, you want to install %{name}-debuginfo instead. +%files -n %{crashreporter_pkg_name} -f debugcrashreporter.list +%defattr(-,root,root)  %endif  %prep -echo CIBLE = %{name}-%{thunderbird_version}-%{release} +echo CIBLE = %{name}-%{version}-%{release}  [ -f %{SOURCE1} ] || exit 1  %setup -q -c -sed -e "s/^Name=.*/Name=Thunderbird %{thunderbird_version} %{?relcan}/" \ +sed -e "s/^Name=.*/Name=Thunderbird %{version} %{?relcan}/" \      -e "s/thunderbird/%{name}/" \      %{SOURCE20} | tee %{name}.desktop @@ -191,17 +172,21 @@ sed -e 's/__RPM_VERSION_INTERNAL__/%{version_internal}/' %{P:%%PATCH0} \      > version.patch  %{__patch} -p1 -b --suffix .version --fuzz=0 < version.patch -%patch1 -p0 -b .jemalloc -%patch4 -p1 -b .protected +# Mozilla (XULRunner) patches +cd mozilla +%patch1 -p2 -b .default-application +%patch2 -p1 -b .jemalloc +%patch3 -p2 -b .protected  %if %{fedora} >= 14 -%patch6 -p1 -b .turbo +%patch4 -p2 -b .turbo  %endif -%patch7 -p1 -b .mozcflags +%patch5 -p2 -b .mozcflags  %ifarch s390 -%patch8 -p0 -b .s390 +%patch6 -p1 -b .s390  %endif -%patch9 -p1 -b .static - +%patch7 -p2 -b .static +%patch9 -p1 -b .os2cc +cd ..  %if %{official_branding}  # Required by Mozilla Corporation @@ -211,8 +196,8 @@ sed -e 's/__RPM_VERSION_INTERNAL__/%{version_internal}/' %{P:%%PATCH0} \  %endif -  %{__rm} -f .mozconfig +#{__cp} %{SOURCE10} .mozconfig  cat %{SOURCE10} 		\  %if %{fedora} < 15    | grep -v system-sqlite 	\ @@ -244,16 +229,12 @@ ac_add_options --enable-system-sqlite  %endif  EOF -#{__cp} %{SOURCE10} .mozconfig  %if %{official_branding}  %{__cat} %{SOURCE11} >> .mozconfig  %endif  %if %{enable_mozilla_crashreporter}  %{__cat} %{SOURCE13} >> .mozconfig  %endif -%if %{with_lightning_extension} -echo "ac_add_options --enable-calendar" >> .mozconfig -%endif  #=============================================================================== @@ -263,11 +244,18 @@ cd %{tarballdir}  INTERNAL_GECKO=%{version_internal}  MOZ_APP_DIR=%{mozappdir} -# Build with -Os as it helps the browser; also, don't override mozilla's warning -# level; they use -Wall but disable a few warnings that show up _everywhere_ -MOZ_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | %{__sed} -e 's/-O2/-Os/' -e 's/-Wall//') +# -fpermissive is needed to build with gcc 4.6+ which has become stricter +# +# Mozilla builds with -Wall with exception of a few warnings which show up +# everywhere in the code; so, don't override that. +# +# Disable C++ exceptions since Mozilla code is not exception-safe +#  +MOZ_OPT_FLAGS=$(echo "$RPM_OPT_FLAGS -fpermissive" | \ +                      %{__sed} -e 's/-Wall//' -e 's/-fexceptions/-fno-exceptions/g') +export CFLAGS=$MOZ_OPT_FLAGS +export CXXFLAGS=$MOZ_OPT_FLAGS -export RPM_OPT_FLAGS=$MOZ_OPT_FLAGS  export PREFIX='%{_prefix}'  export LIBDIR='%{_libdir}' @@ -284,7 +272,6 @@ make -f client.mk build  # create debuginfo for crash-stats.mozilla.com  %if %{enable_mozilla_crashreporter} -cd %{moz_objdir}  make buildsymbols  %endif @@ -299,29 +286,14 @@ INTERNAL_GECKO=%{version_internal}  INTERNAL_APP_NAME=%{name}-${INTERNAL_GECKO}  MOZ_APP_DIR=%{_libdir}/${INTERNAL_APP_NAME} -cd %{moz_objdir}  DESTDIR=$RPM_BUILD_ROOT make install  # install icons -cd - -%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps -%{__cp} other-licenses/branding/%{name}/mailicon16.png \ -        $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/thunderbird.png -%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/22x22/apps -%{__cp} other-licenses/branding/%{name}/mailicon22.png \ -        $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/22x22/apps/thunderbird.png -%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/apps -%{__cp} other-licenses/branding/%{name}/mailicon24.png \ -        $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/apps/thunderbird.png -%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps -%{__cp} other-licenses/branding/%{name}/mailicon32.png \ -        $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/thunderbird.png -%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps -%{__cp} other-licenses/branding/%{name}/mailicon48.png \ -        $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/thunderbird.png -%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/256x256/apps -%{__cp} other-licenses/branding/%{name}/mailicon256.png \ -        $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/256x256/apps/thunderbird.png +for s in 16 22 24 32 48 256; do +    %{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps +    %{__cp} -p other-licenses/branding/%{name}/mailicon${s}.png \ +               $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/thunderbird.png +done  desktop-file-install --vendor mozilla \ @@ -337,13 +309,9 @@ rm -f $RPM_BUILD_ROOT/%{_bindir}/thunderbird    $RPM_BUILD_ROOT%{_bindir}/thunderbird  %{__chmod} 755 $RPM_BUILD_ROOT/%{_bindir}/thunderbird -install -Dm755 %{SOURCE30} $RPM_BUILD_ROOT/%{mozappdir}/open-browser.sh -%{__sed} -i -e 's|LIBDIR|%{_libdir}|g' $RPM_BUILD_ROOT/%{mozappdir}/open-browser.sh -  # set up our default preferences -%{__cat} %{SOURCE12} | %{__sed} -e 's,THUNDERBIRD_RPM_VR,fc%{fedora},g' \ -                                -e 's,Fedora,Remi,g' \ -                                -e 's,COMMAND,%{mozappdir}/open-browser.sh,g' > \ +%{__cat} %{SOURCE12} | %{__sed} -e 's,Fedora,Remi,g' \ +                                -e 's,THUNDERBIRD_RPM_VR,fc%{fedora},g' > \          $RPM_BUILD_ROOT/rh-default-prefs  %{__install} -D $RPM_BUILD_ROOT/rh-default-prefs $RPM_BUILD_ROOT/%{mozappdir}/greprefs/all-remi.js  %{__install} -D $RPM_BUILD_ROOT/rh-default-prefs $RPM_BUILD_ROOT/%{mozappdir}/defaults/pref/all-remi.js @@ -408,43 +376,10 @@ touch $RPM_BUILD_ROOT%{mozappdir}/components/xpti.dat  # Add debuginfo for crash-stats.mozilla.com   %if %{enable_mozilla_crashreporter} -# Debug symbols are stored in /usr/lib even in x86_64 arch -DEBUG_LIB_DIR=`echo %{_libdir}|sed -e "s/lib64/lib/"` -mkdir -p $RPM_BUILD_ROOT$DEBUG_LIB_DIR/debug%{mozappdir} -cp objdir-tb/mozilla/dist/%{name}-%{thunderbird_version}*.crashreporter-symbols.zip $RPM_BUILD_ROOT$DEBUG_LIB_DIR/debug%{mozappdir} +%{__mkdir_p} $RPM_BUILD_ROOT/%{moz_debug_dir} +%{__cp} mozilla/dist/%{symbols_file_name} $RPM_BUILD_ROOT/%{moz_debug_dir}  %endif -%if %{with_lightning_extension} -# Avoid "Chrome Registration Failed" message on first startup and extension installation -mkdir -p $RPM_BUILD_ROOT%{lightning_extname} -touch $RPM_BUILD_ROOT%{lightning_extname}/chrome.manifest -mkdir -p $RPM_BUILD_ROOT%{gdata_extname} -touch $RPM_BUILD_ROOT%{gdata_extname}/chrome.manifest - -# Lightning and GData provider for it -unzip -qod $RPM_BUILD_ROOT%{lightning_extname} objdir-tb/mozilla/dist/xpi-stage/lightning.xpi -unzip -qod $RPM_BUILD_ROOT%{gdata_extname} objdir-tb/mozilla/dist/xpi-stage/gdata-provider.xpi - -# Unpack lightning language packs, except en_US -unzip -l %{SOURCE4} '*.jar' | -        awk '/-[^\/]*\.jar/ && !/en-US/ {print $4}' | -        xargs unzip -qod $RPM_BUILD_ROOT%{lightning_extname}  %{SOURCE4} - -# Register them -ls $RPM_BUILD_ROOT%{lightning_extname}/chrome | -        sed -n '/en-US/n;s/\(\([^-]*\)-\(.*\)\.jar\)/locale \2 \3 jar:chrome\/\1!\/locale\/\3\/\2\//p' \ -        | tee -a $RPM_BUILD_ROOT%{lightning_extname}/chrome.manifest - -# Unpack gdata language packs, except en_US -unzip -l %{SOURCE5} '*.jar' | -        awk '/-[^\/]*\.jar/ && !/en-US/ {print $4}' | -        xargs unzip -qod $RPM_BUILD_ROOT%{gdata_extname} %{SOURCE5} - -# Register them -ls $RPM_BUILD_ROOT%{gdata_extname}/chrome | -        sed -n '/en-US/n;s/\(\([^-]*\)-\(.*\)\.jar\)/locale \2 \3 jar:chrome\/\1!\/locale\/\3\/\2\//p' \ -        | tee -a $RPM_BUILD_ROOT%{gdata_extname}/chrome.manifest -%endif  # RC - provide account type  [ -f   $RPM_BUILD_ROOT%{mozappdir}/isp/gmail.rdf ] || \ @@ -521,7 +456,6 @@ fi  %{mozappdir}/greprefs  %{mozappdir}/isp  %{mozappdir}/mozilla-xremote-client -%{mozappdir}/open-browser.sh  %{mozappdir}/res  %{mozappdir}/run-mozilla.sh  %{mozappdir}/thunderbird-bin @@ -551,17 +485,26 @@ fi  %{mozappdir}/Throbber-small.gif  %endif -%if %{with_lightning_extension} -%files -n thunderbird-lightning -%doc %{tarballdir}/mozilla/LEGAL %{tarballdir}/mozilla/LICENSE %{tarballdir}/mozilla/README.txt -%defattr(-,root,root,-) -%{lightning_extname} -%{gdata_extname} -%endif -  #===============================================================================  %changelog +* Sat Apr 30 2011 Remi Collet <rpms@famillecollet.com> 3.1.10-1 +- Thunderbird 3.1.10 + +* Thu Apr 28 2011 Jan Horak <jhorak@redhat.com> - 3.1.10-1 +- Update to 3.1.10 + +* Thu Apr 21 2011 Christopher Aillon <caillon@redhat.com> - 3.1.9-7 +- Make gvfs-open launch a compose window (salimma) +- Spec file cleanups (salimma, caillon) +- Split out mozilla crashreporter symbols to its own debuginfo package (caillon) + +* Fri Apr  1 2011 Orion Poplawski <orion@cora.nwra.com> - 3.1.9-5 +- Enable startup notification + +* Mon Mar  7 2011 Jan Horak <jhorak@redhat.com> - 3.1.9-1 +- Update to 3.1.9 +  * Sat Mar  5 2011 Remi Collet <rpms@famillecollet.com> 3.1.9-1  - Thunderbird 3.1.9 diff --git a/xulrunner-1.9.2.1-build.patch b/xulrunner-1.9.2.1-build.patch index 4d9ee43..1d32a0c 100644 --- a/xulrunner-1.9.2.1-build.patch +++ b/xulrunner-1.9.2.1-build.patch @@ -1,3 +1,7 @@ +XXX FIXME +GCC complains that nsFrame::delete is protected +..but this really needs to get solved a better way... +  diff -up xulrunner-1.9.2.1/mozilla-1.9.2/layout/generic/nsFrame.h.old xulrunner-1.9.2.1/mozilla-1.9.2/layout/generic/nsFrame.h  --- xulrunner-1.9.2.1/mozilla/layout/generic/nsFrame.h.old	2009-11-11 15:34:51.000000000 +0100  +++ xulrunner-1.9.2.1/mozilla/layout/generic/nsFrame.h	2009-11-11 15:33:09.000000000 +0100 diff --git a/xulrunner-2.0-os2cc.patch b/xulrunner-2.0-os2cc.patch new file mode 100644 index 0000000..3aa5286 --- /dev/null +++ b/xulrunner-2.0-os2cc.patch @@ -0,0 +1,21 @@ +https://bugzilla.mozilla.org/show_bug.cgi?id=628252 + +diff -r b5ee327bf536 gfx/ots/src/os2.cc +--- a/gfx/ots/src/os2.cc	Fri Jan 28 19:59:59 2011 +0100 ++++ b/gfx/ots/src/os2.cc	Sat Jan 29 10:56:30 2011 -0800 +@@ -1,12 +1,14 @@ + // Copyright (c) 2009 The Chromium Authors. All rights reserved. + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. +  ++#include <cstddef> ++ + #include "os2.h" +  + #include "head.h" +  + // OS/2 - OS/2 and Windows Metrics + // http://www.microsoft.com/opentype/otspec/os2.htm +  + namespace ots { +  | 
