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

5704 Коммитов

Автор SHA1 Сообщение Дата
Henri Sivonen b98488aa92 Bug 673087 - Honor encoding declared via XML declaration in text/html. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D107806
2021-03-23 09:52:04 +00:00
Mozilla Releng Treescript faaf83f9f7 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2021-03-22 15:15:18 +00:00
Jesse Schwartzentruber 0026d74b59 Bug 1695285 - Pass ASan/UBSan flags to cargo for native builds. r=firefox-build-system-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D106652
2021-03-18 20:46:55 +00:00
Christian Holler 4cf2f28556 Bug 1689597 - Add Fuzzilli support to the build system. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D103467
2021-03-11 12:13:21 +00:00
Alexandru Michis e18957315d Backed out changeset 9bada5ab20d7 (bug 1695285) for causing Linux asan bustages.
CLOSED TREE
2021-03-10 07:55:32 +02:00
Jesse Schwartzentruber 32d19f30ad Bug 1695285 - Pass ASan/UBSan flags to cargo for native builds. r=firefox-build-system-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D106652
2021-03-10 00:05:28 +00:00
Mitchell Hentges d925c83f15 Bug 1683797: Don't use "build targets" to build rusttests r=sheehan,firefox-build-system-reviewers,glandium
When "build targets" are used, the sccache server isn't
being used/integrated properly with make.
By moving rusttests to a separate build "application",
`client.mk` is invoked normally, and sccache is happy.

* Move rusttests to a new build "application".
* Move and denormalize rusttests mozconfigs. The new rusttests
  mozconfigs should expand to be mostly identical to their old
  versions, except with `MOZ_AUTOMATION_*=0` and
  `--enable-application=tools/rusttests`.
  They will differ a bit from their old variants because some
  of them originally didn't source from their
  respective `$app_mozconfigs/common`.
* Modify `baseconfig.mk` to change tiers if running rusttests.
* Adjust CI config to use new "rusttests" build application.

Differential Revision: https://phabricator.services.mozilla.com/D106294
2021-03-09 14:45:25 +00:00
Mike Hommey 644e42ded7 Bug 1694575 - Don't include mozalloc.h from the iosfwd wrapper. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D106392
2021-02-28 17:47:27 +00:00
Mozilla Releng Treescript fa720adf0e Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2021-02-22 12:50:45 +00:00
Mike Hommey 7eb38cd807 Bug 1670538 - Use an allow-list in RUSTC_BOOTSTRAP for rustc >= 1.50.0. r=firefox-build-system-reviewers,andi,sheehan,mhentges
While we could change qcms, encoding_rs and packed_simd to not emit
RUSTC_BOOTSTRAP on newer versions of rust, like we do for gkrust-shared,
it's not worth the effort (especially for those that are vendored).

Differential Revision: https://phabricator.services.mozilla.com/D105423
2021-02-17 21:47:28 +00:00
Mike Hommey 5f86b697af Bug 1692137 - Allow local linux builds to use a bootstrapped sysroot. r=firefox-build-system-reviewers,andi,mhentges
Bug 1690930 added sysroots that can be bootstrapped. With this change,
we allow --enable-bootstrap=install to pull the right sysroot for the
configured target, and --enable-bootstrap to update it if it was already
there.

Differential Revision: https://phabricator.services.mozilla.com/D104797
2021-02-12 20:31:49 +00:00
André Bargull 6ae41c9162 Bug 1689294: Update tzdata in ICU data files to 2021a. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D103281
2021-01-29 14:25:21 +00:00
Mike Hommey f40865b13e Bug 1632776 - Work around autocfg tests failing on Windows PGO builds. r=firefox-build-system-reviewers,sheehan,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D103276
2021-01-28 16:47:38 +00:00
Mozilla Releng Treescript bf417b8399 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2021-01-25 15:42:01 +00:00
Mike Hommey 22f14f5f18 Bug 1687433 - Don't build libffi assembly with -no-integrated-as. r=firefox-build-system-reviewers,mhentges
Back when the flag was added, the libffi source code didn't build for
ARM with the clang integrated assembler. That has been fixed with the
upgrade to libffi v3.3 in bug 1659906, so we can use the integrated
assembler now.

Differential Revision: https://phabricator.services.mozilla.com/D102261
2021-01-19 14:10:59 +00:00
Masatoshi Kimura 8401e21c44 Bug 1684110 - Stop defining aliases for 'A'-functions in windows.h wrapper. r=glandium
so that people do not accidentally use 'A'-functions.

Depends on D100420

Differential Revision: https://phabricator.services.mozilla.com/D101273
2021-01-12 04:44:03 +00:00
Masatoshi Kimura 03d7defdfa Bug 1684110 - Define UNICODE on some directories. r=glandium
so that people do not accidentally use 'A'-functions.

Differential Revision: https://phabricator.services.mozilla.com/D100420
2021-01-13 22:49:59 +00:00
Aaron Klotz ae684a1dee Bug 1611554: Part 2 - Modify GeckoView build to generate manifest and service definitions from jinja files; r=nalexander,geckoview-reviewers,snorp
* We add a config option for setting the number of content services;
* We add a config option to indicate whether content services should be isolated.
  This one is just a `project_flag` since it doesn't really need the ability to
  be overridden; it's something whose default we would want to flip when the
  time comes;
* We set a dependency so that mobile/android/base/pre-export is executed;
* We add the `gen_from_jinja.py` script which is mostly just a dumb shim that
  takes the input template and the config arguments, instantiates jinja,
  generates the final output, and dumps it to the output fd;
* We add the requisite `moz.build` statements to generate the manifest overlay
  and the service definitions;
* We update `build.gradle` so that Gradle knows to look for the generated files
  when building the apk.

Differential Revision: https://phabricator.services.mozilla.com/D82577
2021-01-13 17:32:54 +00:00
Butkovits Atila bcdf48f6d6 Backed out 3 changesets (bug 1611554) for causing bustage on recurse.mk. CLOSED TREE
Backed out changeset bb1ce63d73ec (bug 1611554)
Backed out changeset 0d4317da1006 (bug 1611554)
Backed out changeset dc905e5db0cc (bug 1611554)
2021-01-13 03:16:17 +02:00
Aaron Klotz 669a8ecdcc Bug 1611554: Part 2 - Modify GeckoView build to generate manifest and service definitions from jinja files; r=nalexander,geckoview-reviewers,snorp
* We add a config option for setting the number of content services;
* We add a config option to indicate whether content services should be isolated.
  This one is just a `project_flag` since it doesn't really need the ability to
  be overridden; it's something whose default we would want to flip when the
  time comes;
* We set a dependency so that mobile/android/base/pre-export is executed;
* We add the `gen_from_jinja.py` script which is mostly just a dumb shim that
  takes the input template and the config arguments, instantiates jinja,
  generates the final output, and dumps it to the output fd;
* We add the requisite `moz.build` statements to generate the manifest overlay
  and the service definitions;
* We update `build.gradle` so that Gradle knows to look for the generated files
  when building the apk.

Differential Revision: https://phabricator.services.mozilla.com/D82577
2021-01-13 00:24:06 +00:00
David Major c2db81c2b7 Bug 1685758 - Increase stack size on win32 debug r=firefox-build-system-reviewers,mhentges
With clang 12, win32 debug tests run out of stack in the 1000-deep layout crashtests.

Usually when this type of thing happens, it's because the compiler made a drastically heavier inlining decision along the recursive part of the stack, with a difference in the hundreds of bytes, and we pay that price of that space 1000 times. In those cases we normally try to snip out the heavy piece with a MOZ_NEVER_INLINE.

However, in this case, the difference between old and new compilers was only something like 16 bytes of the cyclical piece. This suggests that we're already up pretty close against the limit, and we're only a bad day away from failing tests even with existing clang. This only happens in debug builds since they have lots of logging helpers on the stack. Release builds are still well under the limit.

So I propose to increase the stack limit in debug. While we normally have to be pretty careful about address space on win32, it should be less of a concern with these non-shipping builds.

Differential Revision: https://phabricator.services.mozilla.com/D101196
2021-01-11 22:09:32 +00:00
André Bargull 3111f61a45 Bug 1685481: Update tzdata in ICU data files to 2020f. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D101020
2021-01-08 10:07:47 +00:00
Kartik Gautam 7ae6aea145 Bug 1684173 - Add newline character at end of files when missing r=sylvestre,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D100484
2021-01-07 08:53:08 +00:00
Cosmin Sabou 2978aa00a3 Backed out changeset dbed1cdf588f (bug 1684173) for mochitest plain and devtools failures. a=backout DONTBUILD 2020-12-28 00:43:51 +02:00
Kartik Gautam 775cdec032 Bug 1684173 - Add newline character at end of files when missing r=sylvestre
Depends on D100443

Differential Revision: https://phabricator.services.mozilla.com/D100484
2020-12-27 11:43:41 +00:00
André Bargull 89a89bb951 Bug 1679750 - Part 4: Move BigInt with Int32 comparison to the MacroAssembler. r=jandem
Also rename `branchIfNegativeBigInt` to `branchIfBigIntIsNegative` to match
the other branch methods from part 2 and part 8.

Differential Revision: https://phabricator.services.mozilla.com/D98158
2020-12-22 13:25:32 +00:00
Noemi Erli e3dbea67d1 Backed out 24 changesets (bug 1679750) for causing build bustages in CodeGenerator.cpp CLOSED TREE
Backed out changeset a5c82fcf8385 (bug 1679750)
Backed out changeset 464d53cb1b5d (bug 1679750)
Backed out changeset 5fe8bf1d376d (bug 1679750)
Backed out changeset 95274172bd74 (bug 1679750)
Backed out changeset b6c0885e4483 (bug 1679750)
Backed out changeset c6840af4b13e (bug 1679750)
Backed out changeset 542359a41cf9 (bug 1679750)
Backed out changeset 1e0b72830e95 (bug 1679750)
Backed out changeset ff683dfe2357 (bug 1679750)
Backed out changeset 9b9acb6917bd (bug 1679750)
Backed out changeset 723a000ec3ef (bug 1679750)
Backed out changeset 7f21f761a9d2 (bug 1679750)
Backed out changeset 234cc79df8d1 (bug 1679750)
Backed out changeset 99f82d64de93 (bug 1679750)
Backed out changeset 8396e48cb09e (bug 1679750)
Backed out changeset 80f78c980c07 (bug 1679750)
Backed out changeset 0cfd75ab21b8 (bug 1679750)
Backed out changeset e804e1f0b4a4 (bug 1679750)
Backed out changeset 822eea13c8c7 (bug 1679750)
Backed out changeset 67846b5fb533 (bug 1679750)
Backed out changeset 3c4555e5d59a (bug 1679750)
Backed out changeset 238e0776533c (bug 1679750)
Backed out changeset 870397398a5f (bug 1679750)
Backed out changeset 7903c8a72850 (bug 1679750)
2020-12-21 21:58:37 +02:00
André Bargull 15634ee875 Bug 1679750 - Part 4: Move BigInt with Int32 comparison to the MacroAssembler. r=jandem
Also rename `branchIfNegativeBigInt` to `branchIfBigIntIsNegative` to match
the other branch methods from part 2 and part 8.

Differential Revision: https://phabricator.services.mozilla.com/D98158
2020-12-21 14:31:52 +00:00
Mozilla Releng Treescript 200cd613bc Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-12-14 15:48:03 +00:00
André Bargull 35813933df Bug 1673027 - Part 2: Update tzdata in ICU data files to 2020d. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D94605
2020-12-04 17:23:41 +00:00
Emilio Cobos Álvarez 04229a0075 Bug 1680080 - Optimize proc macros / build dependencies. r=glandium,firefox-build-system-reviewers,mhentges
On a very parallel debug build, I see a long time just waiting for
bindgen / style compilation / geckoservo.

Turns out that a bunch of this is just proc macros / build scripts.

Optimizing it saves between 10 and 17 seconds of my debug build. We
might want to consider running bindgen much like cbindgen rather than
rebuilding it all the time, which should help a lot more, but my guess
is that this should still help with the pretty hot custom derives that
the style crate runs.

This needs rust 1.41, so the requirement for tools/crashreporter needs
to be bumped as a consequence. To make things simpler, it was bumped
to 1.47 while we're at it.

Differential Revision: https://phabricator.services.mozilla.com/D98366
2020-12-04 01:35:51 +00:00
Makoto Kato 1ca4d32304 Bug 1677037 - Remove STRIP_XPI rule. r=firefox-build-system-reviewers,glandium
No one seems to use STRIP_XPI rule in m-c and c-c.

Differential Revision: https://phabricator.services.mozilla.com/D96967
2020-12-01 03:43:59 +00:00
Martin Stransky 59d04019a3 Bug 1660336 Provide libva headers to build Firefox without libva-devel installed, r=jya
Differential Revision: https://phabricator.services.mozilla.com/D97920
2020-11-26 21:26:05 +00:00
stransky c3c0341407 Bug 1660336 Provide libva wrapper to run Firefox on systems without libva installed, r=jya
Differential Revision: https://phabricator.services.mozilla.com/D94650
2020-11-26 21:25:59 +00:00
Alexis Beingessner 9a0f581986 Bug 1671691 - Enable Rust stdlib instrumentation. r=decoder
* Bumps the tsan toolchain to rust-nightly-2020-11-14 that has my patches to make -Zbuild-std work in vendored environments:
  * https://github.com/rust-lang/cargo/pull/8834
  * https://github.com/rust-lang/rust/pull/78790

* Passes -Zbuild-std to cargo when MOZ_TSAN is defined (mk_add_options --enable-thread-sanitizer)

* Removes generic Rust supressions and adds much more specific ones
    * One presumed upstream false positive from tsan not understanding the code
    * One actual upstream bug tsan found (yay!)
    * One new real issue uncovered
    * One issue that probably already existed intermittently but I happened to hit

Differential Revision: https://phabricator.services.mozilla.com/D97165
2020-11-16 18:36:41 +00:00
Mozilla Releng Treescript 49ebb9c28b Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-11-16 10:11:15 +00:00
Alexis Beingessner d1d354bb8f Bug 1674773 - make tsan builds use consistent flags. r=rstewart
This makes --enable-thread-sanitizer turn on Rust tsan (-Zsanitizer=thread).
This requires changing SpiderMonkey tsan to use the tsan rust nightly.

In future changes, more Rust tsan integration will key off of MOZ_TSAN.

Differential Revision: https://phabricator.services.mozilla.com/D96453
2020-11-10 21:11:37 +00:00
Cosmin Sabou f2556d47da Backed out 2 changesets (bug 1674773) for turning Bug 1646925 into almost permafail.
Backed out changeset acd441508a66 (bug 1674773)
Backed out changeset 89babec1b885 (bug 1674773)
2020-11-10 11:27:50 +02:00
Alexis Beingessner 2e16b14340 Bug 1674773 - make tsan builds use consistent flags. r=rstewart
This makes --enable-thread-sanitizer turn on Rust tsan (-Zsanitizer=thread).
This requires changing SpiderMonkey tsan to use the tsan rust nightly.

In future changes, more Rust tsan integration will key off of MOZ_TSAN.

Differential Revision: https://phabricator.services.mozilla.com/D96453
2020-11-09 20:12:42 +00:00
Philipp Ammann 72c6c6c137 Bug 1661450 - Move X11 headers behind CONFIG['MOZ_X11'] r=stransky
Required in preparation for a Wayland-only build.

Differential Revision: https://phabricator.services.mozilla.com/D88801

Depends on D88800
2020-08-31 11:41:06 +00:00
Cosmin Sabou 4d167c5d6b Backed out 5 changesets (bug 1661450) for causing build bustages. CLOSED TREE
Backed out changeset b01a3dceb3eb (bug 1661450)
Backed out changeset 4a0b897aa1b2 (bug 1661450)
Backed out changeset 561d7cce5353 (bug 1661450)
Backed out changeset 088f1afeff27 (bug 1661450)
Backed out changeset 04db3acdf84f (bug 1661450)
2020-11-05 12:00:59 +02:00
Philipp Ammann 8627137b2b Bug 1661450 - Move X11 headers behind CONFIG['MOZ_X11'] r=stransky
Required in preparation for a Wayland-only build.

Differential Revision: https://phabricator.services.mozilla.com/D88801

Depends on D88800
2020-08-31 11:41:06 +00:00
Mike Hommey 16979b2a82 Bug 1673769 - Use the right data file for ICU on big endians. r=firefox-build-system-reviewers,dmajor
It turns out that CONFIG.get(..., ...) doesn't actually work properly in
moz.build, so use `or` instead.

Differential Revision: https://phabricator.services.mozilla.com/D94918
2020-10-28 02:54:17 +00:00
Ricky Stewart 210585edd2 Bug 1672023 - Remove excluded files from `black.yml`
These files were omitted from the original patch because reformatting them required some manual intervention in order to avoid breaking unit tests. Generally the `noqa` lines were already there and just needed to be moved from one line to another (due to the reformatting by `black`), but sometimes `black` saw fit to move a bunch of stuff all onto one line, requiring me to introduce new `noqa` lines.

Besides the autoformat by `black` and some manual fixups, this patch contains no other changes.

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94052

Depends on D94045
2020-10-26 18:21:44 +00:00
Ricky Stewart 02a7b4ebdf Bug 1654103: Standardize on Black for Python code in `mozilla-central`.
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.

To produce this patch I did all of the following:

1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.

2. Run ./mach lint --linter black --fix

3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.

4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.

5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94045
2020-10-26 18:34:53 +00:00
Tom Schuster e6c8debb2a Bug 1672353 - Disable clang warnings when compiling ICU. r=jwalden,andi
Differential Revision: https://phabricator.services.mozilla.com/D94291
2020-10-24 21:23:15 +00:00
Bogdan Tara da1098d4aa Backed out 10 changesets (bug 1654103, bug 1672023, bug 1518999) for PanZoomControllerTest.touchEventForResult gv-junit failures CLOSED TREE
Backed out changeset ff3fb0b4a512 (bug 1672023)
Backed out changeset e7834b600201 (bug 1654103)
Backed out changeset 807893ca8069 (bug 1518999)
Backed out changeset 13e6b92440e9 (bug 1518999)
Backed out changeset 8b2ac5a6c98a (bug 1518999)
Backed out changeset 575748295752 (bug 1518999)
Backed out changeset 65f07ce7b39b (bug 1518999)
Backed out changeset 4bb80556158d (bug 1518999)
Backed out changeset 8ac8461d7bd7 (bug 1518999)
Backed out changeset e8ba13ee17f5 (bug 1518999)
2020-10-24 03:36:18 +03:00
Ricky Stewart fe80718d67 Bug 1672023 - Remove excluded files from `black.yml` r=sylvestre,perftest-reviewers,geckoview-reviewers,agi
These files were omitted from the original patch because reformatting them required some manual intervention in order to avoid breaking unit tests. Generally the `noqa` lines were already there and just needed to be moved from one line to another (due to the reformatting by `black`), but sometimes `black` saw fit to move a bunch of stuff all onto one line, requiring me to introduce new `noqa` lines.

Besides the autoformat by `black` and some manual fixups, this patch contains no other changes.

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94052
2020-10-23 20:40:44 +00:00
Ricky Stewart c0cea3b0fa Bug 1654103: Standardize on Black for Python code in `mozilla-central`. r=remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers,devtools-backward-compat-reviewers,jgilbert,preferences-reviewers,sylvestre,maja_zf,webcompat-reviewers,denschub,ntim,whimboo,sparky
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.

To produce this patch I did all of the following:

1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.

2. Run ./mach lint --linter black --fix

3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.

4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.

5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94045
2020-10-23 20:40:42 +00:00
Jed Davis cc6e7ab133 Bug 1440203 - Support memfd_create in IPC shared memory. r=glandium
This commit also allows `memfd_create` in the seccomp-bpf policy for all
process types.

`memfd_create` is an API added in Linux 3.17 (and adopted by FreeBSD
for the upcoming version 13) for creating anonymous shared memory
not connected to any filesystem.  Supporting it means that sandboxed
child processes on Linux can create shared memory directly instead of
messaging a broker, which is unavoidably slower, and it should avoid
the problems we'd been seeing with overly small `/dev/shm` in container
environments (which were causing serious problems for using Firefox for
automated testing of frontend projects).

`memfd_create` also introduces the related operation of file seals:
irrevocably preventing types of modifications to a file.  Unfortunately,
the most useful one, `F_SEAL_WRITE`, can't be relied on; see the large
comment in `SharedMemory:ReadOnlyCopy` for details.  So we still use
the applicable seals as defense in depth, but read-only copies are
implemented on Linux by using procfs (and see the comments on the
`ReadOnlyCopy` function in `shared_memory_posix.cc` for the subtleties
there).

There's also a FreeBSD implementation, using `cap_rights_limit` for
read-only copies, if the build host is new enough to have the
`memfd_create` function.

The support code for Android, which doesn't support shm_open and can't
use the memfd backend because of issues with its SELinux policy (see bug
1670277), has been reorganized to reflect that we'll always use its own
API, ashmem, in that case.

Differential Revision: https://phabricator.services.mozilla.com/D90605
2020-10-22 21:23:32 +00:00