diff --git a/.firefox.metadata b/.firefox.metadata index 8fd7ec4..81ee5b1 100644 --- a/.firefox.metadata +++ b/.firefox.metadata @@ -1,2 +1,2 @@ -7aad03b3152778b1902c102d9c0f99e5528833fa SOURCES/firefox-24.8.0esr.source.tar.bz2 -567daed3dd20872e2fbf53fb3ef258b693b65aee SOURCES/firefox-langpacks-24.8.0esr-20140826.tar.bz2 +d84451f86664b7cc1ef380e735b03db410f48c18 SOURCES/firefox-31.1.0esr.source.tar.bz2 +eeae78d0ce88732439a0be497a50f0f009c63df8 SOURCES/firefox-langpacks-31.1.0esr-20140828.tar.bz2 diff --git a/.gitignore b/.gitignore index 27667ac..e6a1bf7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -SOURCES/firefox-24.8.0esr.source.tar.bz2 -SOURCES/firefox-langpacks-24.8.0esr-20140826.tar.bz2 +SOURCES/firefox-31.1.0esr.source.tar.bz2 +SOURCES/firefox-langpacks-31.1.0esr-20140828.tar.bz2 diff --git a/SOURCES/disable-webm.patch b/SOURCES/disable-webm.patch new file mode 100644 index 0000000..570713b --- /dev/null +++ b/SOURCES/disable-webm.patch @@ -0,0 +1,11 @@ +diff -up mozilla-esr31/browser/confvars.sh.webm-fix mozilla-esr31/browser/confvars.sh +--- mozilla-esr31/browser/confvars.sh.webm-fix 2014-07-21 13:56:53.522253529 +0200 ++++ mozilla-esr31/browser/confvars.sh 2014-07-21 13:57:49.983533186 +0200 +@@ -65,6 +65,6 @@ MOZ_PAY=1 + # Enable activities. These are used for FxOS developers currently. + MOZ_ACTIVITIES=1 + MOZ_JSDOWNLOADS=1 +-MOZ_WEBM_ENCODER=1 ++#MOZ_WEBM_ENCODER=1 + # Enable exact rooting on desktop. + JSGC_USE_EXACT_ROOTING=1 diff --git a/SOURCES/firefox-17.0-enable-addons.patch b/SOURCES/firefox-17.0-enable-addons.patch deleted file mode 100644 index d6044e0..0000000 --- a/SOURCES/firefox-17.0-enable-addons.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff -up mozilla-esr17/browser/app/profile/firefox.js.addons mozilla-esr17/browser/app/profile/firefox.js ---- mozilla-esr17/browser/app/profile/firefox.js.addons 2012-11-29 05:43:51.000000000 +0100 -+++ mozilla-esr17/browser/app/profile/firefox.js 2012-12-21 08:40:51.799335531 +0100 -@@ -61,7 +61,7 @@ pref("extensions.hotfix.certs.1.sha1Fing - - // Disable add-ons that are not installed by the user in all scopes by default. - // See the SCOPE constants in AddonManager.jsm for values to use here. --pref("extensions.autoDisableScopes", 15); -+pref("extensions.autoDisableScopes", 0); - - // Dictionary download preference - pref("browser.dictionaries.download.url", "https://addons.mozilla.org/%LOCALE%/firefox/dictionaries/"); -diff -up mozilla-esr17/toolkit/mozapps/extensions/XPIProvider.jsm.addons mozilla-esr17/toolkit/mozapps/extensions/XPIProvider.jsm ---- mozilla-esr17/toolkit/mozapps/extensions/XPIProvider.jsm.addons 2012-11-29 05:45:08.000000000 +0100 -+++ mozilla-esr17/toolkit/mozapps/extensions/XPIProvider.jsm 2012-12-21 08:40:14.342341623 +0100 -@@ -1630,8 +1630,8 @@ var XPIProvider = { - this.showUpgradeUI(); - flushCaches = true; - } -- else if (aAppChanged === undefined) { -- // For new profiles we will never need to show the add-on selection UI -+ else { -+ // For all profiles we will never need to show the add-on selection UI - Services.prefs.setBoolPref(PREF_SHOWN_SELECTION_UI, true); - } - diff --git a/SOURCES/firefox-24.0-default.patch b/SOURCES/firefox-24.0-default.patch deleted file mode 100644 index 5c1171a..0000000 --- a/SOURCES/firefox-24.0-default.patch +++ /dev/null @@ -1,115 +0,0 @@ -diff -up firefox-24.0/mozilla-esr24/browser/components/preferences/advanced.xul.default firefox-24.0/mozilla-esr24/browser/components/preferences/advanced.xul ---- firefox-24.0/mozilla-esr24/browser/components/preferences/advanced.xul.default 2013-09-11 05:22:18.000000000 +0200 -+++ firefox-24.0/mozilla-esr24/browser/components/preferences/advanced.xul 2013-10-31 12:51:28.597413904 +0100 -@@ -40,7 +40,7 @@ - #endif - - --#ifdef HAVE_SHELL_SERVICE -+#ifdef 0 - -@@ -72,7 +72,7 @@ - type="bool"/> - - --#ifdef MOZ_UPDATER -+#ifdef 0 - - - #ifdef XP_WIN -@@ -106,7 +106,7 @@ - type="bool"/> - - --#ifdef HAVE_SHELL_SERVICE -+#ifdef 0 - - - #endif -@@ -174,7 +174,7 @@ - preference="layout.spellcheckDefault"/> - - --#ifdef HAVE_SHELL_SERVICE -+#ifdef 0 - - - -diff -up firefox-24.0/mozilla-esr24/browser/components/shell/src/Makefile.in.default firefox-24.0/mozilla-esr24/browser/components/shell/src/Makefile.in ---- firefox-24.0/mozilla-esr24/browser/components/shell/src/Makefile.in.default 2013-10-31 12:49:11.279309914 +0100 -+++ firefox-24.0/mozilla-esr24/browser/components/shell/src/Makefile.in 2013-10-31 12:52:27.772465355 +0100 -@@ -13,7 +13,7 @@ include $(DEPTH)/config/autoconf.mk - FORCE_STATIC_LIB = 1 - USE_STATIC_LIBS = 1 - --DISABLED_EXTRA_COMPONENTS = nsSetDefaultBrowser.js nsSetDefaultBrowser.manifest -+#DISABLED_EXTRA_COMPONENTS = nsSetDefaultBrowser.js nsSetDefaultBrowser.manifest - - include $(topsrcdir)/config/rules.mk - -diff -up firefox-24.0/mozilla-esr24/browser/components/shell/src/nsGNOMEShellService.cpp.default firefox-24.0/mozilla-esr24/browser/components/shell/src/nsGNOMEShellService.cpp ---- firefox-24.0/mozilla-esr24/browser/components/shell/src/nsGNOMEShellService.cpp.default 2013-09-11 05:22:18.000000000 +0200 -+++ firefox-24.0/mozilla-esr24/browser/components/shell/src/nsGNOMEShellService.cpp 2013-10-31 12:56:17.450679146 +0100 -@@ -149,8 +149,8 @@ nsGNOMEShellService::GetAppPathFromLaunc - bool - nsGNOMEShellService::KeyMatchesAppName(const char *aKeyValue) const - { -+ nsAutoCString appName; - -- gchar *commandPath; - if (mUseLocaleFilenames) { - gchar *nativePath = g_filename_from_utf8(aKeyValue, -1, NULL, NULL, NULL); - if (!nativePath) { -@@ -158,17 +158,13 @@ nsGNOMEShellService::KeyMatchesAppName(c - return false; - } - -- commandPath = g_find_program_in_path(nativePath); -+ appName.Assign(nativePath); - g_free(nativePath); - } else { -- commandPath = g_find_program_in_path(aKeyValue); -+ appName.Assign(aKeyValue); - } - -- if (!commandPath) -- return false; -- -- bool matches = mAppPath.Equals(commandPath); -- g_free(commandPath); -+ bool matches = mAppPath.Equals(appName); - return matches; - } - -@@ -253,16 +249,7 @@ nsGNOMEShellService::SetDefaultBrowser(b - nsCOMPtr gconf = do_GetService(NS_GCONFSERVICE_CONTRACTID); - nsCOMPtr giovfs = do_GetService(NS_GIOSERVICE_CONTRACTID); - if (gconf) { -- nsAutoCString appKeyValue; -- if (mAppIsInPath) { -- // mAppPath is in the users path, so use only the basename as the launcher -- gchar *tmp = g_path_get_basename(mAppPath.get()); -- appKeyValue = tmp; -- g_free(tmp); -- } else { -- appKeyValue = mAppPath; -- } -- -+ nsAutoCString appKeyValue(MOZ_APP_NAME); - appKeyValue.AppendLiteral(" %s"); - - for (unsigned int i = 0; i < ArrayLength(appProtocols); ++i) { -diff -up firefox-24.0/mozilla-esr24/browser/components/shell/src/nsGNOMEShellService.h.default firefox-24.0/mozilla-esr24/browser/components/shell/src/nsGNOMEShellService.h ---- firefox-24.0/mozilla-esr24/browser/components/shell/src/nsGNOMEShellService.h.default 2013-09-11 05:22:18.000000000 +0200 -+++ firefox-24.0/mozilla-esr24/browser/components/shell/src/nsGNOMEShellService.h 2013-10-31 12:49:11.280309915 +0100 -@@ -13,7 +13,7 @@ - class nsGNOMEShellService MOZ_FINAL : public nsIShellService - { - public: -- nsGNOMEShellService() : mCheckedThisSession(false), mAppIsInPath(false) { } -+ nsGNOMEShellService() : mCheckedThisSession(true), mAppIsInPath(true) { } - - NS_DECL_ISUPPORTS - NS_DECL_NSISHELLSERVICE diff --git a/SOURCES/firefox-5.0-asciidel.patch b/SOURCES/firefox-5.0-asciidel.patch deleted file mode 100644 index 1916cb3..0000000 --- a/SOURCES/firefox-5.0-asciidel.patch +++ /dev/null @@ -1,15 +0,0 @@ -Patch from: Bill Nottingham - -diff -up mozilla-release/browser/base/Makefile.in.fu mozilla-release/browser/base/Makefile.in ---- mozilla-release/browser/base/Makefile.in.fu 2011-06-24 16:50:23.802042086 -0400 -+++ mozilla-release/browser/base/Makefile.in 2011-06-24 16:50:42.324042096 -0400 -@@ -62,7 +62,7 @@ EXTRA_JS_MODULES = \ - - include $(topsrcdir)/config/rules.mk - --PRE_RELEASE_SUFFIX := "" -+PRE_RELEASE_SUFFIX := - - DEFINES += \ - -DMOZ_APP_VERSION=$(MOZ_APP_VERSION) \ - diff --git a/SOURCES/firefox-centos-default-prefs.js b/SOURCES/firefox-centos-default-prefs.js deleted file mode 100644 index ee2943f..0000000 --- a/SOURCES/firefox-centos-default-prefs.js +++ /dev/null @@ -1,24 +0,0 @@ -pref("app.update.auto", false); -pref("app.update.enabled", false); -pref("app.update.autoInstallEnabled", false); -pref("browser.backspace_action", 2); -pref("browser.display.use_system_colors", true); -pref("browser.download.folderList", 1); -pref("browser.link.open_external", 3); -pref("browser.shell.checkDefaultBrowser", false); -pref("general.smoothScroll", true); -pref("general.useragent.vendor", "CentOS"); -pref("general.useragent.vendorSub", "FIREFOX_RPM_VR"); -pref("intl.locale.matchOS", true); -pref("storage.nfs_filesystem", false); -pref("dom.ipc.plugins.enabled.nswrapper*", false); -pref("network.manage-offline-status", true); -pref("toolkit.networkmanager.disable", false); -pref("browser.startup.homepage", "data:text/plain,browser.startup.homepage=file:///usr/share/doc/HTML/index.html"); -pref("toolkit.storage.synchronous", 0); -pref("startup.homepage_override_url", "http://www.centos.org"); -pref("startup.homepage_welcome_url", "http://www.centos.org"); -pref("javascript.options.baselinejit.content", false); -pref("javascript.options.baselinejit.chrome", false); -pref("extensions.shownSelectionUI", true); -pref("layout.imagevisibility.enabled", false); diff --git a/SOURCES/firefox-default.patch b/SOURCES/firefox-default.patch new file mode 100644 index 0000000..51edd59 --- /dev/null +++ b/SOURCES/firefox-default.patch @@ -0,0 +1,104 @@ +diff -up mozilla-aurora/browser/components/preferences/advanced.xul.default mozilla-aurora/browser/components/preferences/advanced.xul +--- mozilla-aurora/browser/components/preferences/advanced.xul.default 2014-05-06 13:17:14.000000000 +0200 ++++ mozilla-aurora/browser/components/preferences/advanced.xul 2014-05-06 14:07:22.972356178 +0200 +@@ -40,7 +40,7 @@ + #endif + + +-#ifdef HAVE_SHELL_SERVICE ++#ifdef 0 + +@@ -68,7 +68,7 @@ + type="bool"/> + + +-#ifdef MOZ_UPDATER ++#ifdef 0 + + + #ifdef XP_WIN +@@ -102,7 +102,7 @@ + type="bool"/> + + +-#ifdef HAVE_SHELL_SERVICE ++#ifdef 0 + + + #endif +@@ -170,7 +170,7 @@ + preference="layout.spellcheckDefault"/> + + +-#ifdef HAVE_SHELL_SERVICE ++#ifdef 0 + + + +diff -up mozilla-aurora/browser/components/shell/src/Makefile.in.default mozilla-aurora/browser/components/shell/src/Makefile.in +diff -up mozilla-aurora/browser/components/shell/src/nsGNOMEShellService.cpp.default mozilla-aurora/browser/components/shell/src/nsGNOMEShellService.cpp +--- mozilla-aurora/browser/components/shell/src/nsGNOMEShellService.cpp.default 2014-05-06 13:17:14.000000000 +0200 ++++ mozilla-aurora/browser/components/shell/src/nsGNOMEShellService.cpp 2014-05-06 14:07:22.973356181 +0200 +@@ -149,8 +149,8 @@ nsGNOMEShellService::GetAppPathFromLaunc + bool + nsGNOMEShellService::KeyMatchesAppName(const char *aKeyValue) const + { ++ nsAutoCString appName; + +- gchar *commandPath; + if (mUseLocaleFilenames) { + gchar *nativePath = g_filename_from_utf8(aKeyValue, -1, + nullptr, nullptr, nullptr); +@@ -159,17 +159,13 @@ nsGNOMEShellService::KeyMatchesAppName(c + return false; + } + +- commandPath = g_find_program_in_path(nativePath); ++ appName.Assign(nativePath); + g_free(nativePath); + } else { +- commandPath = g_find_program_in_path(aKeyValue); ++ appName.Assign(aKeyValue); + } + +- if (!commandPath) +- return false; +- +- bool matches = mAppPath.Equals(commandPath); +- g_free(commandPath); ++ bool matches = mAppPath.Equals(appName); + return matches; + } + +@@ -254,16 +250,7 @@ nsGNOMEShellService::SetDefaultBrowser(b + nsCOMPtr gconf = do_GetService(NS_GCONFSERVICE_CONTRACTID); + nsCOMPtr giovfs = do_GetService(NS_GIOSERVICE_CONTRACTID); + if (gconf) { +- nsAutoCString appKeyValue; +- if (mAppIsInPath) { +- // mAppPath is in the users path, so use only the basename as the launcher +- gchar *tmp = g_path_get_basename(mAppPath.get()); +- appKeyValue = tmp; +- g_free(tmp); +- } else { +- appKeyValue = mAppPath; +- } +- ++ nsAutoCString appKeyValue(MOZ_APP_NAME); + appKeyValue.AppendLiteral(" %s"); + + for (unsigned int i = 0; i < ArrayLength(appProtocols); ++i) { +diff -up mozilla-aurora/browser/components/shell/src/nsGNOMEShellService.h.default mozilla-aurora/browser/components/shell/src/nsGNOMEShellService.h +--- mozilla-aurora/browser/components/shell/src/nsGNOMEShellService.h.default 2014-05-06 13:17:14.000000000 +0200 ++++ mozilla-aurora/browser/components/shell/src/nsGNOMEShellService.h 2014-05-06 14:07:22.973356181 +0200 +@@ -13,7 +13,7 @@ + class nsGNOMEShellService MOZ_FINAL : public nsIShellService + { + public: +- nsGNOMEShellService() : mCheckedThisSession(false), mAppIsInPath(false) { } ++ nsGNOMEShellService() : mCheckedThisSession(true), mAppIsInPath(true) { } + + NS_DECL_ISUPPORTS + NS_DECL_NSISHELLSERVICE diff --git a/SOURCES/firefox-enable-addons.patch b/SOURCES/firefox-enable-addons.patch new file mode 100644 index 0000000..ba74f5f --- /dev/null +++ b/SOURCES/firefox-enable-addons.patch @@ -0,0 +1,25 @@ +diff -up mozilla-aurora/browser/app/profile/firefox.js.addons mozilla-aurora/browser/app/profile/firefox.js +--- mozilla-aurora/browser/app/profile/firefox.js.addons 2014-05-06 13:17:13.000000000 +0200 ++++ mozilla-aurora/browser/app/profile/firefox.js 2014-05-06 14:16:32.678968008 +0200 +@@ -65,7 +65,8 @@ pref("extensions.hotfix.certs.1.sha1Fing + + // Disable add-ons that are not installed by the user in all scopes by default. + // See the SCOPE constants in AddonManager.jsm for values to use here. +-pref("extensions.autoDisableScopes", 15); ++pref("extensions.autoDisableScopes", 0); ++pref("extensions.showMismatchUI", false); + + // Dictionary download preference + pref("browser.dictionaries.download.url", "https://addons.mozilla.org/%LOCALE%/firefox/dictionaries/"); +diff -up mozilla-aurora/toolkit/mozapps/extensions/internal/XPIProvider.jsm.addons mozilla-aurora/toolkit/mozapps/extensions/internal/XPIProvider.jsm +--- mozilla-aurora/toolkit/mozapps/extensions/internal/XPIProvider.jsm.addons 2014-05-06 14:16:32.680968014 +0200 ++++ mozilla-aurora/toolkit/mozapps/extensions/internal/XPIProvider.jsm 2014-05-06 14:17:29.482132549 +0200 +@@ -1894,7 +1894,7 @@ this.XPIProvider = { + this.showUpgradeUI(); + flushCaches = true; + } +- else if (aAppChanged === undefined) { ++ else { + // For new profiles we will never need to show the add-on selection UI + Services.prefs.setBoolPref(PREF_SHOWN_SELECTION_UI, true); + } diff --git a/SOURCES/firefox-enable-plugins.patch b/SOURCES/firefox-enable-plugins.patch new file mode 100644 index 0000000..a1ee8c5 --- /dev/null +++ b/SOURCES/firefox-enable-plugins.patch @@ -0,0 +1,21 @@ +diff -up firefox-31.1.0/mozilla-esr31/browser/app/profile/firefox.js.plugins firefox-31.1.0/mozilla-esr31/browser/app/profile/firefox.js +--- firefox-31.1.0/mozilla-esr31/browser/app/profile/firefox.js.plugins 2014-09-11 13:47:45.000000000 +0200 ++++ firefox-31.1.0/mozilla-esr31/browser/app/profile/firefox.js 2014-09-11 14:42:26.036810267 +0200 +@@ -657,7 +657,7 @@ pref("plugins.click_to_play", true); + + pref("plugins.hideMissingPluginsNotification", false); + +-pref("plugin.default.state", 1); ++pref("plugin.default.state", 2); + + // Plugins bundled in XPIs are enabled by default. + pref("plugin.defaultXpi.state", 2); +@@ -665,7 +665,7 @@ pref("plugin.defaultXpi.state", 2); + // Flash is enabled by default, and Java is click-to-activate by default on + // all channels. + pref("plugin.state.flash", 2); +-pref("plugin.state.java", 1); ++pref("plugin.state.java", 2); + + // Whitelist Requests + diff --git a/SOURCES/firefox-install-dir.patch b/SOURCES/firefox-install-dir.patch index e788fa0..c962fa5 100644 --- a/SOURCES/firefox-install-dir.patch +++ b/SOURCES/firefox-install-dir.patch @@ -1,23 +1,12 @@ -diff -up mozilla-aurora-7676a9a06403/config/baseconfig.mk.dir mozilla-aurora-7676a9a06403/config/baseconfig.mk ---- mozilla-aurora-7676a9a06403/config/baseconfig.mk.dir 2012-09-13 14:18:35.000000000 +0200 -+++ mozilla-aurora-7676a9a06403/config/baseconfig.mk 2012-09-26 10:13:45.258240426 +0200 -@@ -2,7 +2,7 @@ INCLUDED_AUTOCONF_MK = 1 - +diff -up mozilla-aurora/config/baseconfig.mk.orig mozilla-aurora/config/baseconfig.mk +--- mozilla-aurora/config/baseconfig.mk.orig 2014-05-06 13:17:17.000000000 +0200 ++++ mozilla-aurora/config/baseconfig.mk 2014-05-27 17:13:05.215503107 +0200 +@@ -4,7 +4,7 @@ + # whether a normal build is happening or whether the check is running. includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) -installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +installdir = $(libdir)/$(MOZ_APP_NAME) sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) - DIST = $(DEPTH)/dist - -diff -up mozilla-aurora-7676a9a06403/js/src/config/baseconfig.mk.dir mozilla-aurora-7676a9a06403/js/src/config/baseconfig.mk ---- mozilla-aurora-7676a9a06403/js/src/config/baseconfig.mk.dir 2012-09-13 14:18:35.000000000 +0200 -+++ mozilla-aurora-7676a9a06403/js/src/config/baseconfig.mk 2012-09-26 10:14:07.353351833 +0200 -@@ -1,6 +1,6 @@ - INCLUDED_AUTOCONF_MK = 1 - --installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) -+installdir = $(libdir)/$(MOZ_APP_NAME) - sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) - - ifneq (,$(filter /%,$(TOP_DIST))) + ifndef TOP_DIST + TOP_DIST = dist diff --git a/SOURCES/firefox-redhat-default-prefs.js b/SOURCES/firefox-redhat-default-prefs.js index 2a22d05..b258458 100644 --- a/SOURCES/firefox-redhat-default-prefs.js +++ b/SOURCES/firefox-redhat-default-prefs.js @@ -18,7 +18,9 @@ pref("browser.startup.homepage", "data:text/plain,browser.startup.hom pref("toolkit.storage.synchronous", 0); pref("startup.homepage_override_url", "http://www.redhat.com"); pref("startup.homepage_welcome_url", "http://www.redhat.com"); -pref("javascript.options.baselinejit.content", false); -pref("javascript.options.baselinejit.chrome", false); +/* Workaround for rhbz#1134876 */ +pref("javascript.options.baselinejit", false); pref("extensions.shownSelectionUI", true); -pref("layout.imagevisibility.enabled", false); +pref("network.negotiate-auth.allow-insecure-ntlm-v1", true); +/* Workaround for mozbz#1063315 */ +pref("security.use_mozillapkix_verification", false); diff --git a/SOURCES/firefox-system-nss-3.16.2.patch b/SOURCES/firefox-system-nss-3.16.2.patch deleted file mode 100644 index 80a5712..0000000 --- a/SOURCES/firefox-system-nss-3.16.2.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up firefox-24.3.0/mozilla-esr24/configure.in.nss firefox-24.3.0/mozilla-esr24/configure.in ---- firefox-24.3.0/mozilla-esr24/configure.in.nss 2014-01-30 15:46:38.000000000 +0100 -+++ firefox-24.3.0/mozilla-esr24/configure.in 2014-01-30 17:01:30.614179142 +0100 -@@ -3944,7 +3944,7 @@ MOZ_ARG_WITH_BOOL(system-nss, - _USE_SYSTEM_NSS=1 ) - - if test -n "$_USE_SYSTEM_NSS"; then -- AM_PATH_NSS(3.16.2, [MOZ_NATIVE_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])]) -+ AM_PATH_NSS(3.15.4, [MOZ_NATIVE_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])]) - fi - - if test -n "$MOZ_NATIVE_NSS"; then diff --git a/SOURCES/mozilla-906754.patch b/SOURCES/mozilla-906754.patch deleted file mode 100644 index baf13d7..0000000 --- a/SOURCES/mozilla-906754.patch +++ /dev/null @@ -1,204 +0,0 @@ -diff -up mozilla-esr24/xpcom/ds/TimeStamp.cpp.906754 mozilla-esr24/xpcom/ds/TimeStamp.cpp ---- mozilla-esr24/xpcom/ds/TimeStamp.cpp.906754 2013-12-06 03:21:33.000000000 +0100 -+++ mozilla-esr24/xpcom/ds/TimeStamp.cpp 2013-12-20 16:11:06.607243958 +0100 -@@ -13,15 +13,41 @@ - - namespace mozilla { - --TimeStamp TimeStamp::sFirstTimeStamp; --TimeStamp TimeStamp::sProcessCreation; -+/** -+ * Wrapper class used to initialize static data used by the TimeStamp class -+ */ -+struct TimeStampInitialization { -+ /** -+ * First timestamp taken when the class static initializers are run. This -+ * timestamp is used to sanitize timestamps coming from different sources. -+ */ -+ TimeStamp mFirstTimeStamp; -+ -+ /** -+ * Timestamp representing the time when the process was created. This field -+ * is populated lazily the first time this information is required and is -+ * replaced every time the process is restarted. -+ */ -+ TimeStamp mProcessCreation; -+ -+ TimeStampInitialization() { -+ TimeStamp::Startup(); -+ mFirstTimeStamp = TimeStamp::Now(); -+ }; -+ -+ ~TimeStampInitialization() { -+ TimeStamp::Shutdown(); -+ }; -+}; -+ -+static TimeStampInitialization sInitOnce; - - TimeStamp - TimeStamp::ProcessCreation(bool& aIsInconsistent) - { - aIsInconsistent = false; - -- if (sProcessCreation.IsNull()) { -+ if (sInitOnce.mProcessCreation.IsNull()) { - char *mozAppRestart = PR_GetEnv("MOZ_APP_RESTART"); - TimeStamp ts; - -@@ -31,7 +57,7 @@ TimeStamp::ProcessCreation(bool& aIsInco - if (mozAppRestart && (strcmp(mozAppRestart, "") != 0)) { - /* Firefox was restarted, use the first time-stamp we've taken as the new - * process startup time and unset MOZ_APP_RESTART. */ -- ts = sFirstTimeStamp; -+ ts = sInitOnce.mFirstTimeStamp; - PR_SetEnv("MOZ_APP_RESTART="); - } else { - TimeStamp now = Now(); -@@ -39,26 +65,26 @@ TimeStamp::ProcessCreation(bool& aIsInco - - ts = now - TimeDuration::FromMicroseconds(uptime); - -- if ((ts > sFirstTimeStamp) || (uptime == 0)) { -+ if ((ts > sInitOnce.mFirstTimeStamp) || (uptime == 0)) { - /* If the process creation timestamp was inconsistent replace it with - * the first one instead and notify that a telemetry error was - * detected. */ - aIsInconsistent = true; -- ts = sFirstTimeStamp; -+ ts = sInitOnce.mFirstTimeStamp; - } - } - -- sProcessCreation = ts; -+ sInitOnce.mProcessCreation = ts; - } - -- return sProcessCreation; -+ return sInitOnce.mProcessCreation; - } - - void - TimeStamp::RecordProcessRestart() - { - PR_SetEnv("MOZ_APP_RESTART=1"); -- sProcessCreation = TimeStamp(); -+ sInitOnce.mProcessCreation = TimeStamp(); - } - - } // namespace mozilla -diff -up mozilla-esr24/xpcom/ds/TimeStamp_darwin.cpp.906754 mozilla-esr24/xpcom/ds/TimeStamp_darwin.cpp ---- mozilla-esr24/xpcom/ds/TimeStamp_darwin.cpp.906754 2013-12-06 03:21:33.000000000 +0100 -+++ mozilla-esr24/xpcom/ds/TimeStamp_darwin.cpp 2013-12-20 15:58:50.356993425 +0100 -@@ -114,18 +114,6 @@ TimeDuration::Resolution() - return TimeDuration::FromTicks(int64_t(sResolution)); - } - --struct TimeStampInitialization --{ -- TimeStampInitialization() { -- TimeStamp::Startup(); -- } -- ~TimeStampInitialization() { -- TimeStamp::Shutdown(); -- } --}; -- --static TimeStampInitialization initOnce; -- - nsresult - TimeStamp::Startup() - { -@@ -152,8 +140,6 @@ TimeStamp::Startup() - sResolutionSigDigs *= 10); - - gInitialized = true; -- sFirstTimeStamp = TimeStamp::Now(); -- sProcessCreation = TimeStamp(); - - return NS_OK; - } -diff -up mozilla-esr24/xpcom/ds/TimeStamp.h.906754 mozilla-esr24/xpcom/ds/TimeStamp.h ---- mozilla-esr24/xpcom/ds/TimeStamp.h.906754 2013-12-06 03:21:33.000000000 +0100 -+++ mozilla-esr24/xpcom/ds/TimeStamp.h 2013-12-20 15:58:50.356993425 +0100 -@@ -363,19 +363,6 @@ private: - * When using a system clock, a value is system dependent. - */ - TimeStampValue mValue; -- -- /** -- * First timestamp taken when the class static initializers are run. This -- * timestamp is used to sanitize timestamps coming from different sources. -- */ -- static TimeStamp sFirstTimeStamp; -- -- /** -- * Timestamp representing the time when the process was created. This field -- * is populated lazily the first time this information is required and is -- * replaced every time the process is restarted. -- */ -- static TimeStamp sProcessCreation; - }; - - } -diff -up mozilla-esr24/xpcom/ds/TimeStamp_posix.cpp.906754 mozilla-esr24/xpcom/ds/TimeStamp_posix.cpp ---- mozilla-esr24/xpcom/ds/TimeStamp_posix.cpp.906754 2013-12-06 03:21:33.000000000 +0100 -+++ mozilla-esr24/xpcom/ds/TimeStamp_posix.cpp 2013-12-20 15:58:50.356993425 +0100 -@@ -159,17 +159,6 @@ TimeDuration::Resolution() - return TimeDuration::FromTicks(int64_t(sResolution)); - } - --struct TimeStampInitialization --{ -- TimeStampInitialization() { -- TimeStamp::Startup(); -- } -- ~TimeStampInitialization() { -- TimeStamp::Shutdown(); -- } --}; -- --static TimeStampInitialization initOnce; - static bool gInitialized = false; - - nsresult -@@ -192,8 +181,6 @@ TimeStamp::Startup() - sResolutionSigDigs *= 10); - - gInitialized = true; -- sFirstTimeStamp = TimeStamp::Now(); -- sProcessCreation = TimeStamp(); - - return NS_OK; - } -diff -up mozilla-esr24/xpcom/ds/TimeStamp_windows.cpp.906754 mozilla-esr24/xpcom/ds/TimeStamp_windows.cpp ---- mozilla-esr24/xpcom/ds/TimeStamp_windows.cpp.906754 2013-12-06 03:21:33.000000000 +0100 -+++ mozilla-esr24/xpcom/ds/TimeStamp_windows.cpp 2013-12-20 15:58:50.357993430 +0100 -@@ -457,18 +457,6 @@ TimeDuration::Resolution() - return TimeDuration::FromTicks(int64_t(sResolution)); - } - --struct TimeStampInitialization --{ -- TimeStampInitialization() { -- TimeStamp::Startup(); -- } -- ~TimeStampInitialization() { -- TimeStamp::Shutdown(); -- } --}; -- --static TimeStampInitialization initOnce; -- - static bool - HasStableTSC() - { -@@ -534,8 +522,6 @@ TimeStamp::Startup() - - InitThresholds(); - InitResolution(); -- sFirstTimeStamp = TimeStamp::Now(); -- sProcessCreation = TimeStamp(); - - return NS_OK; - } diff --git a/SOURCES/remove-ogg.patch b/SOURCES/remove-ogg.patch new file mode 100644 index 0000000..9bf924b --- /dev/null +++ b/SOURCES/remove-ogg.patch @@ -0,0 +1,449 @@ +diff -up mozilla-aurora/config/external/moz.build.remove-ogg mozilla-aurora/config/external/moz.build +--- mozilla-aurora/config/external/moz.build.remove-ogg 2014-05-06 13:17:17.000000000 +0200 ++++ mozilla-aurora/config/external/moz.build 2014-06-03 13:51:14.450340480 +0200 +@@ -33,14 +33,15 @@ if CONFIG['MOZ_WEBM_ENCODER']: + if CONFIG['MOZ_VPX'] and not CONFIG['MOZ_NATIVE_LIBVPX']: + external_dirs += ['media/libvpx'] + ++if CONFIG['MOZ_OGG']: ++ external_dirs += ['media/libogg', 'media/libtheora'] ++ + if not CONFIG['MOZ_NATIVE_PNG']: + external_dirs += ['media/libpng'] + + external_dirs += [ + 'media/kiss_fft', + 'media/libcubeb', +- 'media/libogg', +- 'media/libtheora', + 'media/libspeex_resampler', + 'media/libsoundtouch', + ] +diff -up mozilla-aurora/configure.in.remove-ogg mozilla-aurora/configure.in +--- mozilla-aurora/configure.in.remove-ogg 2014-05-06 13:17:17.000000000 +0200 ++++ mozilla-aurora/configure.in 2014-06-03 13:51:14.452340483 +0200 +@@ -3938,6 +3938,7 @@ MOZ_FEEDS=1 + MOZ_WEBAPP_RUNTIME= + MOZ_JSDEBUGGER=1 + MOZ_AUTH_EXTENSION=1 ++MOZ_OGG=1 + MOZ_RAW= + MOZ_VORBIS= + MOZ_TREMOR= +@@ -5191,25 +5192,37 @@ fi + + AC_SUBST(MOZ_RAW) + +-dnl Checks for __attribute__(aligned()) directive need by libogg +-AC_CACHE_CHECK([__attribute__ ((aligned ())) support], +- [ac_cv_c_attribute_aligned], +- [ac_cv_c_attribute_aligned=0 +- CFLAGS_save="${CFLAGS}" +- CFLAGS="${CFLAGS} -Werror" +- for ac_cv_c_attr_align_try in 64 32 16 8; do +- echo "trying $ac_cv_c_attr_align_try" +- AC_TRY_COMPILE([], +- [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;], +- [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"]) +- if test "$ac_cv_c_attribute_aligned" != 0; then +- break; +- fi +- done +- CFLAGS="${CFLAGS_save}"]) +-if test "${ac_cv_c_attribute_aligned}" != "0"; then +- AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX], +- [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment]) ++dnl ======================================================== ++dnl = Disable Ogg Codecs ++dnl ======================================================== ++MOZ_ARG_DISABLE_BOOL(ogg, ++[ --disable-ogg Disable support for OGG media (Theora video and Vorbis audio)], ++ MOZ_OGG=, ++ MOZ_OGG=1) ++ ++if test -n "$MOZ_OGG"; then ++ AC_DEFINE(MOZ_OGG) ++ ++ dnl Checks for __attribute__(aligned()) directive ++ AC_CACHE_CHECK([__attribute__ ((aligned ())) support], ++ [ac_cv_c_attribute_aligned], ++ [ac_cv_c_attribute_aligned=0 ++ CFLAGS_save="${CFLAGS}" ++ CFLAGS="${CFLAGS} -Werror" ++ for ac_cv_c_attr_align_try in 64 32 16 8; do ++ echo "trying $ac_cv_c_attr_align_try" ++ AC_TRY_COMPILE([], ++ [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;], ++ [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"]) ++ if test "$ac_cv_c_attribute_aligned" != 0; then ++ break; ++ fi ++ done ++ CFLAGS="${CFLAGS_save}"]) ++ if test "${ac_cv_c_attribute_aligned}" != "0"; then ++ AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX], ++ [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment]) ++ fi + fi + + dnl ======================================================== +@@ -5426,7 +5439,7 @@ AC_SUBST(MOZ_NATIVE_LIBVPX) + AC_SUBST(MOZ_LIBVPX_CFLAGS) + AC_SUBST(MOZ_LIBVPX_LIBS) + +-if test "$MOZ_WEBM"; then ++if test "$MOZ_WEBM" -o "$MOZ_OGG"; then + if test "$MOZ_SAMPLE_TYPE_FLOAT32"; then + MOZ_VORBIS=1 + else +@@ -5533,6 +5546,15 @@ dnl ==================================== + dnl = Handle dependent MEDIA defines + dnl ======================================================== + ++if test -n "$MOZ_OPUS" -a -z "$MOZ_OGG"; then ++ AC_MSG_ERROR([MOZ_OPUS requires MOZ_OGG which is disabled.]) ++fi ++ ++if test -n "$MOZ_VORBIS" -a -z "$MOZ_OGG"; then ++ AC_MSG_ERROR([MOZ_VORBIS requires MOZ_OGG which is disabled. ++Note that you need vorbis support for WebM playback.]) ++fi ++ + if test -n "$MOZ_VORBIS" -a -n "$MOZ_TREMOR"; then + AC_MSG_ERROR([MOZ_VORBIS and MOZ_TREMOR are mutually exclusive! The build system should not allow them both to be set, but they are. Please file a bug at https://bugzilla.mozilla.org/]) + fi +@@ -8842,6 +8864,7 @@ AC_SUBST(MOZ_APPLEMEDIA) + AC_SUBST(MOZ_OMX_PLUGIN) + AC_SUBST(MOZ_VPX_ERROR_CONCEALMENT) + AC_SUBST(MOZ_VPX) ++AC_SUBST(MOZ_OGG) + AC_SUBST(VPX_AS) + AC_SUBST(VPX_ASFLAGS) + AC_SUBST(VPX_DASH_C_FLAG) +diff -up mozilla-aurora/content/html/content/src/HTMLAudioElement.cpp.remove-ogg mozilla-aurora/content/html/content/src/HTMLAudioElement.cpp +--- mozilla-aurora/content/html/content/src/HTMLAudioElement.cpp.remove-ogg 2014-05-06 13:17:19.000000000 +0200 ++++ mozilla-aurora/content/html/content/src/HTMLAudioElement.cpp 2014-06-03 13:51:14.452340483 +0200 +@@ -81,12 +81,16 @@ nsresult HTMLAudioElement::SetAcceptHead + #ifdef MOZ_WEBM + "audio/webm," + #endif ++#ifdef MOZ_OGG + "audio/ogg," ++#endif + #ifdef MOZ_WAVE + "audio/wav," + #endif + "audio/*;q=0.9," ++#ifdef MOZ_OGG + "application/ogg;q=0.7," ++#endif + "video/*;q=0.6,*/*;q=0.5"); + + return aChannel->SetRequestHeader(NS_LITERAL_CSTRING("Accept"), +diff -up mozilla-aurora/content/html/content/src/HTMLVideoElement.cpp.remove-ogg mozilla-aurora/content/html/content/src/HTMLVideoElement.cpp +--- mozilla-aurora/content/html/content/src/HTMLVideoElement.cpp.remove-ogg 2014-05-06 13:17:19.000000000 +0200 ++++ mozilla-aurora/content/html/content/src/HTMLVideoElement.cpp 2014-06-03 13:51:14.452340483 +0200 +@@ -136,9 +136,13 @@ nsresult HTMLVideoElement::SetAcceptHead + #ifdef MOZ_WEBM + "video/webm," + #endif ++#ifdef MOZ_OGG + "video/ogg," ++#endif + "video/*;q=0.9," ++#ifdef MOZ_OGG + "application/ogg;q=0.7," ++#endif + "audio/*;q=0.6,*/*;q=0.5"); + + return aChannel->SetRequestHeader(NS_LITERAL_CSTRING("Accept"), +diff -up mozilla-aurora/content/media/DecoderTraits.cpp.remove-ogg mozilla-aurora/content/media/DecoderTraits.cpp +--- mozilla-aurora/content/media/DecoderTraits.cpp.remove-ogg 2014-05-06 13:17:20.000000000 +0200 ++++ mozilla-aurora/content/media/DecoderTraits.cpp 2014-06-03 13:51:14.452340483 +0200 +@@ -13,8 +13,10 @@ + #include "MediaPluginHost.h" + #endif + ++#ifdef MOZ_OGG + #include "OggDecoder.h" + #include "OggReader.h" ++#endif + #ifdef MOZ_WAVE + #include "WaveDecoder.h" + #include "WaveReader.h" +@@ -100,6 +102,7 @@ IsRawType(const nsACString& aType) + } + #endif + ++#ifdef MOZ_OGG + // See http://www.rfc-editor.org/rfc/rfc5334.txt for the definitions + // of Ogg media types and codec types + static const char* const gOggTypes[4] = { +@@ -131,6 +134,7 @@ IsOggType(const nsACString& aType) + + return CodecListContains(gOggTypes, aType); + } ++#endif + + #ifdef MOZ_WAVE + // See http://www.rfc-editor.org/rfc/rfc2361.txt for the definitions +@@ -199,8 +203,10 @@ IsGStreamerSupportedType(const nsACStrin + if (IsWebMType(aMimeType) && !Preferences::GetBool("media.prefer-gstreamer", false)) + return false; + #endif ++#ifdef MOZ_OGG + if (IsOggType(aMimeType) && !Preferences::GetBool("media.prefer-gstreamer", false)) + return false; ++#endif + + return GStreamerDecoder::CanHandleMediaType(aMimeType, nullptr); + } +@@ -370,10 +376,12 @@ DecoderTraits::CanHandleMediaType(const + result = CANPLAY_MAYBE; + } + #endif ++#ifdef MOZ_OGG + if (IsOggType(nsDependentCString(aMIMEType))) { + codecList = MediaDecoder::IsOpusEnabled() ? gOggCodecsWithOpus : gOggCodecs; + result = CANPLAY_MAYBE; + } ++#endif + #ifdef MOZ_WAVE + if (IsWaveType(nsDependentCString(aMIMEType))) { + codecList = gWaveCodecs; +@@ -479,10 +487,12 @@ InstantiateDecoder(const nsACString& aTy + return decoder.forget(); + } + #endif ++#ifdef MOZ_OGG + if (IsOggType(aType)) { + decoder = new OggDecoder(); + return decoder.forget(); + } ++#endif + #ifdef MOZ_WAVE + if (IsWaveType(aType)) { + decoder = new WaveDecoder(); +@@ -587,9 +597,11 @@ MediaDecoderReader* DecoderTraits::Creat + decoderReader = new RawReader(aDecoder); + } else + #endif ++#ifdef MOZ_OGG + if (IsOggType(aType)) { + decoderReader = new OggReader(aDecoder); + } else ++#endif + #ifdef MOZ_WAVE + if (IsWaveType(aType)) { + decoderReader = new WaveReader(aDecoder); +@@ -642,7 +654,9 @@ MediaDecoderReader* DecoderTraits::Creat + bool DecoderTraits::IsSupportedInVideoDocument(const nsACString& aType) + { + return ++#ifdef MOZ_OGG + IsOggType(aType) || ++#endif + #ifdef MOZ_OMX_DECODER + // We support amr inside WebApps on firefoxOS but not in general web content. + // Ensure we dont create a VideoDocument when accessing amr URLs directly. +diff -up mozilla-aurora/content/media/encoder/MediaEncoder.cpp.remove-ogg mozilla-aurora/content/media/encoder/MediaEncoder.cpp +--- mozilla-aurora/content/media/encoder/MediaEncoder.cpp.remove-ogg 2014-05-06 13:17:20.000000000 +0200 ++++ mozilla-aurora/content/media/encoder/MediaEncoder.cpp 2014-06-03 13:51:14.453340485 +0200 +@@ -9,7 +9,9 @@ + #include "prlog.h" + #include "mozilla/Preferences.h" + ++#ifdef MOZ_OGG + #include "OggWriter.h" ++#endif + #ifdef MOZ_OPUS + #include "OpusTrackEncoder.h" + +@@ -133,6 +135,7 @@ MediaEncoder::CreateEncoder(const nsAStr + mimeType = NS_LITERAL_STRING(AUDIO_3GPP); + } + #endif // MOZ_OMX_ENCODER ++#ifdef MOZ_OGG + else if (MediaDecoder::IsOggEnabled() && MediaDecoder::IsOpusEnabled() && + (aMIMEType.EqualsLiteral(AUDIO_OGG) || + (aTrackTypes & ContainerWriter::CREATE_AUDIO_TRACK))) { +@@ -142,6 +145,7 @@ MediaEncoder::CreateEncoder(const nsAStr + NS_ENSURE_TRUE(audioEncoder, nullptr); + mimeType = NS_LITERAL_STRING(AUDIO_OGG); + } ++#endif // MOZ_OGG + else { + LOG(PR_LOG_ERROR, ("Can not find any encoder to record this media stream")); + return nullptr; +diff -up mozilla-aurora/content/media/MediaDecoder.cpp.remove-ogg mozilla-aurora/content/media/MediaDecoder.cpp +--- mozilla-aurora/content/media/MediaDecoder.cpp.remove-ogg 2014-05-06 13:17:20.000000000 +0200 ++++ mozilla-aurora/content/media/MediaDecoder.cpp 2014-06-03 13:51:14.453340485 +0200 +@@ -1653,6 +1653,7 @@ MediaDecoder::IsRawEnabled() + } + #endif + ++#ifdef MOZ_OGG + bool + MediaDecoder::IsOpusEnabled() + { +@@ -1668,6 +1669,7 @@ MediaDecoder::IsOggEnabled() + { + return Preferences::GetBool("media.ogg.enabled"); + } ++#endif + + #ifdef MOZ_WAVE + bool +diff -up mozilla-aurora/content/media/MediaDecoder.h.remove-ogg mozilla-aurora/content/media/MediaDecoder.h +--- mozilla-aurora/content/media/MediaDecoder.h.remove-ogg 2014-05-06 13:17:20.000000000 +0200 ++++ mozilla-aurora/content/media/MediaDecoder.h 2014-06-03 13:51:14.453340485 +0200 +@@ -844,8 +844,10 @@ public: + static bool IsRawEnabled(); + #endif + ++#ifdef MOZ_OGG + static bool IsOggEnabled(); + static bool IsOpusEnabled(); ++#endif + + #ifdef MOZ_WAVE + static bool IsWaveEnabled(); +diff -up mozilla-aurora/content/media/moz.build.remove-ogg mozilla-aurora/content/media/moz.build +--- mozilla-aurora/content/media/moz.build.remove-ogg 2014-05-06 13:17:20.000000000 +0200 ++++ mozilla-aurora/content/media/moz.build 2014-06-03 13:51:14.453340485 +0200 +@@ -7,7 +7,6 @@ + PARALLEL_DIRS += [ + 'encoder', + 'mediasource', +- 'ogg', + 'webaudio', + 'webvtt' + ] +@@ -17,6 +16,9 @@ TEST_TOOL_DIRS += ['compiledtest'] + if CONFIG['MOZ_RAW']: + PARALLEL_DIRS += ['raw'] + ++if CONFIG['MOZ_OGG']: ++ PARALLEL_DIRS += ['ogg'] ++ + if CONFIG['MOZ_WAVE']: + PARALLEL_DIRS += ['wave'] + +diff -up mozilla-aurora/layout/media/symbols.def.in.remove-ogg mozilla-aurora/layout/media/symbols.def.in +--- mozilla-aurora/layout/media/symbols.def.in.remove-ogg 2014-05-06 13:17:13.000000000 +0200 ++++ mozilla-aurora/layout/media/symbols.def.in 2014-06-03 13:51:14.454340486 +0200 +@@ -145,6 +145,7 @@ cubeb_stream_init + cubeb_stream_start + cubeb_stream_stop + cubeb_stream_get_latency ++#ifdef MOZ_OGG + th_comment_clear + th_comment_init + th_decode_alloc +@@ -158,6 +159,7 @@ th_info_init + th_packet_isheader + th_packet_iskeyframe + th_setup_free ++#endif + #ifdef MOZ_OPUS + opus_decoder_create + opus_decoder_destroy +diff -up mozilla-aurora/modules/libpref/src/init/all.js.remove-ogg mozilla-aurora/modules/libpref/src/init/all.js +--- mozilla-aurora/modules/libpref/src/init/all.js.remove-ogg 2014-05-19 11:43:49.000000000 +0200 ++++ mozilla-aurora/modules/libpref/src/init/all.js 2014-06-03 13:51:25.028355239 +0200 +@@ -212,7 +212,9 @@ pref("media.fragmented-mp4.use-blank-dec + #ifdef MOZ_RAW + pref("media.raw.enabled", true); + #endif ++#ifdef MOZ_OGG + pref("media.ogg.enabled", true); ++#endif + #ifdef MOZ_OPUS + pref("media.opus.enabled", true); + #endif +diff -up mozilla-aurora/python/mozbuild/mozbuild/mozinfo.py.remove-ogg mozilla-aurora/python/mozbuild/mozbuild/mozinfo.py +--- mozilla-aurora/python/mozbuild/mozbuild/mozinfo.py.remove-ogg 2014-05-06 13:17:17.000000000 +0200 ++++ mozilla-aurora/python/mozbuild/mozbuild/mozinfo.py 2014-06-03 13:51:25.028355239 +0200 +@@ -84,6 +84,7 @@ def build_dict(config, env=os.environ): + d['tests_enabled'] = substs.get('ENABLE_TESTS') == "1" + d['bin_suffix'] = substs.get('BIN_SUFFIX', '') + ++ d['ogg'] = bool(substs.get('MOZ_OGG')) + d['webm'] = bool(substs.get('MOZ_WEBM')) + d['wave'] = bool(substs.get('MOZ_WAVE')) + +diff -up mozilla-aurora/uriloader/exthandler/nsExternalHelperAppService.cpp.remove-ogg mozilla-aurora/uriloader/exthandler/nsExternalHelperAppService.cpp +--- mozilla-aurora/uriloader/exthandler/nsExternalHelperAppService.cpp.remove-ogg 2014-05-06 13:17:27.000000000 +0200 ++++ mozilla-aurora/uriloader/exthandler/nsExternalHelperAppService.cpp 2014-06-03 13:51:25.030355242 +0200 +@@ -462,6 +462,7 @@ static nsDefaultMimeTypeEntry defaultMim + { "application/xhtml+xml", "xhtml" }, + { "application/xhtml+xml", "xht" }, + { TEXT_PLAIN, "txt" }, ++#ifdef MOZ_OGG + { VIDEO_OGG, "ogv" }, + { VIDEO_OGG, "ogg" }, + { APPLICATION_OGG, "ogg" }, +@@ -469,6 +470,7 @@ static nsDefaultMimeTypeEntry defaultMim + #ifdef MOZ_OPUS + { AUDIO_OGG, "opus" }, + #endif ++#endif + #ifdef MOZ_WEBM + { VIDEO_WEBM, "webm" }, + { AUDIO_WEBM, "webm" }, +diff -up mozilla-aurora/xpcom/build/nsXPComInit.cpp.remove-ogg mozilla-aurora/xpcom/build/nsXPComInit.cpp +--- mozilla-aurora/xpcom/build/nsXPComInit.cpp.remove-ogg 2014-06-03 14:04:38.913464144 +0200 ++++ mozilla-aurora/xpcom/build/nsXPComInit.cpp 2014-06-03 14:06:03.282582245 +0200 +@@ -133,7 +133,9 @@ extern nsresult nsStringInputStreamConst + #include "mozilla/VisualEventTracer.h" + #endif + ++#if MOZ_OGG + #include "ogg/ogg.h" ++#endif + #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) + #include "vpx_mem/vpx_mem.h" + #endif +@@ -378,7 +380,7 @@ private: + NS_IMPL_ISUPPORTS(ICUReporter, nsIMemoryReporter) + + /* static */ template<> Atomic CountingAllocatorBase::sAmount(0); +- ++#if MOZ_OGG + class OggReporter MOZ_FINAL : public nsIMemoryReporter, + public CountingAllocatorBase + { +@@ -420,7 +422,7 @@ NS_IMPL_ISUPPORTS(VPXReporter, nsIMemory + + /* static */ template<> Atomic CountingAllocatorBase::sAmount(0); + #endif /* MOZ_VPX */ +- ++#endif /* MOZ_OGG */ + #ifdef MOZ_WEBM + class NesteggReporter MOZ_FINAL : public nsIMemoryReporter + , public CountingAllocatorBase +@@ -606,12 +608,13 @@ NS_InitXPCOM2(nsIServiceManager* *result + // depend on the XPCOM-based memory reporting goop. So for now, we have + // this oddness. + mozilla::SetICUMemoryFunctions(); +- ++#if MOZ_OGG + // Do the same for libogg. + ogg_set_mem_functions(OggReporter::CountingMalloc, + OggReporter::CountingCalloc, + OggReporter::CountingRealloc, + OggReporter::CountingFree); ++#endif + + #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) + // And for VPX. +@@ -678,7 +681,9 @@ NS_InitXPCOM2(nsIServiceManager* *result + + // The memory reporter manager is up and running -- register our reporters. + RegisterStrongMemoryReporter(new ICUReporter()); ++#if MOZ_OGG + RegisterStrongMemoryReporter(new OggReporter()); ++#endif + #ifdef MOZ_VPX + RegisterStrongMemoryReporter(new VPXReporter()); + #endif diff --git a/SOURCES/rhbz-1032770.patch b/SOURCES/rhbz-1032770.patch deleted file mode 100644 index f9f0895..0000000 --- a/SOURCES/rhbz-1032770.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -up mozilla-esr24/storage/src/Makefile.in.rhbz-1032770 mozilla-esr24/storage/src/Makefile.in ---- mozilla-esr24/storage/src/Makefile.in.rhbz-1032770 2013-10-22 08:19:20.000000000 +0200 -+++ mozilla-esr24/storage/src/Makefile.in 2013-12-02 14:33:43.524479615 +0100 -@@ -22,14 +22,21 @@ endif - # Don't use the jemalloc allocator on Android, because we can't guarantee - # that Gecko will configure sqlite before it is first used (bug 730495). - # -+# Don't use the jemalloc allocator when using system sqlite. Linked in libraries -+# (such as NSS) might trigger an initialization of sqlite and allocation -+# of memory using the default allocator, prior to the storage service -+# registering its allocator, causing memory management failures (bug 938730). -+# - # Note: On Windows our sqlite build assumes we use jemalloc. If you disable - # MOZ_STORAGE_MEMORY on Windows, you will also need to change the "ifdef - # MOZ_MEMORY" options in db/sqlite3/src/Makefile.in. - ifdef MOZ_MEMORY -+ifndef MOZ_NATIVE_SQLITE - ifneq ($(OS_TARGET), Android) - DEFINES += -DMOZ_STORAGE_MEMORY - endif - endif -+endif - - # For nsDependentJSString - LOCAL_INCLUDES = \ diff --git a/SOURCES/xulrunner-24.0-gcc47.patch b/SOURCES/xulrunner-24.0-gcc47.patch deleted file mode 100644 index a6bff8e..0000000 --- a/SOURCES/xulrunner-24.0-gcc47.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up xulrunner-24.0/mozilla-release/toolkit/crashreporter/client/Makefile.in.gcc47 xulrunner-24.0/mozilla-release/toolkit/crashreporter/client/Makefile.in ---- xulrunner-24.0/mozilla-release/toolkit/crashreporter/client/Makefile.in.gcc47 2013-09-11 01:15:24.000000000 +0200 -+++ xulrunner-24.0/mozilla-release/toolkit/crashreporter/client/Makefile.in 2013-09-13 13:33:49.866875578 +0200 -@@ -60,6 +60,9 @@ $(DIST)/bin/crashreporter.crt: $(topsrcd - $(PYTHON) $(srcdir)/certdata2pem.py < $< > $@ - endif - -+# Needed for moz_free -+LIBS += -L$(LIBXUL_DIST)/lib -lmozalloc -+ - LIBS += \ - $(DEPTH)/toolkit/crashreporter/google-breakpad/src/common/linux/$(LIB_PREFIX)breakpad_linux_common_s.$(LIB_SUFFIX) \ - $(NULL) diff --git a/SPECS/firefox.spec b/SPECS/firefox.spec index e11b923..badc256 100644 --- a/SPECS/firefox.spec +++ b/SPECS/firefox.spec @@ -1,12 +1,12 @@ # Use system sqlite? -%define system_sqlite 1 -%define system_ffi 0 +%define system_sqlite 0 +%define system_ffi 1 # Use system nss/nspr? %define system_nss 1 -# Enable webm for i686/x86_64 only -%ifarch %{ix86} x86_64 +# Enable webm +%ifarch %{ix86} x86_64 ppc ppc64 %define enable_webm 1 %else %define enable_webm 0 @@ -23,12 +23,14 @@ # Minimal required versions %if %{?system_nss} -%define nspr_version 4.10.2 -%define nss_version 3.15.4 +%global nspr_version 4.10.6 +%global nss_version 3.16.2 %endif %define cairo_version 1.10.2 %define freetype_version 2.1.9 +%define ffi_version 3.0.9 +%global libvpx_version 1.3.0 # Bookmark variables %define default_bookmarks_file %{_datadir}/bookmarks/default-bookmarks.html @@ -38,7 +40,7 @@ %define langpackdir %{mozappdir}/langpacks %if %{?system_sqlite} -%define sqlite_version 3.6.22 +%define sqlite_version 3.8.4.2 # The actual sqlite version (see #480989): %global sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo 65536) %endif @@ -47,25 +49,25 @@ %define build_langpacks 1 %if %{official_branding} -%define tarballdir mozilla-esr24 +%define tarballdir mozilla-esr31 %define ext_version esr %endif Summary: Mozilla Firefox Web browser Name: firefox -Version: 24.8.0 -Release: 1%{?prever}%{?dist} +Version: 31.1.0 +Release: 6%{?prever}%{?dist} URL: http://www.mozilla.org/projects/firefox/ License: MPLv1.1 or GPLv2+ or LGPLv2+ Group: Applications/Internet # From ftp://ftp.mozilla.org/pub/firefox/releases/%{version}%{?pretag}/source Source0: firefox-%{version}%{?prever}%{?ext_version}.source.tar.bz2 %if %{build_langpacks} -Source1: firefox-langpacks-%{version}%{?ext_version}-20140826.tar.bz2 +Source1: firefox-langpacks-%{version}%{?ext_version}-20140828.tar.bz2 %endif Source10: firefox-mozconfig Source11: firefox-mozconfig-branded -Source12: firefox-centos-default-prefs.js +Source12: firefox-redhat-default-prefs.js Source20: firefox.desktop Source21: firefox.sh.in Source23: firefox.1 @@ -73,22 +75,18 @@ Source100: find-external-requires # Build patches Patch0: firefox-install-dir.patch -Patch4: xulrunner-24.0-gcc47.patch Patch5: xulrunner-24.0-jemalloc-ppc.patch # RPM specific patches -Patch11: firefox-24.0-default.patch -Patch12: firefox-17.0-enable-addons.patch +Patch11: firefox-default.patch +Patch12: firefox-enable-addons.patch Patch13: rhbz-966424.patch -Patch14: rhbz-1032770.patch -Patch15: firefox-system-nss-3.16.2.patch - -# RHEL patches -Patch100: firefox-5.0-asciidel.patch -Patch200: firefox-duckduckgo.patch +Patch14: remove-ogg.patch +Patch15: disable-webm.patch +Patch16: firefox-enable-plugins.patch # Upstream patches -Patch300: mozilla-906754.patch +Patch200: firefox-duckduckgo.patch %if %{official_branding} # Required by Mozilla Corporation @@ -107,35 +105,32 @@ BuildRequires: mesa-libGL-devel BuildRequires: system-bookmarks Requires: system-bookmarks Requires: redhat-indexhtml - -%if %{?enable_webm} -BuildRequires: libvpx-devel >= 1.0.0 -Requires: libvpx >= 1.0.0 -%endif - %if %{?system_sqlite} BuildRequires: sqlite-devel >= %{sqlite_version} Requires: sqlite >= %{sqlite_build_version} %endif - %if %{?system_nss} BuildRequires: nspr-devel >= %{nspr_version} BuildRequires: nss-devel >= %{nss_version} Requires: nspr >= %{nspr_version} Requires: nss >= %{nss_version} %endif - %if %{?system_cairo} BuildRequires: cairo-devel >= %{cairo_version} %endif - -BuildRequires: hunspell-devel -Requires: mozilla-filesystem %if %{?system_sqlite} BuildRequires: sqlite-devel >= %{sqlite_version} Requires: sqlite >= %{sqlite_build_version} %endif - +%if %{?system_ffi} +BuildRequires: libffi-devel >= %{ffi_version} +Requires: libffi >= %{ffi_version} +%endif +%if %{?enable_webm} +BuildRequires: libvpx-devel >= %{libvpx_version} +Requires: libvpx >= %{libvpx_version} +%endif +BuildRequires: hunspell-devel BuildRequires: libpng-devel BuildRequires: libjpeg-devel BuildRequires: zip @@ -156,7 +151,9 @@ BuildRequires: alsa-lib-devel BuildRequires: libnotify-devel BuildRequires: autoconf213 BuildRequires: mesa-libGL-devel +BuildRequires: pulseaudio-libs-devel +Requires: mozilla-filesystem Requires: liberation-fonts-common Requires: liberation-sans-fonts @@ -183,22 +180,22 @@ cd %{tarballdir} # Build patches # We have to keep original patch backup extension to go thru configure without problems with tests %patch0 -p1 -b .orig -%patch4 -p2 -b .gcc47.patch %patch5 -p2 -b .jemalloc-ppc.patch # RPM specific patches -%patch11 -p2 -b .default +%patch11 -p1 -b .default %patch12 -p1 -b .addons %patch13 -p1 -b .rhbz-966424 -%patch14 -p1 -b .rhbz-1032770 -%patch15 -p2 -b .nss-3.16.2 +%patch14 -p1 -b .remove-ogg +%if !%{?enable_webm} +%patch15 -p1 -b .webm +%endif +%patch16 -p2 -b .plugins -# RHEL patches -%patch100 -p1 -b .asciidel +# For branding specific patches. %patch200 -p1 -b .duckduckgo # Upstream patches -%patch300 -p1 -b .906754 %if %{official_branding} # Required by Mozilla Corporation @@ -206,7 +203,6 @@ cd %{tarballdir} %else # Not yet approved by Mozilla Corporation - %endif @@ -232,6 +228,7 @@ echo "ac_add_options --without-system-libvpx" >> .mozconfig echo "ac_add_options --disable-webm" >> .mozconfig echo "ac_add_options --disable-webrtc" >> .mozconfig echo "ac_add_options --disable-ogg" >> .mozconfig +echo "ac_add_options --disable-opus" >> .mozconfig %endif %if %{?system_cairo} @@ -259,7 +256,7 @@ echo "ac_add_options --disable-polyic" >> .mozconfig echo "ac_add_options --disable-tracejit" >> .mozconfig %endif -# RHEL 6 mozconfig changes: +# RHEL 7 mozconfig changes: echo "ac_add_options --enable-system-hunspell" >> .mozconfig echo "ac_add_options --enable-libnotify" >> .mozconfig echo "ac_add_options --enable-startup-notification" >> .mozconfig @@ -497,6 +494,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{mozappdir}/plugin-container %{mozappdir}/dependentlibs.list %exclude %{mozappdir}/defaults/pref/channel-prefs.js +%if !%{?system_nss} +%{mozappdir}/*.chk +%endif #we don't ship firefox-devel package %exclude %{_datadir}/idl/* @@ -506,14 +506,31 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #--------------------------------------------------------------------- %changelog -* Wed Sep 03 2014 CentOS Sources - 24.8.0-1.el7.centos -- CentOS default prefs +* Thu Sep 11 2014 Martin Stransky - 31.1.0-6 +- Enable all NPAPI plugins by default to keep compatibility + with the FF24 line + +* Wed Sep 10 2014 Martin Stransky - 31.1.0-5 +- Added workaround for rhbz#1134876 + +* Mon Sep 8 2014 Martin Stransky - 31.1.0-3 +- Disable mozilla::pkix (mozbz#1063315) +- Enable image cache + +* Mon Sep 8 2014 Martin Stransky - 31.1.0-2 +- A workaround for rhbz#1110291 -* Tue Aug 26 2014 Martin Stransky - 24.8.0-1 -- Update to 24.8.0 ESR +* Thu Aug 28 2014 Martin Stransky - 31.1.0-1 +- Update to 31.1.0 ESR -* Thu Jul 17 2014 Jan Horak - 24.7.0-1 -- Update to 24.7.0 ESR +* Tue Aug 5 2014 Martin Stransky - 31.0-3 +- Built with system libvpx/WebM + +* Mon Aug 4 2014 Martin Stransky - 31.0-2 +- Built with system nss/nspr + +* Mon Jul 28 2014 Martin Stransky - 31.0-1 +- Update to 31.0 ESR * Wed Jun 4 2014 Jan Horak - 24.6.0-1 - Update to 24.6.0 ESR @@ -684,4 +701,3 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : * Wed Jan 26 2011 Jan Horak - 3.6.14-2 - Update to 3.6.14 -