rpms/thunderbird-enigmail/devel mozilla-670719.patch, NONE, 1.1 xulrunner-2.0-NetworkManager09.patch, NONE, 1.1 xulrunner-2.0-network-link-service.patch, NONE, 1.1 xulrunner-install.patch, NONE, 1.1 .cvsignore, 1.12, 1.13 sources, 1.13, 1.14 thunderbird-enigmail.spec, 1.15, 1.16

Remi Collet remi at rpmfusion.org
Sat Nov 12 17:23:37 CET 2011


Author: remi

Update of /cvs/free/rpms/thunderbird-enigmail/devel
In directory se02.es.rpmfusion.net:/tmp/cvs-serv31403

Modified Files:
	.cvsignore sources thunderbird-enigmail.spec 
Added Files:
	mozilla-670719.patch xulrunner-2.0-NetworkManager09.patch 
	xulrunner-2.0-network-link-service.patch 
	xulrunner-install.patch 
Log Message:
update to 1.3.3 for thunderbird 8

mozilla-670719.patch:
 Makefile.in |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

--- NEW FILE mozilla-670719.patch ---
# HG changeset patch
# User Mike Hommey <mh+mozilla at glandium.org>
# Date 1313846520 -7200
# Node ID fdc3b63938f5a76d99c1e2bb12fd448465debc94
# Parent  07a5a618ebe3f67b23100ceb1b51e92bb79be0cd
Bug 670719 - Only add -DENABLE_JIT=1 to CXXFLAGS if any of trace/method/yarr jit is enabled.

diff --git a/js/src/Makefile.in b/js/src/Makefile.in
--- a/js/src/Makefile.in
+++ b/js/src/Makefile.in
@@ -433,16 +433,19 @@ CPPSRCS += \
 		YarrPattern.cpp \
 		YarrSyntaxChecker.cpp \
 		$(NULL)
 else
 
 ###############################################
 # BEGIN include sources for the Nitro assembler
 #
+
+ENABLE_YARR_JIT = 1
+
 VPATH += 	$(srcdir)/assembler \
 		$(srcdir)/assembler/wtf \
 		$(srcdir)/assembler/jit \
 		$(srcdir)/assembler/assembler \
 		$(srcdir)/methodjit \
 		$(srcdir)/yarr \
 		$(NONE)
 
@@ -1070,17 +1073,21 @@ endif
 
 ###############################################
 # BEGIN kludges for the Nitro assembler
 #
 
 # Needed to "configure" it correctly.  Unfortunately these
 # flags wind up being applied to all code in js/src, not just
 # the code in js/src/assembler.
-CXXFLAGS += -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1
+CXXFLAGS += -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1
+
+ifneq (,$(ENABLE_YARR_JIT)$(ENABLE_TRACEJIT)$(ENABLE_METHODJIT))
+CXXFLAGS +=  -DENABLE_JIT=1
+endif
 
 INCLUDES +=	-I$(srcdir)/assembler -I$(srcdir)/yarr
 
 ifdef ENABLE_METHODJIT
 # Build a standalone test program that exercises the assembler
 # sources a bit.
 TESTMAIN_OBJS = \
 		Assertions.$(OBJ_SUFFIX) \

xulrunner-2.0-NetworkManager09.patch:
 nsNetworkManagerListener.cpp |   25 ++++++++++++++-----------
 1 file changed, 14 insertions(+), 11 deletions(-)

--- NEW FILE xulrunner-2.0-NetworkManager09.patch ---
https://bugzilla.mozilla.org/show_bug.cgi?id=639959

--- source/toolkit/system/dbus/nsNetworkManagerListener.cpp.foo	2011-03-08 14:26:28.167074923 -0600
+++ source/toolkit/system/dbus/nsNetworkManagerListener.cpp	2011-03-08 14:30:54.260748294 -0600
@@ -51,15 +51,13 @@
 #define NM_DBUS_SERVICE                 "org.freedesktop.NetworkManager"
 #define NM_DBUS_PATH                            "/org/freedesktop/NetworkManager"
 #define NM_DBUS_INTERFACE                       "org.freedesktop.NetworkManager"
-#define NM_DBUS_SIGNAL_STATE_CHANGE             "StateChange"
-typedef enum NMState
-{
-        NM_STATE_UNKNOWN = 0,
-        NM_STATE_ASLEEP,
-        NM_STATE_CONNECTING,
-        NM_STATE_CONNECTED,
-        NM_STATE_DISCONNECTED
-} NMState;
+#define NM_DBUS_SIGNAL_STATE_CHANGE             "StateChange"  /* Deprecated in 0.7.x */
+#define NM_DBUS_SIGNAL_STATE_CHANGED            "StateChanged"
+
+#define NM_STATE_CONNECTED_OLD    3
+#define NM_STATE_CONNECTED_LOCAL  50
+#define NM_STATE_CONNECTED_SITE   60
+#define NM_STATE_CONNECTED_GLOBAL 70
 
 nsNetworkManagerListener::nsNetworkManagerListener() :
     mLinkUp(PR_TRUE), mNetworkManagerActive(PR_FALSE),
@@ -174,7 +172,9 @@
 PRBool
 nsNetworkManagerListener::HandleMessage(DBusMessage* message) {
   if (dbus_message_is_signal(message, NM_DBUS_INTERFACE,
-                             NM_DBUS_SIGNAL_STATE_CHANGE)) {
+                             NM_DBUS_SIGNAL_STATE_CHANGE) ||
+      dbus_message_is_signal(message, NM_DBUS_INTERFACE,
+                             NM_DBUS_SIGNAL_STATE_CHANGED)) {
     UpdateNetworkStatus(message);
     return PR_TRUE;
   }
@@ -191,7 +191,10 @@
   mNetworkManagerActive = PR_TRUE;
   
   PRBool wasUp = mLinkUp;
-  mLinkUp = result == NM_STATE_CONNECTED;
+  mLinkUp = (result == NM_STATE_CONNECTED_OLD) ||
+            (result == NM_STATE_CONNECTED_LOCAL) ||
+            (result == NM_STATE_CONNECTED_SITE) ||
+            (result == NM_STATE_CONNECTED_GLOBAL);
   if (wasUp == mLinkUp)
     return;
 


xulrunner-2.0-network-link-service.patch:
 nsIOService.cpp |   75 ++++++++++++++++++++++++++++++++++++++++++++++----------
 nsIOService.h   |    2 +
 2 files changed, 64 insertions(+), 13 deletions(-)

--- NEW FILE xulrunner-2.0-network-link-service.patch ---
# HG changeset patch
# Parent 31879b88cc82c1f44e6a6c25a05aa2c70af22d7e
# User Martin Stransky <stransky at redhat.com>
Bug 627672 - XPCOM component (libdbusservice.so) is not registered although it should be; r=cbiesinger



diff --git a/netwerk/base/src/nsIOService.cpp b/netwerk/base/src/nsIOService.cpp
--- a/netwerk/base/src/nsIOService.cpp
+++ b/netwerk/base/src/nsIOService.cpp
@@ -160,31 +160,33 @@ PRInt16 gBadPortList[] = {
   2049, // nfs
   4045, // lockd
   6000, // x11        
   0,    // This MUST be zero so that we can populating the array
 };
 
 static const char kProfileChangeNetTeardownTopic[] = "profile-change-net-teardown";
 static const char kProfileChangeNetRestoreTopic[] = "profile-change-net-restore";
+static const char kStartupTopic[] = "profile-after-change";
 
 // Necko buffer cache
 nsIMemory* nsIOService::gBufferCache = nsnull;
 PRUint32   nsIOService::gDefaultSegmentSize = 4096;
 PRUint32   nsIOService::gDefaultSegmentCount = 24;
 
 ////////////////////////////////////////////////////////////////////////////////
 
 nsIOService::nsIOService()
     : mOffline(PR_TRUE)
     , mOfflineForProfileChange(PR_FALSE)
     , mManageOfflineStatus(PR_TRUE)
     , mSettingOffline(PR_FALSE)
     , mSetOfflineValue(PR_FALSE)
     , mShutdown(PR_FALSE)
+    , mNetworkLinkServiceInitialized(PR_FALSE)
     , mChannelEventSinks(NS_CHANNEL_EVENT_SINK_CATEGORY)
     , mContentSniffers(NS_CONTENT_SNIFFER_CATEGORY)
     , mAutoDialEnabled(PR_FALSE)
 {
 }
 
 nsresult
 nsIOService::Init()
@@ -230,16 +232,17 @@ nsIOService::Init()
     }
     
     // Register for profile change notifications
     nsCOMPtr<nsIObserverService> observerService =
         mozilla::services::GetObserverService();
     if (observerService) {
         observerService->AddObserver(this, kProfileChangeNetTeardownTopic, PR_TRUE);
         observerService->AddObserver(this, kProfileChangeNetRestoreTopic, PR_TRUE);
+        observerService->AddObserver(this, kStartupTopic, PR_TRUE);
         observerService->AddObserver(this, NS_XPCOM_SHUTDOWN_OBSERVER_ID, PR_TRUE);
         observerService->AddObserver(this, NS_NETWORK_LINK_TOPIC, PR_TRUE);
     }
     else
         NS_WARNING("failed to get observer service");
         
     NS_TIME_FUNCTION_MARK("Registered observers");
 
@@ -258,29 +261,19 @@ nsIOService::Init()
         NS_WARN_IF_FALSE(NS_SUCCEEDED(rv), "Was unable to allocate.  No gBufferCache.");
         CallQueryInterface(recyclingAllocator, &gBufferCache);
     }
 
     NS_TIME_FUNCTION_MARK("Set up the recycling allocator");
 
     gIOService = this;
 
-    // go into managed mode if we can, and chrome process
-    if (XRE_GetProcessType() == GeckoProcessType_Default)
-        mNetworkLinkService = do_GetService(NS_NETWORK_LINK_SERVICE_CONTRACTID);
-
-    if (!mNetworkLinkService)
-        // We can't really determine if the machine has a usable network connection,
-        // so let's cross our fingers!
-        mManageOfflineStatus = PR_FALSE;
-
-    if (mManageOfflineStatus)
-        TrackNetworkLinkStatusForOffline();
-    else
-        SetOffline(PR_FALSE);
+    // We can't really determine if the machine has a usable network connection,
+    // (mNetworkLinkService will be initialized later) so let's cross our fingers!
+    SetOffline(PR_FALSE);
     
     NS_TIME_FUNCTION_MARK("Set up network link service");
 
     return NS_OK;
 }
 
 
 nsIOService::~nsIOService()
@@ -306,16 +299,57 @@ nsIOService::InitializeSocketTransportSe
         rv = mSocketTransportService->Init();
         NS_ASSERTION(NS_SUCCEEDED(rv), "socket transport service init failed");
         mSocketTransportService->SetAutodialEnabled(mAutoDialEnabled);
     }
 
     return rv;
 }
 
+nsresult
+nsIOService::InitializeNetworkLinkService()
+{
+    NS_TIME_FUNCTION;
+
+    nsresult rv = NS_OK;
+
+    if (mNetworkLinkServiceInitialized)
+      return rv;
+
+#if defined(MOZ_PLATFORM_MAEMO)
+    // libdbusservice fails to initialize on Maemo platform, see Bug 627672
+    mNetworkLinkService = NULL;
+#else
+    // go into managed mode if we can, and chrome process
+    if (XRE_GetProcessType() == GeckoProcessType_Default)
+    {
+        mNetworkLinkService = do_GetService(NS_NETWORK_LINK_SERVICE_CONTRACTID, &rv);
+        if (NS_FAILED(rv)) {
+            NS_WARNING("failed to get network link service");
+            return rv;
+        }
+    }
+#endif
+
+    mNetworkLinkServiceInitialized = PR_TRUE;
+
+    if (!mNetworkLinkService) {
+        // We can't really determine if the machine has a usable network connection,
+        // so let's cross our fingers!
+        mManageOfflineStatus = PR_FALSE;
+    }
+
+    if (mManageOfflineStatus)
+        TrackNetworkLinkStatusForOffline();
+    else
+        SetOffline(PR_FALSE);
+    
+    return rv;
+}
+
 nsIOService*
 nsIOService::GetInstance() {
     if (!gIOService) {
         gIOService = new nsIOService();
         if (!gIOService)
             return nsnull;
         NS_ADDREF(gIOService);
 
@@ -689,16 +723,19 @@ nsIOService::NewChannel(const nsACString
     if (NS_FAILED(rv)) return rv;
 
     return NewChannelFromURI(uri, result);
 }
 
 PRBool
 nsIOService::IsLinkUp()
 {
+    NS_ASSERTION(mNetworkLinkServiceInitialized, 
+                 "network link service should be initialized");
+
     if (!mNetworkLinkService) {
         // We cannot decide, assume the link is up
         return PR_TRUE;
     }
 
     PRBool isLinkUp;
     nsresult rv;
     rv = mNetworkLinkService->GetIsLinkUp(&isLinkUp);
@@ -968,16 +1005,20 @@ nsIOService::Observe(nsISupports *subjec
         if (mOfflineForProfileChange) {
             mOfflineForProfileChange = PR_FALSE;
             if (!mManageOfflineStatus ||
                 NS_FAILED(TrackNetworkLinkStatusForOffline())) {
                 SetOffline(PR_FALSE);
             }
         } 
     }
+    else if (!strcmp(topic, kStartupTopic)) {
+        // Lazy initialization of network link service (see bug 620472)
+        InitializeNetworkLinkService();
+    }
     else if (!strcmp(topic, NS_XPCOM_SHUTDOWN_OBSERVER_ID)) {
         // Remember we passed XPCOM shutdown notification to prevent any
         // changes of the offline status from now. We must not allow going
         // online after this point.
         mShutdown = PR_TRUE;
 
         SetOffline(PR_TRUE);
 
@@ -1085,32 +1126,40 @@ nsIOService::NewSimpleNestedURI(nsIURI* 
     NS_IF_ADDREF(*aResult = new nsSimpleNestedURI(safeURI));
     return *aResult ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
 NS_IMETHODIMP
 nsIOService::SetManageOfflineStatus(PRBool aManage) {
     PRBool wasManaged = mManageOfflineStatus;
     mManageOfflineStatus = aManage;
+
+    if (!mNetworkLinkServiceInitialized) {
+        InitializeNetworkLinkService();
+    }
+
     if (mManageOfflineStatus && !wasManaged)
         return TrackNetworkLinkStatusForOffline();
     return NS_OK;
 }
 
 NS_IMETHODIMP
 nsIOService::GetManageOfflineStatus(PRBool* aManage) {
     *aManage = mManageOfflineStatus;
     return NS_OK;
 }
 
 nsresult
 nsIOService::TrackNetworkLinkStatusForOffline()
 {
     NS_ASSERTION(mManageOfflineStatus,
                  "Don't call this unless we're managing the offline status");
+    NS_ASSERTION(mNetworkLinkServiceInitialized, 
+                "network link service should be set up");
+
     if (!mNetworkLinkService)
         return NS_ERROR_FAILURE;
 
     if (mShutdown)
         return NS_ERROR_NOT_AVAILABLE;
   
     // check to make sure this won't collide with Autodial
     if (mSocketTransportService) {
diff --git a/netwerk/base/src/nsIOService.h b/netwerk/base/src/nsIOService.h
--- a/netwerk/base/src/nsIOService.h
+++ b/netwerk/base/src/nsIOService.h
@@ -129,16 +129,17 @@ private:
                                               nsIProtocolHandler* hdlr);
 
     // Prefs wrangling
     NS_HIDDEN_(void) PrefsChanged(nsIPrefBranch *prefs, const char *pref = nsnull);
     NS_HIDDEN_(void) GetPrefBranch(nsIPrefBranch2 **);
     NS_HIDDEN_(void) ParsePortList(nsIPrefBranch *prefBranch, const char *pref, PRBool remove);
 
     nsresult InitializeSocketTransportService();
+    nsresult InitializeNetworkLinkService();
 
 private:
     PRPackedBool                         mOffline;
     PRPackedBool                         mOfflineForProfileChange;
     PRPackedBool                         mManageOfflineStatus;
 
     // Used to handle SetOffline() reentrancy.  See the comment in
     // SetOffline() for more details.
@@ -146,16 +147,17 @@ private:
     PRPackedBool                         mSetOfflineValue;
 
     PRPackedBool                         mShutdown;
 
     nsCOMPtr<nsPISocketTransportService> mSocketTransportService;
     nsCOMPtr<nsPIDNSService>             mDNSService;
     nsCOMPtr<nsIProtocolProxyService2>   mProxyService;
     nsCOMPtr<nsINetworkLinkService>      mNetworkLinkService;
+    PRPackedBool                         mNetworkLinkServiceInitialized;
     
     // Cached protocol handlers
     nsWeakPtr                            mWeakHandler[NS_N(gScheme)];
 
     // cached categories
     nsCategoryCache<nsIChannelEventSink> mChannelEventSinks;
     nsCategoryCache<nsIContentSniffer>   mContentSniffers;
 

xulrunner-install.patch:
 packager.mk |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- NEW FILE xulrunner-install.patch ---
diff -up comm-release/mozilla/toolkit/mozapps/installer/packager.mk.install comm-release/mozilla/toolkit/mozapps/installer/packager.mk
--- comm-release/mozilla/toolkit/mozapps/installer/packager.mk.install	2011-11-05 10:21:10.000000000 +0100
+++ comm-release/mozilla/toolkit/mozapps/installer/packager.mk	2011-11-08 18:48:08.674042803 +0100
@@ -401,7 +401,7 @@ PRECOMPILE_GRE=$$PWD
 endif
 
 GENERATE_CACHE = \
-  $(_ABS_RUN_TEST_PROGRAM) $(LIBXUL_DIST)/bin/xpcshell$(BIN_SUFFIX) -g "$(PRECOMPILE_GRE)" -a "$$PWD" -f $(MOZILLA_DIR)/toolkit/mozapps/installer/precompile_cache.js -e "populate_startupcache('$(PRECOMPILE_DIR)', 'omni.jar', 'startupCache.zip');" && \
+  $(_ABS_RUN_TEST_PROGRAM) $(LIBXUL_DIST)/bin/xpcshell$(BIN_SUFFIX) -g "$(PRECOMPILE_GRE)" -a "$$PWD" -f $(call core_abspath,$(MOZILLA_DIR)/toolkit/mozapps/installer/precompile_cache.js) -e "populate_startupcache('$(PRECOMPILE_DIR)', 'omni.jar', 'startupCache.zip');" && \
   rm -rf jsloader && \
   $(UNZIP) startupCache.zip && \
   rm startupCache.zip && \


Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/thunderbird-enigmail/devel/.cvsignore,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- .cvsignore	1 Oct 2011 06:16:00 -0000	1.12
+++ .cvsignore	12 Nov 2011 16:23:36 -0000	1.13
@@ -1,2 +1,2 @@
-thunderbird-7.0.source.tar.bz2
-enigmail-1.3.2.tar.gz
+enigmail-1.3.3.tar.gz
+thunderbird-8.0.source.tar.bz2


Index: sources
===================================================================
RCS file: /cvs/free/rpms/thunderbird-enigmail/devel/sources,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- sources	1 Oct 2011 06:16:00 -0000	1.13
+++ sources	12 Nov 2011 16:23:36 -0000	1.14
@@ -1,2 +1,2 @@
-6a4b2dbdc2324f52c019a3a8dee6dad4  thunderbird-7.0.source.tar.bz2
-2318d60320dc6c3db3c34d968bb7d533  enigmail-1.3.2.tar.gz
+f62cf6b574ed34a550069ab339d15c59  enigmail-1.3.3.tar.gz
+332f60036aebdce7dec6ee2b1af4941d  thunderbird-8.0.source.tar.bz2


Index: thunderbird-enigmail.spec
===================================================================
RCS file: /cvs/free/rpms/thunderbird-enigmail/devel/thunderbird-enigmail.spec,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- thunderbird-enigmail.spec	1 Oct 2011 06:36:23 -0000	1.15
+++ thunderbird-enigmail.spec	12 Nov 2011 16:23:36 -0000	1.16
@@ -7,7 +7,7 @@
 %define build_langpacks 1
 %define thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\}
 
-%global thunver  7.0
+%global thunver  8.0
 
 # The tarball is pretty inconsistent with directory structure.
 # Sometimes there is a top level directory.  That goes here.
@@ -25,11 +25,11 @@
 
 Summary:        Authentication and encryption extension for Mozilla Thunderbird
 Name:           thunderbird-enigmail
-Version:        1.3.2
+Version:        1.3.3
 %if 0%{?prever:1}
 Release:        0.1.%{prever}%{?dist}
 %else
-Release:        1%{?dist}.1
+Release:        1%{?dist}
 %endif
 URL:            http://enigmail.mozdev.org/
 License:        MPLv1.1 or GPLv2+
@@ -58,6 +58,12 @@
 Patch0:         thunderbird-install-dir.patch
 Patch7:         crashreporter-remove-static.patch
 Patch8:         xulrunner-6.0-secondary-ipc.patch
+Patch9:         mozilla-670719.patch
+Patch10:        xulrunner-2.0-network-link-service.patch
+Patch11:        xulrunner-2.0-NetworkManager09.patch
+
+# Build patches
+Patch100:       xulrunner-install.patch
 
 
 %if %{official_branding}
@@ -130,6 +136,10 @@
 cd mozilla
 %patch7 -p2 -b .static
 %patch8 -p2 -b .secondary-ipc
+%patch9 -p1 -b .moz670719
+%patch10 -p1 -b .link-service
+%patch11 -p1 -b .NetworkManager09
+%patch100 -p2 -b .install
 cd ..
 
 %if %{official_branding}
@@ -198,19 +208,20 @@
 export PREFIX='%{_prefix}'
 export LIBDIR='%{_libdir}'
 
-%define moz_make_flags -j1
-%ifarch ppc ppc64 s390 s390x
-%define moz_make_flags -j1
-%else
-%define moz_make_flags %{?_smp_mflags}
+MOZ_SMP_FLAGS=-j1
+# On x86 architectures, Mozilla can build up to 4 jobs at once in parallel,
+# however builds tend to fail on other arches when building in parallel.
+%ifarch %{ix86} x86_64
+[ -z "$RPM_BUILD_NCPUS" ] && \
+     RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"
+[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2
+[ "$RPM_BUILD_NCPUS" -ge 4 ] && MOZ_SMP_FLAGS=-j4
 %endif
 
-export LDFLAGS="-Wl,-rpath,%{mozappdir}"
-export MAKE="gmake %{moz_make_flags}"
 
 # ===== Thunderbird build =====
 # http://enigmail.mozdev.org/download/source.php.html
-make -f client.mk build
+make -f client.mk build STRIP="/bin/true" MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS"
 
 # ===== Enigmail work =====
 pushd mailnews/extensions/enigmail
@@ -244,6 +255,9 @@
 #===============================================================================
 
 %changelog
+* Sat Nov 12 2011 Remi Collet <remi at fedoraproject.org> 1.3.3-1
+- Enigmail 1.3.3 for Thunderbird 8.0
+
 * Sat Oct 01 2011 Remi Collet <remi at fedoraproject.org> 1.3.2-1.1
 - remove unused patch 
 



More information about the rpmfusion-commits mailing list