From b9baae32b7f3d0ff6d53c289b6691ebb6a767d44 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Wed, 1 Feb 2012 19:12:29 +0100 Subject: Xulrunner 10 --- mozilla-193-pkgconfig.patch | 21 --- mozilla-682832-proxy.patch | 68 ++++---- mozilla-696393.patch | 65 -------- mozilla-libjpeg-turbo.patch | 34 ---- xulrunner-2.0-NetworkManager09.patch | 51 ------ xulrunner-2.0-network-link-service.patch | 274 ------------------------------- xulrunner-9.0-secondary-ipc.patch | 60 ------- xulrunner-mozconfig | 1 - xulrunner.spec | 244 +++++++++++++++------------ 9 files changed, 173 insertions(+), 645 deletions(-) delete mode 100644 mozilla-libjpeg-turbo.patch delete mode 100644 xulrunner-2.0-NetworkManager09.patch delete mode 100644 xulrunner-2.0-network-link-service.patch delete mode 100644 xulrunner-9.0-secondary-ipc.patch 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 #include -@@ -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 mGConf; + nsCOMPtr 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(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(__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(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 -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 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 mSocketTransportService; - nsCOMPtr mDNSService; - nsCOMPtr mProxyService; - nsCOMPtr mNetworkLinkService; -+ PRPackedBool mNetworkLinkServiceInitialized; - - // Cached protocol handlers - nsWeakPtr mWeakHandler[NS_N(gScheme)]; - - // cached categories - nsCategoryCache mChannelEventSinks; - nsCategoryCache 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( - 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 { - }; - #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 { 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 - 10.0-1 +- update to 10.0, sync with rawhide + +* Tue Jan 31 2012 Jan Horak - 10.0-1 +- Update to 10.0 + +* Mon Jan 30 2012 Tom Callaway 10.0-3 +- fix issues causing ftbfs in rawhide + +* Mon Jan 30 2012 Tom Callaway 10.0-2 +- rebuild against libvpx 1.0.0 (and BR 1.0.0 or greater) + +* Mon Jan 23 2012 Martin Stransky 10.0-1 +- Update to 10.0 Beta 6 + +* Thu Jan 19 2012 Dennis Gilmore - 9.0.1-4 +- add missing v from armv7hl and armv7hnl config options + +* Wed Jan 04 2012 Dan HorĂ¡k - 9.0.1-3 +- fix build on secondary arches (cherry-picked from 13afcd4c097c) + +* Fri Dec 23 2011 Peter Robinson - 9.0.1-2 +- Add compile options for ARM hfp/sfp - RHBZ #738509 + * Thu Dec 22 2011 Remi Collet - 9.0.1-1 - update to 9.0.1 -- cgit