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

9865 Коммитов

Автор SHA1 Сообщение Дата
Chris Peterson 5897c59302 Bug 1718408 - Remove unnecessary -Wloop-analysis flag. r=firefox-build-system-reviewers,andi
We don't need to manually enable -Wloop-analysis because it just enables:

* -Wrange-loop-analysis, which we manually disable.
* -Wfor-loop-analysis, which is enabled by -Wmost, which is enabled by -Wall:

https://clang.llvm.org/docs/DiagnosticsReference.html#wall

Depends on D118900

Differential Revision: https://phabricator.services.mozilla.com/D118901
2021-07-01 18:37:42 +00:00
Chris Peterson 5294042de2 Bug 1718408 - Remove unnecessary -Woverloaded-virtual flag. r=firefox-build-system-reviewers,andi
We don't need to manually enable -Woverloaded virtual because:

* On gcc, we disable it.
* On clang, it is enabled by -Wmost, which is enabled -Wall:

https://clang.llvm.org/docs/DiagnosticsReference.html#wall

Depends on D118899

Differential Revision: https://phabricator.services.mozilla.com/D118900
2021-07-01 18:37:41 +00:00
Chris Peterson a2f4831bdc Bug 1718408 - Remove unnecessary -Wtautological-*-compare flags. r=firefox-build-system-reviewers,andi
We don't need to manually enable -Wtautological-overlap-compare because it is enabled by -Wtautological-compare, which is enabled by -Wmost, which is enabled by -Wall:

https://clang.llvm.org/docs/DiagnosticsReference.html#wall

We don't need to manually enable -Wtautological-unsigned-enum-zero-compare or -Wtautological-unsigned-zero-compare because they are enabled by -Wtype-limits, which we already enable manually:

https://clang.llvm.org/docs/DiagnosticsReference.html#wtype-limits

Depends on D118898

Differential Revision: https://phabricator.services.mozilla.com/D118899
2021-07-01 18:37:41 +00:00
Chris Peterson 79616311ea Bug 1718408 - Remove unnecessary -Wunused-function and -Wunused-variable flags. r=firefox-build-system-reviewers,andi
We don't need to manually enabled -Wunused-function or -Wunused-variable because they are enabled by -Wunused, which is enabled by -Wmost, which is enabled by -Wall.

https://clang.llvm.org/docs/DiagnosticsReference.html#wall

Depends on D118897

Differential Revision: https://phabricator.services.mozilla.com/D118898
2021-07-01 18:37:41 +00:00
Chris Peterson 6bce3b14d4 Bug 1718408 - Remove unnecessary -Wwrite-strings flag. r=firefox-build-system-reviewers,andi
We don't need to manually enable -Wwrite-strings because it is enabled by default in C++11 and we currently compile Firefox as C++17.

https://clang.llvm.org/docs/DiagnosticsReference.html#wwritable-strings

Depends on D118896

Differential Revision: https://phabricator.services.mozilla.com/D118897
2021-07-01 18:37:40 +00:00
Chris Peterson 94283e10db Bug 1718408 - Enable some clang warning flags that are currently warning-free. r=firefox-build-system-reviewers,andi
-Wdeprecated-this-capture (in a lambda expression)
warning: implicit capture of ‘this’ with a capture default of ‘=’ is deprecated
https://clang.llvm.org/docs/DiagnosticsReference.html#wdeprecated-this-capture

-Wenum-compare-conditional
Example: return foo ? enumType1 : enumType2; // deprecated in C++20
https://clang.llvm.org/docs/DiagnosticsReference.html#wenum-compare-conditional

-Wformat-type-confusion (in a sprintf-like format function)
warning: format specifies type A (e.g. short) but the argument has type B (e.g. char)
https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-type-confusion

-Wshadow-uncaptured-local (variable declared in a lambda expression)
warning: declaration shadows a local variable
warning: declaration shadows a variable in C
warning: declaration shadows a static data member of C
warning: declaration shadows a field of C
warning: declaration shadows a typedef in C
warning: declaration shadows a type alias in C
warning: declaration shadows a structured binding
https://clang.llvm.org/docs/DiagnosticsReference.html#wshadow-uncaptured-local

Differential Revision: https://phabricator.services.mozilla.com/D118896
2021-07-01 18:37:40 +00:00
Mike Hommey 14497c68f9 Bug 1711856 - Don't set LD_LIBRARY_PATH for builds on automation. r=firefox-build-system-reviewers,mhentges
This shouldn't be necessary as of bug 1694785.

Differential Revision: https://phabricator.services.mozilla.com/D115467
2021-06-25 13:28:28 +00:00
Mike Hommey 6971be15e1 Bug 1695118 - Upgrade valgrind task to Debian buster. r=firefox-build-system-reviewers,mhentges
This requires a backport of valgrind to buster instead of jessie (which
we don't need a backport for anymore). Somehow the buster-based
android-build was using the backport for jessie. It now can use the
backport for buster.

We now also need a few extra packages in the valgrind docker image that
used to be installed as a side effect of installing other packages, but
aren't installed automatically anymore, while necessary.

This allows to remove the debian8-amd64-build docker image, now unused.

We add a patch to workaround an issue with rust that was fixed in older
version of valgrind but that resurfaced in a slightly different manner.
Filed upstream as https://bugs.kde.org/show_bug.cgi?id=433641.

Finally, we update the suppressions to account for system changes.

Differential Revision: https://phabricator.services.mozilla.com/D106402
2021-06-25 13:28:28 +00:00
Alexandru Michis 06bbd55be6 Backed out changeset 7a183e3b230e (bug 1711856) for being a dependency to Bug 1695118, Bug 1718131.
CLOSED TREE
2021-06-25 14:28:14 +03:00
Alexandru Michis 7498132439 Backed out 2 changesets (bug 1695118, bug 1718131) for causing leaks.
CLOSED TREE

Backed out changeset 69aa398773b4 (bug 1695118)
Backed out changeset 19805fbf94a3 (bug 1718131)
2021-06-25 13:43:04 +03:00
Mike Hommey 1d870711cb Bug 1711856 - Don't set LD_LIBRARY_PATH for builds on automation. r=firefox-build-system-reviewers,mhentges
This shouldn't be necessary as of bug 1694785.

Differential Revision: https://phabricator.services.mozilla.com/D115467
2021-06-25 09:33:05 +00:00
Mike Hommey edc5e8b9b9 Bug 1695118 - Upgrade valgrind task to Debian buster. r=firefox-build-system-reviewers,mhentges
This requires a backport of valgrind to buster instead of jessie (which
we don't need a backport for anymore). Somehow the buster-based
android-build was using the backport for jessie. It now can use the
backport for buster.

We now also need a few extra packages in the valgrind docker image that
used to be installed as a side effect of installing other packages, but
aren't installed automatically anymore, while necessary.

This allows to remove the debian8-amd64-build docker image, now unused.

We add a patch to workaround an issue with rust that was fixed in older
version of valgrind but that resurfaced in a slightly different manner.
Filed upstream as https://bugs.kde.org/show_bug.cgi?id=433641.

Finally, we update the suppressions to account for system changes.

Differential Revision: https://phabricator.services.mozilla.com/D106402
2021-06-25 09:29:33 +00:00
Mike Hommey cc44edc33f Bug 1711234 - Add a suppression for "Conditional jump or move depends on uninitialised value(s) at DoFramePointerStackWalk". r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D118777
2021-06-25 00:07:03 +00:00
Benjamin Beurdouche efe58e9863 Bug 1715772 - land NSS 0262a919f909 UPGRADE_NSS_RELEASE, r=beurdouche
Differential Revision: https://phabricator.services.mozilla.com/D118702
2021-06-24 10:56:58 +00:00
Mike Hommey 841e1d8a06 Bug 1717585 - Switch --enable-bootstrap on by default on central. r=firefox-build-system-reviewers,mhentges
As there are some things to solve first for the sysroot, we don't enable
the sysroot bootstrap unless --enable-bootstrap is given explicitly. The
default will still bootstrap everything else when building on central.

Differential Revision: https://phabricator.services.mozilla.com/D118450
2021-06-22 23:36:28 +00:00
Mike Hommey 744db845c6 Bug 1700534 - Coalesce RLBox wasmboxed libraries. r=firefox-build-system-reviewers,shravanrn,bholley,andi,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D116440
2021-06-22 05:31:33 +00:00
Kai Engert bdd0d2acfb Bug 1715584 - Require NSPR version 4.32 at configuration time. r=bbeurdouche
Differential Revision: https://phabricator.services.mozilla.com/D118369
2021-06-21 17:21:09 +00:00
Mitchell Hentges 35b16fdf28 Bug 1712133: Inline `testing/mozbase/packages.txt` contents r=ahal
The `mozbase` modules were being unconditionally added to the
`sys.path` regardless of the Mach command being run, so there isn't
much value keeping them in a separate file. Besides, all other
source module paths are described in `common_virtualenv_packages`,
why is `mozbase` special?

In the future, we're going to want to make improvements here (such as:
there's a difference between informing mach of first-party code
versus defining which third_party vendored packages should be in scope,
and that workflow difference should be represented in-code).
It's useful to peel out the existing, less useful abstraction before
we can build a stronger one.

Differential Revision: https://phabricator.services.mozilla.com/D117711
2021-06-17 14:58:17 +00:00
Mitchell Hentges 24f634d924 Bug 1712133: Remove "pth" name customization r=ahal
Having separate `<name>.pth` files in the virtual environments
isn't providing an advantage. We can simplify configuration
by putting all `pth` adjustments into a single file: `mach.pth`.

Differential Revision: https://phabricator.services.mozilla.com/D117710
2021-06-17 14:58:16 +00:00
Mitchell Hentges 31474e8925 Bug 1712133: Make virtualenv package parsing more specific r=ahal
This has two benefits:
1. `handle_package()` becomes more clear - rather than referring to
   `action` and `package` with array index numbers, we now give
   them real names. The benefit here is also shown in `up_to_date()`.
2. This makes the top-level parser for `packages()` less opinionated
   about sub-formats: if an action has a nested structure, it should
   have the flexibility to define what it looks like.

Differential Revision: https://phabricator.services.mozilla.com/D117708
2021-06-17 14:58:16 +00:00
Mitchell Hentges 722ac646db Bug 1713857: Don't set PYTHONEXECUTABLE environment variable r=glandium
After some testing in `try` and locally, the manual
`PYTHONEXECUTABLE` definitions shouldn't be needed
anymore.

There's been some work on Brew's
Python to improve its `sitecustomize` behaviour.
The most likely improvement is:
https://github.com/Homebrew/homebrew-core/pull/65297

However, I'm not fully confident in this change.
If it fails, it's more likely to affect developers
than CI. I think it's worth attempting a landing,
because if the variable is indeed obsolete, then
deleting it will avoid some spicy "action-at-a-
distance" behaviour.

Differential Revision: https://phabricator.services.mozilla.com/D117452
2021-06-17 13:28:29 +00:00
Mike Hommey 293cc72753 Bug 1716972 - Remove leftover from bug 1695773. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D118153
2021-06-17 09:50:55 +00:00
Mitchell Hentges 6d154c1ed3 Bug 1713377: Change vendoring to use wheels where possible r=ahal,glandium
Vendoring wheels has three benefits:
* There's far less files, so Firefox checkouts will be smaller.
* It works around `zipp` not allowing `pip install`
  from extracted source `tar.gz` files. Now, we should
  be able to use the pip resolver against vendored
  packages, which will be needed for future
  mach virtualenv work.
* `./mach vendor python` takes far less time to execute.

Since we need the raw Python to be available to add to the `sys.path`,
we extract the wheels before putting them in tree.
Due to the structure of some wheels being less nested
than of a source `tar.gz`, `common_virtualenv_packages`
needed to be adjusted accordingly.

`install_pip_package()` had to be tweaked as well since you can't
`pip install` an extracted wheel. So, we "re-bundle" the wheel
before installing from a vendored package.

Replace python packages with wheels where possible

This contains the vendoring changes caused by the
last patch.

For reviewing, there's a couple things to note:
* A bunch of files are deleted, since there's generally
  less files in a wheel than in a source archive.
* There's a new `.dist-info` directory for each
  extracted wheel, so expect roughly 5 or
  6 new files for each wheel'd package.
* There should be no source code changes other than
  moves from package names changing from having
  `-` to having `_`.

Differential Revision: https://phabricator.services.mozilla.com/D116512
2021-06-16 15:53:16 +00:00
Mitchell Hentges 9f7c330b60 Bug 1712133: Remove "windows" action support from virtualenvs r=ahal
Last year, we stopped vendoring Python packages that have native
code. Since we have only had pure-python packages since, the
Windows-specific qualifier (or excluder in the case of `!windows`)
hasn't been needed.

I don't foresee us needing it again, but if anything we can peel it
back from `hg` history if this assumption is incorrect.

Differential Revision: https://phabricator.services.mozilla.com/D117468
2021-06-15 14:46:55 +00:00
Mitchell Hentges 318ecaf9b2 Bug 1712133: Synchronize virtualenv requirement parsing logic r=ahal
The `mach_bootstrap:search_path()` implementation is out of
date compared to `virtualenv.py`.

Since `python2:`, `python3:` and `optional:` packages are no
longer valid virtualenv requirement actions, they can be removed.

Differential Revision: https://phabricator.services.mozilla.com/D117707
2021-06-15 14:46:55 +00:00
Alexis Beingessner d647cb3bfa Bug 1693832 - Use a patched version of rustc/cargo for tsan/asan builds. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D105812
2021-06-15 05:30:05 +00:00
Mitchell Hentges e389cc4cc4 Bug 1714684: Remove usages of vendored "mock" library r=perftest-reviewers,ahal,sparky
Python 3 has access to `unittest.mock` in the standard library.

Differential Revision: https://phabricator.services.mozilla.com/D117073
2021-06-14 15:34:46 +00:00
surajeet310 6ea83c8ef9 Bug 1714788 - Fixed more Sphinx warnings in 'mach doc' r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D117419
2021-06-10 19:33:53 +00:00
Nick Alexander bef7042147 Bug 1524662 - Add --enable-path-remapping producing compiled objects with generic paths. r=glandium
For "c" (i.e., gcc, clang, and clang-cl), this configures the
`-f{debug,macro}-path-prefix` flags.  We'd prefer to use
`-ffile-path-prefix`, but it seems that `clang-cl` does not recognize
that flag.

For "rust" (i.e., rustc/cargo), this configures `--remap-path-prefix`.

This is one step toward getting `sccache` hits across source and
object directories.

Differential Revision: https://phabricator.services.mozilla.com/D113065
2021-06-10 17:08:06 +00:00
Julien Cristau 8376ac4322 Bug 1713766 - land NSS NSS_3_67_RTM UPGRADE_NSS_RELEASE, r=bbeurdouche,aryx
Differential Revision: https://phabricator.services.mozilla.com/D117422
2021-06-10 13:25:03 +00:00
Mitchell Hentges b9531f2856 Bug 1714641: Remove usages of vendored "pathlib2" library r=ahal
Based on the docs and the code within `pathlib2`, it seems to focus
only on backporting the main features of `pathlib` to be available for
Python 2. It does _not_ provide features in newer Python versions
of `pathlib` (such as `is_mount`, new in Python 3.7). Therefore, it
doesn't provide anything that the standard library of Python 3.6+
doesn't have.

Differential Revision: https://phabricator.services.mozilla.com/D117071
2021-06-09 15:48:55 +00:00
Mitchell Hentges e568fa2e0d Bug 1714641: Remove usages of vendored "backports" code r=ahal,perftest-reviewers
It provides `shutil.which(...)`, which has been part of `shutil` since
Python 3.3.

Differential Revision: https://phabricator.services.mozilla.com/D117063
2021-06-09 15:48:52 +00:00
Mitchell Hentges fa246ce29e Bug 1714641: Replace `pythonX` items in virtualenv_packages r=ahal
Now that Mach requires Python 3, `python3:` items will always be
used and `python2:` items will never be needed.

Differential Revision: https://phabricator.services.mozilla.com/D117059
2021-06-09 15:48:50 +00:00
Deian Stefan 6468f48fe5 Bug 1653659 - Part 4: Turn on Wasm sandboxing for hunspell r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D116548
2021-06-09 15:01:03 +00:00
Andrew Osmond bde525c1b1 Bug 1715523 - Suppress likely false positive valgrind leak for RacyRegisteredThread. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D117296
2021-06-09 14:59:04 +00:00
Andrew Osmond a58e7ef933 Bug 1715132 - Ignore the blocklist for Software WebRender on desktop. r=jrmuizel
We still need the blocklist to control rollout on Android, but on
desktop, we should be shipping Software WebRender to all users, except
those in safe mode or whom have explicitly disabled WebRender.

Differential Revision: https://phabricator.services.mozilla.com/D117088
2021-06-08 16:07:57 +00:00
Mitchell Hentges f548bc89cc Bug 1713818: Require Python 3.6+ to run Mach r=ahal
This will both:
* Ensure that developers aren't accidentally using Mach with Python 2
  in the year 2021.
* Confirm that CI tasks aren't still using Python 2 with Mach.
* Remove support for Python 3.5, which is EOL'd.

Differential Revision: https://phabricator.services.mozilla.com/D116484
2021-06-07 19:46:17 +00:00
Alexandre Lissy 30ae660e03 Bug 1714547 - Add cross-compile to linux build doc r=sylvestre,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D116829
2021-06-04 21:35:25 +00:00
Dorel Luca be3cb0088b Backed out 3 changesets (bug 1713818, bug 1714116, bug 1714118) for XPCshell in toolkit/modules/subprocess/test/xpcshell/test_subprocess.js. CLOSED TREE
Backed out changeset be4847abe491 (bug 1713818)
Backed out changeset 3e7ff2f21cbf (bug 1714118)
Backed out changeset da6994a236c9 (bug 1714116)
2021-06-03 22:07:56 +03:00
Mitchell Hentges 75f1a25537 Bug 1713818: Require Python 3.6+ to run Mach r=ahal
This will both:
* Ensure that developers aren't accidentally using Mach with Python 2
  in the year 2021.
* Confirm that CI tasks aren't still using Python 2 with Mach.
* Remove support for Python 3.5, which is EOL'd.

Differential Revision: https://phabricator.services.mozilla.com/D116484
2021-06-03 15:54:28 +00:00
Andi-Bogdan Postelnicu 2f7a751cd0 Bug 1707096 - fix the build for `clang-trunk`. r=jfkthame
With D100581 LLVM added support for -Wunused-but-set-parameter and -Wunused-but-set-variable.
1. we shouldn't treat these warning as errors
2. for harfbuzz we apply a patch that has also been upstreamed, #2995, since pragma directives are somehow borken in clang vs gcc.

Differential Revision: https://phabricator.services.mozilla.com/D116604
2021-06-02 14:38:01 +00:00
Nicolas Silva 6c020067b9 Bug 1711648 - Supress valgrind error more robustly. r=jrmuizel
There is a valgrind suppression on a generic signature containing the hash of rust types. The hash changes when crate dependencies are updated.

Differential Revision: https://phabricator.services.mozilla.com/D116588
2021-06-02 12:47:02 +00:00
Dmitry Bezhetskov 6fdb9a9637 Bug 1713081 - Fix to use the default clang from upstream for SM WASI. r=glandium
To compile SM to .wasm we need to use clang from wasi-sdk, this patch
allows us to use default clang-12 from mozilla's repo.
We remove usage of rpath-link flag because wasm-ld doesn't support it,
enable single thread model because wasi is single threaded
and finally add <unistd.h> becase it is forbidden to use read/write/lseek
without this header.

Differential Revision: https://phabricator.services.mozilla.com/D116207
2021-06-02 06:00:10 +00:00
Butkovits Atila 1b7d8eac8e Backed out changeset a9562036bedd (bug 1713818) for causing wrench bustages. 2021-06-02 02:19:35 +03:00
Mitchell Hentges 271c19459a Bug 1713818: Require Python 3.6+ to run Mach r=ahal
This will both:
* Ensure that developers aren't accidentally using Mach with Python 2
  in the year 2021.
* Confirm that CI tasks aren't still using Python 2 with Mach.
* Remove support for Python 3.5, which is EOL'd.

Differential Revision: https://phabricator.services.mozilla.com/D116484
2021-06-01 20:03:38 +00:00
Mitchell Hentges 0d1d6ed813 Bug 1712804: Change comm action to be specific to Thunderbird r=rjl,ahal
Avoid the "Error processing command" warning when building virtualenvs
in a Firefox checkout

Differential Revision: https://phabricator.services.mozilla.com/D115922
2021-05-27 15:18:37 +00:00
Mitchell Hentges 9522e92323 Bug 1712382: Remove "set-variable" action support from virtualenvs r=ahal
`MACH_VIRTUALENV` was never used, and `MOZBUILD_VIRTUALENV` was never
set (the virtualenv was always activated during the build, rather
than before).

Differential Revision: https://phabricator.services.mozilla.com/D115921
2021-05-27 15:18:36 +00:00
Mitchell Hentges 5eb07cd570 Bug 1712133: Remove build VIRTUALENV_NAME customization r=glandium
This was originally set up so that tests wouldn't "create a new
`virtualenv` for no reason." However, virtual environments now will have
different packages installed, and therefore the separation is necessary.

So, for the virtual environment used for builds (regular or for tests):
* We want it to be able to reuse the build venv, if it already exists.
* We don't want to pollute a `pytest` virtualenv with build-specific
  packages.

Differential Revision: https://phabricator.services.mozilla.com/D115641
2021-05-27 15:18:35 +00:00
Mitchell Hentges 846e25c93b Bug 1712133: Rename default virtualenv to "common" r=ahal
We had split up `init` from `init_py3` because `mach` had
traditionally been invoked by either Python 2 or Python 3, and
the two couldn't share the same virtualenv.

Now that the same context isn't shared by both Python 2 and 3
3
(developers always use Python 3, and the remaining Python 2
usages are CI jobs that never reuse the objdir with Python 3),
We can centralize on a single default virtualenv.

I've called this "common" instead of "init" to clarify its
existing position as the virtualenv that's used by many different
commands. As we associate virtualenvs with requirement definitions,
it'll also make the file less confusing: it's a "common" requirement
definition as opposed to an "init" one.

Differential Revision: https://phabricator.services.mozilla.com/D115635
2021-05-27 15:18:35 +00:00
Steve Fink 5489063fa6 Bug 1705783 - add configure option --js-package and stop clearing MOZ_AUTOMATION for SM(pkg) r=glandium,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D112627
2021-05-26 16:54:04 +00:00
Andi-Bogdan Postelnicu a5cd8949a1 Bug 1707096 - fix `deprecated-copy` detected by clang-trunk. r=sfink,jandem
Differential Revision: https://phabricator.services.mozilla.com/D114087
2021-05-26 10:20:32 +00:00
Makoto Kato 950eda2e59 Bug 1712245 - Use x86_64 NDK on Apple Slicon if native NDK is missing. r=firefox-build-system-reviewers,glandium
Actually, Google doesn't release native version of NDK for macOS/aarch64.
So if missing, we use x86_64 NDK instead.

Differential Revision: https://phabricator.services.mozilla.com/D115675
2021-05-26 01:37:37 +00:00
Mike Hommey 28e098745c Bug 1712633 - Set MOZ_REQUIRE_SIGNING appropriately by default. r=firefox-build-system-reviewers,mhentges
At the same time, move the option to python configure, which changes how
to disable it (setting to an empty value rather than 0).

Differential Revision: https://phabricator.services.mozilla.com/D115844
2021-05-25 20:00:05 +00:00
Mike Hommey afe9e52b55 Bug 1712043 - Upgrade GCC versions to latest dot-release. r=firefox-build-system-reviewers,andi,mhentges
The added PGP key was extracted from
http://ftp.gnu.org/gnu/gnu-keyring.gpg and stripped with
https://github.com/glandium/pgpstrip. The non-stripped key has been
validated as signed by the 33C235A34C46AA3FFB293709A328C3A2C3C45C06 key,
which we vetted in 4854cd37594f.

Differential Revision: https://phabricator.services.mozilla.com/D115579
2021-05-20 23:36:09 +00:00
Mike Hommey c8b5ca1f93 Bug 1712023 - Avoid up to @GLIBCXX_3.4.29 symbols for stdc++ compat. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D115562
2021-05-20 22:32:10 +00:00
Narcis Beleuzu b8beaa5749 Backed out changeset b54ae88a34b4 (bug 1711856) for valgrind bustage on libstdc . CLOSED TREE 2021-05-20 03:50:37 +03:00
Mike Hommey b78d5d298b Bug 1711856 - Don't set LD_LIBRARY_PATH for builds on automation. r=firefox-build-system-reviewers,mhentges
This shouldn't be necessary as of bug 1694785.

Differential Revision: https://phabricator.services.mozilla.com/D115467
2021-05-19 22:32:58 +00:00
Mike Hommey f16b7b648f Bug 1711816 - Fix stdc++compat.cpp compilation errors with recent GCC. r=firefox-build-system-reviewers,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D115436
2021-05-19 04:46:01 +00:00
Benjamin Beurdouche bde2949605 Bug 1711262 - land NSS 8c299ec6b2bc UPGRADE_NSS_RELEASE, r=beurdouche
Differential Revision: https://phabricator.services.mozilla.com/D115395
2021-05-18 18:23:25 +00:00
byron jones 1a494b6f2b Bug 1704426 - Document supported build hosts. r=glob
Define "build host" support tiers, and their relationship
to existing "target" tiers.

Differential Revision: https://phabricator.services.mozilla.com/D111578
2021-05-18 14:57:50 +00:00
Butkovits Atila 6b729f46ac Backed out 2 changesets (bug 1653659) for causing failures at test_hunspell.js. CLOSED TREE
Backed out changeset 018859776d85 (bug 1653659)
Backed out changeset b187a1b158df (bug 1653659)
2021-05-18 04:05:15 +03:00
Deian Stefan 7fe5a63523 Bug 1653659 - Part 4: Turn on Wasm sandboxing for hunspell r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D94931
2021-05-17 18:19:28 +00:00
Alex Lopez 455d9a088b Bug 1696251 - Pass MachCommandBase object as first argument for Mach Commands. r=mhentges,remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers
As an intermediate step to allow mach commands as standalone functions, the MachCommandBase
subclass instance that currently corresponds to self has to be made available as a separate
argument (named command_context).

Differential Revision: https://phabricator.services.mozilla.com/D109650
2021-05-17 16:15:58 +00:00
Dorel Luca 6bb805571d Backed out 2 changesets (bug 1653659) for Mochitest failures in mochitest/events/test_focus_general.html. CLOSED TREE
Backed out changeset 523e4bc2aa47 (bug 1653659)
Backed out changeset fac526423ccb (bug 1653659)
2021-05-14 21:45:58 +03:00
Deian Stefan 015259c792 Bug 1653659 - Part 4: Turn on Wasm sandboxing for hunspell r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D94931
2021-05-14 13:30:49 +00:00
Andrew McCreight 9c9c36a9fa Bug 1710473 - Remove hal::SetProcessPrioritySupported(). r=gsvelto,geckoview-reviewers,aklotz
As far as I can see, all this does is protect the user from
running some useless code if they manually enable the priority
manager using a pref on an OS that doesn't support it. The
upside of allowing this is that it makes it possible to debug
the priority manager on OSX and Linux with just a pref flip.

Differential Revision: https://phabricator.services.mozilla.com/D114767
2021-05-10 19:59:24 +00:00
Chris H-C f666fb3dc9 Bug 1705403 - Replace FOG's Glean autodocs with link to Glean Dictionary r=janerik DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D114631
2021-05-10 13:33:09 +00:00
Cosmin Sabou 206c26c1df Bug 1708379 - Remove unnecessary line. r=glandium 2021-05-07 04:08:30 +03:00
Cosmin Sabou 515e738806 Bug 1708379 - Add suppression for valgrind failures. r=glandium
CLOSED TREE
2021-05-07 03:28:21 +03:00
Andi-Bogdan Postelnicu e76dc3b4af Bug 1709753 - remove workaround for llvm issue D100625. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D114449
2021-05-06 05:20:18 +00:00
Mike Hommey 8189f56cd9 Bug 1599574 - Avoid re-running clang-plugin tests. r=firefox-build-system-reviewers,andi,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D114320
2021-05-05 21:21:11 +00:00
Andi-Bogdan Postelnicu d6010d98f2 Bug 1702172 - collect if shell is opened via vscode and if it's a remote connection through ssh. r=firefox-build-system-reviewers,mhentges
Added two fields:

1. Collect if the current shell is opened via vscode.
2. Connect if it's a remote ssh connection n the current shell.

Differential Revision: https://phabricator.services.mozilla.com/D114323
2021-05-05 14:56:32 +00:00
Adam Gashlin bf41732e48 Bug 1705373 - Part 1: Only set WDBA and Update Agent configs on Firefox (browser app). r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D114306
2021-05-05 04:26:43 +00:00
Mike Hommey 506594be8f Bug 1709253 - Fix building rust programs. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D114212
2021-05-04 20:45:43 +00:00
Mitchell Hentges df45b126d1 Bug 1698616: Bump python dependencies r=firefox-build-system-reviewers,glandium
Did you know that our version of requests was from 2015? Phwoar!
This bumps `jinja2`, `py`, `pyyaml`, `requests` and `urllib3`.
There's significant risk for regressions due to breaking changes,
though due to the dynamic nature of Python, they're tricky to track
down.

The potential breaking changes I'm expecting to potentially affect
us are:

* `requests@2.11.0`: No longer accepts non-strings as header values.
* `requests@2.16.0`: `requests.packages` namespace was removed due to
  packages no longer being vendored. The namespace has been
  incrementally restored over future releases, but it's unclear to
  what degree.
* `requests@2.24.0`: Redirect resolution now only happens when
  `allow_redirects` is `True`.
* `requests` version of `urllib3` was bumped from `1.13.1` to `1.26`,
  unsure what repercussions that will have.

This also added dependencies to `flake8_requirements`. This is because
the vendored `importlib-metadata` update (and the new
`typing-extensions` dependency) is found by `pip`, but the
vendored `typing-extensions` is _not_ discovered (perhaps due to
details around "eggs" and the way we add vendored code to the sys.path).
So, `pip` tries to install it manually and fails when it finds no hash.
By re-compiling `flake8_requirements`, the necessary hashes are made
available.

Differential Revision: https://phabricator.services.mozilla.com/D108526
2021-05-04 20:43:26 +00:00
Mike Hommey 5aab00eccc Bug 1708547 - Port the mach bootstrap import hook to python 3. r=mhentges,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D113857
2021-05-04 20:39:58 +00:00
Mitchell Hentges 0ff1bef46b Bug 1707953: Remove macOS SDK maximum version check r=firefox-build-system-reviewers,glandium
The maximum version check has caused more unnecessary failed
builds (for freshly up-to-date devs) than helpful guards against
tough-to-diagnose issues.

Differential Revision: https://phabricator.services.mozilla.com/D113675
2021-05-04 15:07:09 +00:00
Benjamin Beurdouche 37aa935e43 Bug 1705477 - land NSS c982fb957516 UPGRADE_NSS_RELEASE, r=beurdouche
Differential Revision: https://phabricator.services.mozilla.com/D114231
2021-05-04 13:33:25 +00:00
Kagami Sascha Rosylight 1b59a49ab1 Bug 1707681 - Ignore third party paths in explicit-operator-bool check r=andi
Differential Revision: https://phabricator.services.mozilla.com/D113695
2021-05-04 06:20:25 +00:00
Alexandru Michis 5744de4a3b Backed out changeset cd81489560e4 (bug 1708547) for causing python failures. 2021-05-01 14:50:20 +03:00
Mike Hommey 322d04fd7f Bug 1708547 - Port the mach bootstrap import hook to python 3. r=mhentges,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D113857
2021-04-30 23:07:33 +00:00
Mike Hommey 6aa8681545 Bug 1705324 - Enable CARGO_INCREMENTAL on local builds. r=firefox-build-system-reviewers,mhentges
irrespective of the optimization level. The code was previously using
the optimization level as a proxy for whether --enable-release is
enabled or not, which was invalidated by bug 1689284.

Differential Revision: https://phabricator.services.mozilla.com/D113730
2021-04-30 21:33:27 +00:00
Emilio Cobos Álvarez 9fdc1d0978 Bug 1707957 - Add a valgrind suppression for a GTK leak. r=stransky
It's a relatively minor one (two keyframes are leaked). I built latest
GTK3 from source and it wasn't reproducible locally. I think our GTK
version on automation might be too old and not have this commit:

  10fa786dfa

Or something of that sort.

Differential Revision: https://phabricator.services.mozilla.com/D113948
2021-04-30 12:36:51 +00:00
Mike Hommey de4630db98 Bug 1708382 - Allow proc-macro-back-compat warning when building with rustc >= 1.52. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D113761
2021-04-29 21:08:27 +00:00
Mike Hommey c0e3e585ac Bug 1708382 - Inline rust_warning_flags into rust_flags. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D113760
2021-04-29 21:08:26 +00:00
Mitchell Hentges a7cd22e13e Bug 1705376: Synchronize workspace-hack features and usage r=firefox-build-system-reviewers,glandium
Not all in-tree Rust libraries were using workspace-hack.
Additionally, some needed winapi features were missing from
workspace-hack's configuration.

Now, winapi is re-compiled less frequently on a full build.

Differential Revision: https://phabricator.services.mozilla.com/D113564
2021-04-29 15:19:27 +00:00
Alexandru Michis b9d4ef3680 Merge mozilla-central to autoland a=merge on a CLOSED TREE 2021-04-29 01:07:01 +03:00
Calixte Denizet f40b4cac3c Bug 1705641 - Don't flush ccov counters when process is dying when env var MOZ_FUZZING_CCOV is defined r=andi
Sometimes there is a deadlock between user-requested ccov counters flush (through a signal) and flush happening when a process is dying.
So in order to avoid it, just remove the latter which is out of our control (user-requested flushes are protected using a cross mutex).

Differential Revision: https://phabricator.services.mozilla.com/D112632
2021-04-28 18:30:35 +00:00
Alexandru Michis d14f411602 Backed out changeset 8153e98fe308 (bug 1707799) because D100581 has been reverted from the llvm repo. a=backout 2021-04-28 23:12:47 +03:00
Andi-Bogdan Postelnicu 14df452e4b Bug 1697614 - Update mingw builds to clang-12. r=firefox-build-system-reviewers,mhentges
Credit goes to dmajor since he's the one who started this.

Differential Revision: https://phabricator.services.mozilla.com/D113331
2021-04-28 09:56:14 +00:00
Andi-Bogdan Postelnicu a63d3f564b Bug 1697215 - Disable value profiling in Rust PGO until we move to to rust 1.52. r=firefox-build-system-reviewers,glandium
Credit goes to dmajor.
Rust gets LLVM 12 - https://github.com/rust-lang/rust/pull/81451.
The PGO format changed between 11 and 12, and builds will have poor optimization if we mix versions in xLTO.
The above PR has landed on Rust nightly 1.52.
Until we move to 1.52 nightly we should have this landed.

In the meantime, for unblocking try builds, we can disable value-PGO in Rust.

Differential Revision: https://phabricator.services.mozilla.com/D113327
2021-04-28 09:56:12 +00:00
Andi-Bogdan Postelnicu b3f968cb03 Bug 1707799 - revert patch D100581 from LLVM that added `-Wunused-but-set-parameter and -Wunused-but-set-variable`. r=firefox-build-system-reviewers,mhentges
Until we fix the issues from m-c and they get propagated to m-r we should disable this.

Differential Revision: https://phabricator.services.mozilla.com/D113533
2021-04-27 18:05:51 +00:00
Christian Holler 7ae80c5d9a Bug 1644147 - Fix a deadlock in TSan. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D113364
2021-04-26 15:10:13 +00:00
Andi-Bogdan Postelnicu e163ebe0d1 Bug 1707096 - revert LLVM D79714 that causes build bustage on m-c and m-r. r=marco
We should probably enable this later on when we do the aproapriate fixes in m-c and they
 are also tagged in m-r but for now we should have this changed backed out of llvm locally.

Differential Revision: https://phabricator.services.mozilla.com/D113215
2021-04-23 14:02:46 +00:00
Butkovits Atila 2e34e363b9 Backed out 2 changesets (bug 1696251) for causing js-bench-sm failures. CLOSED TREE
Backed out changeset 1c84c9a34575 (bug 1696251)
Backed out changeset e169193b7423 (bug 1696251)
2021-04-23 02:53:36 +03:00
Alex Lopez d1a82b8092 Bug 1696251 - Pass MachCommandBase object as first argument for Mach Commands. r=mhentges,remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers
As an intermediate step to allow mach commands as standalone functions, the MachCommandBase
subclass instance that currently corresponds to self has to be made available as a separate
argument (named command_context).

Differential Revision: https://phabricator.services.mozilla.com/D109650
2021-04-22 18:56:15 +00:00
Nika Layzell e983da120a Bug 1706375 - Support building ipc/glue in non-unified mode, r=ipc-reviewers,mccr8
This both helps IDE integration and will help avoid build issues which would've
otherwise cropped up when adding new files to the directory for bug 1706374.

Differential Revision: https://phabricator.services.mozilla.com/D112764
2021-04-22 14:32:03 +00:00
imoraru 63d199a7e6 Backed out changeset b413fce77522 (bug 1698616) for breaking mach commands (bug 1706456). a=backout 2021-04-21 14:16:08 +03:00
Mitchell Hentges cb92d64d4d Bug 1507272: Enable build telemetry for Mozilla devs by default r=firefox-build-system-reviewers,glandium
Check if a user is a Mozilla employee by checking their
Bugzilla groups, or checking if their VCS email ends
with "@mozilla.com".

When a user is setting up a new build environment, telemetry
will be automatically enabled for them if they are an
employee. If they're not an employee, they'll be asked
if they want to opt in.

Differential Revision: https://phabricator.services.mozilla.com/D106315
2021-04-20 13:58:51 +00:00
Mitchell Hentges 73f81b1c85 Bug 1698616: Bump python dependencies r=firefox-build-system-reviewers,glandium
Did you know that our version of requests was from 2015? Phwoar!
This bumps `jinja2`, `py`, `pyyaml`, `requests` and `urllib3`.
There's significant risk for regressions due to breaking changes,
though due to the dynamic nature of Python, they're tricky to track
down.

The potential breaking changes I'm expecting to potentially affect
us are:

* `requests@2.11.0`: No longer accepts non-strings as header values.
* `requests@2.16.0`: `requests.packages` namespace was removed due to
  packages no longer being vendored. The namespace has been
  incrementally restored over future releases, but it's unclear to
  what degree.
* `requests@2.24.0`: Redirect resolution now only happens when
  `allow_redirects` is `True`.
* `requests` version of `urllib3` was bumped from `1.13.1` to `1.26`,
  unsure what repercussions that will have.

This also added dependencies to `flake8_requirements`. This is because
the vendored `importlib-metadata` update (and the new
`typing-extensions` dependency) is found by `pip`, but the
vendored `typing-extensions` is _not_ discovered (perhaps due to
details around "eggs" and the way we add vendored code to the sys.path).
So, `pip` tries to install it manually and fails when it finds no hash.
By re-compiling `flake8_requirements`, the necessary hashes are made
available.

Differential Revision: https://phabricator.services.mozilla.com/D108526
2021-04-20 13:57:47 +00:00