merge from firefox34
authorWolfgang Rosenauer <wr@rosenauer.org>
Sat, 06 Dec 2014 19:15:35 +0100
changeset 816 5551f1ff7e1d
parent 809 af47260a332c (diff)
parent 813 9e3063dcc69e (current diff)
child 817 8ee1122377bb
child 827 3caf8b25f146
merge from firefox34
MozillaFirefox/MozillaFirefox.changes
MozillaFirefox/MozillaFirefox.spec
MozillaFirefox/create-tar.sh
firefox-kde.patch
firefox-multilocale-chrome.patch
firefox-no-default-ualocale.patch
--- a/MozillaFirefox/MozillaFirefox.changes	Tue Dec 02 21:14:59 2014 +0100
+++ b/MozillaFirefox/MozillaFirefox.changes	Sat Dec 06 19:15:35 2014 +0100
@@ -1,4 +1,18 @@
 -------------------------------------------------------------------
+Sun Nov 16 15:03:49 UTC 2014 - wr@rosenauer.org
+
+- Aurora 35 (20141115) aka Firefox Developer Edition
+  * Aurora does not use branding subpackages anymore
+- rebased patches
+- dropped explicit support for everything older than 12.3
+  (including SLES11)
+  * merge firefox-kde.patch and firefox-kde-114.patch
+  * dropped mozilla-sle11.patch
+- reworked specfile to build conditionally based on release channel
+  either Firefox or Firefox Developer Edition
+- added mozilla-openaes-decl.patch to fix implicit declarations
+
+-------------------------------------------------------------------
 Sat Nov 29 21:23:03 UTC 2014 - wr@rosenauer.org
 
 - update to Firefox 34.0.5 (bnc#908009)
@@ -26,6 +40,7 @@
     Bad casting from the BasicThebesLayer to BasicContainerLayer
 - rebased patches
 - limit linker memory usage for %ix86
+- rebased patches
 
 -------------------------------------------------------------------
 Fri Nov  7 20:14:32 UTC 2014 - wr@rosenauer.org
--- a/MozillaFirefox/MozillaFirefox.desktop	Tue Dec 02 21:14:59 2014 +0100
+++ b/MozillaFirefox/MozillaFirefox.desktop	Sat Dec 06 19:15:35 2014 +0100
@@ -1,11 +1,11 @@
 [Desktop Entry]
 Encoding=UTF-8
-Name=Firefox
+Name=%NAME
 GenericName=Web Browser
 Comment=Web Browser
-TryExec=firefox
-Exec=firefox %u
-Icon=firefox
+TryExec=%EXEC
+Exec=%EXEC %u
+Icon=%ICON
 Terminal=false
 StartupNotify=true
 MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;application/x-xpinstall;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;
--- a/MozillaFirefox/MozillaFirefox.spec	Tue Dec 02 21:14:59 2014 +0100
+++ b/MozillaFirefox/MozillaFirefox.spec	Sat Dec 06 19:15:35 2014 +0100
@@ -16,40 +16,45 @@
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
-
 # changed with every update
 %define major 34
-%define mainver %major.0.5
-%define update_channel release
-%define releasedate 2014112600
+%define mainver %major.98
+%define update_channel aurora
+%define releasedate 2014111500
 
 # general build definitions
+%if "%{update_channel}" != "aurora"
+%define progname firefox
+%define pkgname  MozillaFirefox
+%define appname  Firefox
+%else
+%define progname firefox-dev
+%define pkgname  firefox-dev-edition
+%define appname  Firefox Developer Edition
+%endif
+%define progdir %{_prefix}/%_lib/%{progname}
+%define gnome_dir     %{_prefix}
+%define desktop_file_name %{progname}
 %define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
 %define _use_internal_dependency_generator 0
 %define __find_requires sh %{SOURCE4}
 %global provfind sh -c "grep -v '.so' | %__find_provides"
 %global __find_provides %provfind
-%define progname firefox
-%define progdir %{_prefix}/%_lib/%{progname}
-%define gnome_dir     %{_prefix}
-%if 0%{?suse_version} > 1130
-%define desktop_file_name firefox
-%else
-%define desktop_file_name %{name}
-%endif
-%if 0%{?suse_version} > 1210
 %if 0%{?suse_version} > 1310
 %define gstreamer_ver 1.0
 %define gstreamer 1
 %else
 %define gstreamer_ver 0.10
 %endif
-%endif
 # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys
 # Note: these are for the openSUSE Firefox builds ONLY. For your own distribution,
 # please get your own set of keys.
 %define _google_api_key AIzaSyD1hTe85_a14kr1Ks8T3Ce75rvbR1_Dx7Q
+%if %update_channel == "aurora"
+%define branding 0
+%else
 %define branding 1
+%endif
 %define localize 1
 %ifarch aarch64 ppc ppc64 ppc64le s390 s390x ia64 %arm
 %define crashreporter 0
@@ -57,7 +62,7 @@
 %define crashreporter 1
 %endif
 
-Name:           MozillaFirefox
+Name:           %{pkgname}
 BuildRequires:  Mesa-devel
 BuildRequires:  autoconf213
 BuildRequires:  dbus-1-glib-devel
@@ -75,17 +80,12 @@
 BuildRequires:  xorg-x11-libXt-devel
 BuildRequires:  yasm
 BuildRequires:  zip
-%if 0%{?suse_version} > 1110
 BuildRequires:  libiw-devel
 BuildRequires:  libproxy-devel
-%else
-BuildRequires:  wireless-tools
-%endif
 BuildRequires:  mozilla-nspr-devel >= 4.10.7
 BuildRequires:  mozilla-nss-devel >= 3.17.2
 BuildRequires:  nss-shared-helper-devel
 BuildRequires:  pkgconfig(libpulse)
-%if 0%{?suse_version} > 1210
 BuildRequires:  pkgconfig(gstreamer-%gstreamer_ver)
 BuildRequires:  pkgconfig(gstreamer-app-%gstreamer_ver)
 BuildRequires:  pkgconfig(gstreamer-plugins-base-%gstreamer_ver)
@@ -98,18 +98,19 @@
 Recommends:     gstreamer-0_10-fluendo-mp3
 Recommends:     gstreamer-0_10-plugins-ffmpeg
 %endif
-%endif
 Version:        %{mainver}
 Release:        0
+%if "%{name}" == "MozillaFirefox"
 Provides:       firefox = %{mainver}
 Provides:       firefox = %{version}-%{release}
+%endif
 Provides:       web_browser
 Provides:       browser(npapi)
 # this is needed to match this package with the kde4 helper package without the main package
 # having a hard requirement on the kde4 package
 %define kde_helper_version 6
 Provides:       mozilla-kde4-version = %{kde_helper_version}
-Summary:        Mozilla Firefox Web Browser
+Summary:        Mozilla %{appname} Web Browser
 License:        MPL-2.0
 Group:          Productivity/Networking/Web/Browsers
 Url:            http://www.mozilla.org/
@@ -139,20 +140,21 @@
 Patch7:         mozilla-language.patch
 Patch8:         mozilla-ntlm-full-path.patch
 Patch9:         mozilla-repo.patch
-Patch10:        mozilla-sle11.patch
-Patch11:        mozilla-icu-strncat.patch
-Patch12:        mozilla-arm-disable-edsp.patch
-Patch13:        mozilla-bmo1088588.patch
+Patch10:        mozilla-icu-strncat.patch
+Patch11:        mozilla-arm-disable-edsp.patch
+Patch12:        mozilla-bmo1088588.patch
+Patch13:        mozilla-openaes-decl.patch
 # Firefox/browser
 Patch101:       firefox-kde.patch
-Patch102:       firefox-kde-114.patch
-Patch103:       firefox-no-default-ualocale.patch
-Patch104:       firefox-multilocale-chrome.patch
-Patch105:       firefox-branded-icons.patch
+Patch102:       firefox-no-default-ualocale.patch
+Patch103:       firefox-multilocale-chrome.patch
+Patch104:       firefox-branded-icons.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Requires(post):   coreutils shared-mime-info desktop-file-utils
 Requires(postun): shared-mime-info desktop-file-utils
+%if %branding
 Requires:       %{name}-branding > 20.0
+%endif
 Requires:       mozilla-nspr >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr)
 Requires:       mozilla-nss >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss)
 Recommends:     libcanberra0
@@ -168,7 +170,7 @@
 plethora of extensions.
 
 %package devel
-Summary:        Devel package for Firefox
+Summary:        Devel package for %{appname}
 Group:          Development/Tools/Other
 Provides:       firefox-devel = %{version}-%{release}
 Requires:       %{name} = %{version}
@@ -176,11 +178,11 @@
 Requires:       perl(XML::Simple)
 
 %description devel
-Development files for Firefox to make packaging of addons easier.
+Development files for %{appname} to make packaging of addons easier.
 
 %if %localize
 %package translations-common
-Summary:        Common translations for Firefox
+Summary:        Common translations for %{appname}
 Group:          System/Localization
 Provides:       locale(%{name}:ar;ca;cs;da;de;en_GB;el;es_AR;es_CL;es_ES;fi;fr;hu;it;ja;ko;nb_NO;nl;pl;pt_BR;pt_PT;ru;sv_SE;zh_CN;zh_TW)
 Requires:       %{name} = %{version}
@@ -188,10 +190,10 @@
 
 %description translations-common
 This package contains several common languages for the user interface
-of Firefox.
+of %{appname}.
 
 %package translations-other
-Summary:        Extra translations for Firefox
+Summary:        Extra translations for %{appname}
 Group:          System/Localization
 Provides:       locale(%{name}:ach;af;ak;as;ast;be;bg;bn_BD;bn_IN;br;bs;csb;cy;en_ZA;eo;es_MX;et;eu;fa;ff;fy_NL;ga_IE;gd;gl;gu_IN;he;hi_IN;hr;hy_AM;id;is;kk;km;kn;ku;lg;lij;lt;lv;mai;mk;ml;mr;nn_NO;nso;or;pa_IN;rm;ro;si;sk;sl;son;sq;sr;ta;ta_LK;te;th;tr;uk;vi;zu)
 Requires:       %{name} = %{version}
@@ -199,11 +201,12 @@
 
 %description translations-other
 This package contains rarely used languages for the user interface
-of Firefox.
+of %{appname}.
 %endif
 
+%if %branding
 %package branding-upstream
-Summary:        Upstream branding for Firefox
+Summary:        Upstream branding for %{appname}
 Group:          Productivity/Networking/Web/Browsers
 Provides:       %{name}-branding = %{version}
 Conflicts:      otherproviders(%{name}-branding)
@@ -219,13 +222,12 @@
 #BRAND: It's also possible to drop files in /usr/lib/firefox/searchplugins
 
 %description branding-upstream
-This package provides upstream look and feel for Firefox.
-
+This package provides upstream look and feel for %{appname}.
+%endif
 
 %if %crashreporter
-
 %package buildsymbols
-Summary:        Breakpad buildsymbols for %{name}
+Summary:        Breakpad buildsymbols for %{appname}
 Group:          Development/Debug
 
 %description buildsymbols
@@ -249,24 +251,19 @@
 %patch7 -p1
 %patch8 -p1
 %patch9 -p1
-%if 0%{?suse_version} < 1120
 %patch10 -p1
-%endif
 %patch11 -p1
 %patch12 -p1
 %patch13 -p1
 # Firefox
 %patch101 -p1
-%if 0%{?suse_version} >= 1140
 %patch102 -p1
-%endif
 %patch103 -p1
 %patch104 -p1
-%patch105 -p1
 
 %build
 # no need to add build time to binaries
-modified="$(sed -n '/^----/n;s/ - .*$//;p;q' "%{_sourcedir}/%{name}.changes")"
+modified="$(sed -n '/^----/n;s/ - .*$//;p;q' "%{_sourcedir}/MozillaFirefox.changes")"
 DATE="\"$(date -d "${modified}" "+%%b %%e %%Y")\""
 TIME="\"$(date -d "${modified}" "+%%R")\""
 find . -regex ".*\.c\|.*\.cpp\|.*\.h" -exec sed -i "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} +
@@ -338,19 +335,12 @@
 %if 0%{?gstreamer} == 1
 ac_add_options --enable-gstreamer=1.0
 %endif
-%if 0%{?suse_version} > 1130
 ac_add_options --disable-gnomevfs
 ac_add_options --enable-gio
-%endif
-%if 0%{?suse_version} < 1220
-ac_add_options --disable-gstreamer
-%endif
 %if %branding
 ac_add_options --enable-official-branding
 %endif
-%if 0%{?suse_version} > 1110
 ac_add_options --enable-libproxy
-%endif
 %if ! %crashreporter
 ac_add_options --disable-crashreporter
 %endif
@@ -444,16 +434,21 @@
   %{SOURCE3} > %{buildroot}%{progdir}/%{progname}.sh
 chmod 755 %{buildroot}%{progdir}/%{progname}.sh
 ln -sf ../..%{progdir}/%{progname}.sh %{buildroot}%{_bindir}/%{progname}
-# desktop definition
+# desktop file
 mkdir -p %{buildroot}%{_datadir}/applications
-install -m 644 %{SOURCE1} \
-   %{buildroot}%{_datadir}/applications/%{desktop_file_name}.desktop
+sed "s:%%NAME:%{appname}:g
+s:%%EXEC:%{progname}:g
+s:%%ICON:%{progname}:g" \
+  %{SOURCE1} > %{buildroot}%{_datadir}/applications/%{desktop_file_name}.desktop
+%suse_update_desktop_file %{desktop_file_name} Network WebBrowser GTK
 # additional mime-types
 mkdir -p %{buildroot}%{_datadir}/mime/packages
 cp %{SOURCE8} %{buildroot}%{_datadir}/mime/packages/%{progname}.xml
 # appdata
+%if "%{update_channel}" != "aurora"
 mkdir -p %{buildroot}%{_datadir}/appdata
 cp %{SOURCE15} %{buildroot}%{_datadir}/appdata/%{desktop_file_name}.appdata.xml
+%endif
 # install man-page
 mkdir -p %{buildroot}%{_mandir}/man1/
 cp %{SOURCE11} %{buildroot}%{_mandir}/man1/%{progname}.1
@@ -474,7 +469,6 @@
   ln -sf %{progdir}/browser/chrome/icons/default/default$size.png \
          %{buildroot}%{gnome_dir}/share/icons/hicolor/${size}x${size}/apps/%{progname}.png
 done
-%suse_update_desktop_file %{desktop_file_name} Network WebBrowser GTK
 # excludes
 rm -f %{buildroot}%{progdir}/updater.ini
 rm -f %{buildroot}%{progdir}/removed-files
@@ -536,33 +530,15 @@
 
 %post
 # update mime and desktop database
-%if 0%{?suse_version} > 1130
 %mime_database_post
 %desktop_database_post
 %icon_theme_cache_post
-%else
-if [ -f usr/bin/update-mime-database ] ; then
-  usr/bin/update-mime-database %{_datadir}/mime > /dev/null || :
-fi
-if [ -f usr/bin/update-desktop-database ] ; then
-  usr/bin/update-desktop-database > /dev/null || :
-fi
-%endif
 exit 0
 
 %postun
-%if 0%{?suse_version} > 1130
 %icon_theme_cache_postun
 %desktop_database_postun
 %mime_database_postun
-%else
-if [ -f usr/bin/update-mime-database ] ; then
-  usr/bin/update-mime-database %{_datadir}/mime > /dev/null || :
-fi
-if [ -f usr/bin/update-desktop-database ] ; then
-  usr/bin/update-desktop-database > /dev/null || :
-fi
-%endif
 exit 0
 
 %files
@@ -607,7 +583,6 @@
 %{_datadir}/applications/%{desktop_file_name}.desktop
 %{_datadir}/mime/packages/%{progname}.xml
 %{_datadir}/pixmaps/firefox*
-%{_datadir}/appdata/
 %dir %{_datadir}/mozilla
 %dir %{_datadir}/mozilla/extensions
 %dir %{_datadir}/mozilla/extensions/%{firefox_appid}
@@ -617,6 +592,9 @@
 %{gnome_dir}/share/icons/hicolor/
 %{_bindir}/%{progname}
 %doc %{_mandir}/man1/%{progname}.1.gz
+%if "%{update_channel}" != "aurora"
+%{_datadir}/appdata/
+%endif
 
 %files devel
 %defattr(-,root,root)
@@ -638,13 +616,13 @@
 
 # this package does not need to provide files but is needed to fulfill
 # requirements if no other branding package is to be installed
-
+%if %branding
 %files branding-upstream
 %defattr(-,root,root)
 %dir %{progdir}
+%endif
 
 %if %crashreporter
-
 %files buildsymbols
 %defattr(-,root,root)
 %{_datadir}/mozilla/*.zip
--- a/MozillaFirefox/create-tar.sh	Tue Dec 02 21:14:59 2014 +0100
+++ b/MozillaFirefox/create-tar.sh	Sat Dec 06 19:15:35 2014 +0100
@@ -1,9 +1,9 @@
 #!/bin/bash
 
-CHANNEL="release"
+CHANNEL="aurora"
 BRANCH="releases/mozilla-$CHANNEL"
-RELEASE_TAG="FIREFOX_34_0_5_RELEASE"
-VERSION="34.0.5"
+RELEASE_TAG="default"
+VERSION="34.98"
 
 # mozilla
 if [ -d mozilla ]; then
--- a/MozillaFirefox/firefox-kde-114.patch	Tue Dec 02 21:14:59 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-../firefox-kde-114.patch
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/MozillaFirefox/mozilla-openaes-decl.patch	Sat Dec 06 19:15:35 2014 +0100
@@ -0,0 +1,1 @@
+../mozilla-openaes-decl.patch
\ No newline at end of file
--- a/MozillaFirefox/mozilla-sle11.patch	Tue Dec 02 21:14:59 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-../mozilla-sle11.patch
\ No newline at end of file
--- a/firefox-kde-114.patch	Tue Dec 02 21:14:59 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-# HG changeset patch
-# User Wolfgang Rosenauer <wr@rosenauer.org>
-# Parent a5921092e6fb2dc39b1426139eb8406f5fd3cfa9
-With openSUSE 11.4 the desktop file name changed from MozillaFirefox to firefox
-
-diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js
---- a/browser/components/preferences/main.js
-+++ b/browser/components/preferences/main.js
-@@ -511,17 +511,17 @@ var gMainPane = {
-       if (kde_session == 1) {
-         var shellObj = Components.classes["@mozilla.org/file/local;1"]
-                                  .createInstance(Components.interfaces.nsILocalFile);
-         shellObj.initWithPath("/usr/bin/kwriteconfig");
-         var process = Components.classes["@mozilla.org/process/util;1"]
-                                 .createInstance(Components.interfaces.nsIProcess);
-         process.init(shellObj);
-         var args = ["--file", "kdeglobals", "--group", "General", "--key",
--            "BrowserApplication", "MozillaFirefox"];
-+            "BrowserApplication", "firefox"];
-         process.run(false, args, args.length);
-       }
-     } catch (ex) {
-       Components.utils.reportError(ex);
-       return;
-     }
-     let selectedIndex =
-       shellSvc.isDefaultBrowser(false, true) ? 1 : 0;
--- a/firefox-kde.patch	Tue Dec 02 21:14:59 2014 +0100
+++ b/firefox-kde.patch	Sat Dec 06 19:15:35 2014 +0100
@@ -2,7 +2,7 @@
 new file mode 100644
 --- /dev/null
 +++ b/browser/base/content/browser-kde.xul
-@@ -0,0 +1,1269 @@
+@@ -0,0 +1,1224 @@
 +#filter substitution
 +<?xml version="1.0"?>
 +# -*- Mode: HTML -*-
@@ -145,9 +145,6 @@
 +    <!-- for search and content formfill/pw manager -->
 +    <panel type="autocomplete" id="PopupAutoComplete" noautofocus="true" hidden="true"/>
 +
-+    <!-- for search with one-off buttons -->
-+    <panel type="autocomplete" id="PopupSearchAutoComplete" noautofocus="true" hidden="true"/>
-+
 +    <!-- for url bar autocomplete -->
 +    <panel type="autocomplete-richlistbox" id="PopupAutoCompleteRichResult" noautofocus="true" hidden="true"/>
 +
@@ -245,48 +242,6 @@
 +           mousethrough="always">
 +      <box id="UITourHighlight"></box>
 +    </panel>
-+    <!-- Used to highlight the new search experience -->
-+    <panel id="SearchHighlight1"
-+           class="SearchHighlight"
-+           type="arrow"
-+           hidden="true"
-+           noautofocus="true"
-+           noautohide="true"
-+           orient="vertical"
-+           align="stretch">
-+      <label class="SearchHighlightTitle">One-Click Searches</label>
-+      <description class="SearchHighlightText" flex="1">Search any of these sites instantly, without changing your default.</description>
-+      <hbox class="SearchHighlightFooter" align="center">
-+        <spacer class="dot filled"/>
-+        <spacer class="dot"/>
-+        <spacer flex="1"/>
-+        <button label="Next"/>
-+      </hbox>
-+    </panel>
-+    <panel id="SearchHighlight2"
-+           class="SearchHighlight"
-+           type="arrow"
-+           hidden="true"
-+           noautofocus="true"
-+           noautohide="true"
-+           orient="vertical"
-+           align="stretch">
-+      <label class="SearchHighlightTitle">Smart Suggestions</label>
-+      <description class="SearchHighlightText" flex="1">Suggestions from your default search engine appear as you type.</description>
-+      <hbox class="SearchHighlightFooter" align="center">
-+        <spacer class="dot"/>
-+        <spacer class="dot filled"/>
-+        <spacer flex="1"/>
-+        <button label="Thanks!"/>
-+      </hbox>
-+    </panel>
-+
-+    <panel id="abouthome-search-panel" orient="vertical" type="arrow" hidden="true">
-+      <hbox id="abouthome-search-panel-manage" class="abouthome-search-panel-item"
-+            onclick="openPreferences('paneSearch')">
-+        <label>&cmd_engineManager.label;</label>
-+      </hbox>
-+    </panel>
 +
 +    <panel id="social-share-panel"
 +           class="social-panel"
@@ -1275,7 +1230,7 @@
 diff --git a/browser/base/content/browser.xul b/browser/base/content/browser.xul
 --- a/browser/base/content/browser.xul
 +++ b/browser/base/content/browser.xul
-@@ -174,17 +174,17 @@
+@@ -171,17 +171,17 @@
                      class="editBookmarkPanelHeaderButton"
                      oncommand="StarUI.removeBookmarkButtonCommand();"
                      accesskey="&editBookmark.removeBookmark.accessKey;"/>
@@ -1294,7 +1249,7 @@
          <button id="editBookmarkPanelDeleteButton"
                  class="editBookmarkPanelBottomButton"
                  label="&editBookmark.cancel.label;"
-@@ -1195,17 +1195,17 @@
+@@ -1153,17 +1153,17 @@
  
    <hbox id="full-screen-warning-container" hidden="true" fadeout="true">
      <hbox style="width: 100%;" pack="center"> <!-- Inner hbox needed due to bug 579776. -->
@@ -1316,10 +1271,10 @@
 diff --git a/browser/base/jar.mn b/browser/base/jar.mn
 --- a/browser/base/jar.mn
 +++ b/browser/base/jar.mn
-@@ -71,16 +71,18 @@ browser.jar:
-         content/browser/aboutRobots-icon.png          (content/aboutRobots-icon.png)
+@@ -69,16 +69,18 @@ browser.jar:
          content/browser/aboutRobots-widget-left.png   (content/aboutRobots-widget-left.png)
          content/browser/aboutSocialError.xhtml        (content/aboutSocialError.xhtml)
+         content/browser/aboutProviderDirectory.xhtml  (content/aboutProviderDirectory.xhtml)
          content/browser/aboutTabCrashed.js            (content/aboutTabCrashed.js)
          content/browser/aboutTabCrashed.xhtml         (content/aboutTabCrashed.xhtml)
  *       content/browser/browser.css                   (content/browser.css)
@@ -1421,7 +1376,7 @@
      // when the user will select the default.  We refresh here periodically
      // in case the default changes.  On other Windows OS's defaults can also
      // be set while the prefs are open.
-@@ -497,16 +503,27 @@ var gMainPane = {
+@@ -572,16 +578,27 @@ var gMainPane = {
     */
    setDefaultBrowser: function()
    {
@@ -1438,7 +1393,7 @@
 +                                .createInstance(Components.interfaces.nsIProcess);
 +        process.init(shellObj);
 +        var args = ["--file", "kdeglobals", "--group", "General", "--key",
-+            "BrowserApplication", "MozillaFirefox"];
++            "BrowserApplication", "firefox"];
 +        process.run(false, args, args.length);
 +      }
      } catch (ex) {
@@ -1889,7 +1844,7 @@
 diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
 --- a/browser/installer/package-manifest.in
 +++ b/browser/installer/package-manifest.in
-@@ -686,19 +686,21 @@
+@@ -697,19 +697,21 @@
  @BINPATH@/defaults/autoconfig/prefcalls.js
  @BINPATH@/browser/defaults/profile/prefs.js
  
--- a/firefox-multilocale-chrome.patch	Tue Dec 02 21:14:59 2014 +0100
+++ b/firefox-multilocale-chrome.patch	Sat Dec 06 19:15:35 2014 +0100
@@ -1,12 +1,12 @@
 # HG changeset patch
-# Parent 11ad195fb502ca7c1ba3c8836b2d91be56d64ce4
+# Parent 3acae65c15d0655055a85a88ecd677bcf0335b8e
 # User Wolfgang Rosenauer <wr@rosenauer.org>
 Add searchplugins to chrome packaging for proper localization
 
 diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
 --- a/browser/app/profile/firefox.js
 +++ b/browser/app/profile/firefox.js
-@@ -388,16 +388,20 @@ pref("browser.helperApps.deleteTempFileO
+@@ -389,16 +389,20 @@ pref("browser.helperApps.deleteTempFileO
  #endif
  
  // search engines URL
@@ -30,7 +30,7 @@
 diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in
 --- a/browser/locales/Makefile.in
 +++ b/browser/locales/Makefile.in
-@@ -66,21 +66,23 @@ STUB_HOOK = $(NSINSTALL) -D '$(_ABS_DIST
+@@ -66,24 +66,27 @@ STUB_HOOK = $(NSINSTALL) -D '$(_ABS_DIST
      cp ../installer/windows/l10ngen/stub.exe '$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe'; \
      chmod 0755 '$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe'; \
      $(NULL)
@@ -45,8 +45,13 @@
 +  @srcdir@/en-US/searchplugins/list.txt ) ) ddg
  endif
  SEARCHPLUGINS_PATH := $(FINAL_TARGET)/searchplugins
- SEARCHPLUGINS := $(addsuffix .xml,$(SEARCHPLUGINS_NAMES))
+ # metro build call a searchplugins target for search engine plugins
+ .PHONY: searchplugins
+ SEARCHPLUGINS_TARGET := libs searchplugins
+-SEARCHPLUGINS := $(foreach plugin,$(addsuffix .xml,$(SEARCHPLUGINS_NAMES)),$(or $(wildcard $(call MERGE_FILE,searchplugins/$(plugin))),$(info Missing searchplugin: $(plugin))))
 -PP_TARGETS += SEARCHPLUGINS
++#SEARCHPLUGINS := $(foreach plugin,$(addsuffix .xml,$(SEARCHPLUGINS_NAMES)),$(or $(wildcard $(call MERGE_FILE,searchplugins/$(plugin))),$(info Missing searchplugin: $(plugin))))
++SEARCHPLUGINS := $(addsuffix .xml,$(SEARCHPLUGINS_NAMES))
 +#PP_TARGETS += SEARCHPLUGINS
  
  # Required for l10n.mk - defines a list of app sub dirs that should
@@ -56,15 +61,15 @@
  DIST_SUBDIRS = browser metro
  else
  DIST_SUBDIRS = $(DIST_SUBDIR)
-@@ -118,16 +120,39 @@ libs:: $(addprefix generic/profile/,$(PR
+@@ -117,16 +120,39 @@ NO_JA_JP_MAC_AB_CD := $(if $(filter ja-J
+ libs:: $(FINAL_TARGET)/defaults/profile/bookmarks.html ;
+ 
+ libs:: $(addprefix generic/profile/,$(PROFILE_FILES))
+ 	$(SYSINSTALL) $(IFLAGS1) $^ $(FINAL_TARGET)/defaults/profile
  
  libs:: $(call MERGE_FILES,$(addprefix profile/chrome/,$(PROFILE_CHROME)))
  	$(SYSINSTALL) $(IFLAGS1) $^ $(FINAL_TARGET)/defaults/profile/chrome
  
- # metro build calls back here for search engine plugins
- searchplugins: $(addprefix $(FINAL_TARGET)/searchplugins/,$(SEARCHPLUGINS))
- .PHONY: searchplugins
- 
 +tmp-search.jar.mn::
 +	printf "$(AB_CD).jar:" > $@
 +	printf "$(foreach plugin,$(SEARCHPLUGINS), \n locale/browser/searchplugins/$(plugin) ($(plugin)))" >> $@
@@ -96,10 +101,39 @@
  	@$(MAKE) -C ../../webapprt/locales AB_CD=$* XPI_NAME=locale-$*
  endif
  	@$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
+diff --git a/browser/locales/en-US/searchplugins/google.xml b/browser/locales/en-US/searchplugins/google.xml
+--- a/browser/locales/en-US/searchplugins/google.xml
++++ b/browser/locales/en-US/searchplugins/google.xml
+@@ -11,25 +11,17 @@
+ <Image width="130" height="52">data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIIAAAA0CAYAAABGkOCVAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NDkxMSwgMjAxMy8xMC8yOS0xMTo0NzoxNiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjMwQjQ3MEVGRjQxMTExRTM5RkNCRjhFNDM0QjY3OEQ1IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjMwQjQ3MEYwRjQxMTExRTM5RkNCRjhFNDM0QjY3OEQ1Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzBCNDcwRURGNDExMTFFMzlGQ0JGOEU0MzRCNjc4RDUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MzBCNDcwRUVGNDExMTFFMzlGQ0JGOEU0MzRCNjc4RDUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5U94CwAAArpElEQVR42ux9B5hU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</Image>
+ <Url type="application/x-suggestions+json" method="GET" template="https://www.google.com/complete/search?client=firefox&amp;q={searchTerms}"/>
+ <Url type="text/html" method="GET" template="https://www.google.com/search" rel="searchform">
+   <Param name="q" value="{searchTerms}"/>
+   <Param name="ie" value="utf-8"/>
+   <Param name="oe" value="utf-8"/>
+   <Param name="aq" value="t"/>
+   <Param name="rls" value="{moz:distributionID}:{moz:locale}:{moz:official}"/>
+-#if MOZ_UPDATE_CHANNEL == beta
+-  <MozParam name="client" condition="defaultEngine" trueValue="firefox-beta" falseValue="firefox"/>
+-#elif MOZ_UPDATE_CHANNEL == aurora
+-  <MozParam name="client" condition="defaultEngine" trueValue="firefox-aurora" falseValue="firefox"/>
+-#elif MOZ_UPDATE_CHANNEL == nightly
+-  <MozParam name="client" condition="defaultEngine" trueValue="firefox-nightly" falseValue="firefox"/>
+-#else
+   <MozParam name="client" condition="defaultEngine" trueValue="firefox-a" falseValue="firefox"/>
+-#endif
+   <MozParam name="channel" condition="purpose" purpose="contextmenu" value="rcs"/>
+   <MozParam name="channel" condition="purpose" purpose="keyword" value="fflb"/>
+   <MozParam name="channel" condition="purpose" purpose="searchbar" value="sb"/>
+   <MozParam name="channel" condition="purpose" purpose="homepage" value="np"/>
+   <MozParam name="channel" condition="purpose" purpose="newtab" value="nts"/>
+   <MozParam name="source" condition="purpose" purpose="homepage" value="hp"/>
+ </Url>
+ </SearchPlugin>
 diff --git a/browser/locales/jar.mn b/browser/locales/jar.mn
 --- a/browser/locales/jar.mn
 +++ b/browser/locales/jar.mn
-@@ -139,14 +139,15 @@
+@@ -141,14 +141,15 @@
      locale/browser/syncQuota.properties         (%chrome/browser/syncQuota.properties)
  #endif
  % locale browser-region @AB_CD@ %locale/browser-region/
--- a/firefox-no-default-ualocale.patch	Tue Dec 02 21:14:59 2014 +0100
+++ b/firefox-no-default-ualocale.patch	Sat Dec 06 19:15:35 2014 +0100
@@ -1,13 +1,13 @@
 # HG changeset patch
 # User Wolfgang Rosenauer <wr@rosenauer.org>
-# Parent 042ade9d1f6415e52caecf1389bbb67c2da569d4
+# Parent 099312626f5f7c9cb5573a61d0230574ee12a660
 Do not overwrite the locale dynamic pref from xulrunner's all.js with a wrong default value
 
 diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
 --- a/browser/app/profile/firefox.js
 +++ b/browser/app/profile/firefox.js
-@@ -263,17 +263,17 @@ pref("browser.uitour.whitelist.add.340",
- pref("browser.uitour.whitelist.add.341", "www.mozilla.org,support.mozilla.org,about:home");
+@@ -261,17 +261,17 @@ pref("browser.uitour.pinnedTabUrl", "htt
+ pref("browser.uitour.url", "https://www.mozilla.org/%LOCALE%/firefox/%VERSION%/tour/");
  
  pref("browser.customizemode.tip0.shown", false);
  pref("browser.customizemode.tip0.learnMoreUrl", "https://support.mozilla.org/1/firefox/%VERSION%/%OS%/%LOCALE%/customize");
--- a/mozilla-kde.patch	Tue Dec 02 21:14:59 2014 +0100
+++ b/mozilla-kde.patch	Sat Dec 06 19:15:35 2014 +0100
@@ -44,7 +44,7 @@
  #include "prefread.h"
  #include "prefapi_private_data.h"
  
-@@ -1167,16 +1168,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char 
+@@ -1172,16 +1173,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char 
  
  static nsresult pref_LoadPrefsInDirList(const char *listId)
  {
@@ -79,7 +79,7 @@
      return NS_OK;
  
    bool hasMore;
-@@ -1192,17 +1211,17 @@ static nsresult pref_LoadPrefsInDirList(
+@@ -1197,17 +1216,17 @@ static nsresult pref_LoadPrefsInDirList(
  
      nsAutoCString leaf;
      path->GetNativeLeafName(leaf);
@@ -98,7 +98,7 @@
  {
    nsZipItemPtr<char> manifest(jarReader, name, true);
    NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE);
-@@ -1296,26 +1315,38 @@ static nsresult pref_InitInitialObjects(
+@@ -1301,26 +1320,38 @@ static nsresult pref_InitInitialObjects(
    /* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */
    static const char* specialFiles[] = {
  #if defined(XP_MACOSX)
@@ -140,8 +140,7 @@
 diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/chrome/flags.py
 --- a/python/mozbuild/mozpack/chrome/flags.py
 +++ b/python/mozbuild/mozpack/chrome/flags.py
-@@ -208,16 +208,17 @@ class Flags(OrderedDict):
-         'platformversion': VersionFlag,
+@@ -209,16 +209,17 @@ class Flags(OrderedDict):
          'contentaccessible': Flag,
          'os': StringFlag,
          'osversion': VersionFlag,
@@ -149,7 +148,8 @@
          'platform': Flag,
          'xpcnativewrappers': Flag,
          'tablet': Flag,
-+	'desktop': StringFlag,
+         'process': StringFlag,
++        'desktop': StringFlag,
      }
      RE = re.compile(r'([!<>=]+)')
  
@@ -161,8 +161,7 @@
 diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpack/chrome/manifest.py
 --- a/python/mozbuild/mozpack/chrome/manifest.py
 +++ b/python/mozbuild/mozpack/chrome/manifest.py
-@@ -30,16 +30,17 @@ class ManifestEntry(object):
-     allowed_flags = [
+@@ -31,16 +31,17 @@ class ManifestEntry(object):
          'application',
          'platformversion',
          'os',
@@ -170,7 +169,8 @@
          'abi',
          'xpcnativewrappers',
          'tablet',
-+	'desktop',
+         'process',
++        'desktop',
      ]
  
      def __init__(self, base, *flags):
@@ -202,7 +202,7 @@
 diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp
 --- a/toolkit/components/downloads/nsDownloadManager.cpp
 +++ b/toolkit/components/downloads/nsDownloadManager.cpp
-@@ -43,16 +43,20 @@
+@@ -44,16 +44,20 @@
  #ifdef XP_WIN
  #include <shlobj.h>
  #include "nsWindowsHelpers.h"
@@ -223,7 +223,7 @@
  #include "AndroidBridge.h"
  using namespace mozilla::widget::android;
  #endif
-@@ -2711,16 +2715,25 @@ nsDownload::SetState(DownloadState aStat
+@@ -2712,16 +2716,25 @@ nsDownload::SetState(DownloadState aStat
        nsCOMPtr<nsIPrefBranch> pref(do_GetService(NS_PREFSERVICE_CONTRACTID));
  
        // Master pref to control this function.
@@ -249,7 +249,7 @@
          int64_t goat = PR_Now() - mStartTime;
          showTaskbarAlert = goat > alertIntervalUSec;
  
-@@ -2751,16 +2764,17 @@ nsDownload::SetState(DownloadState aStat
+@@ -2752,16 +2765,17 @@ nsDownload::SetState(DownloadState aStat
                    NS_LITERAL_STRING(DOWNLOAD_MANAGER_ALERT_ICON), title,
                    message, !removeWhenDone,
                    mPrivate ? NS_LITERAL_STRING("private") : NS_LITERAL_STRING("non-private"),
@@ -2630,9 +2630,9 @@
 diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build
 --- a/uriloader/exthandler/moz.build
 +++ b/uriloader/exthandler/moz.build
-@@ -75,17 +75,19 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'coco
+@@ -68,17 +68,19 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'coco
  else:
-     # These files can't be built in unified mode because they force NSPR logging.
+     # These files can't be built in unified mode because they redefine LOG.
      SOURCES += [
          osdir + '/nsOSHelperAppService.cpp',
      ]
@@ -2650,7 +2650,7 @@
          'android/nsExternalSharingAppService.cpp',
          'android/nsExternalURLHandlerService.cpp',
          'android/nsMIMEInfoAndroid.cpp',
-@@ -129,16 +131,17 @@ include('/ipc/chromium/chromium-config.m
+@@ -121,16 +123,17 @@ include('/ipc/chromium/chromium-config.m
  FINAL_LIBRARY = 'xul'
  
  LOCAL_INCLUDES += [
@@ -3104,7 +3104,7 @@
 diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
 --- a/widget/gtk/moz.build
 +++ b/widget/gtk/moz.build
-@@ -88,16 +88,17 @@ include('/ipc/chromium/chromium-config.m
+@@ -81,16 +81,17 @@ include('/ipc/chromium/chromium-config.m
  FINAL_LIBRARY = 'xul'
  
  LOCAL_INCLUDES += [
@@ -3160,7 +3160,7 @@
  nsIFile *nsFilePicker::mPrevDisplayDirectory = nullptr;
  
  void
-@@ -226,17 +228,19 @@ nsFilePicker::AppendFilters(int32_t aFil
+@@ -224,17 +226,19 @@ nsFilePicker::AppendFilters(int32_t aFil
    return nsBaseFilePicker::AppendFilters(aFilterMask);
  }
  
@@ -3181,7 +3181,7 @@
  
    mFilters.AppendElement(filter);
    mFilterNames.AppendElement(name);
-@@ -351,16 +355,32 @@ nsFilePicker::Show(int16_t *aReturn)
+@@ -349,16 +353,32 @@ nsFilePicker::Show(int16_t *aReturn)
  
  NS_IMETHODIMP
  nsFilePicker::Open(nsIFilePickerShownCallback *aCallback)
@@ -3214,7 +3214,7 @@
  
    GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
    const gchar *accept_button = (action == GTK_FILE_CHOOSER_ACTION_SAVE)
-@@ -539,8 +559,235 @@ nsFilePicker::Done(GtkWidget* file_choos
+@@ -537,8 +557,235 @@ nsFilePicker::Done(GtkWidget* file_choos
    if (mCallback) {
      mCallback->Done(result);
      mCallback = nullptr;
@@ -3502,15 +3502,15 @@
    NS_NAMED_LITERAL_STRING(kOsVersion, "osversion");
    NS_NAMED_LITERAL_STRING(kABI, "abi");
 +  NS_NAMED_LITERAL_STRING(kDesktop, "desktop");
+   NS_NAMED_LITERAL_STRING(kProcess, "process");
  #if defined(MOZ_WIDGET_ANDROID)
    NS_NAMED_LITERAL_STRING(kTablet, "tablet");
  #endif
  
-   // Obsolete
-   NS_NAMED_LITERAL_STRING(kXPCNativeWrappers, "xpcnativewrappers");
+   NS_NAMED_LITERAL_STRING(kMain, "main");
+   NS_NAMED_LITERAL_STRING(kContent, "content");
  
-   nsAutoString appID;
-@@ -543,44 +545,49 @@ ParseManifest(NSLocationType aType, File
+@@ -548,44 +550,49 @@ ParseManifest(NSLocationType aType, File
          CopyUTF8toUTF16(s, abi);
          abi.Insert(char16_t('_'), 0);
          abi.Insert(osTarget, 0);
@@ -3554,16 +3554,16 @@
 +  desktop = NS_LITERAL_STRING("android");
  #endif
  
-   // Because contracts must be registered after CIDs, we save and process them
-   // at the end.
-   nsTArray<CachedDirective> contracts;
+   if (XRE_GetProcessType() == GeckoProcessType_Content) {
+     process = kContent;
+   } else {
+     process = kMain;
+   }
  
-   char* token;
-   char* newline = aBuf;
-@@ -669,25 +676,27 @@ ParseManifest(NSLocationType aType, File
-     TriState stOsVersion = eUnspecified;
+@@ -681,25 +688,27 @@ ParseManifest(NSLocationType aType, File
      TriState stOs = eUnspecified;
      TriState stABI = eUnspecified;
+     TriState stProcess = eUnspecified;
  #if defined(MOZ_WIDGET_ANDROID)
      TriState stTablet = eUnspecified;
  #endif
@@ -3580,6 +3580,7 @@
            CheckStringFlag(kOs, wtoken, osTarget, stOs) ||
            CheckStringFlag(kABI, wtoken, abi, stABI) ||
 +          CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) ||
+           CheckStringFlag(kProcess, wtoken, process, stProcess) ||
            CheckVersionFlag(kOsVersion, wtoken, osVersion, stOsVersion) ||
            CheckVersionFlag(kAppVersion, wtoken, appVersion, stAppVersion) ||
            CheckVersionFlag(kGeckoVersion, wtoken, geckoVersion, stGeckoVersion)) {
@@ -3587,8 +3588,7 @@
        }
  
  #if defined(MOZ_WIDGET_ANDROID)
-       bool tablet = false;
-@@ -718,16 +727,17 @@ ParseManifest(NSLocationType aType, File
+@@ -731,16 +740,17 @@ ParseManifest(NSLocationType aType, File
      }
  
      if (!ok ||
@@ -3601,15 +3601,15 @@
  #ifdef MOZ_WIDGET_ANDROID
          stTablet == eBad ||
  #endif
-         stABI == eBad) {
+         stABI == eBad ||
+         stProcess == eBad) {
        continue;
      }
  
- #ifdef MOZ_B2G_LOADER
 diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build
 --- a/xpcom/components/moz.build
 +++ b/xpcom/components/moz.build
-@@ -47,12 +47,13 @@ FINAL_LIBRARY = 'xul'
+@@ -48,12 +48,13 @@ FINAL_LIBRARY = 'xul'
  GENERATED_INCLUDES += ['..']
  LOCAL_INCLUDES += [
      '../base',
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mozilla-openaes-decl.patch	Sat Dec 06 19:15:35 2014 +0100
@@ -0,0 +1,24 @@
+# HG changeset patch
+# Parent 9c6da588016c1f6cd7489561e72e72a8b7e00fe8
+# User Wolfgang Rosenauer <wr@rosenauer.org>
+diff --git a/media/gmp-clearkey/0.1/openaes/oaes_lib.c b/media/gmp-clearkey/0.1/openaes/oaes_lib.c
+--- a/media/gmp-clearkey/0.1/openaes/oaes_lib.c
++++ b/media/gmp-clearkey/0.1/openaes/oaes_lib.c
+@@ -27,16 +27,17 @@
+  * POSSIBILITY OF SUCH DAMAGE.
+  * ---------------------------------------------------------------------------
+  */
+ static const char _NR[] = {
+ 	0x4e,0x61,0x62,0x69,0x6c,0x20,0x53,0x2e,0x20,
+ 	0x41,0x6c,0x20,0x52,0x61,0x6d,0x6c,0x69,0x00 };
+ 
+ #include <stdlib.h>
++#include <stdio.h>
+ #include <stddef.h>
+ #include <time.h> 
+ #include <sys/timeb.h>
+ #include <string.h>
+ 
+ #ifdef WIN32
+ #include <process.h>
+ #endif
--- a/mozilla-repo.patch	Tue Dec 02 21:14:59 2014 +0100
+++ b/mozilla-repo.patch	Sat Dec 06 19:15:35 2014 +0100
@@ -1,5 +1,5 @@
 # HG changeset patch
-# Parent 1478a2c97152e81b6d7cb89a4ab34da7310e3e86
+# Parent 80b6464bd883864fce57e8748010869af1be69e9
 
 diff --git a/toolkit/mozapps/installer/package-name.mk b/toolkit/mozapps/installer/package-name.mk
 --- a/toolkit/mozapps/installer/package-name.mk
@@ -27,7 +27,7 @@
  
  MOZ_SOURCESTAMP_FILE = $(DIST)/$(PKG_PATH)/$(MOZ_INFO_BASENAME).txt
  MOZ_BUILDINFO_FILE = $(DIST)/$(PKG_PATH)/$(MOZ_INFO_BASENAME).json
+ MOZ_MOZINFO_FILE = $(DIST)/$(PKG_PATH)/$(MOZ_INFO_BASENAME).mozinfo.json
  
  # JavaScript Shell
  PKG_JSSHELL = $(DIST)/jsshell-$(MOZ_PKG_PLATFORM).zip
- 
--- a/mozilla-shared-nss-db.patch	Tue Dec 02 21:14:59 2014 +0100
+++ b/mozilla-shared-nss-db.patch	Sat Dec 06 19:15:35 2014 +0100
@@ -7,7 +7,7 @@
 diff --git a/configure.in b/configure.in
 --- a/configure.in
 +++ b/configure.in
-@@ -8199,16 +8199,31 @@ if test "$MOZ_ENABLE_SKIA"; then
+@@ -8302,16 +8302,31 @@ if test "$MOZ_ENABLE_SKIA"; then
      MOZ_ENABLE_SKIA_GPU=1
      AC_DEFINE(USE_SKIA_GPU)
      AC_SUBST(MOZ_ENABLE_SKIA_GPU)
@@ -42,7 +42,7 @@
 diff --git a/security/manager/ssl/src/moz.build b/security/manager/ssl/src/moz.build
 --- a/security/manager/ssl/src/moz.build
 +++ b/security/manager/ssl/src/moz.build
-@@ -91,16 +91,19 @@ FAIL_ON_WARNINGS = True
+@@ -95,16 +95,19 @@ FAIL_ON_WARNINGS = True
  
  FINAL_LIBRARY = 'xul'
  
@@ -65,15 +65,13 @@
 diff --git a/security/manager/ssl/src/nsNSSComponent.cpp b/security/manager/ssl/src/nsNSSComponent.cpp
 --- a/security/manager/ssl/src/nsNSSComponent.cpp
 +++ b/security/manager/ssl/src/nsNSSComponent.cpp
-@@ -3,16 +3,23 @@
+@@ -1,14 +1,21 @@
+ /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+  *
   * This Source Code Form is subject to the terms of the Mozilla Public
   * License, v. 2.0. If a copy of the MPL was not distributed with this
   * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  
- #ifdef MOZ_LOGGING
- #define FORCE_PR_LOG 1
- #endif
- 
 +#ifdef MOZ_ENABLE_NSSHELPER
 +#pragma GCC visibility push(default)
 +#include <nss-shared-helper.h>
@@ -89,7 +87,7 @@
  #include "nsCertVerificationThread.h"
  #include "nsAppDirectoryServiceDefs.h"
  #include "nsComponentManagerUtils.h"
-@@ -943,17 +950,31 @@ nsNSSComponent::InitializeNSS()
+@@ -945,17 +952,31 @@ nsNSSComponent::InitializeNSS()
    if (NS_FAILED(rv)) {
      nsPSMInitPanic::SetPanic();
      return NS_ERROR_NOT_AVAILABLE;
@@ -122,25 +120,25 @@
      if (init_rv != SECSuccess) {
        PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("could not init in r/o either\n"));
      }
-diff --git a/toolkit/library/libxul.mozbuild b/toolkit/library/libxul.mozbuild
---- a/toolkit/library/libxul.mozbuild
-+++ b/toolkit/library/libxul.mozbuild
-@@ -22,16 +22,18 @@ DELAYLOAD_DLLS += [
-     'psapi.dll',
-     'rasapi32.dll',
-     'rasdlg.dll',
-     'secur32.dll',
-     'wininet.dll',
-     'winspool.drv'
- ]
+diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build
+--- a/toolkit/library/moz.build
++++ b/toolkit/library/moz.build
+@@ -213,16 +213,18 @@ if CONFIG['MOZ_B2G_CAMERA']:
+         'stagefright_omx',
+     ]
+ 
+ if CONFIG['OS_ARCH'] == 'Linux' and CONFIG['OS_TARGET'] != 'Android':
+     OS_LIBS += [
+         'rt',
+     ]
  
 +OS_LIBS += sorted(CONFIG['NSSHELPER_LIBS'])
 +
- if CONFIG['MOZ_METRO']:
-     DELAYLOAD_DLLS += [
-         'API-MS-WIN-CORE-WINRT-L' + CONFIG['CRTEXPDLLVERSION'] + '.DLL',
-         'API-MS-WIN-CORE-WINRT-STRING-L' + CONFIG['CRTEXPDLLVERSION'] + '.DLL',
-         'uiautomationcore.dll'
-     ]
+ OS_LIBS += CONFIG['MOZ_CAIRO_OSLIBS']
+ OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS']
  
- if CONFIG['ACCESSIBILITY']:
+ if CONFIG['MOZ_NATIVE_JPEG']:
+     OS_LIBS += CONFIG['MOZ_JPEG_LIBS']
+ 
+ if CONFIG['MOZ_NATIVE_PNG']:
+     OS_LIBS += CONFIG['MOZ_PNG_LIBS']
--- a/mozilla-sle11.patch	Tue Dec 02 21:14:59 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-Subject: Patches needed to build on SLE11/11.1
-References:
-https://bugzilla.mozilla.org/show_bug.cgi?id=513422
-
-diff --git a/mozglue/build/SSE.cpp b/mozglue/build/SSE.cpp
---- a/mozglue/build/SSE.cpp
-+++ b/mozglue/build/SSE.cpp
-@@ -12,26 +12,77 @@ namespace {
- // SSE.h has parallel #ifs which declare MOZILLA_SSE_HAVE_CPUID_DETECTION.
- // We can't declare these functions in the header file, however, because
- // <intrin.h> conflicts with <windows.h> on MSVC 2005, and some files want to
- // include both SSE.h and <windows.h>.
- 
- #ifdef HAVE_CPUID_H
- 
- // cpuid.h is available on gcc 4.3 and higher on i386 and x86_64
--#include <cpuid.h>
-+//#include <cpuid.h>
- 
- enum CPUIDRegister { eax = 0, ebx = 1, ecx = 2, edx = 3 };
- 
-+#ifdef __i386__
-+#define _my_cpuid(level, a, b, c, d)                    \
-+  __asm__ ("xchg{l}\t{%%}ebx, %1\n\t"                   \
-+           "cpuid\n\t"                                  \
-+           "xchg{l}\t{%%}ebx, %1\n\t"                   \
-+           : "=a" (a), "=r" (b), "=c" (c), "=d" (d)     \
-+           : "0" (level))
-+#else
-+#define _my_cpuid(level, a, b, c, d)                    \
-+  __asm__ ("cpuid\n\t"                                  \
-+           : "=a" (a), "=b" (b), "=c" (c), "=d" (d)     \
-+           : "0" (level))
-+#endif
-+
-+static __inline unsigned int
-+my_cpuid_max (unsigned int __ext, unsigned int *__sig)
-+{
-+  unsigned int __eax, __ebx, __ecx, __edx;
-+
-+#ifdef __i386__
-+  __asm__ ("pushf{l|d}\n\t"
-+           "pushf{l|d}\n\t"
-+           "pop{l}\t%0\n\t"
-+           "mov{l}\t{%0, %1|%1, %0}\n\t"
-+           "xor{l}\t{%2, %0|%0, %2}\n\t"
-+           "push{l}\t%0\n\t"
-+           "popf{l|d}\n\t"
-+           "pushf{l|d}\n\t"
-+           "pop{l}\t%0\n\t"
-+           "popf{l|d}\n\t"
-+           : "=&r" (__eax), "=&r" (__ebx)
-+           : "i" (0x00200000));
-+
-+  if (!((__eax ^ __ebx) & 0x00200000))
-+    return 0;
-+#endif
-+
-+  /* Host supports cpuid.  Return highest supported cpuid input value.  */
-+  _my_cpuid (__ext, __eax, __ebx, __ecx, __edx);
-+
-+  if (__sig)
-+    *__sig = __ebx;
-+
-+  return __eax;
-+}
-+
- static bool
- has_cpuid_bit(unsigned int level, CPUIDRegister reg, unsigned int bit)
- {
-   unsigned int regs[4];
--  return __get_cpuid(level, &regs[0], &regs[1], &regs[2], &regs[3]) &&
--         (regs[reg] & bit);
-+
-+  unsigned int __ext = level & 0x80000000;
-+  if (my_cpuid_max(__ext, 0) < level)
-+    return false;
-+
-+  _my_cpuid(level, regs[0], regs[1], regs[2], regs[3]);
-+  return !!(unsigned(regs[reg]) & bit);
- }
- 
- #elif defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_AMD64))
- 
- // MSVC 2005 or newer on x86-32 or x86-64
- #include <intrin.h>
- 
- enum CPUIDRegister { eax = 0, ebx = 1, ecx = 2, edx = 3 };
--- a/series	Tue Dec 02 21:14:59 2014 +0100
+++ b/series	Sat Dec 06 19:15:35 2014 +0100
@@ -9,15 +9,14 @@
 mozilla-language.patch
 mozilla-ntlm-full-path.patch
 mozilla-repo.patch
-mozilla-sle11.patch
 mozilla-icu-strncat.patch
 mozilla-arm-disable-edsp.patch
 mozilla-idldir.patch
 mozilla-bmo1088588.patch
+mozilla-openaes-decl.patch
 
 # Firefox patches
 firefox-kde.patch
-firefox-kde-114.patch
 firefox-no-default-ualocale.patch
 firefox-multilocale-chrome.patch
 firefox-branded-icons.patch