[seamonkey/el6] Update non-ESR stuff to 2.29

Dmitry Butskoy buc at fedoraproject.org
Sat Sep 20 18:03:13 UTC 2014


commit 795b2a5651211c3a0010927c8237ded8fd5ef706
Author: buc <buc at grad.stu.neva.ru>
Date:   Sat Sep 20 22:06:47 2014 +0400

    Update non-ESR stuff to 2.29

 firefox-32-baseline-disable.patch          |   13 ++
 firefox-32-mozilla-858919.patch            |  272 ++++++++++++++++++++++++++++
 firefox-32-rhbz-966424.patch               |   23 +++
 seamonkey-2.26-enable-addons.patch         |   26 ---
 seamonkey-2.26-nspr_4_10_2.patch           |   64 -------
 seamonkey-2.26-nss_3_15_3.patch            |  106 -----------
 seamonkey-2.29-c++0x.patch                 |   49 +++++
 seamonkey-2.29-enable-addons.patch         |   40 ++++
 seamonkey-2.29-nss_3_16_1.patch            |   12 ++
 seamonkey.spec-2.26 => seamonkey.spec-2.29 |   51 ++++--
 10 files changed, 443 insertions(+), 213 deletions(-)
---
diff --git a/firefox-32-baseline-disable.patch b/firefox-32-baseline-disable.patch
new file mode 100644
index 0000000..806d378
--- /dev/null
+++ b/firefox-32-baseline-disable.patch
@@ -0,0 +1,13 @@
+diff -up firefox-32.0.1/mozilla-release/media/webrtc/trunk/Makefile.old firefox-32.0.1/mozilla-release/media/webrtc/trunk/Makefile
+diff -up firefox-32.0.1/mozilla-release/modules/libpref/src/init/all.js.old firefox-32.0.1/mozilla-release/modules/libpref/src/init/all.js
+--- firefox-32.0.1/mozilla-release/modules/libpref/src/init/all.js.old	2014-09-12 00:25:45.000000000 +0200
++++ firefox-32.0.1/mozilla-release/modules/libpref/src/init/all.js	2014-09-16 14:27:52.447743192 +0200
+@@ -844,7 +844,7 @@ pref("javascript.options.strict",
+ #ifdef DEBUG
+ pref("javascript.options.strict.debug",     true);
+ #endif
+-pref("javascript.options.baselinejit",      true);
++pref("javascript.options.baselinejit",      false);
+ pref("javascript.options.ion",              true);
+ pref("javascript.options.asmjs",            true);
+ pref("javascript.options.native_regexp",    true);
diff --git a/firefox-32-mozilla-858919.patch b/firefox-32-mozilla-858919.patch
new file mode 100644
index 0000000..6e62b81
--- /dev/null
+++ b/firefox-32-mozilla-858919.patch
@@ -0,0 +1,272 @@
+# HG changeset patch
+# Parent b17cad2d1e5e6bcb5a10096d51d07ea8a79b6921
+# User Martin Stransky <stransky at redhat.com>
+Bug 858919 - Add support for libnotify calls which was removed for new notification API. r=karlt
+
+diff --git a/toolkit/system/gnome/moz.build b/toolkit/system/gnome/moz.build
+--- a/toolkit/system/gnome/moz.build
++++ b/toolkit/system/gnome/moz.build
+@@ -1,15 +1,17 @@
+ # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
+ # vim: set filetype=python:
+ # This Source Code Form is subject to the terms of the Mozilla Public
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ 
+ SOURCES += [
++    'nsAlertsIconListener.cpp',
++    'nsAlertsService.cpp',
+     'nsGnomeModule.cpp',
+ ]
+ 
+ if CONFIG['MOZ_ENABLE_GCONF']:
+     SOURCES += [
+         'nsGConfService.cpp',
+     ]
+ 
+diff --git a/toolkit/system/gnome/nsAlertsIconListener.h b/toolkit/system/gnome/nsAlertsIconListener.h
+new file mode 100644
+--- /dev/null
++++ b/toolkit/system/gnome/nsAlertsIconListener.h
+@@ -0,0 +1,89 @@
++/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
++/* This Source Code Form is subject to the terms of the Mozilla Public
++ * License, v. 2.0. If a copy of the MPL was not distributed with this
++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
++
++#ifndef nsAlertsIconListener_h__
++#define nsAlertsIconListener_h__
++
++#include "nsCOMPtr.h"
++#include "imgINotificationObserver.h"
++#include "nsStringAPI.h"
++#include "nsIObserver.h"
++#include "nsWeakReference.h"
++
++#include <gdk-pixbuf/gdk-pixbuf.h>
++
++class imgIRequest;
++
++struct NotifyNotification;
++
++class nsAlertsIconListener : public imgINotificationObserver,
++                             public nsIObserver,
++                             public nsSupportsWeakReference
++{
++public:
++  NS_DECL_ISUPPORTS
++  NS_DECL_IMGINOTIFICATIONOBSERVER
++  NS_DECL_NSIOBSERVER
++
++  nsAlertsIconListener();
++
++  nsresult InitAlertAsync(const nsAString & aImageUrl,
++                          const nsAString & aAlertTitle, 
++                          const nsAString & aAlertText,
++                          bool aAlertTextClickable,
++                          const nsAString & aAlertCookie,
++                          nsIObserver * aAlertListener);
++
++  void SendCallback();
++  void SendClosed();
++
++protected:
++  virtual ~nsAlertsIconListener();
++
++  nsresult OnStopRequest(imgIRequest* aRequest);
++  nsresult OnStopFrame(imgIRequest* aRequest);
++
++  /**
++   * The only difference between libnotify.so.4 and libnotify.so.1 for these symbols
++   * is that notify_notification_new takes three arguments in libnotify.so.4 and
++   * four in libnotify.so.1.
++   * Passing the fourth argument as NULL is binary compatible.
++   */
++  typedef void (*NotifyActionCallback)(NotifyNotification*, char*, gpointer);
++  typedef bool (*notify_is_initted_t)(void);
++  typedef bool (*notify_init_t)(const char*);
++  typedef GList* (*notify_get_server_caps_t)(void);
++  typedef NotifyNotification* (*notify_notification_new_t)(const char*, const char*, const char*, const char*);
++  typedef bool (*notify_notification_show_t)(void*, char*);
++  typedef void (*notify_notification_set_icon_from_pixbuf_t)(void*, GdkPixbuf*);
++  typedef void (*notify_notification_add_action_t)(void*, const char*, const char*, NotifyActionCallback, gpointer, GFreeFunc);
++
++  nsCOMPtr<imgIRequest> mIconRequest;
++  nsCString mAlertTitle;
++  nsCString mAlertText;
++
++  nsCOMPtr<nsIObserver> mAlertListener;
++  nsString mAlertCookie;
++
++  bool mLoadedFrame;
++  bool mAlertHasAction;
++
++  static void* libNotifyHandle;
++  static bool libNotifyNotAvail;
++  static notify_is_initted_t notify_is_initted;
++  static notify_init_t notify_init;
++  static notify_get_server_caps_t notify_get_server_caps;
++  static notify_notification_new_t notify_notification_new;
++  static notify_notification_show_t notify_notification_show;
++  static notify_notification_set_icon_from_pixbuf_t notify_notification_set_icon_from_pixbuf;
++  static notify_notification_add_action_t notify_notification_add_action;
++  NotifyNotification* mNotification;
++  gulong mClosureHandler;
++
++  nsresult StartRequest(const nsAString & aImageUrl);
++  nsresult ShowAlert(GdkPixbuf* aPixbuf);
++};
++
++#endif
+diff --git a/toolkit/system/gnome/nsAlertsService.cpp b/toolkit/system/gnome/nsAlertsService.cpp
+new file mode 100644
+--- /dev/null
++++ b/toolkit/system/gnome/nsAlertsService.cpp
+@@ -0,0 +1,53 @@
++/* -*- Mode: C++; tab-width: 2; indent-tabs-mode:nil; c-basic-offset: 2 -*- */
++/* This Source Code Form is subject to the terms of the Mozilla Public
++ * License, v. 2.0. If a copy of the MPL was not distributed with this
++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
++
++#include "nsXULAppAPI.h"
++#include "nsAlertsService.h"
++#include "nsAlertsIconListener.h"
++#include "nsAutoPtr.h"
++
++NS_IMPL_ADDREF(nsAlertsService)
++NS_IMPL_RELEASE(nsAlertsService)
++
++NS_INTERFACE_MAP_BEGIN(nsAlertsService)
++   NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIAlertsService)
++   NS_INTERFACE_MAP_ENTRY(nsIAlertsService)
++NS_INTERFACE_MAP_END_THREADSAFE
++
++nsAlertsService::nsAlertsService()
++{
++}
++
++nsAlertsService::~nsAlertsService()
++{}
++
++nsresult
++nsAlertsService::Init()
++{
++  return NS_OK;
++}
++
++NS_IMETHODIMP nsAlertsService::ShowAlertNotification(const nsAString & aImageUrl, const nsAString & aAlertTitle, 
++                                                     const nsAString & aAlertText, bool aAlertTextClickable,
++                                                     const nsAString & aAlertCookie,
++                                                     nsIObserver * aAlertListener,
++                                                     const nsAString & aAlertName,
++                                                     const nsAString & aBidi,
++                                                     const nsAString & aLang,
++                                                     nsIPrincipal * aPrincipal)
++{
++  nsRefPtr<nsAlertsIconListener> alertListener = new nsAlertsIconListener();
++  if (!alertListener)
++    return NS_ERROR_OUT_OF_MEMORY;
++
++  return alertListener->InitAlertAsync(aImageUrl, aAlertTitle, aAlertText, aAlertTextClickable,
++                                       aAlertCookie, aAlertListener);
++}
++
++NS_IMETHODIMP nsAlertsService::CloseAlert(const nsAString& aAlertName,
++                                          nsIPrincipal* aPrincipal)
++{
++  return NS_ERROR_NOT_IMPLEMENTED;
++}
+diff --git a/toolkit/system/gnome/nsAlertsService.h b/toolkit/system/gnome/nsAlertsService.h
+new file mode 100644
+--- /dev/null
++++ b/toolkit/system/gnome/nsAlertsService.h
+@@ -0,0 +1,27 @@
++/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
++/* This Source Code Form is subject to the terms of the Mozilla Public
++ * License, v. 2.0. If a copy of the MPL was not distributed with this
++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
++
++#ifndef nsAlertsService_h__
++#define nsAlertsService_h__
++
++#include "nsIAlertsService.h"
++#include "nsCOMPtr.h"
++
++class nsAlertsService : public nsIAlertsService
++{
++public:
++  NS_DECL_NSIALERTSSERVICE
++  NS_DECL_ISUPPORTS
++
++  nsAlertsService();
++
++  nsresult Init();
++
++protected:
++  virtual ~nsAlertsService();
++
++};
++
++#endif /* nsAlertsService_h__ */
+diff --git a/toolkit/system/gnome/nsGnomeModule.cpp b/toolkit/system/gnome/nsGnomeModule.cpp
+--- a/toolkit/system/gnome/nsGnomeModule.cpp
++++ b/toolkit/system/gnome/nsGnomeModule.cpp
+@@ -17,53 +17,58 @@ NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsGC
+ NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsGnomeVFSService, Init)
+ #endif
+ #ifdef MOZ_ENABLE_GIO
+ #include "nsGIOService.h"
+ #include "nsGSettingsService.h"
+ NS_GENERIC_FACTORY_CONSTRUCTOR(nsGIOService)
+ NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsGSettingsService, Init)
+ #endif
++#include "nsAlertsService.h"
++NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsAlertsService, Init)
+ 
+ #ifdef MOZ_ENABLE_GCONF
+ NS_DEFINE_NAMED_CID(NS_GCONFSERVICE_CID);
+ #endif
+ #ifdef MOZ_ENABLE_GNOMEVFS
+ NS_DEFINE_NAMED_CID(NS_GNOMEVFSSERVICE_CID);
+ #endif
+ #ifdef MOZ_ENABLE_GIO
+ NS_DEFINE_NAMED_CID(NS_GIOSERVICE_CID);
+ NS_DEFINE_NAMED_CID(NS_GSETTINGSSERVICE_CID);
+ #endif
++NS_DEFINE_NAMED_CID(NS_SYSTEMALERTSSERVICE_CID);
+ 
+ static const mozilla::Module::CIDEntry kGnomeCIDs[] = {
+ #ifdef MOZ_ENABLE_GCONF
+   { &kNS_GCONFSERVICE_CID, false, nullptr, nsGConfServiceConstructor },
+ #endif
+ #ifdef MOZ_ENABLE_GNOMEVFS
+   { &kNS_GNOMEVFSSERVICE_CID, false, nullptr, nsGnomeVFSServiceConstructor },
+ #endif
+ #ifdef MOZ_ENABLE_GIO
+   { &kNS_GIOSERVICE_CID, false, nullptr, nsGIOServiceConstructor },
+   { &kNS_GSETTINGSSERVICE_CID, false, nullptr, nsGSettingsServiceConstructor },
+ #endif
++  { &kNS_SYSTEMALERTSSERVICE_CID, false, nullptr, nsAlertsServiceConstructor },
+   { nullptr }
+ };
+ 
+ static const mozilla::Module::ContractIDEntry kGnomeContracts[] = {
+ #ifdef MOZ_ENABLE_GCONF
+   { NS_GCONFSERVICE_CONTRACTID, &kNS_GCONFSERVICE_CID },
+ #endif
+ #ifdef MOZ_ENABLE_GNOMEVFS
+   { NS_GNOMEVFSSERVICE_CONTRACTID, &kNS_GNOMEVFSSERVICE_CID },
+ #endif
+ #ifdef MOZ_ENABLE_GIO
+   { NS_GIOSERVICE_CONTRACTID, &kNS_GIOSERVICE_CID },
+   { NS_GSETTINGSSERVICE_CONTRACTID, &kNS_GSETTINGSSERVICE_CID },
+ #endif
++  { NS_SYSTEMALERTSERVICE_CONTRACTID, &kNS_SYSTEMALERTSSERVICE_CID },
+   { nullptr }
+ };
+ 
+ static nsresult
+ InitGType ()
+ {
+   g_type_init();
+   return NS_OK;
diff --git a/firefox-32-rhbz-966424.patch b/firefox-32-rhbz-966424.patch
new file mode 100644
index 0000000..c4c332e
--- /dev/null
+++ b/firefox-32-rhbz-966424.patch
@@ -0,0 +1,23 @@
+--- a/toolkit/modules/CertUtils.jsm
++++ b/toolkit/modules/CertUtils.jsm
+@@ -170,17 +170,19 @@ this.checkCert =
+   issuerCert = issuerCert.QueryInterface(Ci.nsIX509Cert3);
+   var tokenNames = issuerCert.getAllTokenNames({});
+ 
+   if (!tokenNames || !tokenNames.some(isBuiltinToken))
+     throw new Ce(certNotBuiltInErr, Cr.NS_ERROR_ABORT);
+ }
+ 
+ function isBuiltinToken(tokenName) {
+-  return tokenName == "Builtin Object Token";
++  return tokenName == "Builtin Object Token" ||
++         tokenName == "Default Trust" ||
++         tokenName == "System Trust";
+ }
+ 
+ /**
+  * This class implements nsIBadCertListener.  Its job is to prevent "bad cert"
+  * security dialogs from being shown to the user.  It is better to simply fail
+  * if the certificate is bad. See bug 304286.
+  *
+  * @param  aAllowNonBuiltInCerts (optional)
diff --git a/seamonkey-2.29-c++0x.patch b/seamonkey-2.29-c++0x.patch
new file mode 100644
index 0000000..afa6933
--- /dev/null
+++ b/seamonkey-2.29-c++0x.patch
@@ -0,0 +1,49 @@
+diff -Nrbu seamonkey-2.29/comm-release/mailnews/compose/public/nsIMsgSend.idl seamonkey-2.29-OK/comm-release/mailnews/compose/public/nsIMsgSend.idl
+--- seamonkey-2.29/comm-release/mailnews/compose/public/nsIMsgSend.idl	2014-09-05 09:30:38.000000000 +0400
++++ seamonkey-2.29-OK/comm-release/mailnews/compose/public/nsIMsgSend.idl	2014-09-20 17:40:03.183942413 +0400
+@@ -149,7 +149,7 @@
+ %}
+ 
+ [ptr] native nsMsgAttachedFile(nsMsgAttachedFile);
+-[ptr] native nsMsgAttachmentHandlerArray(nsTArray<nsRefPtr<nsMsgAttachmentHandler>>);
++[ptr] native nsMsgAttachmentHandlerArray(nsTArray<nsRefPtr<nsMsgAttachmentHandler> >);
+ 
+ [scriptable, uuid(648f8e40-3977-4dd8-88f1-b932bc654aef)]
+ interface nsIMsgSend : nsISupports
+diff -Nrbu seamonkey-2.29/comm-release/mailnews/compose/src/nsMsgAttachmentHandler.cpp seamonkey-2.29-OK/comm-release/mailnews/compose/src/nsMsgAttachmentHandler.cpp
+--- seamonkey-2.29/comm-release/mailnews/compose/src/nsMsgAttachmentHandler.cpp	2014-09-05 09:30:38.000000000 +0400
++++ seamonkey-2.29-OK/comm-release/mailnews/compose/src/nsMsgAttachmentHandler.cpp	2014-09-20 17:40:03.185942140 +0400
+@@ -1157,7 +1157,7 @@
+      */
+     uint32_t i;
+     nsMsgAttachmentHandler *next = 0;
+-    nsTArray<nsRefPtr<nsMsgAttachmentHandler>> *attachments;
++    nsTArray<nsRefPtr<nsMsgAttachmentHandler> > *attachments;
+ 
+     m_mime_delivery_state->GetAttachmentHandlers(&attachments);
+ 
+diff -Nrbu seamonkey-2.29/comm-release/mailnews/compose/src/nsMsgSend.cpp seamonkey-2.29-OK/comm-release/mailnews/compose/src/nsMsgSend.cpp
+--- seamonkey-2.29/comm-release/mailnews/compose/src/nsMsgSend.cpp	2014-09-05 09:30:38.000000000 +0400
++++ seamonkey-2.29-OK/comm-release/mailnews/compose/src/nsMsgSend.cpp	2014-09-20 17:40:03.186942006 +0400
+@@ -4864,7 +4864,7 @@
+   return NS_OK;
+ }
+ 
+-NS_IMETHODIMP nsMsgComposeAndSend::GetAttachmentHandlers(nsTArray<nsRefPtr<nsMsgAttachmentHandler>> **_retval)
++NS_IMETHODIMP nsMsgComposeAndSend::GetAttachmentHandlers(nsTArray<nsRefPtr<nsMsgAttachmentHandler> > **_retval)
+ {
+   NS_ENSURE_ARG(_retval);
+   *_retval = &m_attachments;
+diff -Nrbu seamonkey-2.29/comm-release/mailnews/mime/src/nsStreamConverter.cpp seamonkey-2.29-OK/comm-release/mailnews/mime/src/nsStreamConverter.cpp
+--- seamonkey-2.29/comm-release/mailnews/mime/src/nsStreamConverter.cpp	2014-09-05 09:30:38.000000000 +0400
++++ seamonkey-2.29-OK/comm-release/mailnews/mime/src/nsStreamConverter.cpp	2014-09-20 17:40:49.902933706 +0400
+@@ -446,7 +446,8 @@
+     // find the requested header in table, ensure that we don't match on a prefix
+     // by checking that the following character is either null or the next query element
+     const char * remainder;
+-    for (uint32_t n = 0; n < MOZ_ARRAY_LENGTH(rgTypes); ++n)
++//    for (uint32_t n = 0; n < MOZ_ARRAY_LENGTH(rgTypes); ++n)
++    for (uint32_t n = 0; n < 9; ++n)
+     {
+       remainder = SkipPrefix(header, rgTypes[n].headerType);
+       if (remainder && (*remainder == '\0' || *remainder == '&'))
diff --git a/seamonkey-2.29-enable-addons.patch b/seamonkey-2.29-enable-addons.patch
new file mode 100644
index 0000000..d7ece59
--- /dev/null
+++ b/seamonkey-2.29-enable-addons.patch
@@ -0,0 +1,40 @@
+diff -Nrbu seamonkey-2.29/comm-release/mail/app/profile/all-thunderbird.js seamonkey-2.29-OK/comm-release/mail/app/profile/all-thunderbird.js
+--- seamonkey-2.29/comm-release/mail/app/profile/all-thunderbird.js	2014-09-05 09:30:37.000000000 +0400
++++ seamonkey-2.29-OK/comm-release/mail/app/profile/all-thunderbird.js	2014-09-20 21:58:30.849935519 +0400
+@@ -174,7 +174,8 @@
+ // Disable add-ons installed into the shared user and shared system areas by
+ // default. This does not include the application directory. See the SCOPE
+ // constants in AddonManager.jsm for values to use here
+-pref("extensions.autoDisableScopes", 15);
++pref("extensions.autoDisableScopes", 0);
++//pref("extensions.showMismatchUI", false);
+ 
+ // Preferences for AMO integration
+ pref("extensions.getAddons.cache.enabled", true);
+diff -Nrbu seamonkey-2.29/comm-release/mozilla/toolkit/mozapps/extensions/internal/XPIProvider.jsm seamonkey-2.29-OK/comm-release/mozilla/toolkit/mozapps/extensions/internal/XPIProvider.jsm
+--- seamonkey-2.29/comm-release/mozilla/toolkit/mozapps/extensions/internal/XPIProvider.jsm	2014-09-05 09:37:10.000000000 +0400
++++ seamonkey-2.29-OK/comm-release/mozilla/toolkit/mozapps/extensions/internal/XPIProvider.jsm	2014-09-20 22:01:03.526931450 +0400
+@@ -1888,11 +1888,7 @@
+       // Changes to installed extensions may have changed which theme is selected
+       this.applyThemeChange();
+ 
+-      if (aAppChanged === undefined) {
+-        // For new profiles we will never need to show the add-on selection UI
+-        Services.prefs.setBoolPref(PREF_SHOWN_SELECTION_UI, true);
+-      }
+-      else if (aAppChanged && !this.allAppGlobal &&
++      if (aAppChanged && !this.allAppGlobal &&
+                Prefs.getBoolPref(PREF_EM_SHOW_MISMATCH_UI, true)) {
+         if (!Prefs.getBoolPref(PREF_SHOWN_SELECTION_UI, false)) {
+           // Flip a flag to indicate that we interrupted startup with an interactive prompt
+@@ -1913,6 +1909,10 @@
+           }
+         }
+       }
++      else {
++        // For all profiles we will never need to show the add-on selection UI
++        Services.prefs.setBoolPref(PREF_SHOWN_SELECTION_UI, true);
++      }
+ 
+       if (flushCaches) {
+         flushStartupCache();
diff --git a/seamonkey-2.29-nss_3_16_1.patch b/seamonkey-2.29-nss_3_16_1.patch
new file mode 100644
index 0000000..59d80a3
--- /dev/null
+++ b/seamonkey-2.29-nss_3_16_1.patch
@@ -0,0 +1,12 @@
+diff -Nrbu seamonkey-2.29/comm-release/mozilla/configure seamonkey-2.29-OK/comm-release/mozilla/configure
+--- seamonkey-2.29/comm-release/mozilla/configure	2014-09-05 09:37:33.000000000 +0400
++++ seamonkey-2.29-OK/comm-release/mozilla/configure	2014-09-20 15:58:29.037935677 +0400
+@@ -15158,7 +15158,7 @@
+   echo "$ac_t""no" 1>&6
+ fi
+ 
+-	min_nss_version=3.16.2
++	min_nss_version=3.16.1
+ 	echo $ac_n "checking for NSS - version >= $min_nss_version""... $ac_c" 1>&6
+ echo "configure:15164: checking for NSS - version >= $min_nss_version" >&5
+ 
diff --git a/seamonkey.spec-2.26 b/seamonkey.spec-2.29
similarity index 96%
rename from seamonkey.spec-2.26
rename to seamonkey.spec-2.29
index 5d0b895..459a04d 100644
--- a/seamonkey.spec-2.26
+++ b/seamonkey.spec-2.29
@@ -1,16 +1,16 @@
 %define bundled_python 1
 
-%bcond_with	system_nspr
-%bcond_with	system_nss
-%bcond_with	system_libvpx
+%bcond_without	system_nspr
+%bcond_without	system_nss
+%bcond_without	system_libvpx
 
 %define homepage file:///usr/share/doc/HTML/index.html
 %define default_bookmarks_file %{_datadir}/bookmarks/default-bookmarks.html
 %define cairo_version 0.5
 
-%global minimum_build_nspr_version 4.10.2
-%global minimum_build_nss_version 3.16.0
-%global minimum_build_vpx_version 1.0.0
+%global minimum_build_nspr_version 4.10.6
+%global minimum_build_nss_version 3.16.1
+%global minimum_build_vpx_version 1.3.0
 
 %define build_langpacks 1
 
@@ -24,7 +24,7 @@
 
 Name:           seamonkey
 Summary:        Web browser, e-mail, news, IRC client, HTML editor
-Version:        2.26
+Version:        2.29
 Release:        1%{?dist}
 URL:            http://www.mozilla.org/projects/seamonkey/
 License:        MPLv2.0
@@ -38,7 +38,7 @@ Source0:        ftp://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/%{versi
 #
 #   Run script as  ./moz-grab-langpacks --app seamonkey %{version}
 #
-Source1:        seamonkey-langpacks-%{version}-20140506.tar.xz
+Source1:        seamonkey-langpacks-%{version}-20140920.tar.xz
 
 Source3:        seamonkey.sh.in
 Source4:        seamonkey.desktop
@@ -55,12 +55,14 @@ Source100:      find-external-requires
 Patch1:         xulrunner-26.0-gcc47.patch
 Patch2:		xulrunner-24.0-jemalloc-ppc.patch
 Patch3:		xulrunner-27.0-build-arm.patch
-Patch5:         seamonkey-2.26-enable-addons.patch
-Patch20:	seamonkey-2.21-c++0x.patch
+Patch4:		firefox-32-rhbz-966424.patch
+Patch5:		firefox-32-mozilla-858919.patch
+Patch6:		firefox-32-baseline-disable.patch
+Patch10:        seamonkey-2.29-enable-addons.patch
+Patch20:	seamonkey-2.29-c++0x.patch
 Patch22:	seamonkey-2.26-installdir.patch
 Patch23:	seamonkey-2.25-elfhack.patch
-Patch24:	seamonkey-2.26-nss_3_15_3.patch
-Patch25:	seamonkey-2.26-nspr_4_10_2.patch
+Patch24:	seamonkey-2.29-nss_3_16_1.patch
 
 Buildroot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 %if %{with system_nspr}
@@ -146,19 +148,21 @@ pushd mozilla
 %patch1 -p2 -b .gcc47
 %patch2 -p2 -b .jemalloc-ppc
 %patch3 -p2 -b .build-arm
+%patch4 -p1 -b .966424
+%patch5 -p1 -b .858919
+%ifarch %{ix86}
+%patch6 -p2 -b .baseline
+%endif
 popd
 
-%patch5 -p2 -b .addons
+%patch10 -p2 -b .addons
 
 %patch20 -p2 -b .c++0x
 %patch22 -p2 -b .installdir
 %patch23 -p2 -b .elfhack
 
 %if %{with system_nss}
-%patch24 -p2 -b .nss3153
-%endif
-%if %{with system_nspr}
-%patch25 -p2 -b .nspr4102
+%patch24 -p2 -b .nss3161
 %endif
 
 
@@ -214,6 +218,11 @@ MOZ_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | \
 export CFLAGS=$MOZ_OPT_FLAGS
 export CXXFLAGS=$MOZ_OPT_FLAGS
 
+%if %(free -m | awk '/^Mem:/ { print $2 }') <= 4096
+MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
+export LDFLAGS=$MOZ_LINK_FLAGS
+%endif
+
 export PREFIX='%{_prefix}'
 export LIBDIR='%{_libdir}'
 
@@ -507,6 +516,14 @@ fi
 
 
 %changelog
+* Sat Sep 20 2014 Dmitry Butskoy <Dmitry at Butskoy.name> 2.29-1
+- update to 2.29
+- apply some patches from firefox-32 package
+- build with system libvpx now
+
+* Tue Jun 24 2014 Dmitry Butskoy <Dmitry at Butskoy.name> 2.26.1-1
+- update to 2.26.1
+
 * Thu May  8 2014 Dmitry Butskoy <Dmitry at Butskoy.name> 2.26-1
 - update to 2.26
 - build with native nss and nspr for now


More information about the scm-commits mailing list