diff --git a/MozillaThunderbird.changes b/MozillaThunderbird.changes index 728454e..85d0058 100644 --- a/MozillaThunderbird.changes +++ b/MozillaThunderbird.changes @@ -1,3 +1,19 @@ +------------------------------------------------------------------- +Fri Jun 19 17:00:11 UTC 2015 - wr@rosenauer.org + +- update to Thunderbird 38.0.1 + * includes Lightning as default extension +- rebased patches +- removed obsolete patches: + * mozilla-ppc.patch + * mozilla-nullptr-gcc45.patch + * mozilla-bug1024492.patch +- dropped openSUSE specific patches + * thunderbird-shared-nss-db.patch + * mozilla-shared-nss-db.patch + the provided feature seems not to be used and its maintenance + is not worth the ongoing efforts + ------------------------------------------------------------------- Thu May 28 10:28:13 UTC 2015 - dmueller@suse.com diff --git a/MozillaThunderbird.spec b/MozillaThunderbird.spec index aa83223..9a361e2 100644 --- a/MozillaThunderbird.spec +++ b/MozillaThunderbird.spec @@ -17,7 +17,7 @@ # -%define mainversion 31.7.0 +%define mainversion 38.0.1 %define update_channel release %if %suse_version > 1210 @@ -42,9 +42,8 @@ BuildRequires: libcurl-devel BuildRequires: libgnomeui-devel BuildRequires: libidl-devel BuildRequires: libnotify-devel -BuildRequires: mozilla-nspr-devel >= 4.10.6 -BuildRequires: mozilla-nss-devel >= 3.16.5 -BuildRequires: nss-shared-helper-devel +BuildRequires: mozilla-nspr-devel >= 4.10.8 +BuildRequires: mozilla-nss-devel >= 3.18.1 BuildRequires: python BuildRequires: startup-notification-devel BuildRequires: unzip @@ -70,7 +69,7 @@ Recommends: gstreamer-0_10-plugins-ffmpeg %endif Version: %{mainversion} Release: 0 -%define releasedate 2015050800 +%define releasedate 2015061900 Provides: thunderbird = %{version} %if %{with_kde} # this is needed to match this package with the kde4 helper package without the main package @@ -95,19 +94,14 @@ Source10: create-tar.sh Source11: compare-locales.tar.xz Source12: kde.js # Gecko/Toolkit -Patch1: mozilla-shared-nss-db.patch -Patch2: mozilla-language.patch -Patch3: mozilla-nongnome-proxies.patch -Patch4: mozilla-kde.patch -Patch5: mozilla-arm-disable-edsp.patch -Patch6: mozilla-ppc.patch -Patch7: mozilla-nullptr-gcc45.patch -Patch8: mozilla-icu-strncat.patch -Patch9: mozilla-bug1024492.patch +Patch1: mozilla-language.patch +Patch2: mozilla-nongnome-proxies.patch +Patch3: mozilla-kde.patch +Patch4: mozilla-arm-disable-edsp.patch +Patch5: mozilla-develdirs.patch +Patch6: mozilla-icu-strncat.patch # Thunderbird/mail Patch20: tb-ssldap.patch -Patch21: tb-develdirs.patch -Patch22: thunderbird-shared-nss-db.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build PreReq: coreutils fileutils textutils /bin/sh Recommends: libcanberra0 @@ -196,20 +190,15 @@ symbols meant for upload to Mozilla's crash collector database. pushd mozilla %patch1 -p1 %patch2 -p1 -%patch3 -p1 %if %{with_kde} -%patch4 -p1 +%patch3 -p1 %endif +%patch4 -p1 %patch5 -p1 %patch6 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p3 popd # comm-central patches %patch20 -p1 -%patch21 -p1 -%patch22 -p1 %build # no need to add build time to binaries @@ -250,6 +239,7 @@ mk_add_options MOZ_MILESTONE_RELEASE=1 mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs} mk_add_options MOZ_OBJDIR=$RPM_BUILD_DIR/obj ac_add_options --enable-application=mail +ac_add_options --enable-calendar ac_add_options --prefix=%{_prefix} ac_add_options --libdir=%{progdir} ac_add_options --includedir=%{_includedir} @@ -273,10 +263,6 @@ ac_add_options --enable-update-channel=%{update_channel} %if 0%{?gstreamer} == 1 ac_add_options --enable-gstreamer=1.0 %endif -%if %suse_version > 1130 -ac_add_options --disable-gnomevfs -ac_add_options --enable-gio -%endif %if %suse_version < 1220 ac_add_options --disable-gstreamer %endif @@ -298,7 +284,7 @@ cd $RPM_BUILD_DIR/obj make -C mail/installer STRIP=/bin/true MOZ_PKG_FATAL_WARNINGS=0 # copy tree into RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{progdir} -cp -rf $RPM_BUILD_DIR/obj/mozilla/dist/thunderbird/* \ +cp -rf $RPM_BUILD_DIR/obj/dist/thunderbird/* \ $RPM_BUILD_ROOT%{progdir} %if %{with_kde} # install kde.js @@ -327,7 +313,7 @@ for locale in $(awk '{ print $1; }' ../thunderbird/mail/locales/shipped-locales) popd LOCALE_MERGEDIR=$RPM_BUILD_DIR/l10n-merged/$locale \ make -C mail/locales langpack-$locale || continue - cp -rL mozilla/dist/xpi-stage/locale-$locale \ + cp -rL dist/xpi-stage/locale-$locale \ $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@thunderbird.mozilla.org # remove prefs and profile defaults from langpack rm -rf $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@thunderbird.mozilla.org/defaults @@ -372,11 +358,11 @@ EOF # DEVEL # mkdir -p $RPM_BUILD_ROOT%{_includedir}/%{progname} -chmod a+x mozilla/dist/sdk/bin/*.py -cp -rL mozilla/dist/sdk/bin/* $RPM_BUILD_ROOT%{_libdir}/%{progname}/ -cp -rL mozilla/dist/sdk/lib/*.a $RPM_BUILD_ROOT%{_libdir}/%{progname}/ -cp -rL mozilla/dist/idl/* $RPM_BUILD_ROOT%{_includedir}/%{progname}/ -cp -rL mozilla/dist/include/* $RPM_BUILD_ROOT%{_includedir}/%{progname}/ +chmod a+x dist/sdk/bin/*.py +cp -rL dist/sdk/bin/* $RPM_BUILD_ROOT%{_libdir}/%{progname}/ +cp -rL dist/sdk/lib/*.a $RPM_BUILD_ROOT%{_libdir}/%{progname}/ +cp -rL dist/idl/* $RPM_BUILD_ROOT%{_includedir}/%{progname}/ +cp -rL dist/include/* $RPM_BUILD_ROOT%{_includedir}/%{progname}/ #mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig/ #install -m 755 $RPM_BUILD_DIR/thunderbird/mozilla/build/unix/thunderbird-*.pc \ # $RPM_BUILD_ROOT%{_libdir}/pkgconfig/ @@ -421,9 +407,9 @@ SYMBOLS_NAME="thunderbird-%{mainversion}-%{release}.%{_arch}-%{suse_version}-sym make buildsymbols \ SYMBOL_INDEX_NAME="$SYMBOLS_NAME.txt" \ SYMBOL_ARCHIVE_BASENAME="$SYMBOLS_NAME" -if [ -e mozilla/dist/*symbols.zip ]; then +if [ -e dist/*symbols.zip ]; then mkdir -p $RPM_BUILD_ROOT%{_datadir}/mozilla/ - cp mozilla/dist/*symbols.zip $RPM_BUILD_ROOT%{_datadir}/mozilla/ + cp dist/*symbols.zip $RPM_BUILD_ROOT%{_datadir}/mozilla/ fi %endif @@ -454,7 +440,6 @@ exit 0 %{progdir}/chrome.manifest %{progdir}/dependentlibs.list %{progdir}/*.so -%{progdir}/mozilla-xremote-client %{progdir}/omni.ja %{progdir}/platform.ini %{progdir}/plugin-container @@ -470,6 +455,7 @@ exit 0 %dir %{progdir}/chrome/ %{progdir}/chrome/icons/ %dir %{progdir}/dictionaries/ +%{progdir}/distribution/ %{progdir}/defaults/ %dir %{progdir}/extensions/ %{progdir}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd} diff --git a/compare-locales.tar.xz b/compare-locales.tar.xz index 3e27a31..406d1e7 100644 --- a/compare-locales.tar.xz +++ b/compare-locales.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34590bb451fd54ad6a32eac894bfdf5bb4160f2e4efc912ac90f83065b812251 -size 28460 +oid sha256:d2e2c1c42bb7cb5ace5335714f1ac3e757079d93c5da1f9651b9ac48b6159799 +size 28424 diff --git a/create-tar.sh b/create-tar.sh index eb31a6e..20c2aab 100644 --- a/create-tar.sh +++ b/create-tar.sh @@ -1,9 +1,9 @@ #!/bin/bash -CHANNEL="esr31" +CHANNEL="esr38" BRANCH="releases/comm-$CHANNEL" -RELEASE_TAG="THUNDERBIRD_31_7_0_RELEASE" -VERSION="31.7.0" +RELEASE_TAG="THUNDERBIRD_38_0_1_RELEASE" +VERSION="38.0.1" echo "cloning $BRANCH..." hg clone http://hg.mozilla.org/$BRANCH thunderbird diff --git a/l10n-31.7.0.tar.xz b/l10n-31.7.0.tar.xz deleted file mode 100644 index 7c61d25..0000000 --- a/l10n-31.7.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ef194ea75f9c905211d57d3dad3a64d88fd88cdb78fdf92924b9f639086f9086 -size 20749320 diff --git a/l10n-38.0.1.tar.xz b/l10n-38.0.1.tar.xz new file mode 100644 index 0000000..9587f29 --- /dev/null +++ b/l10n-38.0.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e322189e9ba4fe5e4ce644707f8b8405ac2a52bdadd9e7c9a9a82a3301f36f7d +size 21419620 diff --git a/mozilla-bug1024492.patch b/mozilla-bug1024492.patch deleted file mode 100644 index a102fac..0000000 --- a/mozilla-bug1024492.patch +++ /dev/null @@ -1,239 +0,0 @@ -Fixes build with GCC 5.x - -https://bug1024492.bugzilla.mozilla.org/attachment.cgi?id=8439834&action=diff&context=patch&format=raw&headers=1 - -diff -ur a/thunderbird/mozilla/js/src/builtin/TypedObject.cpp b/thunderbird/mozilla/js/src/builtin/TypedObject.cpp ---- a/thunderbird/mozilla/js/src/builtin/TypedObject.cpp 2015-05-09 08:50:17.567803110 +0200 -+++ b/thunderbird/mozilla/js/src/builtin/TypedObject.cpp 2015-05-28 11:25:07.771027783 +0200 -@@ -710,12 +710,12 @@ - contents.append(")"); - RootedAtom stringRepr(cx, contents.finishAtom()); - if (!stringRepr) -- return nullptr; -+ return false; - - // Extract ArrayType.prototype - RootedObject arrayTypePrototype(cx, GetPrototype(cx, arrayTypeGlobal)); - if (!arrayTypePrototype) -- return nullptr; -+ return false; - - // Create the instance of ArrayType - Rooted obj(cx); -@@ -728,7 +728,7 @@ - if (!JSObject::defineProperty(cx, obj, cx->names().length, - UndefinedHandleValue, nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - args.rval().setObject(*obj); - return true; -@@ -762,7 +762,7 @@ - if (!size.isValid()) { - JS_ReportErrorNumber(cx, js_GetErrorMessage, nullptr, - JSMSG_TYPEDOBJECT_TOO_BIG); -- return nullptr; -+ return false; - } - - // Construct a canonical string `new ArrayType().dimension(N)`: -@@ -775,7 +775,7 @@ - contents.append(")"); - RootedAtom stringRepr(cx, contents.finishAtom()); - if (!stringRepr) -- return nullptr; -+ return false; - - // Create the sized type object. - Rooted obj(cx); -@@ -793,7 +793,7 @@ - if (!JSObject::defineProperty(cx, obj, cx->names().length, - lengthVal, nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - // Add `unsized` property, which is a link from the sized - // array to the unsized array. -@@ -801,7 +801,7 @@ - if (!JSObject::defineProperty(cx, obj, cx->names().unsized, - unsizedTypeDescrValue, nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - args.rval().setObject(*obj); - return true; -@@ -1253,7 +1253,7 @@ - Rooted proto(cx); - proto = NewObjectWithProto(cx, objProto, nullptr, TenuredObject); - if (!proto) -- return nullptr; -+ return false; - proto->initTypeDescrSlot(*descr); - descr->initReservedSlot(JS_DESCR_SLOT_TYPROTO, ObjectValue(*proto)); - -@@ -1358,14 +1358,14 @@ - #define BINARYDATA_SCALAR_DEFINE(constant_, type_, name_) \ - if (!DefineSimpleTypeDescr(cx, global, module, constant_, \ - cx->names().name_)) \ -- return nullptr; -+ return false; - JS_FOR_EACH_SCALAR_TYPE_REPR(BINARYDATA_SCALAR_DEFINE) - #undef BINARYDATA_SCALAR_DEFINE - - #define BINARYDATA_REFERENCE_DEFINE(constant_, type_, name_) \ - if (!DefineSimpleTypeDescr(cx, global, module, constant_, \ - cx->names().name_)) \ -- return nullptr; -+ return false; - JS_FOR_EACH_REFERENCE_TYPE_REPR(BINARYDATA_REFERENCE_DEFINE) - #undef BINARYDATA_REFERENCE_DEFINE - -@@ -1375,14 +1375,14 @@ - arrayType = DefineMetaTypeDescr( - cx, global, module, TypedObjectModuleObject::ArrayTypePrototype); - if (!arrayType) -- return nullptr; -+ return false; - - RootedValue arrayTypeValue(cx, ObjectValue(*arrayType)); - if (!JSObject::defineProperty(cx, module, cx->names().ArrayType, - arrayTypeValue, - nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - // StructType. - -@@ -1390,14 +1390,14 @@ - structType = DefineMetaTypeDescr( - cx, global, module, TypedObjectModuleObject::StructTypePrototype); - if (!structType) -- return nullptr; -+ return false; - - RootedValue structTypeValue(cx, ObjectValue(*structType)); - if (!JSObject::defineProperty(cx, module, cx->names().StructType, - structTypeValue, - nullptr, nullptr, - JSPROP_READONLY | JSPROP_PERMANENT)) -- return nullptr; -+ return false; - - // Everything is setup, install module on the global object: - RootedValue moduleValue(cx, ObjectValue(*module)); -@@ -1407,7 +1407,7 @@ - nullptr, nullptr, - 0)) - { -- return nullptr; -+ return false; - } - - return module; -@@ -2466,7 +2466,7 @@ - if (length < 0) { - JS_ReportErrorNumber(cx, js_GetErrorMessage, - nullptr, JSMSG_TYPEDOBJECT_BAD_ARGS); -- return nullptr; -+ return false; - } - Rooted obj(cx, createZeroed(cx, callee, length)); - if (!obj) -diff -ur a/thunderbird/mozilla/js/src/frontend/BytecodeCompiler.cpp b/thunderbird/mozilla/js/src/frontend/BytecodeCompiler.cpp ---- a/thunderbird/mozilla/js/src/frontend/BytecodeCompiler.cpp 2015-05-09 08:50:17.666800504 +0200 -+++ b/thunderbird/mozilla/js/src/frontend/BytecodeCompiler.cpp 2015-05-28 11:25:07.771027783 +0200 -@@ -544,7 +544,7 @@ - - RootedScriptSource sourceObject(cx, CreateScriptSourceObject(cx, options)); - if (!sourceObject) -- return nullptr; -+ return false; - ScriptSource* ss = sourceObject->source(); - - SourceCompressionTask sct(cx); -diff -ur a/thunderbird/mozilla/js/src/vm/ScopeObject.h b/thunderbird/mozilla/js/src/vm/ScopeObject.h ---- a/thunderbird/mozilla/js/src/vm/ScopeObject.h 2015-05-09 08:50:19.900741697 +0200 -+++ b/thunderbird/mozilla/js/src/vm/ScopeObject.h 2015-05-28 11:25:07.771027783 +0200 -@@ -63,21 +63,9 @@ - bool onNamedLambda; - - public: -- StaticScopeIter(ExclusiveContext* cx, JSObject* obj) -- : obj(cx, obj), onNamedLambda(false) -- { -- JS_STATIC_ASSERT(allowGC == CanGC); -- JS_ASSERT_IF(obj, obj->is() || obj->is() || -- obj->is()); -- } -+ StaticScopeIter(ExclusiveContext *cx, JSObject *obj); - -- StaticScopeIter(JSObject* obj) -- : obj((ExclusiveContext*) nullptr, obj), onNamedLambda(false) -- { -- JS_STATIC_ASSERT(allowGC == NoGC); -- JS_ASSERT_IF(obj, obj->is() || obj->is() || -- obj->is()); -- } -+ explicit StaticScopeIter(JSObject *obj); - - bool done() const; - void operator++(int); -diff -ur a/thunderbird/mozilla/js/src/vm/ScopeObject-inl.h b/thunderbird/mozilla/js/src/vm/ScopeObject-inl.h ---- a/thunderbird/mozilla/js/src/vm/ScopeObject-inl.h 2015-05-09 08:50:19.898741750 +0200 -+++ b/thunderbird/mozilla/js/src/vm/ScopeObject-inl.h 2015-05-28 11:25:07.771027783 +0200 -@@ -13,6 +13,26 @@ - - namespace js { - -+template -+inline -+StaticScopeIter::StaticScopeIter(ExclusiveContext *cx, JSObject *obj) -+ : obj(cx, obj), onNamedLambda(false) -+{ -+ JS_STATIC_ASSERT(allowGC == CanGC); -+ JS_ASSERT_IF(obj, obj->is() || obj->is() || -+ obj->is()); -+} -+ -+template -+inline -+StaticScopeIter::StaticScopeIter(JSObject *obj) -+ : obj((ExclusiveContext *) nullptr, obj), onNamedLambda(false) -+{ -+ JS_STATIC_ASSERT(allowGC == NoGC); -+ JS_ASSERT_IF(obj, obj->is() || obj->is() || -+ obj->is()); -+} -+ - inline void - ScopeObject::setAliasedVar(JSContext* cx, ScopeCoordinate sc, PropertyName* name, const Value& v) - { -diff -ur a/thunderbird/mozilla/js/xpconnect/wrappers/XrayWrapper.cpp b/thunderbird/mozilla/js/xpconnect/wrappers/XrayWrapper.cpp ---- a/thunderbird/mozilla/js/xpconnect/wrappers/XrayWrapper.cpp 2015-05-09 08:50:15.061869076 +0200 -+++ b/thunderbird/mozilla/js/xpconnect/wrappers/XrayWrapper.cpp 2015-05-28 11:25:07.775027837 +0200 -@@ -351,7 +351,7 @@ - { - JSAutoCompartment ac(cx, target); - if (!JS_GetClassPrototype(cx, key, protop)) -- return nullptr; -+ return false; - } - return JS_WrapObject(cx, protop); - } -Only in b/thunderbird/mozilla/js/xpconnect/wrappers: XrayWrapper.cpp.orig -diff -ur a/thunderbird/mozilla/netwerk/ipc/NeckoParent.cpp b/thunderbird/mozilla/netwerk/ipc/NeckoParent.cpp ---- a/thunderbird/mozilla/netwerk/ipc/NeckoParent.cpp 2015-05-09 08:50:16.383834276 +0200 -+++ b/thunderbird/mozilla/netwerk/ipc/NeckoParent.cpp 2015-05-28 11:25:07.775027837 +0200 -@@ -359,7 +359,7 @@ - RtspChannelParent* p = static_cast(aActor); - return p->Init(aConnectArgs); - #else -- return nullptr; -+ return false; - #endif - } - diff --git a/tb-develdirs.patch b/mozilla-develdirs.patch similarity index 52% rename from tb-develdirs.patch rename to mozilla-develdirs.patch index 6652859..58e180e 100644 --- a/tb-develdirs.patch +++ b/mozilla-develdirs.patch @@ -1,16 +1,20 @@ diff --git a/config/baseconfig.mk b/config/baseconfig.mk --- a/config/baseconfig.mk +++ b/config/baseconfig.mk -@@ -1,10 +1,10 @@ +@@ -1,14 +1,14 @@ + # This file is normally included by autoconf.mk, but it is also used + # directly in python/mozbuild/mozbuild/base.py for gmake validation. + # We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending + # 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) +includedir := $(includedir)/$(MOZ_APP_NAME) +idldir = $(datadir)/idl/$(MOZ_APP_NAME) installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) - MOZILLA_SRCDIR = $(topsrcdir)/mozilla - MOZDEPTH = $(DEPTH)/mozilla - DIST = $(MOZDEPTH)/dist - - # We do magic with OBJ_SUFFIX in config.mk, the following ensures we don't - # manually use it before config.mk inclusion + ifndef TOP_DIST + TOP_DIST = dist + endif + ifneq (,$(filter /%,$(TOP_DIST))) + DIST = $(TOP_DIST) + else diff --git a/mozilla-kde.patch b/mozilla-kde.patch index 9620565..f35392f 100644 --- a/mozilla-kde.patch +++ b/mozilla-kde.patch @@ -1,12 +1,14 @@ +# HG changeset patch +# Parent 214f99f3ce4f1f8ae9b3d18da44e5d66b3105663 Description: Add KDE integration to Firefox (toolkit parts) Author: Wolfgang Rosenauer Author: Lubos Lunak Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=140751 https://bugzilla.novell.com/show_bug.cgi?id=170055 -diff --git a/modules/libpref/src/Makefile.in b/modules/libpref/src/Makefile.in ---- a/modules/libpref/src/Makefile.in -+++ b/modules/libpref/src/Makefile.in +diff --git a/modules/libpref/Makefile.in b/modules/libpref/Makefile.in +--- a/modules/libpref/Makefile.in ++++ b/modules/libpref/Makefile.in @@ -21,13 +21,15 @@ endif ifdef MOZ_SERVICES_HEALTHREPORT ifneq (android,$(MOZ_WIDGET_TOOLKIT)) @@ -23,9 +25,9 @@ diff --git a/modules/libpref/src/Makefile.in b/modules/libpref/src/Makefile.in libs:: greprefs.js $(INSTALL) $^ $(DIST)/bin/ -diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferences.cpp ---- a/modules/libpref/src/Preferences.cpp -+++ b/modules/libpref/src/Preferences.cpp +diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp +--- a/modules/libpref/Preferences.cpp ++++ b/modules/libpref/Preferences.cpp @@ -27,16 +27,17 @@ #include "nsIZipReader.h" #include "nsPrefBranch.h" @@ -44,7 +46,7 @@ diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferenc #include "prefread.h" #include "prefapi_private_data.h" -@@ -1134,16 +1135,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char +@@ -1165,16 +1166,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char static nsresult pref_LoadPrefsInDirList(const char *listId) { @@ -79,13 +81,13 @@ diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferenc return NS_OK; bool hasMore; -@@ -1159,17 +1178,17 @@ static nsresult pref_LoadPrefsInDirList( +@@ -1190,17 +1209,17 @@ static nsresult pref_LoadPrefsInDirList( nsAutoCString leaf; path->GetNativeLeafName(leaf); // Do we care if a file provided by this process fails to load? - if (Substring(leaf, leaf.Length() - 4).Equals(NS_LITERAL_CSTRING(".xpi"))) + if (Substring(leaf, leaf.Length() - 4).EqualsLiteral(".xpi")) ReadExtensionPrefs(path); else - pref_LoadPrefsInDir(path, nullptr, 0); @@ -98,7 +100,7 @@ diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferenc { nsZipItemPtr manifest(jarReader, name, true); NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE); -@@ -1263,26 +1282,38 @@ static nsresult pref_InitInitialObjects( +@@ -1294,26 +1313,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 +142,7 @@ diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferenc 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 +150,8 @@ diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/c 'platform': Flag, 'xpcnativewrappers': Flag, 'tablet': Flag, -+ 'desktop': StringFlag, + 'process': StringFlag, ++ 'desktop': StringFlag, } RE = re.compile(r'([!<>=]+)') @@ -161,8 +163,7 @@ diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/c 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 +171,8 @@ diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpac 'abi', 'xpcnativewrappers', 'tablet', -+ 'desktop', + 'process', ++ 'desktop', ] def __init__(self, base, *flags): @@ -179,24 +181,30 @@ diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpac ''' self.base = base self.flags = Flags(*flags) -diff --git a/toolkit/components/downloads/Makefile.in b/toolkit/components/downloads/Makefile.in ---- a/toolkit/components/downloads/Makefile.in -+++ b/toolkit/components/downloads/Makefile.in -@@ -1,9 +1,9 @@ - # - # 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/. +diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build +--- a/toolkit/components/downloads/moz.build ++++ b/toolkit/components/downloads/moz.build +@@ -52,14 +52,15 @@ if not CONFIG['MOZ_SUITE']: + ] - include $(topsrcdir)/config/rules.mk + FAIL_ON_WARNINGS = True - CXXFLAGS += $(TK_CFLAGS) -- -+LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/xre + FINAL_LIBRARY = 'xul' + + LOCAL_INCLUDES += [ + '../protobuf', +- '/ipc/chromium/src' ++ '/ipc/chromium/src', ++ '/toolkit/xre' + ] + + DEFINES['GOOGLE_PROTOBUF_NO_RTTI'] = True + + CXXFLAGS += CONFIG['TK_CFLAGS'] 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 @@ +@@ -46,16 +46,20 @@ #ifdef XP_WIN #include #include "nsWindowsHelpers.h" @@ -215,9 +223,9 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon #ifdef MOZ_WIDGET_ANDROID #include "AndroidBridge.h" - using namespace mozilla::widget::android; #endif -@@ -2722,16 +2726,25 @@ nsDownload::SetState(DownloadState aStat + +@@ -2716,16 +2720,25 @@ nsDownload::SetState(DownloadState aStat nsCOMPtr pref(do_GetService(NS_PREFSERVICE_CONTRACTID)); // Master pref to control this function. @@ -243,17 +251,13 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon int64_t goat = PR_Now() - mStartTime; showTaskbarAlert = goat > alertIntervalUSec; -@@ -2759,19 +2772,20 @@ nsDownload::SetState(DownloadState aStat - // because if it is, they'll click open the download manager and - // the items they downloaded will have been removed. - alerts->ShowAlertNotification( +@@ -2756,16 +2769,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"), mDownloadManager, EmptyString(), NS_LITERAL_STRING("auto"), - EmptyString(), nullptr); -- } -+ } + EmptyString(), EmptyString(), nullptr, mPrivate); + } } } + } @@ -268,7 +272,7 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn --- a/toolkit/content/jar.mn +++ b/toolkit/content/jar.mn -@@ -58,29 +58,33 @@ toolkit.jar: +@@ -57,29 +57,33 @@ toolkit.jar: content/global/viewZoomOverlay.js (viewZoomOverlay.js) *+ content/global/bindings/autocomplete.xml (widgets/autocomplete.xml) content/global/bindings/browser.xml (widgets/browser.xml) @@ -290,7 +294,7 @@ diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn content/global/bindings/menulist.xml (widgets/menulist.xml) content/global/bindings/notification.xml (widgets/notification.xml) content/global/bindings/numberbox.xml (widgets/numberbox.xml) - * content/global/bindings/popup.xml (widgets/popup.xml) + content/global/bindings/popup.xml (widgets/popup.xml) *+ content/global/bindings/preferences.xml (widgets/preferences.xml) +*+ content/global/bindings/preferences-kde.xml (widgets/preferences-kde.xml) +% override chrome://global/content/bindings/preferences.xml chrome://global/content/bindings/preferences-kde.xml desktop=kde @@ -306,7 +310,7 @@ diff --git a/toolkit/content/widgets/dialog-kde.xml b/toolkit/content/widgets/di new file mode 100644 --- /dev/null +++ b/toolkit/content/widgets/dialog-kde.xml -@@ -0,0 +1,449 @@ +@@ -0,0 +1,455 @@ + +