Граф коммитов

9294 Коммитов

Автор SHA1 Сообщение Дата
Nathan Froyd 51b1eb3e1e Bug 1658053 - update config.{guess,sub} with arm64 macOS support; r=glandium
We need these updates so that configure will automatically detect the
correct target triple on arm64 macOS.

Differential Revision: https://phabricator.services.mozilla.com/D86442
2020-08-13 11:36:08 +00:00
Jean-Yves Avenard 86a3cf7457 Bug 1657521 - P3. Have the RemoteDecoderManagerChild use its own dedicated thread. r=mattwoodrow
This is a partial revert of "Bug 1650996 - P3. Have RemoteDecoderManagerChild use a TaskQueue over a media threadpool."

The RemoteDecoderManagerChild dispatch tasks synchronously, right now it is doing so on the media controller's thread pool ; however in the following patch it will change the creation to the decoder's thread pool.

If we attempt to instantiate too many decoders at once, we run out of available threads and dead-lock in the sync dispatch.

This issue has bitten us in various places already and the solution was always assuming that the decoder will always be created on the controller's thread and used on the decoder's thread.
This assumption won't hold any longer and was difficult to keep anyway.

So we have the RemoteDecoderManagerChild uses a dedicated thread so that we can guarantee there will always be an available thread to create the decoder.

Depends on D86543

Differential Revision: https://phabricator.services.mozilla.com/D86895
2020-08-13 03:19:36 +00:00
Ricky Stewart 995ebcae1d Bug 1658483 - Remove references to the github repo that contains MacOSX-SDKs r=mhentges,dmajor
Differential Revision: https://phabricator.services.mozilla.com/D86727
2020-08-11 17:24:34 +00:00
Ricky Stewart cd9a620ede Bug 1657954 - Move various branding options from `old-configure` r=geckoview-reviewers,mhentges,nalexander,snorp
Differential Revision: https://phabricator.services.mozilla.com/D86391
2020-08-11 15:58:52 +00:00
Joshua Cranmer 45bfd75f59 Bug 1652354, part 𝋡: Support categories with generic values in static component registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D85656
2020-08-10 21:16:31 +00:00
june wilde 103a325162 Bug 1598226 - Create task definitions for external clang-tidy checks; r=andi,tjr,glandium
Depends on D81448

Differential Revision: https://phabricator.services.mozilla.com/D84769
2020-08-10 21:02:04 +00:00
Mike Hommey 2fc8fca5d8 Bug 1658221 - Look for llvm-rc in the toolchain search path. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D86493
2020-08-10 16:23:45 +00:00
Mike Hommey 527e667296 Bug 1537703 - Use llvm-rc instead of rc.exe. r=mhentges,froydnj
This makes us use one less tool from MSVC, and removes one more use of wine
in cross builds.

We replace the call to either rc/llvm-rc or windres with a wrapper script.
While the script is not strictly needed for the latter, we use a wrapper
in that case anyway because it's one step towards fixing bug 1498414.
For llvm-rc, however, we need a wrapper because llvm-rc doesn't preprocess
on its own, so the wrapper does that too.

The wrapper script also allows to deal with the default flags passed to
llvm-rc or windres, rather than inherit them from old-configure.

We also need to explicitly pass the codepage to llvm-rc, which was not
necessary with rc (presumably, llvm-rc has a different default).

While here, remove the unused WINDRES subst from js/src/old-configure.in.
Also, while here, we remove --use-temp-file, because as described in the
linked bug and in the windres manual page, it was used to work around bugs
on Windows 98 and earlier.

Differential Revision: https://phabricator.services.mozilla.com/D86312
2020-08-08 21:02:04 +00:00
Ricky Stewart 31755b431d Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj
Today we don't require that `mach` `CommandProvider`s subclass from any particular parent class and we're very lax about the requirements they must meet. While that's convenient in certain circumstances, it has some unfortunate implications for feature development.

Today the only requirements that we have for `CommandProvider`s are that they have an `__init__()` method that takes either 1 or 2 arguments, the second of which must be called `context` and is populated with the `mach` `CommandContext`. Again, while this flexibility is occasionally convenient, it is limiting. As we add features to `mach`, having a better idea what the shape of our `CommandProvider`s are and how we can instantiate them and use them is increasingly important, and this gives us additional control when having `mach` configure `CommandProvider`s based on data that is only available at the `mach` level. In particular, we plan to leverage this in bugs 985141 and 1654074.

Here we add validation to the `CommandProvider` decorator to ensure all classes inherit from `MachCommandBase`, update all `CommandProvider`s in-tree to inherit from `MachCommandBase`, and update source and test code accordingly.

Follow-up work: we now require (de facto) that the `context` be populated with a `topdir` attribute by the `populate_context_handler` function, since instantiating the `MachCommandBase` requires a `topdir` be provided. This is fine for now in the interest of keeping this patch reasonably sized, but some additional refactoring could make this cleaner.

Differential Revision: https://phabricator.services.mozilla.com/D86255
2020-08-07 18:24:59 +00:00
Ricky Stewart 3ddb065650 Bug 1656611 - Remove `objdir` support from `virtualenv_packages.txt` handling r=mhentges,froydnj
I noticed that the `objdir:build` entry in `build/virtualenv_packages.txt` entry was apparently unused. This originates from bug 841713, seven years ago, when the `objdir` handling was introduced. Today, this doesn't appear to be serving a purpose. There is no Python library in my `$objdir/build` directory; nor can I see anything in `build/moz.build` or any related files suggesting one could ever appear. I can only assume this feature has outlived its usefulness, so delete it and the relevant in-tree support.

This necessitates slightly changing the signature and implementation of the `activate_pipenv()` method; also update all callers.

Differential Revision: https://phabricator.services.mozilla.com/D85635
2020-08-07 16:03:36 +00:00
Bogdan Tara 57ed67928b Backed out changeset 760fc38c793b (bug 1656611) for doc failure complaining about virtualenv_root CLOSED TREE 2020-08-07 18:57:56 +03:00
Ricky Stewart 41e473f17b Bug 1656611 - Remove `objdir` support from `virtualenv_packages.txt` handling r=mhentges,froydnj
I noticed that the `objdir:build` entry in `build/virtualenv_packages.txt` entry was apparently unused. This originates from bug 841713, seven years ago, when the `objdir` handling was introduced. Today, this doesn't appear to be serving a purpose. There is no Python library in my `$objdir/build` directory; nor can I see anything in `build/moz.build` or any related files suggesting one could ever appear. I can only assume this feature has outlived its usefulness, so delete it and the relevant in-tree support.

This necessitates slightly changing the signature and implementation of the `activate_pipenv()` method; also update all callers.

Differential Revision: https://phabricator.services.mozilla.com/D85635
2020-08-06 18:21:35 +00:00
Mike Hommey cb9be65521 Bug 1656141 - Stop using MT to insert manifests in binaries. r=firefox-build-system-reviewers,rstewart
We are currently relying on two different ways to insert side-by-side
manifests in binaries on Windows: through resource files, or through
the use of MT. The latter is not supported on mingw builds, which is
not great.

Link.exe has options to add a manifest at link time without relying on
either method above, but that's not supported on mingw either.

So the best we can do is to move everything to using resource files.
This also avoids using MT, which, on cross builds, requires using wine.

Ideally, the manifests would be declared in moz.build, but that
complicates things for cases like TestDllInterceptor, where there are
multiple binaries in the same directory, but only one of them needs the
manifest. This keeps the status quo of getting the manifest
automatically from the source directory.

Differential Revision: https://phabricator.services.mozilla.com/D85382
2020-08-07 00:55:16 +00:00
Mihai Alexandru Michis c4e805857f Backed out 9 changesets (bug 1656141) for causing multiple failures.
CLOSED TREE

Backed out changeset 9033b0400339 (bug 1656141)
Backed out changeset e43dd57dc61a (bug 1656141)
Backed out changeset eb450457a9b7 (bug 1656141)
Backed out changeset 194a994cf9c9 (bug 1656141)
Backed out changeset ce6831acb5e3 (bug 1656141)
Backed out changeset 29653ea85d49 (bug 1656141)
Backed out changeset 704f28486bda (bug 1656141)
Backed out changeset de8899453150 (bug 1656141)
Backed out changeset 4b133eda46aa (bug 1656141)
2020-08-07 01:48:45 +03:00
Mike Hommey dc4ee999b0 Bug 1656141 - Stop using MT to insert manifests in binaries. r=firefox-build-system-reviewers,rstewart
We are currently relying on two different ways to insert side-by-side
manifests in binaries on Windows: through resource files, or through
the use of MT. The latter is not supported on mingw builds, which is
not great.

Link.exe has options to add a manifest at link time without relying on
either method above, but that's not supported on mingw either.

So the best we can do is to move everything to using resource files.
This also avoids using MT, which, on cross builds, requires using wine.

Ideally, the manifests would be declared in moz.build, but that
complicates things for cases like TestDllInterceptor, where there are
multiple binaries in the same directory, but only one of them needs the
manifest. This keeps the status quo of getting the manifest
automatically from the source directory.

Differential Revision: https://phabricator.services.mozilla.com/D85382
2020-08-06 16:00:40 +00:00
David Major 00dbeabf9f Bug 1657502 - Disable new -Wpsabi warning in clang-11 r=firefox-build-system-reviewers,rstewart
clang-11 has a new warning that fires when you pass a 256-bit vector type as a parameter or return value, and your compilation doesn't enable AVX. The aim is to warn you that the ABI is different depending on whether you enable AVX, which could become a problem if AVX and non-AVX files communicate through such parameters.

While the intent is good, it's not really worth 1800 lines of log spam for us. We have only a tiny number of AVX compilations in media codecs, and the only things they interchange with other code are buffer pointers.

Differential Revision: https://phabricator.services.mozilla.com/D86107
2020-08-06 16:01:01 +00:00
Andi-Bogdan Postelnicu 1ead43f591 Bug 1657299 - First step of refactor `static-analysis` integration, making it more modular. r=marco
Add a modular approach for the integration of `static-analysis` module in order
to be able to share components of it with other modules, like the integration of
`clangd` in `vscode` where we need to have access to the configuration of `clang-tidy`
in order to have `in-ide` `static-analysis` messages.
In this initial step we make a separate module for the clang-tidy configuration.

Differential Revision: https://phabricator.services.mozilla.com/D85979
2020-08-06 06:51:16 +00:00
Mike Hommey d0d43d8f9b Bug 1657446 - Fix noise when running mozbuild/test/configure/lint.py with unittest.main. r=nalexander
Namely:
  build/moz.configure/old.configure:21: DeprecationWarning: invalid escape sequence \s
  build/moz.configure/old.configure:26: DeprecationWarning: invalid escape sequence \s
  python/mozbuild/mozbuild/configure/__init__.py:433: ResourceWarning: unclosed file <_io.BufferedReader...>
  python/mozbuild/mozbuild/configure/lint.py:120: DeprecationWarning: inspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()

Differential Revision: https://phabricator.services.mozilla.com/D86121
2020-08-06 03:19:08 +00:00
Tom Ritter 66394143e9 Bug 1601690 - Remove gcc as a supported compiler for Windows r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D56046
2020-08-05 18:55:13 +00:00
Ricky Stewart b1627141d4 Bug 1656346 - Move `--enable-startupcache` from `old-configure` r=firefox-build-system-reviewers,mhentges,glandium
Differential Revision: https://phabricator.services.mozilla.com/D85466
2020-08-05 00:28:34 +00:00
Ricky Stewart adbb976913 Bug 1656341 - Move `--enable-pref-extensions` from `old-configure` r=firefox-build-system-reviewers,mhentges,glandium
Differential Revision: https://phabricator.services.mozilla.com/D85463
2020-08-05 00:26:16 +00:00
Ricky Stewart 729697662f Bug 1656044 - Move `--enable-mobile-optimize`, `MOZ_GFX_OPTIMIZE_MOBILE` from `old-configure` r=geckoview-reviewers,mhentges,froydnj,glandium,esawin
Differential Revision: https://phabricator.services.mozilla.com/D85321
2020-08-03 13:36:59 +00:00
Mike Hommey cb4022c808 Bug 1652374 - Use LLD for non-PGO-profile-use clang builds on automation. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D85536
2020-08-04 02:26:42 +00:00
Mike Hommey 3228564df4 Bug 1652374 - Disable elfhack when explicitly building with --enable-linker=lld. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D85811
2020-08-04 21:56:41 +00:00
Kevin Jacobs cb86341c99 Bug 1655105 - land NSS afa38fb2f0b5 UPGRADE_NSS_RELEASE, r=jcj
2020-07-27  Jan-Marek Glogowski  <glogow@fbihome.de>

	* lib/freebl/Makefile:
	Bug 1652032 Disable all freebl assembler code for MSVC arm64
	r=rrelyea,bbeurdouche

	There are two places, where NSS tries to compile either x86_64 MSVC
	assembler or GCC aarch64 code, which will fail the build. And also
	drop the non-MSVC arch build flags for them.

	AFAI could identify, there isn't any armasm64 compatible asm code in
	the whole NSS library, so I don't even adapt AS for the build. The
	cross-build finishes this way.

	[d98bbb6168f4]

2020-07-24  Benjamin Beurdouche  <bbeurdouche@mozilla.com>

	* cmd/bltest/blapitest.c, coreconf/config.gypi, coreconf/config.mk,
	lib/freebl/alg2268.c, lib/freebl/deprecated/alg2268.c,
	lib/freebl/freebl_base.gypi, lib/freebl/ldvector.c,
	lib/freebl/loader.c, lib/freebl/loader.h, lib/freebl/manifest.mn,
	lib/softoken/lowpbe.c, lib/softoken/pkcs11c.c:
	Bug 1652729 - Add build flag to disable RC2 and relocate to
	lib/freebl/deprecated. r=kjacobs

	[e6c6f1d2d544]

2020-07-27  Robert Relyea  <rrelyea@redhat.com>

	* gtests/softoken_gtest/manifest.mn,
	gtests/softoken_gtest/softoken_dh_vectors.h,
	gtests/softoken_gtest/softoken_gtest.cc,
	gtests/softoken_gtest/softoken_gtest.gyp, lib/freebl/blapi.h,
	lib/freebl/dh.c, lib/freebl/ldvector.c, lib/freebl/loader.c,
	lib/freebl/loader.h, lib/softoken/manifest.mn,
	lib/softoken/pkcs11.c, lib/softoken/pkcs11c.c,
	lib/softoken/pkcs11i.h, lib/softoken/pkcs11u.c,
	lib/softoken/sftkdhverify.c, lib/softoken/softoken.gyp:
	Bug 1648822 Add stricter validation of DH keys when in FIPS mode.

	Update: FIPS now also requires us to do y^q mod p testing on key
	generation (always). We now do that in FIPS mode only, but in all
	modes we do full DH verification for DH and ECDH. Because of this,
	the path has now separated out the prime checks, which are now only
	done for the DH operation if we aren't using a known prime and the
	subprime value has been provided. I've also learned we can accept
	keys that we do full validation on in FIPS mode, so I've added that
	to this patch, though we still can't generate those kinds of keys
	without adding the subprime at keygen time.

	The new FIPS standard is dh operations must use approved primes.
	Approved primes are those selected in the tls and ike RFCs.
	Currently tls and ike have modes with checks whether the primes are
	approved, but the check may not always happen. The safest thing to
	do in FIPS mode is only allow those primes. In addition, FIPS
	requires 1< y < p-1 (or technically 2<=y<=p-2, since y is an integer
	those two tests are identical).

	While making changes I realized we would want a mode where we can do
	more strict checks on the prime while not requiring that the prime
	be an approved prime. We already allow for strict checking if q is
	supplied with the private key, but there were a couple of issues
	with that check:

	 1. there was no way of actually setting q in the current NSS
	pk11wrap interfaces. 2. If the prime was a safe prime, but g was an
	actual generator, then we would fail the y^q mod p = 1 tests for 50%
	of the keys, even though those keys are safe. 3. We weren't checking
	primality of p and q.

	So the old code:

	 if (q) { check y^q mod p = 1 if not fail }

	 check 1 <y < p-1 (done in DH_Derive).

	New code:

	 if (! p is approved prime) { if (FIPS) fail; if (q) { y_test = y if
	(p,q-> p is a safe prime) { y_test = 1 } check prime is prime Fail
	if not check subprime is subprime fail if not y_test^q mod p = 1 } }
	check 1 < y < p-1 (done in DH_Derive)

	This means:

	Existing code non-fips without setting the subprime continues to run
	as before. Non-fips code which sets the subprime now runs slower,
	but p and q are checked if p or q where not prime, the derive fails
	(which it should). In FIPS mode only approved primes will succeed
	now. Non-fips code can now set the subprime to q=(p-1)/2 if it
	doesn't have an explicit q value (like in tls). If the derive
	succeeds, we know that p is a safe prime. If p is approved, the
	checks are skipped because we already know that p is a safe prime.
	Code can optionally do a test derive on a new p and remember it's
	safe so that we know longer need to check ever call (though if q is
	not (p-1)/2, you will need to continue to do the checks each call
	because y could still be a small subgroup).

	This patch:

	gtests/softoken_gtest

	 1. Added New dh tests to softoken_gtests. The tests were added to
	softoken_gtests because we need to test both non-FIPS and FIPS mode.
	Test vectors include a category, so the same test vectors can be
	used in FIPS and non-FIPS even though each class may have different
	results. Most of the test vectors where created either by dhparams
	command in openssl, dsaparams in openssl, and the nss makepqg
	command. Each vector includes a label, prime, base, optional
	subprime, optional public key, test type, and key class (basically
	size). 2. If public key is not supplied, we use a generated public
	key. 3. If subPrime is supplied to wet it on the private key after
	generation.

	lib/freebl/dh.c

	 add primality tests to KEA_VerifyKey().

	lib/softokn/

	 1. Allow CKA_SUBPRIME to be set after key generation or import.
	This affects how we test for it's existance, since it is now always
	there on the key, we check it's length to make sure it's non-zero.
	2. We implement the psuedocode above as real code. 3. We create two
	new functions: sftl_VerifyDH_Prime which return SECSuccess if Prime
	is an approved prime. sftk_IsSafePrime which returns SECSuess of
	both prime and subprime look reasonable, and sets a Bool to PR_TRUE
	is subprime -> prime is safe (subprime = (prime-1)/2. These
	functions are implemented in sftkdhverify.c 4.Cleanup incorrect
	nominclature on primes (safe primes are not strong primes).
	[0be91fa2217a]

	* gtests/softoken_gtest/softoken_dh_vectors.h,
	gtests/softoken_gtest/softoken_gtest.cc:
	Fix more of the timeout issues on tests. (Drop expensive 4098 dh
	tests ).
	[4014c075a31b]

2020-07-29  Makoto Kato  <m_kato@ga2.so-net.ne.jp>

	* coreconf/config.gypi, lib/freebl/Makefile, lib/freebl/blinit.c,
	lib/freebl/freebl.gyp, lib/freebl/sha1-armv8.c,
	lib/freebl/sha_fast.c, lib/freebl/sha_fast.h:
	Bug 1650702 - Use ARM's crypt extension for SHA1. r=kjacobs

	ARM Crypto extension has SHA1 acceleration. Using this, SHA1 is 3
	times faster on ARMv8 CPU. The following data is AWS's a1 instance
	(Cortex-A72).

	Before ====== ``` # mode in opreps cxreps context op time(sec)
	thrgput sha1_e 954Mb 31M 0 0.000 10000.000 10.000 95Mb ```

	After ===== ``` # mode in opreps cxreps context op time(sec) thrgput
	sha1_e 2Gb 94M 0 0.000 10000.000 10.000 288Mb ```

	[68b6eb737689]

2020-07-29  Jan-Marek Glogowski  <glogow@fbihome.de>

	* manifest.mn:
	Bug 1653975 - Set "all" as the default Makefile target r=jcj,rrelyea

	Just reorder the rules in manifest.mn, so all is again the first
	rule. This restores pre-3.53 Makefile defaults.

	[eb52747b7000]

2020-07-31  Makoto Kato  <m_kato@ga2.so-net.ne.jp>

	* lib/freebl/blapii.h, lib/freebl/blinit.c, nss-tool/hw-support.c:
	Bug 1654142 - Add CPU feature detection for Intel SHA extension.
	r=kjacobs

	[e6b77a9c417a]

2020-08-03  Nathan Froyd  <froydnj@mozilla.com>

	* coreconf/detect_host_arch.py:
	Bug 1656986 - special-case arm64 in detect_host_arch.py; r=jcj

	This case comes up when attempting to build NSS on ARM64 Mac. If we
	don't do this, we wind up detecting arm64 as "arm", with predictably
	bad consequences.

	[afa38fb2f0b5] [tip]

Differential Revision: https://phabricator.services.mozilla.com/D85888
2020-08-04 19:54:56 +00:00
Moritz Birghan c8319be878 Bug 634697 - Add permanent storage to user's client certificate selection r=keeler,baku,fluent-reviewers,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D58820
2020-08-03 13:24:34 +00:00
Csoregi Natalia d9c303c342 Backed out changeset 8a81f6395e4b (bug 1652374) for bustage. CLOSED TREE 2020-08-01 11:50:20 +03:00
Mike Hommey 78233b678f Bug 1654994 - Stop setting up makecab for the build. r=firefox-build-system-reviewers,rstewart
Now that it is not actually used anywhere during the build.

Differential Revision: https://phabricator.services.mozilla.com/D85253
2020-07-31 10:01:53 +00:00
Mike Hommey 38cc2e0609 Bug 1654994 - Switch full symbols archive to tar.zst. r=firefox-build-system-reviewers,rstewart,tomprince
Differential Revision: https://phabricator.services.mozilla.com/D85252
2020-07-31 20:27:54 +00:00
Mike Hommey 13b57c569e Bug 1654994 - Make full symbols archive opt-in rather than opt-out. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D85354
2020-07-31 10:01:54 +00:00
Mike Hommey da6b252bbb Bug 1652374 - Use LLD for non-PGO-profile-use clang builds on automation. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D85536
2020-07-31 20:19:26 +00:00
Mitchell Hentges 816b6c3b73 Bug 1652068: Log mozbuild prioritization on configure path r=firefox-build-system-reviewers,rstewart
The order in which toolchain binaries are resolved change based on environmental factors,
such as whether Firefox is being built in release mode or not.

An informative log was added in either case.

Differential Revision: https://phabricator.services.mozilla.com/D84439
2020-07-28 20:50:03 +00:00
Dorel Luca 0226b8feef Backed out 6 changesets (bug 1654994) for build bustage on fuzzy builds. DONTBUILD
Backed out changeset cd3e1074b785 (bug 1654994)
Backed out changeset 45ee50e76d61 (bug 1654994)
Backed out changeset 77f1b667baec (bug 1654994)
Backed out changeset 9fca8b0bf8c1 (bug 1654994)
Backed out changeset 7131943d8db9 (bug 1654994)
Backed out changeset 435b90f6ca70 (bug 1654994)
2020-07-31 12:36:14 +03:00
Mike Hommey 7c3abd4633 Bug 1654994 - Stop setting up makecab for the build. r=firefox-build-system-reviewers,rstewart
Now that it is not actually used anywhere during the build.

Differential Revision: https://phabricator.services.mozilla.com/D85253
2020-07-29 15:32:36 +00:00
Mike Hommey 311e167747 Bug 1654994 - Switch full symbols archive to tar.zst. r=firefox-build-system-reviewers,rstewart,tomprince
Differential Revision: https://phabricator.services.mozilla.com/D85252
2020-07-30 22:21:28 +00:00
Mike Hommey fb02e02524 Bug 1654994 - Make full symbols archive opt-in rather than opt-out. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D85354
2020-07-30 11:30:34 +00:00
Mike Hommey 8fdf2cb6ce Bug 1655921 - Stop running `make check` in valgrind builds. r=froydnj
This has the side effect of not initializing fontconfig before the
valgrind test itself runs, which changes the code path leading to
`FcConfigAddDirList`, which eventually leads to suppressed leaks.
Those leaks are then not discarded because the caller doesn't match what
is in the suppression file anymore, so we remove the caller.

Differential Revision: https://phabricator.services.mozilla.com/D85353
2020-07-30 20:27:14 +00:00
Mike Hommey 7513976f2f Bug 1655909 - Require NSPR 4.26 for --with-system-nspr. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D85243
2020-07-29 15:02:22 +00:00
Butkovits Atila a07dcc53eb Backed out changeset 441baa36ba93 (bug 634697) for failure at test_sss_readstate.js. CLOSED TREE 2020-07-29 19:39:44 +03:00
Moritz Birghan 1bea811e47 Bug 634697 - Add permanent storage to user's client certificate selection r=keeler,baku,fluent-reviewers,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D58820
2020-07-29 15:20:10 +00:00
Ricky Stewart da3fe81bea Bug 1655781- Allow specifying that certain packages should only be included in a `virtualenv` when parsing `virtualenv_packages.txt` r=chutten,nalexander
This solves the same problem we attempted to solve in bug 1654663. That was a low-cost, sensible solution when there was only one in-build reference to `glean_parser`, but with project FOG we're about to drastically increase the in-build reliance on the library, so the ad-hoc `sys.path` manipulation is an increasingly insensible solution. Here we address this in a first-class way by specifying that `glean_parser` should be imported in `virtualenv`s, but NOT by top-level `mach` commands that run outside of an in-`objdir` `virtualenv`.

Differential Revision: https://phabricator.services.mozilla.com/D85182
2020-07-28 18:29:55 +00:00
Andrew Halberstadt d0fbcca0b6 Bug 985141 - [mozbuild] Remove leading underscore from MozbuildObject._activate_virtualenv, r=firefox-build-system-reviewers,perftest-reviewers,andi,AlexandruIonescu,rstewart
This function is used all across the tree and should be considered a public API.

Differential Revision: https://phabricator.services.mozilla.com/D85045
2020-07-28 16:06:10 +00:00
Mike Hommey f95ee272af Bug 1644409 - Make --enable-lto=thin work with GCC. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84773
2020-07-24 13:05:51 +00:00
Mike Hommey 2a4eb30ed4 Bug 1654465 - Set -Cembed-bitcode=yes instead of CARGO_PROFILE_RELEASE_LTO. r=firefox-build-system-reviewers,rstewart
It turns out setting CARGO_PROFILE_RELEASE_LTO has unwanted side
effects.

First it's not actually strictly equivalent to using `cargo rustc --
-Clto`. For instance, it apparently also enables cross-language LTO in
newer versions of cargo.

Second, it changes the rust computed hash for all the dependencies of
the crate being built with the variable set, which makes them diverge
from when the same dependencies are built through another crate in the
tree that is not LTOed. This effectively makes us build a _lot_ of
crates twice, many of which are not cacheable.

Since the original problem is that cargo >= 1.45 passes extra flags (`-C
embed-bitcode=no`) to rustc that are incompatible with `-Clto`, and while
it knows to adjust based on the `lto` setting in the build profile
(which CARGO_PROFILE_RELEASE_LTO overrides the default of), cargo
ignores flags passed via `cargo rustc -- ...` when making those
adjustments.

So, we need to override with `-C embed-bitcode=yes` on our own at the
same time we pass `-Clto`. But doing that through `cargo rustc -- ...`
is not enough because all the dependencies of the crate built with
`-Clto` need to be built with `-C embed-bitcode=yes`. So we need to
override with `RUSTFLAGS`, which will affect all the dependencies.
But we also need to do this consistently across all crates, not only the
dependencies of crates built with `-Clto`, otherwise we'd still end up
building crates twice (once with and once without the override).

Unfortunately, the `-C embed-bitcode=*` flag is also not supported in
versions older than 1.45, so we have to avoid adding it on older
versions.

We unfortunately support a large range of versions of rustc (albeit only
for tools/crashreporter), but we actually need to upgrade the smaller
supported version because rustc < 1.38 doesn't support our top-level
Cargo.lock. This makes the version check slightly less awful.

Differential Revision: https://phabricator.services.mozilla.com/D84652
2020-07-27 21:23:57 +00:00
Nathan Froyd 0d1891b9cf Bug 1654845 - use new dump_syms for Mac builds; r=dmajor
Faster (although not by much) and more maintainable is good.

Depends on D84728

Differential Revision: https://phabricator.services.mozilla.com/D84729
2020-07-23 17:01:21 +00:00
Mitchell Hentges 15fb12a409 Bug 1654663: Removes glean_parser from virtualenv_packages.txt r=firefox-build-system-reviewers,rstewart
In preparation for Glean telemetry, we scope the availability of the out-of-date vendored
"glean_parser" library to its one usage: "run_glean_parser.py".

This allows Glean telemetry to load its modern "glean_parser" dependency from the
"--user" package environment.

Differential Revision: https://phabricator.services.mozilla.com/D84610
2020-07-24 16:05:49 +00:00
David Major 6883b4d0af Bug 1654674 - Make revert-r362047-and-r362065.patch work with clang-12 r=froydnj
afa1afd410 changed a line at the edge of the context of this patch. I'm really not keen to fork this patch into a separate clang-12 version, so I'd prefer to just shrink the context a little.

Differential Revision: https://phabricator.services.mozilla.com/D84609
2020-07-22 23:34:43 +00:00
Andi-Bogdan Postelnicu 2897e78033 Bug 1654557 - add `clangd` to the `clang-tidy` package. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84528
2020-07-22 18:15:19 +00:00
Nathan Froyd 0b1387e22e Bug 1641928 - use new dump_syms for Linux builds; r=firefox-build-system-reviewers,rstewart
Faster and more maintainable is better.

Differential Revision: https://phabricator.services.mozilla.com/D83654
2020-07-21 13:07:31 +00:00
longsonr 7ed192f0f6 Bug 1653362 - Allow builds with the 10.15.6 macOS SDK. r=froydnj,mstange
Differential Revision: https://phabricator.services.mozilla.com/D83837
2020-07-20 15:12:28 +00:00
Bob Clary f39d6f85a0 Bug 1486004 - Part 2 - Update remoteautomation.py to support unrooted android devices using mozdevice 4.0.0, r=gbrown
Depends on D82744

Differential Revision: https://phabricator.services.mozilla.com/D82745
2020-07-17 20:48:44 +00:00
Narcis Beleuzu 32cf14c9e5 Backed out 2 changesets (bug 1485588) for bustages on TestNoLocaleSpecificChecker.cpp . CLOSED TREE
Backed out changeset 3f6600510057 (bug 1485588)
Backed out changeset fad2fb1e60ee (bug 1485588)
2020-07-20 15:35:25 +03:00
Jason Orendorff 6faba34abd Bug 1485588 - Part 2: Suppress warnings in a gtest file. r=andi
Depends on D81785

Differential Revision: https://phabricator.services.mozilla.com/D83681
2020-07-16 10:45:29 +00:00
Jason Orendorff e1d0ea24ed Bug 1485588 - Part 1: Clang-plugin checker for locale-specific functions. r=hsivonen.
They are warnings, not errors, because of the many existing uses of these
functions throughout the codebase.

Differential Revision: https://phabricator.services.mozilla.com/D81785
2020-07-15 18:07:13 +00:00
Tom Ritter 4ccc787c8c Bug 1652039 - Include checks in subdirectories in MozillaTidyModule.cpp r=andi
Differential Revision: https://phabricator.services.mozilla.com/D83119
2020-07-20 07:50:47 +00:00
prathiksha 78c662789a Bug 1617987 - Fix URLs by prefixing www. when users encounter bad cert domain errors. r=nika,keeler
Differential Revision: https://phabricator.services.mozilla.com/D82024
2020-07-18 13:38:59 +00:00
Tarek Ziadé 883db95e9d Bug 1628278 - added conditioned profile support r=acreskey
Adds conditioned profiles and make the Profile
layer a system layer instead of a test layer

Differential Revision: https://phabricator.services.mozilla.com/D83612
2020-07-16 13:30:11 +00:00
Narcis Beleuzu b1faa2872a Backed out 17 changesets (bug 1486004) for wrench bustage on android.py . CLOSED TREE
Backed out changeset cae730f105d7 (bug 1486004)
Backed out changeset e0094d50a315 (bug 1486004)
Backed out changeset 424425ed98c6 (bug 1486004)
Backed out changeset 551232749abe (bug 1486004)
Backed out changeset 505747095def (bug 1486004)
Backed out changeset 5b1c62c4a4d5 (bug 1486004)
Backed out changeset 0a1c8d50ee69 (bug 1486004)
Backed out changeset 6ef81c676859 (bug 1486004)
Backed out changeset 234e55153fb6 (bug 1486004)
Backed out changeset 2f33b309d746 (bug 1486004)
Backed out changeset 48947692c176 (bug 1486004)
Backed out changeset 473bac8eedd9 (bug 1486004)
Backed out changeset af6afed0a04a (bug 1486004)
Backed out changeset a0e2f91eb4d4 (bug 1486004)
Backed out changeset 138c987440c7 (bug 1486004)
Backed out changeset 6d2e305f4722 (bug 1486004)
Backed out changeset 1181ff03bb05 (bug 1486004)
2020-07-17 23:43:57 +03:00
Bob Clary f473f07a48 Bug 1486004 - Part 2 - Update remoteautomation.py to support unrooted android devices using mozdevice 4.0.0, r=gbrown
Depends on D82744

Differential Revision: https://phabricator.services.mozilla.com/D82745
2020-07-16 21:32:52 +00:00
Ryan VanderMeulen c0977f07d3 Bug 1652075 - Update the minimum supported macOS version in the build docs. r=sylvestre
DONTBUILD

Differential Revision: https://phabricator.services.mozilla.com/D83696
2020-07-17 09:49:32 +00:00
David Major d060f1b4f5 Bug 1653342 - Make MozsearchIndexer.cpp buildable with clang-11 r=asuth
Two changes happened during the LLVM 11 timeframe that break our Searchfox plugin.

First, the conversion from `llvm::StringRef` to `std::string` became explicit: adcd026838 This is easy enough to fix in a version-agnostic way.

Second, `mangleCXXCtor` no longer exists: 29e1a16be8 Since there isn't a one-size-fits-all fix, I had to use an ifdef. I mostly cargo-culted the change from 29e1a16be8 (diff-dac09655ff6a54658c320a28a6ea297c).

Differential Revision: https://phabricator.services.mozilla.com/D83838
2020-07-16 19:46:35 +00:00
Narcis Beleuzu 1eb115035d Backed out 20 changesets (bug 1486004, bug 1653094) for wrench bustages. CLOSED TREE
Backed out changeset 120c64ebdea3 (bug 1486004)
Backed out changeset b10f105b1c36 (bug 1486004)
Backed out changeset 7f186e6bcccc (bug 1486004)
Backed out changeset cdda7b349cd8 (bug 1486004)
Backed out changeset 650c47e81402 (bug 1486004)
Backed out changeset 2bcca7cf3f1b (bug 1486004)
Backed out changeset e1df276f8a8d (bug 1486004)
Backed out changeset f6f5e7f2bd0a (bug 1486004)
Backed out changeset 1c56cb03ce53 (bug 1486004)
Backed out changeset 582cd190f174 (bug 1486004)
Backed out changeset 7c162e1b3a79 (bug 1486004)
Backed out changeset d1088e178216 (bug 1486004)
Backed out changeset 40763f4afd26 (bug 1486004)
Backed out changeset f20eb5b5a670 (bug 1486004)
Backed out changeset 6349ee0bd63f (bug 1486004)
Backed out changeset 7c23729053f6 (bug 1486004)
Backed out changeset 49586014bd29 (bug 1486004)
Backed out changeset 07971e82ae85 (bug 1653094)
Backed out changeset 47e7295e9c19 (bug 1653094)
Backed out changeset 57a25bbeec37 (bug 1653094)
2020-07-16 17:58:09 +03:00
Bob Clary fc493ba092 Bug 1486004 - Part 2 - Update remoteautomation.py to support unrooted android devices using mozdevice 4.0.0, r=gbrown
Depends on D82744

Differential Revision: https://phabricator.services.mozilla.com/D82745
2020-07-15 20:57:24 +00:00
Mihai Alexandru Michis a1d49fb98d Backed out 17 changesets (bug 1486004) for causing bustages in AccessCheck.h
CLOSED TREE

Backed out changeset 86a0855e1e45 (bug 1486004)
Backed out changeset 4fc98067edc5 (bug 1486004)
Backed out changeset 8ab3f1597fde (bug 1486004)
Backed out changeset b487e98320fb (bug 1486004)
Backed out changeset 4cba8e6bc515 (bug 1486004)
Backed out changeset d0db5eef2343 (bug 1486004)
Backed out changeset 50285a87de6b (bug 1486004)
Backed out changeset 9730c0303810 (bug 1486004)
Backed out changeset 140a9d2362f3 (bug 1486004)
Backed out changeset 9d1ce06f6039 (bug 1486004)
Backed out changeset 88a5a4ab39fa (bug 1486004)
Backed out changeset eb186c92232d (bug 1486004)
Backed out changeset 677f2129750e (bug 1486004)
Backed out changeset 81427a5f2103 (bug 1486004)
Backed out changeset 38d7def3d425 (bug 1486004)
Backed out changeset a9e73221c471 (bug 1486004)
Backed out changeset ebe8c2d5432e (bug 1486004)
2020-07-16 15:29:29 +03:00
Bob Clary d8a7ba43c7 Bug 1486004 - Part 2 - Update remoteautomation.py to support unrooted android devices using mozdevice 4.0.0, r=gbrown
Depends on D82744

Differential Revision: https://phabricator.services.mozilla.com/D82745
2020-07-15 20:57:24 +00:00
Mitchell Hentges 301f146dc4 Bug 1652615: Share is_telemetry_enabled() logic between Sentry and telemetry r=firefox-build-system-reviewers,rstewart
Note that this moves settings-loading earlier in the bootstrap procedure,
from "_run()" to "run()".

Differential Revision: https://phabricator.services.mozilla.com/D83425
2020-07-15 23:08:17 +00:00
Dorel Luca 326e14fb76 Backed out changeset 928233ea49ee (bug 634697) for causing leaks. CLOSED TREE 2020-07-15 16:39:11 +03:00
Moritz Birghan b22dbe4f47 Bug 634697 - Add permanent storage to user's client certificate selection r=keeler,baku,fluent-reviewers,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D58820
2020-07-15 11:49:00 +00:00
Alex Chronopoulos 33a0a2a5cc Bug 1651699 - Use ld instead of gold in Android x86. r=froydnj
When libdav1d assembly builds are enabled gold produces an internal error.

Differential Revision: https://phabricator.services.mozilla.com/D83522
2020-07-15 09:06:39 +00:00
Mike Hommey 1b44460750 Bug 822978 - Enable -Werror=implicit-function-declaration by default. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D81250
2020-07-12 13:41:43 +00:00
David Major 63aa7238ca Bug 1616694 - Allow build-clang to work with different Mac SDKs r=froydnj
LLVM 11 introduces a hard requirement for SDK 10.12 in order to build for Mac. We want to keep building older LLVMs with 10.11 though, so this patch adds some flexibility so that build-clang can make use of whatever SDK package a particular task pulls from tooltool (but still requesting a deployment target of 10.11).

Differential Revision: https://phabricator.services.mozilla.com/D82621
2020-07-13 22:44:54 +00:00
Tarek Ziadé 7dfca9db55 Bug 1644778 - add a mozperftest to measure browser.xhtml DOM size, r=tarek,dhouse,sparky
Differential Revision: https://phabricator.services.mozilla.com/D79152
2020-07-13 15:44:38 +00:00
Ricky Stewart 231a4686ff Bug 925350 - Remove `dumbmake` r=nalexander
After bug 1651806, we're trying to caution people against running `mach build $A_SPECIFIC_TARGET` because it's not generally supported. `dumbmake` is a piece of infrastructure that attempts to make this use case a little bit more useable, but it was always supposed to be a stopgap. There doesn't seem to be a need for it any more.

Differential Revision: https://phabricator.services.mozilla.com/D83136
2020-07-10 18:12:07 +00:00
Tom Ritter 486f6c9f43 Bug 1652037 - Wire up build_clang_tidy_external in build-clang.py r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D83120
2020-07-10 18:25:29 +00:00
Ricky Stewart 259963ca76 Bug 1651824 - Run `mozboot` and `compare-mozconfig` unit tests in `mozbuild` task and not in `make check` r=froydnj
This is where the `compare-mozconfig` test properly belongs, and `mozbuild` tests already re-run every time a `mozboot` file changes.

Differential Revision: https://phabricator.services.mozilla.com/D83130
2020-07-10 18:25:07 +00:00
Tom Prince 388e735d63 Bug 1649168: Add scriptworker-canary action and corresponding task; r=rail
Add an action that will trigger a task that runs
`mach release push-scriptworker-canary`
to test a new scriptworker deployment.

Differential Revision: https://phabricator.services.mozilla.com/D82821
2020-07-10 16:12:05 +00:00
Nathan Froyd 304b57adbc Bug 1651675 - explicitly use some useful linker options when building clang; r=dmajor
clang/LLVM's build scripts can turn these on on their own, but explicitly
setting what we want is better than guessing.  The change is not huge, maybe
~2-3% on the major shared libraries (`libclang`, `libclang-cpp`, `libLLVM`),
about 1% on the overall `.tar.zst` size, but every little bit counts, right?

Differential Revision: https://phabricator.services.mozilla.com/D82896
2020-07-10 12:51:36 +00:00
Simon Giesecke 38b52efd30 Bug 1651323 - Add temporary lifetime bound checker. r=andi,xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D82680
2020-07-10 12:15:57 +00:00
Jean-Yves Avenard 71dbeca336 Bug 1650996 - P3. Have RemoteDecoderManagerChild use a TaskQueue over a media threadpool. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D82503
2020-07-09 07:47:37 +00:00
Kevin Jacobs 6a6ed41ab7 Bug 1649545 - land NSS 58c2abd7404e UPGRADE_NSS_RELEASE, r=jcj
2020-06-26  Kevin Jacobs  <kjacobs@mozilla.com>

	* automation/abi-check/expected-report-libssl3.so.txt, automation/abi-
	check/previous-nss-release, lib/nss/nss.h, lib/softoken/softkver.h,
	lib/util/nssutil.h:
	Set version numbers to 3.55 beta
	[332ab7db68ba]

2020-06-25  Kevin Jacobs  <kjacobs@mozilla.com>

	* tests/all.sh:
	Bug 1649190 - Run cipher, sdr, and ocsp tests under standard test
	cycle.
	[f373809abfc0]

2020-06-15  Kevin Jacobs  <kjacobs@mozilla.com>

        * gtests/common/testvectors/p256ecdsa-sha256-vectors.h,
        gtests/common/testvectors/p384ecdsa-sha384-vectors.h,
        gtests/common/testvectors/p521ecdsa-sha512-vectors.h,
        gtests/common/testvectors_base/test-structs.h,
        gtests/common/wycheproof/genTestVectors.py,
        gtests/pk11_gtest/pk11_ecdsa_unittest.cc:
        Bug 1649226 - Add Wycheproof ECDSA tests.
        [41292ff7f545]

2020-06-30  Benjamin Beurdouche  <bbeurdouche@mozilla.com>

	* lib/pkcs12/p12d.c:
	Bug 1649322 - Fix null pointer passed as argument in
	pk11wrap/pk11pbe.c:1246 r=kjacobs
	[cc43ebf5bf88]

2020-06-30  Danh  <congdanhqx@gmail.com>

	* coreconf/arch.mk, coreconf/config.mk, lib/freebl/Makefile:
	Bug 1646594 - Enable AVX2 if applicable on x86_64 with make 4.3
	r=bbeurdouche
	[b579895aceb0]

2020-07-02  Benjamin Beurdouche  <bbeurdouche@mozilla.com>

	* lib/ssl/ssl3con.c:
	Bug 1649316 - Prevent memcmp to be called with a zero length in
	ssl/ssl3con.c:6621 r=kjacobs
	[8fe9213d0551]

2020-07-02  Alexander Scheel  <ascheel@redhat.com>

	* lib/cryptohi/secvfy.c:
	Bug 1649487 - Fix bad assert in VFY_EndWithSignature. r=jcj
	[c9438b528103]

2020-07-06  Dana Keeler  <dkeeler@mozilla.com>

	* automation/abi-check/expected-report-libnss3.so.txt,
	gtests/pk11_gtest/pk11_find_certs_unittest.cc, lib/nss/nss.def,
	lib/pk11wrap/pk11cert.c, lib/pk11wrap/pk11pub.h:
	Bug 1649633 - add PK11_FindEncodedCertInSlot r=kjacobs,jcj

	PK11_FindEncodedCertInSlot can be used to determine the PKCS#11
	object handle of an encoded certificate in a given slot. If the
	given certificate does not exist in that slot, CK_INVALID_HANDLE is
	returned.
	[32fe710a942f]

	* gtests/pk11_gtest/pk11_find_certs_unittest.cc:
	Bug 1649633 - follow-up to make test comparisons in
	pk11_find_certs_unittest.cc yoda comparisons r=kjacobs
	[424dae31a1c1]


2020-07-07  Kevin Jacobs  <kjacobs@mozilla.com>

        * gtests/pk11_gtest/pk11_rsapkcs1_unittest.cc, lib/freebl/rsapkcs.c:
        Bug 1067214 - Check minimum padding in RSA_CheckSignRecover.
        r=rrelyea

        This patch adds a check to `RSA_CheckSignRecover` enforcing a
        minimum padding length of 8 bytes for PKCS #1 v1.5-formatted
        signatures. In practice, RSA key size requirements already ensure
        this requirement is met, but smaller (read: broken) key sizes can be
        used via configuration overrides, and NSS should just follow the
        spec.
        [e5324bd5a885]

2020-07-08  Kevin Jacobs  <kjacobs@mozilla.com>

        * gtests/ssl_gtest/libssl_internals.c,
        gtests/ssl_gtest/libssl_internals.h,
        gtests/ssl_gtest/ssl_record_unittest.cc,
        gtests/ssl_gtest/tls_agent.cc, gtests/ssl_gtest/tls_agent.h,
        lib/ssl/dtls13con.c, lib/ssl/dtls13con.h, lib/ssl/ssl3con.c,
        lib/ssl/ssl3prot.h, lib/ssl/sslspec.h, lib/ssl/sslt.h,
        lib/ssl/tls13con.c, lib/ssl/tls13exthandle.c:
        Bug 1647752 - Update DTLS 1.3 implementation to draft-38. r=mt

        This patch updates DTLS 1.3 to draft-38. Specifically:

         # `ssl_ct_ack` value changes from 25 to 26. # AEAD limits in
        `tls13_UnprotectRecord` enforce a maximum of 2^36-1 (as we only
        support GCM/ChaCha20 AEADs) decryption failures before the
        connection is closed. # Post-handshake authentication will no longer
        be negotiated in DTLS 1.3. This allows us to side-step the more
        convoluted state machine requirements.
        [132a87fc8689]

2020-07-09  Benjamin Beurdouche  <bbeurdouche@mozilla.com>

        * lib/pk11wrap/pk11pbe.c, lib/pkcs12/p12d.c:
        Bug 1649322 - Fix null pointer passed as argument in
        pk11wrap/pk11pbe.c:1246 r=kjacobs

        This is a fixup patch that reverts https://hg.mozilla.org/projects/n
        ss/rev/cc43ebf5bf88355837c5fafa2f3c46e37626707a and adds a null
        check around the memcpy in question.
        [80bea0e22b20]

2020-07-09  J.C. Jones  <jjones@mozilla.com>

        * lib/softoken/pkcs11.c:
        Bug 1651520 - slotLock race in NSC_GetTokenInfo r=kjacobs

        Basically, NSC_GetTokenInfo doesn't lock slot->slotLock before
        accessing slot after obtaining it, even though slotLock is defined
        as its lock. [0]

        [0] https://searchfox.org/nss/rev/a412e70e55218aaf670f1f10322fa734d8
        a9fbde/lib/softoken/pkcs11i.h#320-321
        [58c2abd7404e] [tip]

Differential Revision: https://phabricator.services.mozilla.com/D82466
2020-07-09 23:05:48 +00:00
David Major 35dd2fb2b2 Bug 1646168 - Allow optional arrows in TestCanRunScript.cpp errors r=andi
These started appearing in clang 11.

Differential Revision: https://phabricator.services.mozilla.com/D82799
2020-07-09 04:59:58 +00:00
Razvan Maries 05fa077757 Backed out 5 changesets (bug 1650996, bug 1649974) for perma failures on Android 7.0. CLOSED TREE
Backed out changeset 8f8174ba409d (bug 1650996)
Backed out changeset 374598f9c37a (bug 1650996)
Backed out changeset 236757acc073 (bug 1650996)
Backed out changeset 89d5cabfa2df (bug 1649974)
Backed out changeset 6e475ddbd18c (bug 1649974)
2020-07-09 10:33:45 +03:00
Jean-Yves Avenard 8c4180fca5 Bug 1650996 - P3. Have RemoteDecoderManagerChild use a TaskQueue over a media threadpool. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D82503
2020-07-09 06:00:53 +00:00
Chris AtLee 676e2f71c7 Bug 1555560: Run black format check in automation; r=ahal,sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D33126
2020-07-08 22:08:06 +00:00
Nick Alexander c15a785768 Bug 1651130 - Part 1: Extract NSS and "update programs" configuration. r=froydnj
This is just re-arranging the deckchairs in preparation for adding an
"update programs" build project.  Here "update programs" refers to the
various standalone binaries we produce in order to update Firefox.
There's not strong conceptual coherence between them; rather, it's the
pieces that the Install/Update team generally work on.

Differential Revision: https://phabricator.services.mozilla.com/D82643
2020-07-08 23:01:36 +00:00
Mike Hommey e65481e7fb Bug 1651305 - Simplify how USE_INTEGRATED_CLANGCL_AS is handled. r=froydnj
The current setup sets /some/ flags via CLANGCL_ASFLAGS (handling of x86
is notably missing, for instance), and uses "clang-cl" as the assembler,
assuming it's in $PATH.

This can be simplified by just using `CC`, which will contain the full
path to "clang-cl" and the right flags for the targets, which makes
CLANGCL_ASFLAGS unnecessary.

Differential Revision: https://phabricator.services.mozilla.com/D82660
2020-07-08 13:53:27 +00:00
Mihai Alexandru Michis 5f385df474 Backed out 2 changesets (bug 1555560) for causing multiple lint failures.
CLOSED TREE

Backed out changeset bd9460ac6e48 (bug 1555560)
Backed out changeset f2896032ced6 (bug 1555560)
2020-07-09 01:04:18 +03:00
Chris AtLee 92897f1567 Bug 1555560: Run black format check in automation; r=ahal,sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D33126
2020-07-08 20:44:41 +00:00
Bogdan Tara 0867b964e2 Backed out 5 changesets (bug 1650996, bug 1649974) for hazard failures CLOSED TREE
Backed out changeset de5e55b59a31 (bug 1650996)
Backed out changeset 35faa46f46f1 (bug 1650996)
Backed out changeset 6f779a3875a8 (bug 1650996)
Backed out changeset fac1e5a07a6c (bug 1649974)
Backed out changeset 3c5157a9e872 (bug 1649974)
2020-07-08 16:07:56 +03:00
Jean-Yves Avenard ae45d4a7e0 Bug 1650996 - P3. Have RemoteDecoderManagerChild use a TaskQueue over a media threadpool. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D82503
2020-07-08 06:35:55 +00:00
Jean-Yves Avenard 5bd9f01114 Bug 1650786 - Make ImageBridgeChild use a nsThread. r=KrisWright,mattwoodrow
This is a partial revert of bug 1647628.

The ImageBridgeChild's thread is used to dispatch synchronous tasks by its consumers.
While the background taskqueue is using a single thread threadpool, this would prevent many places to also use a background taskqueue that could end up calling the ImageBridgeChild.

Differential Revision: https://phabricator.services.mozilla.com/D82395
2020-07-08 06:32:19 +00:00
Toshihito Kikuchi 99149df7fc Bug 1650419 - Backport the tail merge fix to our version of Clang 9.0.1. r=dmajor
This patch applies the fix for https://bugs.llvm.org/show_bug.cgi?id=45858 to
our version of Clang so that we can update Chromium sandbox code (bug 1639030).

Differential Revision: https://phabricator.services.mozilla.com/D82589
2020-07-07 22:03:46 +00:00
june wilde d3be11d148 Bug 1648798 - Add option for importing external checks into clang-tidy; r=tjr,andi
Differential Revision: https://phabricator.services.mozilla.com/D81699
2020-07-07 18:05:27 +00:00
Ricky Stewart 37490b6c6e Bug 1648552 - `mach bootstrap` checks if Android NDK version is the correct version r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D82084
2020-07-03 13:59:01 +00:00
Nicholas Nethercote 977d5b8a57 Bug 1648348 - Create "Writing Rust Code" docs. r=froydnj,zbraniecki,lina.
This patch includes content from the following places.

- Lina's "Getting Rusty: How to ship an XPCOM component in Firefox" slide deck.
- Zibi's "Rust <--> C/C++ FFI for newbies" gist.

It also links to Emilio's "FFI patterns #1 - Complex Rust data structures
exposed seamlessly to C++" blog post. I was going to include that content, but
it's very long, so I have omitted it for now.

Differential Revision: https://phabricator.services.mozilla.com/D81963
2020-07-07 07:38:27 +00:00
Nicholas Nethercote 40c0751083 Bug 1648348 - Some more tweaks to the Rust build docs. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D81288
2020-07-07 07:38:02 +00:00
Nick Alexander 9d1281ef52 Bug 1641291 - Part 1: Allow cross-compiling from host macOS -> Windows target. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D77117
2020-07-07 02:13:35 +00:00
David Major 4dbfa86c29 Bug 1650239 - Allow threads in our Mac clang build r=froydnj
Source history does not give any good clues about why this line was added in the first place. In any case, LLVM trunk currently has build bustage when threads are disabled. We could work around the bustage and/or wait for a fix, but it seems like threads are a good thing to have in general nowadays. Maybe this could help with LTO build times.

Differential Revision: https://phabricator.services.mozilla.com/D82447
2020-07-06 20:43:42 +00:00
David Major a4c2414404 Bug 1650804 - Update clang-tidy code for new ClangTidyCheck.h header in recent clangs r=static-analysis-reviewers,andi
In e9087fe75c, the definition of ClangTidyCheck moved into a new header ClangTidyCheck.h.

And later, in 860aefd078, ClangTidyCheck.h is no longer automatically included from ClangTidy.h.

Differential Revision: https://phabricator.services.mozilla.com/D82392
2020-07-06 16:31:17 +00:00
Sylvestre Ledru caf785c695 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D82178
2020-07-04 09:38:43 +00:00