# HG changeset patch # User Wolfgang Rosenauer # Date 1496565272 -7200 # Node ID f82a374a310dd24e21f0734acac69eb8a14235e8 # Parent 214d22b0c31c98ecf53b1218e66016e18d8447ff Firefox 54.0b13 rebased patches removed mozilla-shared-nss-db.patch updated l10n_changesets.txt diff -r 214d22b0c31c -r f82a374a310d MozillaFirefox/MozillaFirefox.changes --- a/MozillaFirefox/MozillaFirefox.changes Sun Jun 04 09:56:53 2017 +0200 +++ b/MozillaFirefox/MozillaFirefox.changes Sun Jun 04 10:34:32 2017 +0200 @@ -1,4 +1,13 @@ ------------------------------------------------------------------- +Sun Jun 4 07:57:41 UTC 2017 - wr@rosenauer.org + +- update to Firefox 54.0b13 +- requires NSPR 4.14 and NSS 3.30.2 +- requires rust 1.15.1 +- removed mozilla-shared-nss-db.patch as it seems to be a rather + unused feature + +------------------------------------------------------------------- Thu Jun 1 04:25:05 UTC 2017 - kah0922@gmail.com - remove -fno-inline-small-functions and explicitely optimize with diff -r 214d22b0c31c -r f82a374a310d MozillaFirefox/MozillaFirefox.spec --- a/MozillaFirefox/MozillaFirefox.spec Sun Jun 04 09:56:53 2017 +0200 +++ b/MozillaFirefox/MozillaFirefox.spec Sun Jun 04 10:34:32 2017 +0200 @@ -74,9 +74,8 @@ BuildRequires: libnotify-devel BuildRequires: libproxy-devel BuildRequires: makeinfo -BuildRequires: mozilla-nspr-devel >= 4.13.1 -BuildRequires: mozilla-nss-devel >= 3.29.5 -BuildRequires: nss-shared-helper-devel +BuildRequires: mozilla-nspr-devel >= 4.14 +BuildRequires: mozilla-nss-devel >= 3.30.2 BuildRequires: python-devel BuildRequires: startup-notification-devel BuildRequires: unzip @@ -92,7 +91,7 @@ BuildRequires: pkgconfig(gtk+-unix-print-3.0) %if 0%{?firefox_use_rust} BuildRequires: cargo -BuildRequires: rust >= 1.10 +BuildRequires: rust >= 1.15.1 BuildRequires: rust-std %endif # libavcodec is required for H.264 support but the @@ -138,7 +137,6 @@ Source18: mozilla-api-key # Gecko/Toolkit Patch1: mozilla-nongnome-proxies.patch -Patch2: mozilla-shared-nss-db.patch Patch3: mozilla-kde.patch Patch5: mozilla-language.patch Patch6: mozilla-ntlm-full-path.patch @@ -248,7 +246,6 @@ %endif cd $RPM_BUILD_DIR/mozilla %patch1 -p1 -%patch2 -p1 %patch3 -p1 %patch5 -p1 %patch6 -p1 diff -r 214d22b0c31c -r f82a374a310d MozillaFirefox/l10n_changesets.txt --- a/MozillaFirefox/l10n_changesets.txt Sun Jun 04 09:56:53 2017 +0200 +++ b/MozillaFirefox/l10n_changesets.txt Sun Jun 04 10:34:32 2017 +0200 @@ -1,94 +1,95 @@ -ach ad4861cc8b97 -af ed2ad4994929 -an 99f7617b5ca8 -ar 2f28d11d1657 -as ec72c8873d6f -ast 234a91384f3a -az 65e7cd3b577c -bg 69bcfc15305b -bn-BD 53c25d5b4589 -bn-IN 9f8087a5f6cd -br 276a0bd1ddec -bs bd981c758c72 -ca 799630b0c669 -cak 3ad4113a7360 -cs b2f1daccfa0d -cy 09de6e11eb03 -da e0a49a797d36 -de 648fa4bf1c2c -dsb c53dc817114e -el 5c938eaf3701 -en-GB 26cd2b7806cc -en-ZA 3e25fa2becca -eo 49831294d72e -es-AR b836bece31c8 -es-CL 58ac3780452e -es-ES 6f99cb5c975b -es-MX 9d1640aa44cc -et 4aa55cdd1504 -eu 2333c4822f7c -fa d5f8a48f15d2 -ff fd37d118280c -fi db0a67c30074 -fr 54307652740e -fy-NL 085a47bc877c -ga-IE 8d20d03ac938 -gd fc9ab54d84a9 -gl 849e4e3a3fc9 -gn 51054649b046 -gu-IN c713ea51e83a -he 68f368c165a5 -hi-IN 24a69ca3f8ea -hr 5e08e334a84c -hsb 393c98c68916 -hu 97f36446d52a -hy-AM d467bd690878 -id f390b2688780 -is 9ee7f7c99512 -it ed1aa37dd8c7 -ja ed7c7ca5cbd2 -ja-JP-mac c95055d36190 -ka 3b036c9e61a6 -kab 364adce77c72 -kk 08696f7c8a1a -km c68136590500 -kn 6160ec938484 -ko 936eb0ebb2da -lij 6f8083311567 -lt 2b1cbb210da2 -lv 10389753c571 -mai 7e4a8262ce47 -mk 123d0c7a029e -ml 6489a17e1231 -mr 6e618c26bbbc -ms f1b58ca03654 -nb-NO e87d4d61a15e -nl 095e7caafd73 -nn-NO dd567e171cc0 -or 16dd77306673 -pa-IN 4fa5174a3d00 -pl e0cb50020774 -pt-BR 291efbc7eda6 -pt-PT 8ba304b52d98 -rm ec384cb407d1 -ro d8c54284d42c -ru 72f076d6157a -si d0ecb8470e6b -sk 5461f87207f7 -sl 5057b16cc0a4 -son 8a18464fb645 -sq 8dcd80c157b4 -sr 49f0c3635d34 -sv-SE ba8c81281095 -ta 1e7e519542ff -te 510cff80cfbe -th 5aa843627cdb -tr 33ade23966b0 -uk 7db099371772 -ur 8916a4a4ac78 -uz 4f2be0c7cf61 -vi a0e2d5d10028 -xh 0bbddd61bf1d -zh-CN 0a704c7c84a1 -zh-TW 5a852a958ba3 +ach 3d16ffc635fa +af c253fc5c461c +an 709595e9d6d9 +ar 8e84db70090c +as 3273f8a51369 +ast c70eb0effdea +az 513a38f67e53 +bg 16f590ce9b0f +bn-BD 30a95df68250 +bn-IN 61ccbd31448f +br 74f32dd3035a +bs d123df5bd790 +ca 0f03ac5b5da0 +cak 8fa929cfc8bd +cs 5d3d002ddbac +cy df69730c6138 +da 7dc0483d5665 +de 0d12a52554f7 +dsb 5fb991493714 +el 6ad7c29f8be7 +en-GB 386758cec551 +en-ZA e7d811a62b2e +eo b83c957ffed3 +es-AR 1e03932f76c0 +es-CL fccd555cf1b3 +es-ES 6f6cedf58756 +es-MX a95fc166c386 +et c13394682e2e +eu 152ef6637475 +fa a82f310d3cf4 +ff 2f8fe276747e +fi 24aefa9d21f6 +fr 40b71a8af77f +fy-NL 8f43c4479225 +ga-IE 1ad18b82e5e0 +gd 886cf4b669d9 +gl f2e416fd9acb +gn 08130e6e6b98 +gu-IN e833353c2612 +he e744937d682f +hi-IN df27152fc8b4 +hr e3ddc16dbe49 +hsb 73c4c02be624 +hu 444b008f2971 +hy-AM 75d2d8da0ea2 +id d012ea9873b6 +is 877b2f2933cb +it cbd37998f082 +ja fc03f12a536f +ja-JP-mac 1cf3b9a58727 +ka 2109fd41c843 +kab 32ca41108bb5 +kk 0cd55422cf5d +km 2fe614c56966 +kn 9746c95e6c92 +ko b76b762e0886 +lij bbbb6c90b00d +lt a9732ebde542 +lv 630c8c7c1e0d +mai b18bc831d3de +mk 1d6d0e92d804 +ml 12321b4dc12b +mr 3b5abb6d729c +ms 88e67c9c4c7d +my f0fec5a6dd5c +nb-NO b06f356d7a23 +nl 6f43bd87f3ab +nn-NO d062f71bc25d +or 9dd78ca774cc +pa-IN 51052f49037b +pl c3ac5d18050d +pt-BR 23a867d7a861 +pt-PT 555ec87449af +rm 5677e3a3d4d7 +ro 65de41bf43cc +ru 726930da4608 +si e21964ef4f5c +sk 0c05a55b0dc2 +sl b436442f6650 +son e526828625ea +sq f80aa499a9a8 +sr 4d8424f5d51f +sv-SE 163e033a8d03 +ta 90d4447ad2cf +te 5eff01a34e1f +th 92681bccc461 +tr 4208e1a93994 +uk 883cef864f83 +ur b800a594d871 +uz 2b4cac9eb483 +vi 4cd6b32e0fbf +xh 27e442d1b183 +zh-CN cc468e0cdc32 +zh-TW ce919472c211 diff -r 214d22b0c31c -r f82a374a310d MozillaFirefox/mozilla-shared-nss-db.patch --- a/MozillaFirefox/mozilla-shared-nss-db.patch Sun Jun 04 09:56:53 2017 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -../mozilla-shared-nss-db.patch \ No newline at end of file diff -r 214d22b0c31c -r f82a374a310d firefox-kde.patch --- a/firefox-kde.patch Sun Jun 04 09:56:53 2017 +0200 +++ b/firefox-kde.patch Sun Jun 04 10:34:32 2017 +0200 @@ -1,5 +1,5 @@ # HG changeset patch -# Parent 9488ac970162c2224614d544b9bab7b984b38c90 +# Parent f17aea11a99a3ea5fee78bc53bdecb8d851660f0 diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul new file mode 100644 @@ -1145,7 +1145,7 @@ diff --git a/browser/base/jar.mn b/browser/base/jar.mn --- a/browser/base/jar.mn +++ b/browser/base/jar.mn -@@ -60,16 +60,18 @@ browser.jar: +@@ -58,16 +58,18 @@ browser.jar: content/browser/aboutSocialError.xhtml (content/aboutSocialError.xhtml) content/browser/aboutProviderDirectory.xhtml (content/aboutProviderDirectory.xhtml) content/browser/aboutTabCrashed.css (content/aboutTabCrashed.css) @@ -1227,7 +1227,7 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/components/preferences/in-content/main.js --- a/browser/components/preferences/in-content/main.js +++ b/browser/components/preferences/in-content/main.js -@@ -32,16 +32,22 @@ var gMainPane = { +@@ -34,16 +34,22 @@ var gMainPane = { // In Windows 8 we launch the control panel since it's the only // way to get all file type association prefs. So we don't know // when the user will select the default. We refresh here periodically @@ -1250,7 +1250,7 @@ this.updateBrowserStartupLastSession(); if (AppConstants.platform == "win") { -@@ -680,16 +686,27 @@ var gMainPane = { +@@ -682,16 +688,27 @@ var gMainPane = { let alwaysCheckPref = document.getElementById("browser.shell.checkDefaultBrowser"); alwaysCheckPref.value = true; @@ -1281,7 +1281,7 @@ diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build --- a/browser/components/shell/moz.build +++ b/browser/components/shell/moz.build -@@ -34,16 +34,18 @@ if CONFIG['OS_ARCH'] == 'WINNT': +@@ -38,16 +38,18 @@ if CONFIG['OS_ARCH'] == 'WINNT': ] elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': SOURCES += [ @@ -1593,10 +1593,10 @@ 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 -@@ -638,16 +638,17 @@ - @RESPATH@/greprefs.js +@@ -645,16 +645,17 @@ @RESPATH@/defaults/autoconfig/prefcalls.js @RESPATH@/browser/defaults/permissions + @RESPATH@/browser/defaults/blocklists ; Warning: changing the path to channel-prefs.js can cause bugs (Bug 756325) ; Technically this is an app pref file, but we are keeping it in the original @@ -1604,10 +1604,10 @@ @RESPATH@/defaults/pref/channel-prefs.js +@BINPATH@/defaults/pref/kde.js + ; Remote control protocol prefs + ; defined in ../../testing/marionette/prefs/marionette.js + @RESPATH@/defaults/pref/marionette.js + ; Services (gre) prefs @RESPATH@/defaults/pref/services-sync.js - ; [Layout Engine Resources] - ; Style Sheets, Graphics and other Resources used by the layout engine. - @RESPATH@/res/EditorOverride.css - @RESPATH@/res/contenteditable.css diff -r 214d22b0c31c -r f82a374a310d mozilla-kde.patch --- a/mozilla-kde.patch Sun Jun 04 09:56:53 2017 +0200 +++ b/mozilla-kde.patch Sun Jun 04 10:34:32 2017 +0200 @@ -1,5 +1,5 @@ # HG changeset patch -# Parent 564e9441f71b5bc368c33697428f756f5914eb04 +# Parent 1fccdb56cf307cef5ddd39ece2ac58c93fe706b8 Description: Add KDE integration to Firefox (toolkit parts) Author: Wolfgang Rosenauer Author: Lubos Lunak @@ -27,7 +27,7 @@ #include "prefread.h" #include "prefapi_private_data.h" -@@ -1174,16 +1175,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char +@@ -1199,16 +1200,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char static nsresult pref_LoadPrefsInDirList(const char *listId) { @@ -62,7 +62,7 @@ return NS_OK; bool hasMore; -@@ -1199,17 +1218,17 @@ static nsresult pref_LoadPrefsInDirList( +@@ -1224,17 +1243,17 @@ static nsresult pref_LoadPrefsInDirList( nsAutoCString leaf; path->GetNativeLeafName(leaf); @@ -81,7 +81,7 @@ { nsZipItemPtr manifest(jarReader, name, true); NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE); -@@ -1303,24 +1322,36 @@ static nsresult pref_InitInitialObjects( +@@ -1328,24 +1347,36 @@ 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) @@ -2169,7 +2169,7 @@ diff --git a/toolkit/mozapps/downloads/nsHelperAppDlg.js b/toolkit/mozapps/downloads/nsHelperAppDlg.js --- a/toolkit/mozapps/downloads/nsHelperAppDlg.js +++ b/toolkit/mozapps/downloads/nsHelperAppDlg.js -@@ -627,17 +627,17 @@ nsUnknownContentTypeDialog.prototype = { +@@ -629,17 +629,17 @@ nsUnknownContentTypeDialog.prototype = { else typeString = mimeInfo.MIMEType; } @@ -2188,7 +2188,7 @@ }, // Returns true if opening the default application makes sense. -@@ -801,17 +801,17 @@ nsUnknownContentTypeDialog.prototype = { +@@ -803,17 +803,17 @@ nsUnknownContentTypeDialog.prototype = { switch (this.dialogElement("openHandler").selectedIndex) { case 0: // No app need be specified in this case. @@ -2207,7 +2207,7 @@ this.mDialog.document.documentElement.getButton("accept").disabled = !ok; }, -@@ -1068,30 +1068,56 @@ nsUnknownContentTypeDialog.prototype = { +@@ -1070,30 +1070,56 @@ nsUnknownContentTypeDialog.prototype = { params.handlerApp.executable && params.handlerApp.executable.isFile()) { // Remember the file they chose to run. @@ -3178,7 +3178,7 @@ #include "nsXPIDLString.h" #include "nsIURL.h" #include "nsIFileStreams.h" -@@ -1146,26 +1146,26 @@ nsresult nsOSHelperAppService::OSProtoco +@@ -1147,26 +1147,26 @@ nsresult nsOSHelperAppService::OSProtoco ContentAction::Action::defaultActionForScheme(QString(aProtocolScheme) + ':'); if (action.isValid()) @@ -3207,7 +3207,7 @@ nsresult nsOSHelperAppService::GetFileTokenForPath(const char16_t * platformAppPath, nsIFile ** aFile) { -@@ -1252,17 +1252,17 @@ nsOSHelperAppService::GetFromExtension(c +@@ -1253,17 +1253,17 @@ nsOSHelperAppService::GetFromExtension(c mime_types_description, true); @@ -3226,7 +3226,7 @@ rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType, -@@ -1373,17 +1373,17 @@ nsOSHelperAppService::GetFromType(const +@@ -1374,17 +1374,17 @@ nsOSHelperAppService::GetFromType(const nsAutoString extensions, mime_types_description; LookUpExtensionsAndDescription(majorType, minorType, @@ -3623,7 +3623,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp --- a/xpcom/components/ManifestParser.cpp +++ b/xpcom/components/ManifestParser.cpp -@@ -32,16 +32,17 @@ +@@ -33,16 +33,17 @@ #include "nsTextFormatter.h" #include "nsVersionComparator.h" #include "nsXPCOMCIDInternal.h" @@ -3641,7 +3641,7 @@ const char* directive; int argc; -@@ -472,16 +473,17 @@ ParseManifest(NSLocationType aType, File +@@ -466,16 +467,17 @@ ParseManifest(NSLocationType aType, File NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled"); NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired"); NS_NAMED_LITERAL_STRING(kApplication, "application"); @@ -3659,7 +3659,7 @@ NS_NAMED_LITERAL_STRING(kMain, "main"); NS_NAMED_LITERAL_STRING(kContent, "content"); -@@ -532,44 +534,49 @@ ParseManifest(NSLocationType aType, File +@@ -526,44 +528,49 @@ ParseManifest(NSLocationType aType, File CopyUTF8toUTF16(s, abi); abi.Insert(char16_t('_'), 0); abi.Insert(osTarget, 0); @@ -3709,7 +3709,7 @@ process = kMain; } -@@ -672,25 +679,27 @@ ParseManifest(NSLocationType aType, File +@@ -666,25 +673,27 @@ ParseManifest(NSLocationType aType, File TriState stOsVersion = eUnspecified; TriState stOs = eUnspecified; TriState stABI = eUnspecified; @@ -3737,7 +3737,7 @@ } #if defined(MOZ_WIDGET_ANDROID) -@@ -740,16 +749,17 @@ ParseManifest(NSLocationType aType, File +@@ -734,16 +743,17 @@ ParseManifest(NSLocationType aType, File } if (!ok || @@ -3758,7 +3758,7 @@ diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build --- a/xpcom/components/moz.build +++ b/xpcom/components/moz.build -@@ -43,12 +43,13 @@ FINAL_LIBRARY = 'xul' +@@ -50,12 +50,13 @@ FINAL_LIBRARY = 'xul' LOCAL_INCLUDES += [ '!..', '../base', @@ -3793,7 +3793,7 @@ #include "prmem.h" #include "plbase64.h" -@@ -1949,42 +1950,52 @@ nsLocalFile::SetPersistentDescriptor(con +@@ -1948,59 +1949,74 @@ nsLocalFile::SetPersistentDescriptor(con return InitWithNativePath(aPersistentDescriptor); #endif } @@ -3817,22 +3817,32 @@ if (isDirectory) { - return giovfs->ShowURIForInput(mPath); + url = mPath; - } else if (NS_SUCCEEDED(giovfs->OrgFreedesktopFileManager1ShowItems(mPath))) { + } + if (NS_SUCCEEDED(giovfs->OrgFreedesktopFileManager1ShowItems(mPath))) { return NS_OK; - } else { - nsCOMPtr parentDir; - nsAutoCString dirPath; - if (NS_FAILED(GetParent(getter_AddRefs(parentDir)))) { - return NS_ERROR_FAILURE; - } - if (NS_FAILED(parentDir->GetNativePath(dirPath))) { - return NS_ERROR_FAILURE; - } + } + nsCOMPtr parentDir; + nsAutoCString dirPath; + if (NS_FAILED(GetParent(getter_AddRefs(parentDir)))) { + return NS_ERROR_FAILURE; + } + if (NS_FAILED(parentDir->GetNativePath(dirPath))) { + return NS_ERROR_FAILURE; + } -- return giovfs->ShowURIForInput(dirPath); -+ url = dirPath; +- return giovfs->ShowURIForInput(dirPath); ++ url = dirPath; + #elif defined(MOZ_WIDGET_COCOA) + CFURLRef url; + if (NS_SUCCEEDED(GetCFURL(&url))) { + nsresult rv = CocoaFileUtils::RevealFileInFinder(url); + ::CFRelease(url); + return rv; } -+ + return NS_ERROR_FAILURE; + #else + return NS_ERROR_FAILURE; + #endif + if(nsKDEUtils::kdeSupport()) { + nsTArray command; + command.AppendElement( NS_LITERAL_CSTRING("REVEAL") ); @@ -3844,17 +3854,6 @@ + return NS_ERROR_FAILURE; + + return giovfs->ShowURIForInput(url); - #elif defined(MOZ_WIDGET_COCOA) - CFURLRef url; - if (NS_SUCCEEDED(GetCFURL(&url))) { - nsresult rv = CocoaFileUtils::RevealFileInFinder(url); - ::CFRelease(url); - return rv; - } - return NS_ERROR_FAILURE; -@@ -1992,16 +2003,22 @@ nsLocalFile::Reveal() - return NS_ERROR_FAILURE; - #endif } NS_IMETHODIMP diff -r 214d22b0c31c -r f82a374a310d mozilla-shared-nss-db.patch --- a/mozilla-shared-nss-db.patch Sun Jun 04 09:56:53 2017 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,143 +0,0 @@ -From: Hans Petter Jansson - Wolfgang Rosenauer -Subject: use libnsssharedhelper if available at compile time - (can be disabled by exporting MOZ_XRE_NO_NSSHELPER=1) -References: - -diff --git a/old-configure.in b/old-configure.in ---- a/old-configure.in -+++ b/old-configure.in -@@ -5358,16 +5358,31 @@ esac - - AC_SUBST(MOZ_TREE_CAIRO) - AC_SUBST_LIST(MOZ_CAIRO_CFLAGS) - AC_SUBST_LIST(MOZ_CAIRO_LIBS) - AC_SUBST_LIST(MOZ_CAIRO_OSLIBS) - AC_SUBST(MOZ_TREE_PIXMAN) - - dnl ======================================================== -+dnl Check for nss-shared-helper -+dnl ======================================================== -+ -+ PKG_CHECK_MODULES(NSSHELPER, nss-shared-helper, -+ [MOZ_ENABLE_NSSHELPER=1], -+ [MOZ_ENABLE_NSSHELPER=]) -+ -+if test "$MOZ_ENABLE_NSSHELPER"; then -+ AC_DEFINE(MOZ_ENABLE_NSSHELPER) -+fi -+AC_SUBST(MOZ_ENABLE_NSSHELPER) -+AC_SUBST_LIST(NSSHELPER_CFLAGS) -+AC_SUBST_LIST(NSSHELPER_LIBS) -+ -+dnl ======================================================== - dnl disable xul - dnl ======================================================== - MOZ_ARG_DISABLE_BOOL(xul, - [ --disable-xul Disable XUL], - MOZ_XUL= ) - if test "$MOZ_XUL"; then - AC_DEFINE(MOZ_XUL) - else -diff --git a/security/manager/ssl/moz.build b/security/manager/ssl/moz.build ---- a/security/manager/ssl/moz.build -+++ b/security/manager/ssl/moz.build -@@ -160,16 +160,19 @@ if CONFIG['MOZ_XUL']: - ] - - UNIFIED_SOURCES += [ - 'md4.c', - ] - - FINAL_LIBRARY = 'xul' - -+CXXFLAGS += sorted(CONFIG['NSSHELPER_CFLAGS']) -+OS_LIBS += sorted(CONFIG['NSSHELPER_LIBS']) -+ - LOCAL_INCLUDES += [ - '/dom/base', - '/dom/crypto', - '/security/certverifier', - '/security/pkix/include', - ] - - LOCAL_INCLUDES += [ -diff --git a/security/manager/ssl/nsNSSComponent.cpp b/security/manager/ssl/nsNSSComponent.cpp ---- a/security/manager/ssl/nsNSSComponent.cpp -+++ b/security/manager/ssl/nsNSSComponent.cpp -@@ -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_ENABLE_NSSHELPER -+#pragma GCC visibility push(default) -+#include -+#pragma GCC visibility pop -+#include "prenv.h" -+#endif -+ - #include "nsNSSComponent.h" - - #include "ExtendedValidation.h" - #include "NSSCertDBTrustDomain.h" - #include "ScopedNSSTypes.h" - #include "SharedSSLState.h" - #include "cert.h" - #include "certdb.h" -@@ -1702,17 +1709,31 @@ nsNSSComponent::InitializeNSS() - return rv; - } - } - MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("inSafeMode: %u\n", inSafeMode)); - - if (!nocertdb && !profileStr.IsEmpty()) { - // First try to initialize the NSS DB in read/write mode. - // Only load PKCS11 modules if we're not in safe mode. -+#ifdef MOZ_ENABLE_NSSHELPER -+ if (PR_GetEnv("MOZ_XRE_NO_NSSHELPER")) { -+ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false, !inSafeMode); -+ } else { -+ uint32_t flags = NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE; -+ init_rv = ::nsshelp_open_db ("Firefox", profileStr.get(), flags); -+ -+ if (init_rv != SECSuccess) { -+ MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("can not init NSS using nsshelp_open_db in %s\n", profileStr.get())); -+ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false, !inSafeMode); -+ } -+ } -+#else - init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false, !inSafeMode); -+#endif - // If that fails, attempt read-only mode. - if (init_rv != SECSuccess) { - MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("could not init NSS r/w in %s\n", profileStr.get())); - init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), true, !inSafeMode); - } - if (init_rv != SECSuccess) { - MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("could not init in r/o either\n")); - } -diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build ---- a/toolkit/library/moz.build -+++ b/toolkit/library/moz.build -@@ -220,16 +220,18 @@ OS_LIBS += CONFIG['MOZ_CAIRO_OSLIBS'] - OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS'] - - if CONFIG['SERVO_TARGET_DIR']: - if CONFIG['_MSC_VER']: - OS_LIBS += ['%s/geckoservo' % CONFIG['SERVO_TARGET_DIR']] - else: - OS_LIBS += ['-L%s' % CONFIG['SERVO_TARGET_DIR'], '-lgeckoservo'] - -+OS_LIBS += sorted(CONFIG['NSSHELPER_LIBS']) -+ - if CONFIG['MOZ_SYSTEM_JPEG']: - OS_LIBS += CONFIG['MOZ_JPEG_LIBS'] - - if CONFIG['MOZ_SYSTEM_PNG']: - OS_LIBS += CONFIG['MOZ_PNG_LIBS'] - - if CONFIG['MOZ_SYSTEM_HUNSPELL']: - OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS'] diff -r 214d22b0c31c -r f82a374a310d series --- a/series Sun Jun 04 09:56:53 2017 +0200 +++ b/series Sun Jun 04 10:34:32 2017 +0200 @@ -1,6 +1,5 @@ # xulrunner/gecko patches mozilla-nongnome-proxies.patch -mozilla-shared-nss-db.patch mozilla-kde.patch mozilla-language.patch mozilla-ntlm-full-path.patch