summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <fedora@famillecollet.com>2012-02-01 19:12:29 +0100
committerRemi Collet <fedora@famillecollet.com>2012-02-01 19:12:29 +0100
commitb9baae32b7f3d0ff6d53c289b6691ebb6a767d44 (patch)
tree7e51ae4528adc8f678819402331ad3dbe5fea3a8
parent58cd96fbd0570cfc0ebb4574d4660248d6f54e67 (diff)
Xulrunner 10
-rw-r--r--mozilla-193-pkgconfig.patch21
-rw-r--r--mozilla-682832-proxy.patch68
-rw-r--r--mozilla-696393.patch65
-rw-r--r--mozilla-libjpeg-turbo.patch34
-rw-r--r--xulrunner-2.0-NetworkManager09.patch51
-rw-r--r--xulrunner-2.0-network-link-service.patch274
-rw-r--r--xulrunner-9.0-secondary-ipc.patch60
-rw-r--r--xulrunner-mozconfig1
-rw-r--r--xulrunner.spec244
9 files changed, 173 insertions, 645 deletions
diff --git a/mozilla-193-pkgconfig.patch b/mozilla-193-pkgconfig.patch
index a867f22..67ec302 100644
--- a/mozilla-193-pkgconfig.patch
+++ b/mozilla-193-pkgconfig.patch
@@ -1,24 +1,3 @@
-diff -up xulrunner-1.9.3.0/mozilla-central/config/autoconf.mk.in.pk xulrunner-1.9.3.0/mozilla-central/config/autoconf.mk.in
---- xulrunner-1.9.3.0/mozilla-central/config/autoconf.mk.in.pk 2010-08-06 03:09:27.000000000 +0200
-+++ xulrunner-1.9.3.0/mozilla-central/config/autoconf.mk.in 2010-08-16 11:07:52.000000000 +0200
-@@ -58,14 +58,14 @@ MOZ_PKG_SPECIAL = @MOZ_PKG_SPECIAL@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
- bindir = @bindir@
--includedir = @includedir@/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-+includedir = @includedir@/$(MOZ_APP_NAME)-sdk-$(MOZ_APP_VERSION)
- libdir = @libdir@
- datadir = @datadir@
- mandir = @mandir@
--idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-+idldir = $(datadir)/idl/$(MOZ_APP_NAME)-sdk-$(MOZ_APP_VERSION)
-
- installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
--sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
-+sdkdir = $(libdir)/$(MOZ_APP_NAME)-sdk-$(MOZ_APP_VERSION)
-
- DIST = $(DEPTH)/dist
- LIBXUL_SDK = @LIBXUL_SDK@
diff -up xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul-embedding.pc.in.pk xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul-embedding.pc.in
--- xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul-embedding.pc.in.pk 2010-08-06 03:09:24.000000000 +0200
+++ xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul-embedding.pc.in 2010-08-16 11:12:32.000000000 +0200
diff --git a/mozilla-682832-proxy.patch b/mozilla-682832-proxy.patch
index 076b2a6..0f643f9 100644
--- a/mozilla-682832-proxy.patch
+++ b/mozilla-682832-proxy.patch
@@ -1,7 +1,7 @@
-diff -up mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp.682832 mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp
---- mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp.682832 2011-11-04 22:34:19.000000000 +0100
-+++ mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp 2011-12-07 11:36:29.302312405 +0100
-@@ -42,6 +42,8 @@
+diff -up xulrunner-10.0/mozilla-beta/toolkit/system/gnome/nsGSettingsService.cpp.682832 xulrunner-10.0/mozilla-beta/toolkit/system/gnome/nsGSettingsService.cpp
+--- xulrunner-10.0/mozilla-beta/toolkit/system/gnome/nsGSettingsService.cpp.682832 2012-01-18 17:25:24.000000000 +0100
++++ xulrunner-10.0/mozilla-beta/toolkit/system/gnome/nsGSettingsService.cpp 2012-01-23 15:40:14.803170842 +0100
+@@ -44,6 +44,8 @@
#include "nsMemory.h"
#include "prlink.h"
#include "nsComponentManagerUtils.h"
@@ -10,7 +10,7 @@ diff -up mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp.682832 mozi
#include <glib.h>
#include <glib-object.h>
-@@ -56,6 +58,7 @@ typedef struct _GVariant GVariant;
+@@ -60,6 +62,7 @@ typedef struct _GVariant GVariant;
# define G_VARIANT_TYPE_STRING ((const GVariantType *) "s")
# define G_VARIANT_TYPE_OBJECT_PATH ((const GVariantType *) "o")
# define G_VARIANT_TYPE_SIGNATURE ((const GVariantType *) "g")
@@ -18,7 +18,7 @@ diff -up mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp.682832 mozi
#endif
#define GSETTINGS_FUNCTIONS \
-@@ -68,6 +71,7 @@ typedef struct _GVariant GVariant;
+@@ -72,6 +75,7 @@ typedef struct _GVariant GVariant;
FUNC(g_variant_get_int32, gint32, (GVariant* variant)) \
FUNC(g_variant_get_boolean, gboolean, (GVariant* variant)) \
FUNC(g_variant_get_string, const char *, (GVariant* value, gsize* length)) \
@@ -26,7 +26,7 @@ diff -up mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp.682832 mozi
FUNC(g_variant_is_of_type, gboolean, (GVariant* value, const GVariantType* type)) \
FUNC(g_variant_new_int32, GVariant *, (gint32 value)) \
FUNC(g_variant_new_boolean, GVariant *, (gboolean value)) \
-@@ -91,6 +95,7 @@ GSETTINGS_FUNCTIONS
+@@ -95,6 +99,7 @@ GSETTINGS_FUNCTIONS
#define g_variant_get_int32 _g_variant_get_int32
#define g_variant_get_boolean _g_variant_get_boolean
#define g_variant_get_string _g_variant_get_string
@@ -34,7 +34,7 @@ diff -up mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp.682832 mozi
#define g_variant_is_of_type _g_variant_is_of_type
#define g_variant_new_int32 _g_variant_new_int32
#define g_variant_new_boolean _g_variant_new_boolean
-@@ -263,6 +268,49 @@ nsGSettingsCollection::GetInt(const nsAC
+@@ -267,6 +272,49 @@ nsGSettingsCollection::GetInt(const nsAC
return NS_OK;
}
@@ -81,12 +81,12 @@ diff -up mozilla-release/toolkit/system/gnome/nsGSettingsService.cpp.682832 mozi
+ return NS_OK;
+}
+
- nsresult
- nsGSettingsService::Init()
- {
-diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.682832 mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
---- mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.682832 2011-11-04 22:34:19.000000000 +0100
-+++ mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp 2011-12-07 11:40:48.432502399 +0100
+ // These types are local to nsGSettingsService::Init, but ISO C++98 doesn't
+ // allow a template (ArrayLength) to be instantiated based on a local type.
+ // Boo-urns!
+diff -up xulrunner-10.0/mozilla-beta/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.682832 xulrunner-10.0/mozilla-beta/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
+--- xulrunner-10.0/mozilla-beta/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.682832 2012-01-18 17:25:24.000000000 +0100
++++ xulrunner-10.0/mozilla-beta/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp 2012-01-23 15:39:23.083172529 +0100
@@ -49,6 +49,7 @@
#include "nsPrintfCString.h"
#include "nsNetUtil.h"
@@ -100,7 +100,7 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
nsCOMPtr<nsIGConfService> mGConf;
+ nsCOMPtr<nsIGSettingsService> mGSettings;
- PRBool IsProxyMode(const char* aMode);
+ bool IsProxyMode(const char* aMode);
nsresult SetProxyResultFromGConf(const char* aKeyBase, const char* aType, nsACString& aResult);
nsresult GetProxyFromGConf(const nsACString& aScheme, const nsACString& aHost, PRInt32 aPort, nsACString& aResult);
+ nsresult GetProxyFromGSettings(const nsACString& aScheme, const nsACString& aHost, PRInt32 aPort, nsACString& aResult);
@@ -116,7 +116,7 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
return NS_OK;
}
-@@ -87,14 +92,30 @@ nsUnixSystemProxySettings::IsProxyMode(c
+@@ -87,14 +92,31 @@ nsUnixSystemProxySettings::IsProxyMode(c
nsresult
nsUnixSystemProxySettings::GetPACURI(nsACString& aResult)
{
@@ -141,7 +141,7 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
+ return NS_OK;
+ }
}
--
+
- return mGConf->GetString(NS_LITERAL_CSTRING("/system/proxy/autoconfig_url"),
- aResult);
+ if (mGConf && IsProxyMode("auto")) {
@@ -153,8 +153,8 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
+ return NS_OK;
}
- static PRBool
-@@ -231,7 +252,38 @@ nsUnixSystemProxySettings::SetProxyResul
+ static bool
+@@ -231,7 +253,38 @@ nsUnixSystemProxySettings::SetProxyResul
PRInt32 port;
rv = mGConf->GetInt(portKey, &port);
NS_ENSURE_SUCCESS(rv, rv);
@@ -193,13 +193,13 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
SetProxyResult(aType, host, port, aResult);
return NS_OK;
}
-@@ -271,17 +323,17 @@ static PRBool ConvertToIPV6Addr(const ns
+@@ -271,17 +324,17 @@ static bool ConvertToIPV6Addr(const nsAC
PRIPv6Addr* aAddr)
{
PRNetAddr addr;
+ // try to convert hostname to IP
if (PR_StringToNetAddr(PromiseFlatCString(aName).get(), &addr) != PR_SUCCESS)
- return PR_FALSE;
+ return false;
- PRIPv6Addr ipv6;
// convert parsed address to IPv6
@@ -212,20 +212,20 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
- memcpy(&ipv6, &addr.ipv6.ip, sizeof(PRIPv6Addr));
+ memcpy(aAddr, &addr.ipv6.ip, sizeof(PRIPv6Addr));
} else {
- return PR_FALSE;
+ return false;
}
-@@ -289,8 +341,8 @@ static PRBool ConvertToIPV6Addr(const ns
- return PR_TRUE;
+@@ -289,8 +342,8 @@ static bool ConvertToIPV6Addr(const nsAC
+ return true;
}
--static PRBool GConfIgnoreHost(const nsACString& aIgnore,
+-static bool GConfIgnoreHost(const nsACString& aIgnore,
- const nsACString& aHost)
+static bool HostIgnoredByProxy(const nsACString& aIgnore,
+ const nsACString& aHost)
{
if (aIgnore.Equals(aHost, nsCaseInsensitiveCStringComparator()))
- return PR_TRUE;
-@@ -321,8 +373,9 @@ static PRBool GConfIgnoreHost(const nsAC
+ return true;
+@@ -321,8 +374,9 @@ static bool GConfIgnoreHost(const nsACSt
slash = end;
}
@@ -234,9 +234,9 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
- if (!ConvertToIPV6Addr(aIgnore, &ignoreAddr) ||
+ if (!ConvertToIPV6Addr(ignoreStripped, &ignoreAddr) ||
!ConvertToIPV6Addr(aHost, &hostAddr))
- return PR_FALSE;
+ return false;
-@@ -355,7 +408,7 @@ nsUnixSystemProxySettings::GetProxyFromG
+@@ -355,7 +409,7 @@ nsUnixSystemProxySettings::GetProxyFromG
if (str) {
nsAutoString s;
if (NS_SUCCEEDED(str->GetData(s)) && !s.IsEmpty()) {
@@ -245,7 +245,7 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
aResult.AppendLiteral("DIRECT");
return NS_OK;
}
-@@ -392,6 +445,71 @@ nsUnixSystemProxySettings::GetProxyFromG
+@@ -392,6 +446,71 @@ nsUnixSystemProxySettings::GetProxyFromG
}
nsresult
@@ -317,7 +317,7 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
nsUnixSystemProxySettings::GetProxyForURI(nsIURI* aURI, nsACString& aResult)
{
nsCAutoString scheme;
-@@ -406,10 +524,15 @@ nsUnixSystemProxySettings::GetProxyForUR
+@@ -406,10 +525,15 @@ nsUnixSystemProxySettings::GetProxyForUR
rv = aURI->GetPort(&port);
NS_ENSURE_SUCCESS(rv, rv);
@@ -336,9 +336,9 @@ diff -up mozilla-release/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp.
}
#define NS_UNIXSYSTEMPROXYSERVICE_CID /* 0fa3158c-d5a7-43de-9181-a285e74cf1d4 */\
-diff -up mozilla-release/xpcom/system/nsIGSettingsService.idl.682832 mozilla-release/xpcom/system/nsIGSettingsService.idl
---- mozilla-release/xpcom/system/nsIGSettingsService.idl.682832 2011-11-04 22:34:23.000000000 +0100
-+++ mozilla-release/xpcom/system/nsIGSettingsService.idl 2011-12-07 11:32:37.976256951 +0100
+diff -up xulrunner-10.0/mozilla-beta/xpcom/system/nsIGSettingsService.idl.682832 xulrunner-10.0/mozilla-beta/xpcom/system/nsIGSettingsService.idl
+--- xulrunner-10.0/mozilla-beta/xpcom/system/nsIGSettingsService.idl.682832 2012-01-18 17:25:28.000000000 +0100
++++ xulrunner-10.0/mozilla-beta/xpcom/system/nsIGSettingsService.idl 2012-01-23 15:32:29.890186340 +0100
@@ -39,7 +39,7 @@
#include "nsISupports.idl"
#include "nsIArray.idl"
diff --git a/mozilla-696393.patch b/mozilla-696393.patch
index 8859d97..26c558f 100644
--- a/mozilla-696393.patch
+++ b/mozilla-696393.patch
@@ -1,68 +1,3 @@
-diff -up xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp
---- xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 2011-12-07 07:28:08.000000000 +0100
-+++ xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp 2011-12-09 15:06:10.584998410 +0100
-@@ -200,52 +200,21 @@ invoke_copy_to_stack(PRUint32 paramCount
- }
- }
-
-+typedef nsresult (*vtable_func)(nsISupports *, PRUint32, PRUint32, PRUint32, PRUint32, double, double);
-+
- EXPORT_XPCOM_API(nsresult)
- NS_InvokeByIndex(nsISupports* that, PRUint32 methodIndex,
- PRUint32 paramCount, nsXPTCVariant* params)
- {
-- PRUint32 *vtable = *(PRUint32 **)that;
-- PRUint32 method = vtable[methodIndex];
-+ vtable_func *vtable = *reinterpret_cast<vtable_func **>(that);
-+ vtable_func method = vtable[methodIndex];
- PRUint32 overflow = invoke_count_words (paramCount, params);
-- PRUint32 result;
--
-- __asm__ __volatile__
-- (
-- "lr 7,15\n\t"
-- "ahi 7,-32\n\t"
--
-- "lr 3,%3\n\t"
-- "sll 3,2\n\t"
-- "lcr 3,3\n\t"
-- "l 2,0(15)\n\t"
-- "la 15,0(3,7)\n\t"
-- "st 2,0(15)\n\t"
-+ PRUint32 *stack_space = reinterpret_cast<PRUint32 *>(__builtin_alloca((overflow + 8 /* 4 32-bits gpr + 2 64-bits fpr */) * 4));
-
-- "lr 2,%1\n\t"
-- "lr 3,%2\n\t"
-- "la 4,96(15)\n\t"
-- "lr 5,%3\n\t"
-- "basr 14,%4\n\t"
-+ invoke_copy_to_stack(paramCount, params, stack_space, overflow);
-
-- "lr 2,%5\n\t"
-- "ld 0,112(7)\n\t"
-- "ld 2,120(7)\n\t"
-- "lm 3,6,96(7)\n\t"
-- "basr 14,%6\n\t"
-+ PRUint32 *d_gpr = stack_space + overflow;
-+ double *d_fpr = reinterpret_cast<double *>(d_gpr + 4);
-
-- "la 15,32(7)\n\t"
--
-- "lr %0,2\n\t"
-- : "=r" (result)
-- : "r" (paramCount),
-- "r" (params),
-- "r" (overflow),
-- "a" (invoke_copy_to_stack),
-- "a" (that),
-- "a" (method)
-- : "2", "3", "4", "5", "6", "7", "14", "cc", "memory", "%f0", "%f2"
-- );
--
-- return result;
-+ return method(that, d_gpr[0], d_gpr[1], d_gpr[2], d_gpr[3], d_fpr[0], d_fpr[1]);
- }
--
diff -up xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp.696393 xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp
--- xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp.696393 2011-12-07 07:28:08.000000000 +0100
+++ xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp 2011-12-09 15:07:07.609097348 +0100
diff --git a/mozilla-libjpeg-turbo.patch b/mozilla-libjpeg-turbo.patch
deleted file mode 100644
index 54be1a1..0000000
--- a/mozilla-libjpeg-turbo.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -up xulrunner-2.0/mozilla-central/modules/libpr0n/decoders/nsJPEGDecoder.cpp.jpeg-turbo xulrunner-2.0/mozilla-central/modules/libpr0n/decoders/nsJPEGDecoder.cpp
---- xulrunner-2.0/mozilla-central/modules/libpr0n/decoders/nsJPEGDecoder.cpp.jpeg-turbo 2010-11-04 21:06:43.000000000 +0100
-+++ xulrunner-2.0/mozilla-central/modules/libpr0n/decoders/nsJPEGDecoder.cpp 2010-11-12 12:39:08.047171412 +0100
-@@ -411,14 +411,6 @@ nsJPEGDecoder::WriteInternal(const char
- return; /* I/O suspension */
- }
-
-- /* Force to use our YCbCr to Packed RGB converter when possible */
-- if (!mTransform && (mCMSMode != eCMSMode_All) &&
-- mInfo.jpeg_color_space == JCS_YCbCr && mInfo.out_color_space == JCS_RGB) {
-- /* Special case for the most common case: transform from YCbCr direct into packed ARGB */
-- mInfo.out_color_components = 4; /* Packed ARGB pixels are always 4 bytes...*/
-- mInfo.cconvert->color_convert = ycc_rgb_convert_argb;
-- }
--
- /* If this is a progressive JPEG ... */
- mState = mInfo.buffered_image ? JPEG_DECOMPRESS_PROGRESSIVE : JPEG_DECOMPRESS_SEQUENTIAL;
- }
-@@ -563,15 +555,6 @@ nsJPEGDecoder::OutputScanlines(PRBool* s
- PRUint32 *imageRow = ((PRUint32*)mImageData) +
- (mInfo.output_scanline * mInfo.output_width);
-
-- if (mInfo.cconvert->color_convert == ycc_rgb_convert_argb) {
-- /* Special case: scanline will be directly converted into packed ARGB */
-- if (jpeg_read_scanlines(&mInfo, (JSAMPARRAY)&imageRow, 1) != 1) {
-- *suspend = PR_TRUE; /* suspend */
-- break;
-- }
-- continue; /* all done for this row! */
-- }
--
- JSAMPROW sampleRow = (JSAMPROW)imageRow;
- if (mInfo.output_components == 3) {
- /* Put the pixels at end of row to enable in-place expansion */
diff --git a/xulrunner-2.0-NetworkManager09.patch b/xulrunner-2.0-NetworkManager09.patch
deleted file mode 100644
index 317a1b4..0000000
--- a/xulrunner-2.0-NetworkManager09.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-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;
-
-
diff --git a/xulrunner-2.0-network-link-service.patch b/xulrunner-2.0-network-link-service.patch
deleted file mode 100644
index b3243a9..0000000
--- a/xulrunner-2.0-network-link-service.patch
+++ /dev/null
@@ -1,274 +0,0 @@
-# HG changeset patch
-# Parent 31879b88cc82c1f44e6a6c25a05aa2c70af22d7e
-# User Martin Stransky <stransky@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;
-
diff --git a/xulrunner-9.0-secondary-ipc.patch b/xulrunner-9.0-secondary-ipc.patch
deleted file mode 100644
index 40ecfd5..0000000
--- a/xulrunner-9.0-secondary-ipc.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc
---- xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc.secondary-ipc 2011-12-07 07:27:43.000000000 +0100
-+++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc 2011-12-09 14:35:50.397220865 +0100
-@@ -91,14 +91,7 @@ bool DataPack::Load(const FilePath& path
- bool DataPack::Get(uint32_t resource_id, StringPiece* data) {
- // It won't be hard to make this endian-agnostic, but it's not worth
- // bothering to do right now.
--#if defined(__BYTE_ORDER)
-- // Linux check
-- COMPILE_ASSERT(__BYTE_ORDER == __LITTLE_ENDIAN,
-- datapack_assumes_little_endian);
--#elif defined(__BIG_ENDIAN__)
-- // Mac check
-- #error DataPack assumes little endian
--#endif
-+#warning DoTheRightThingMakingThisEndianAgnostic!
-
- DataPackEntry* target = reinterpret_cast<DataPackEntry*>(
- bsearch(&resource_id, mmap_->data() + kHeaderLength, resource_count_,
-diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h
---- xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h.secondary-ipc 2011-12-07 07:27:43.000000000 +0100
-+++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h 2011-12-09 14:39:44.922231601 +0100
-@@ -59,11 +59,23 @@
- #define ARCH_CPU_ARMEL 1
- #define ARCH_CPU_32_BITS 1
- #define WCHAR_T_IS_UNSIGNED 1
-+#elif defined(__powerpc64__)
-+#define ARCH_CPU_PPC64 1
-+#define ARCH_CPU_64_BITS 1
- #elif defined(__ppc__) || defined(__powerpc__)
- #define ARCH_CPU_PPC 1
- #define ARCH_CPU_32_BITS 1
--#elif defined(__sparc64__)
-+#elif defined(__s390x__)
-+#define ARCH_CPU_S390X 1
-+#define ARCH_CPU_64_BITS 1
-+#elif defined(__s390__)
-+#define ARCH_CPU_S390 1
-+#define ARCH_CPU_32_BITS 1
-+#elif defined(__sparc__) && !defined(__arch64)
- #define ARCH_CPU_SPARC 1
-+#define ARCH_CPU_32_BITS 1
-+#elif defined(__sparc__) && defined(__arch64)
-+#define ARCH_CPU_SPARC64 1
- #define ARCH_CPU_64_BITS 1
- #else
- #error Please add support for your architecture in build/build_config.h
-diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h
---- xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h.secondary-ipc 2011-12-07 07:27:43.000000000 +0100
-+++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h 2011-12-09 14:40:59.602679278 +0100
-@@ -195,7 +195,8 @@ struct ParamTraits<unsigned long long> {
- };
- #endif
-
--#if !(defined(OS_MACOSX) || defined(OS_OPENBSD) || defined(OS_WIN) || (defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)))
-+// Although s390 is a 32-bit system it defines size_t as unsigned long
-+#if !(defined(OS_MACOSX) || defined(OS_OPENBSD) || defined(OS_WIN) || (defined(OS_LINUX) && (defined(ARCH_CPU_64_BITS) || defined(ARCH_CPU_S390))))
- // There size_t is a synonym for |unsigned long| ...
- template <>
- struct ParamTraits<size_t> {
diff --git a/xulrunner-mozconfig b/xulrunner-mozconfig
index 9391b82..3ec51d2 100644
--- a/xulrunner-mozconfig
+++ b/xulrunner-mozconfig
@@ -11,7 +11,6 @@ ac_add_options --with-system-zlib
ac_add_options --with-system-bz2
ac_add_options --with-system-libvpx
ac_add_options --enable-system-hunspell
-ac_add_options --enable-system-sqlite
ac_add_options --enable-system-cairo
ac_add_options --with-pthreads
ac_add_options --disable-strip
diff --git a/xulrunner.spec b/xulrunner.spec
index d9d4c6d..7f54144 100644
--- a/xulrunner.spec
+++ b/xulrunner.spec
@@ -1,26 +1,56 @@
-%global shortname xulrunner
+# Use system libvpx
+%if 0%{?fedora} < 17
+%define system_vpx 0
+%else
+%define system_vpx 1
+%endif
+# Use system sqlite?
+%if 0%{?fedora} < 16
+%define system_sqlite 0
+%else
+%define system_sqlite 1
+%endif
+# Use system nspr/nss/cairo
+%if 0%{?fedora} < 15
+%define system_nspr 0
+%define system_nss 0
+%define system_cairo 0
+%else
+%define system_nspr 1
+%define system_nss 1
+%define system_cairo 1
+%endif
+
+# TODO low requirement for libvpx when 1.0.0 available in stable
-### TODO use system nss when 3.13.1 pushed to stable (f >= 15)
+%global shortname xulrunner
# Minimal required versions
-%global nspr_version 4.8.8
+%global nspr_version 4.8.9
%global nss_version 3.13.1
%global cairo_version 1.10.2
%global freetype_version 2.1.9
-%global sqlite_version 3.7.7.1
%global libnotify_version 0.7.0
+%global libvpx_version 1.0.0
%global lcms_version 1.18
+%if %{?system_sqlite}
+%global sqlite_version 3.7.7.1
+# The actual sqlite version (see #480989):
+%global sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo 65536)
+%endif
+
# gecko_dir_ver should be set to the version in our directory names
# alpha_version should be set to the alpha number if using an alpha, 0 otherwise
# beta_version should be set to the beta number if using a beta, 0 otherwise
# rc_version should be set to the RC number if using an RC, 0 otherwise
-%global gecko_dir_ver 9
+%global gecko_dir_ver 10
%global alpha_version 0
%global beta_version 0
%global rc_version 0
%global mozappdir %{_libdir}/%{shortname}-%{gecko_dir_ver}
+%global tarballdir mozilla-release
# crash reporter work only on x86/x86_64
#%ifarch %{ix86} x86_64
@@ -29,27 +59,21 @@
%global enable_mozilla_crashreporter 0
#%endif
-# The actual sqlite version (see #480989):
-%global sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo 65536)
-
-%global tarballdir mozilla-release
%if %{alpha_version} > 0
%global pre_version a%{alpha_version}
-%global pre_name alpha%{alpha_version}
%global tarballdir mozilla-beta
%endif
%if %{beta_version} > 0
%global pre_version b%{beta_version}
-%global pre_name beta%{beta_version}
%global tarballdir mozilla-beta
%endif
%if %{rc_version} > 0
%global pre_version rc%{rc_version}
-%global pre_name rc%{rc_version}
%global tarballdir mozilla-release
%endif
+
%if %{defined pre_version}
-%global gecko_verrel %{expand:%%{version}}-%{pre_name}
+%global gecko_verrel %{expand:%%{version}}-%{pre_version}
%global pre_tag .%{pre_version}
%else
%global gecko_verrel %{expand:%%{version}}
@@ -57,13 +81,13 @@
Summary: XUL Runtime for Gecko Applications
Name: %{shortname}%{gecko_dir_ver}
-Version: 9.0.1
+Version: 10.0
Release: 1%{?dist}
URL: http://developer.mozilla.org/En/XULRunner
License: MPLv1.1 or GPLv2+ or LGPLv2+
Group: Applications/Internet
-# You can get sources at ftp://ftp.mozilla.org/pub/firefox/releases/%{version}%{?pretag}/source
-#Source0: %{shortname}-%{version}%{?pretag}.source.tar.bz2
+# You can get sources at ftp://ftp.mozilla.org/pub/firefox/releases/%{version}%{?pre_ver}/source
+#Source0: %{name}-%{version}%{?pre_version}.source.tar.bz2
Source0: firefox-%{version}%{?pre_version}.source.tar.bz2
Source10: %{shortname}-mozconfig
Source11: %{shortname}-mozconfig-debuginfo
@@ -74,32 +98,37 @@ Source21: %{shortname}.sh.in
Patch0: xulrunner-version.patch
Patch1: mozilla-build.patch
Patch14: xulrunner-2.0-chromium-types.patch
-Patch18: xulrunner-9.0-secondary-ipc.patch
+Patch17: xulrunner-10.0-gcc47.patch
+
# Fedora specific patches
Patch20: mozilla-193-pkgconfig.patch
-Patch21: mozilla-libjpeg-turbo.patch
Patch23: wmclass.patch
Patch24: crashreporter-remove-static.patch
# Upstream patches
-Patch34: xulrunner-2.0-network-link-service.patch
-Patch35: xulrunner-2.0-NetworkManager09.patch
Patch38: mozilla-696393.patch
# https://bugzilla.mozilla.org/show_bug.cgi?id=707993
Patch39: xulrunner-8.0-fix-maemo-checks-in-npapi.patch
Patch40: mozilla-682832-proxy.patch
+# cherry-picked from 13afcd4c097c
+Patch41: xulrunner-9.0-secondary-build-fix.patch
+Patch42: mozilla-706724.patch
+Patch43: mozilla-file.patch
+# Needed to detect/use libvpx-1.0.0
+# https://bugzilla.mozilla.org/show_bug.cgi?id=722127
+Patch44: mozilla-722127.patch
# ---------------------------------------------------
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
-%if 0%{?fedora} >= 14 || 0%{?rhel} >= 6
+%if %{system_nspr}
BuildRequires: nspr-devel >= %{nspr_version}
%endif
-%if 0%{?fedora} >= 17
+%if %{system_nss}
BuildRequires: nss-devel >= %{nss_version}
%endif
-%if 0%{?fedora} >= 15
+%if %{system_cairo}
BuildRequires: cairo-devel >= %{cairo_version}
%endif
BuildRequires: libpng-devel
@@ -115,9 +144,6 @@ BuildRequires: freetype-devel >= %{freetype_version}
BuildRequires: libXt-devel
BuildRequires: libXrender-devel
BuildRequires: hunspell-devel
-%if 0%{?fedora} >= 16
-BuildRequires: sqlite-devel >= %{sqlite_version}
-%endif
BuildRequires: startup-notification-devel
BuildRequires: alsa-lib-devel
BuildRequires: libnotify-devel
@@ -128,20 +154,17 @@ BuildRequires: curl-devel
%ifarch %{ix86} x86_64
BuildRequires: wireless-tools-devel
%endif
-%if 0%{?fedora} >= 13
-BuildRequires: libvpx-devel
+%if %{system_vpx}
+BuildRequires: libvpx-devel >= %{libvpx_version}
%endif
Requires: mozilla-filesystem
-%if 0%{?fedora} >= 14 || 0%{?rhel} >= 6
+%if %{system_nspr}
Requires: nspr >= %{nspr_version}
%endif
-%if 0%{?fedora} >= 17
+%if %{system_nspr}
Requires: nss >= %{nss_version}
%endif
-%if 0%{?fedora} >= 16
-Requires: sqlite >= %{sqlite_build_version}
-%endif
Provides: gecko-libs = %{gecko_verrel}
Provides: gecko-libs%{?_isa} = %{gecko_verrel}
Obsoletes: xulrunner2
@@ -149,7 +172,12 @@ Obsoletes: xulrunner5
Obsoletes: xulrunner6
Obsoletes: xulrunner7
Obsoletes: xulrunner8
+Obsoletes: xulrunner9
+%if %{?system_sqlite}
+BuildRequires: sqlite-devel >= %{sqlite_version}
+Requires: sqlite >= %{sqlite_build_version}
+%endif
%description
XULRunner is a Mozilla runtime package that can be used to bootstrap XUL+XPCOM
@@ -170,13 +198,13 @@ Provides: gecko-devel-unstable = %{gecko_verrel}
Provides: gecko-devel-unstable%{?_isa} = %{gecko_verrel}
Requires: %{name}%{?_isa} = %{version}-%{release}
-%if 0%{?fedora} >= 14 || 0%{?rhel} >= 6
+%if %{system_nspr}
Requires: nspr-devel >= %{nspr_version}
%endif
-%if 0%{?fedora} >= 17
+%if %{system_nspr}
Requires: nss-devel >= %{nss_version}
%endif
-%if 0%{?fedora} >= 15
+%if %{system_cairo}
# Library requirements (cairo-tee >= 1.10)
Requires: cairo-devel >= %{cairo_version}
%endif
@@ -192,7 +220,9 @@ Requires: freetype-devel >= %{freetype_version}
Requires: libXt-devel
Requires: libXrender-devel
Requires: hunspell-devel
+%if %{?system_sqlite}
Requires: sqlite-devel
+%endif
Requires: startup-notification-devel
Requires: alsa-lib-devel
Requires: libnotify-devel
@@ -231,7 +261,6 @@ debug %{name}, you want to install %{name}-debuginfo instead.
%defattr(-,root,root)
%endif
-
#---------------------------------------------------------------------
%prep
@@ -245,41 +274,40 @@ sed -e 's/__RPM_VERSION_INTERNAL__/%{gecko_dir_ver}/' %{P:%%PATCH0} \
%patch1 -p2 -b .build
%patch14 -p1 -b .chromium-types
-%patch18 -p2 -b .secondary-ipc
+%patch17 -p1 -b .gcc47
%patch20 -p2 -b .pk
-%if 0%{?fedora} >= 14
-%patch21 -p2 -b .jpeg-turbo
-%endif
%patch23 -p1 -b .wmclass
%patch24 -p1 -b .static
-%patch34 -p1 -b .network-link-service
-%patch35 -p1 -b .NetworkManager09
%patch38 -p2 -b .696393
%patch39 -p1 -b .707993
-%if 0%{?fedora} >= 14
-%patch40 -p1 -b .682832
+%patch40 -p2 -b .682832
+%patch41 -p2 -b .secondary-build
+%patch42 -p1 -b .706724
+%patch43 -p1 -b .file
+%if %{system_vpx}
+%patch44 -p2 -b .vpx1.0.0
%endif
%{__rm} -f .mozconfig
%{__cat} %{SOURCE10} \
-%if 0%{?fedora} < 16
+%if ! %{system_sqlite}
| grep -v enable-system-sqlite \
%endif
-%if 0%{?fedora} < 14 && 0%{?rhel} < 6
+%if ! %{system_nspr}
| grep -v with-system-nspr \
%endif
-%if 0%{?fedora} < 17
+%if ! %{system_nspr}
| grep -v with-system-nss \
%endif
-%if 0%{?fedora} < 15
+%if ! %{system_cairo}
| grep -v enable-system-cairo \
%endif
%ifarch %{ix86} x86_64
| grep -v disable-necko-wifi \
%endif
-%if 0%{?fedora} < 13
+%if ! %{system_vpx}
| grep -v with-system-libvpx \
%endif
| tee .mozconfig
@@ -290,11 +318,32 @@ sed -e 's/__RPM_VERSION_INTERNAL__/%{gecko_dir_ver}/' %{P:%%PATCH0} \
echo "ac_add_options --enable-system-lcms" >> .mozconfig
+%if %{?system_sqlite}
+echo "ac_add_options --enable-system-sqlite" >> .mozconfig
+%else
+echo "ac_add_options --disable-system-sqlite" >> .mozconfig
+%endif
+
# s390(x) fails to start with jemalloc enabled
%ifarch s390 s390x
echo "ac_add_options --disable-jemalloc" >> .mozconfig
%endif
+%ifarch armv7hl
+echo "ac_add_options --with-arch=armv7-a" >> .mozconfig
+echo "ac_add_options --with-float-abi=hard" >> .mozconfig
+echo "ac_add_options --with-fpu=vfpv3-d16" >> .mozconfig
+%endif
+%ifarch armv7hnl
+echo "ac_add_options --with-arch=armv7-a" >> .mozconfig
+echo "ac_add_options --with-float-abi=hard" >> .mozconfig
+echo "ac_add_options --with-fpu=neon" >> .mozconfig
+%endif
+%ifarch armv5tel
+echo "ac_add_options --with-arch=armv5te" >> .mozconfig
+echo "ac_add_options --with-float-abi=soft" >> .mozconfig
+%endif
+
%ifnarch %{ix86} x86_64
echo "ac_add_options --disable-methodjit" >> .mozconfig
echo "ac_add_options --disable-monoic" >> .mozconfig
@@ -305,7 +354,7 @@ echo "ac_add_options --disable-tracejit" >> .mozconfig
#---------------------------------------------------------------------
%build
-%if 0%{?fedora} >= 15
+%if %{?system_sqlite}
# Do not proceed with build if the sqlite require would be broken:
# make sure the minimum requirement is non-empty, ...
sqlite_version=$(expr "%{sqlite_version}" : '\([0-9]*\.\)[0-9]*\.') || exit 1
@@ -358,19 +407,11 @@ make buildsymbols
cd %{tarballdir}
%{__rm} -rf $RPM_BUILD_ROOT
-INTERNAL_APP_SDK_NAME=%{shortname}-sdk-%{gecko_dir_ver}
-MOZ_APP_SDK_DIR=%{_libdir}/${INTERNAL_APP_SDK_NAME}
-
# set up our prefs before install, so it gets pulled in to omni.jar
%{__cp} -p %{SOURCE12} dist/bin/defaults/pref/all-redhat.js
DESTDIR=$RPM_BUILD_ROOT make install
-%{__mkdir_p} $RPM_BUILD_ROOT/%{mozappdir} \
- $RPM_BUILD_ROOT%{_datadir}/idl/${INTERNAL_APP_SDK_NAME} \
- $RPM_BUILD_ROOT%{_includedir}/${INTERNAL_APP_SDK_NAME}
-%{__mkdir_p} $RPM_BUILD_ROOT{%{_libdir},%{_bindir},%{_datadir}/applications}
-
# Start script install
%{__rm} -rf $RPM_BUILD_ROOT%{_bindir}/%{shortname}
%{__cat} %{SOURCE21} | %{__sed} -e 's,XULRUNNER_VERSION,%{gecko_dir_ver},g' > \
@@ -379,14 +420,6 @@ DESTDIR=$RPM_BUILD_ROOT make install
%{__rm} -f $RPM_BUILD_ROOT%{mozappdir}/%{shortname}-config
-# Prepare our devel package
-%{__mkdir_p} $RPM_BUILD_ROOT/%{_includedir}/${INTERNAL_APP_SDK_NAME}
-%{__mkdir_p} $RPM_BUILD_ROOT/%{_datadir}/idl/${INTERNAL_APP_SDK_NAME}
-%{__mkdir_p} $RPM_BUILD_ROOT/%{_libdir}/pkgconfig
-
-%{__cp} -rL dist/include/* \
- $RPM_BUILD_ROOT/%{_includedir}/${INTERNAL_APP_SDK_NAME}
-
# Copy pc files (for compatibility with 1.9.1)
%{__cp} $RPM_BUILD_ROOT/%{_libdir}/pkgconfig/libxul.pc \
$RPM_BUILD_ROOT/%{_libdir}/pkgconfig/libxul-unstable.pc
@@ -407,50 +440,27 @@ cat > ${genheader}.h << EOF
EOF
}
-pushd $RPM_BUILD_ROOT/%{_includedir}/${INTERNAL_APP_SDK_NAME}
+INTERNAL_APP_NAME=%{shortname}-%{gecko_dir_ver}
+
+pushd $RPM_BUILD_ROOT/%{_includedir}/${INTERNAL_APP_NAME}
install_file "mozilla-config"
-install_file "jsautocfg"
install_file "js-config"
popd
-%{__install} -p -c -m 755 dist/bin/xpcshell \
- $RPM_BUILD_ROOT/%{mozappdir}
+# Link libraries in sdk directory instead of copying them:
+pushd $RPM_BUILD_ROOT%{_libdir}/%{shortname}-devel-%{gecko_dir_ver}/sdk/lib
+for i in *.so; do
+ rm $i
+ ln -s %{mozappdir}/$i $i
+done
+popd
-%if 0%{?fedora} < 14 && 0%{?rhel} < 6
+%if ! %{system_nspr}
%{__install} -D -p -m 755 \
dist/sdk/bin/nspr-config \
- $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/sdk/bin/nspr-config
+ $RPM_BUILD_ROOT%{_libdir}/%{shortname}-devel-%{gecko_dir_ver}/sdk/bin/nspr-config
%endif
-%{__rm} -rf $RPM_BUILD_ROOT/%{_includedir}/%{shortname}-%{gecko_dir_ver}
-%{__rm} -rf $RPM_BUILD_ROOT/%{_datadir}/idl/%{shortname}-%{gecko_dir_ver}
-
-%{__rm} -rf $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/include
-ln -s %{_includedir}/${INTERNAL_APP_SDK_NAME} \
- $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/include
-
-%{__rm} -rf $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/idl
-ln -s %{_datadir}/idl/${INTERNAL_APP_SDK_NAME} \
- $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/idl
-
-%{__rm} -rf $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/sdk/include
-ln -s %{_includedir}/${INTERNAL_APP_SDK_NAME} \
- $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/sdk/include
-
-%{__rm} -rf $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/sdk/idl
-ln -s %{_datadir}/idl/${INTERNAL_APP_SDK_NAME} \
- $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/sdk/idl
-
-find $RPM_BUILD_ROOT/%{_includedir} -type f -name "*.h" | xargs chmod 644
-find $RPM_BUILD_ROOT/%{_datadir}/idl -type f -name "*.idl" | xargs chmod 644
-
-%{__rm} -rf $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/sdk/lib/*.so
-pushd $RPM_BUILD_ROOT%{mozappdir}
-for i in *.so; do
- ln -s %{mozappdir}/$i $RPM_BUILD_ROOT${MOZ_APP_SDK_DIR}/sdk/lib/$i
-done
-popd
-
# Library path
LD_SO_CONF_D=%{_sysconfdir}/ld.so.conf.d
LD_CONF_FILE=xulrunner-%{__isa_bits}.conf
@@ -517,7 +527,7 @@ fi
%ghost %{mozappdir}/components/xpti.dat
%{mozappdir}/components/*.so
%{mozappdir}/components/*.manifest
-%{mozappdir}/omni.jar
+%{mozappdir}/omni.ja
%{mozappdir}/plugins
%{mozappdir}/*.so
%{mozappdir}/mozilla-xremote-client
@@ -531,7 +541,6 @@ fi
%{_sysconfdir}/ld.so.conf.d/xulrunner*.conf
%endif
%{mozappdir}/plugin-container
-%{mozappdir}/hyphenation
%if %{enable_mozilla_crashreporter}
%{mozappdir}/crashreporter
@@ -541,15 +550,40 @@ fi
%files devel
%defattr(-,root,root,-)
+#%dir %{_libdir}/%{shortname}-devel-*
%{_datadir}/idl/%{shortname}*%{gecko_dir_ver}
%{_includedir}/%{shortname}*%{gecko_dir_ver}
-%{_libdir}/%{shortname}-sdk-*/
+%{_libdir}/%{shortname}-devel-*
%{_libdir}/pkgconfig/*.pc
%{mozappdir}/xpcshell
#---------------------------------------------------------------------
%changelog
+* Wed Feb 01 2012 Remi Collet <RPMS@FamilleCollet.com> - 10.0-1
+- update to 10.0, sync with rawhide
+
+* Tue Jan 31 2012 Jan Horak <jhorak@redhat.com> - 10.0-1
+- Update to 10.0
+
+* Mon Jan 30 2012 Tom Callaway <spot@fedoraproject.org> 10.0-3
+- fix issues causing ftbfs in rawhide
+
+* Mon Jan 30 2012 Tom Callaway <spot@fedoraproject.org> 10.0-2
+- rebuild against libvpx 1.0.0 (and BR 1.0.0 or greater)
+
+* Mon Jan 23 2012 Martin Stransky <stransky@redhat.com> 10.0-1
+- Update to 10.0 Beta 6
+
+* Thu Jan 19 2012 Dennis Gilmore <dennis@ausil.us> - 9.0.1-4
+- add missing v from armv7hl and armv7hnl config options
+
+* Wed Jan 04 2012 Dan HorĂ¡k <dan[at]danny.cz> - 9.0.1-3
+- fix build on secondary arches (cherry-picked from 13afcd4c097c)
+
+* Fri Dec 23 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 9.0.1-2
+- Add compile options for ARM hfp/sfp - RHBZ #738509
+
* Thu Dec 22 2011 Remi Collet <RPMS@FamilleCollet.com> - 9.0.1-1
- update to 9.0.1