Commit Graph

5874 Commits

Author SHA1 Message Date
Mike Hommey
c39f6708e7 Bug 1724391 - Reset PKG_CONFIG_PATH. r=firefox-build-system-reviewers,mhentges
If it has a value set, that interferes with values we set to other
PKG_CONFIG_* variables for sysroots.

Differential Revision: https://phabricator.services.mozilla.com/D122287
2021-08-11 22:03:14 +00:00
Mike Hommey
0b4372e828 Bug 1721968 - Remove support for lucetc for rlbox. r=firefox-build-system-reviewers,shravanrn,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D120700
2021-08-11 21:58:52 +00:00
Mike Hommey
d873082139 Bug 1724606 - Replace uses of MACOSX_DEPLOYMENT_TARGET env variable with -mmacosx-version-min flag. r=firefox-build-system-reviewers,andi
They are equivalent, except for the fact that MACOSX_DEPLOYMENT_TARGET
may apply to more processes in a normal build. In practice, all the
processes that matter are covered through compiler flags.

On the opposite end, MACOSX_DEPLOYMENT_TARGET isn't necessary passed in
all cases (like clangd, mach static-analysis, etc.), while compiler
flags are.

Differential Revision: https://phabricator.services.mozilla.com/D122145
2021-08-11 07:40:57 +00:00
Mozilla Releng Treescript
a536ab927f Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2021-08-09 16:20:45 +00:00
shravanrn@gmail.com
ac42d89404 Bug 1723447 - Get latest rlbox, wasm2c plugin, rt, compiler for 32bit platform support r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D121503
2021-08-04 21:37:45 +00:00
Mike Hommey
0b8879cf79 Bug 1723107 - Generate breadpad symbol files for librlbox. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D121359
2021-08-02 22:19:47 +00:00
Mike Hommey
5fafbc14fe Bug 1721962 - Remove dependency on pangocairo and pangoft2. r=firefox-build-system-reviewers,andi
pangocairo hasn't been used since bug 810252.
pangoft2 doesn't seem to have ever actually been used.

Differential Revision: https://phabricator.services.mozilla.com/D121304
2021-07-30 11:39:37 +00:00
shravanrn@gmail.com
a4b362c73c Bug 1721765 part 2 - Use larger unsafe stack for hunspell wasm sandbox r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D120571
2021-07-30 11:19:31 +00:00
shravanrn@gmail.com
820196c2ad Bug 1721765 part 1 - Vendor new wasm2c rlbox plugin, compiler+rt to support large unsafe stack r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D120570
2021-07-30 11:19:31 +00:00
Mike Hommey
023ce9967d Bug 1582382 - Move rust malloc and oom hook to mozglue. r=firefox-build-system-reviewers,andi
This is similar to what was done in bug 1594998 for the panic hook.

Differential Revision: https://phabricator.services.mozilla.com/D121032
2021-07-28 20:33:08 +00:00
Mike Hommey
2979d0b082 Bug 1635327 - Disable __tls_get_addr interception in sanitizer builds. r=firefox-build-system-reviewers,emilio,andi
Sanitizers try to intercept __tls_get_addr to find DTLS blocks. In some
cases, they fail miserably with a crash. And in the cases they don't
crash, they don't seem to actually work properly anyways.

This affects both build time when running host programs compiled with
sanitizer flags (this only actually affects rust build
scripts/procedural macros on non-cross builds, not C/C++ host programs),
and execution time, e.g. when running tests.

Differential Revision: https://phabricator.services.mozilla.com/D120574
2021-07-22 22:00:59 +00:00
shravanrn@gmail.com
dd5e1be54b Bug 1720817 - Fix vendor git rev id to match vendored files for wasm2c project r=glandium DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D120048
2021-07-16 03:57:07 +00:00
Sandor Molnar
6203809190 Bug 1713735 - lint fix. CLOSED TREE 2021-07-16 06:03:39 +03:00
Mike Hommey
e2a1db5178 Bug 1713735 - Add the bits necessary to build wasm sandbox libs with wasm2c. r=firefox-build-system-reviewers,mhentges
For the moment, it's opt-in via explicitly setting `LUCETC` to an empty
string.

Differential Revision: https://phabricator.services.mozilla.com/D119939
2021-07-16 02:38:41 +00:00
shravanrn@gmail.com
5bd8cbb171 Bug 1713735 part 3 - Include rlbox_wasm2c_sandbox repo in the mozilla tree r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D117386
2021-07-16 02:38:41 +00:00
shravanrn@gmail.com
c90a46987f Bug 1713735 part 2 - Configs to build wasm2c for use in rlbox r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D116442
2021-07-16 02:38:40 +00:00
Mike Hommey
b3a25bc860 Bug 1720641 - Don't include mozalloc.h from the cmath wrapper. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D119956
2021-07-15 20:41:54 +00:00
Mozilla Releng Treescript
abd155b8ec Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2021-07-12 12:48:42 +00:00
Mike Hommey
6bb2a4bab5 Bug 1713735 - Only build rlbox_lucet_sandbox when wasm-sandboxing is enabled. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D119479
2021-07-09 20:49:29 +00:00
André Bargull
b0a94f02a6 Bug 1685075 - Part 2: Remove "en-US-posix" locale from ICU data file. r=zbraniecki
The filter file doesn't support exclusion lists for the "locales" filter type
(<https://github.com/unicode-org/icu/blob/main/docs/userguide/icu_data/buildtool.md#filtering-by-locale>),
therefore we have to manually exclude "en-US-posix" from the relevant resource
types: "en-US-posix" data is only present for collation, locales, and break
iteration. Break iteration is already completely stripped from the data file,
so we don't need to change anything on that front.

The string must be "en_US_POSIX" to match the resource file name, also see
<https://unicode-org.atlassian.net/browse/ICU-21400>.

Depends on D117975

Differential Revision: https://phabricator.services.mozilla.com/D117976
2021-06-18 09:22:06 +00:00
Henri Sivonen
b5366f5a31 Bug 1716709 - Remove RUSTC_BOOTSTRAP for xmldecl. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D117980
2021-06-17 06:44:25 +00:00
André Bargull
3fe14705b6 Bug 1697729: Re-add alias and parent links in ICU filters. r=tcampbell
The `-/*` filter also removes the alias (`%%ALIAS`) and parent locale (`%%Parent`)
links, so we have to manually add them back when we're using `-/*`.

The ICU docs warn about this issue, but unfortunately that warning wasn't
present when we originally created our filter file, so this bug went unnoticed
for a long time.

Differential Revision: https://phabricator.services.mozilla.com/D116981
2021-06-16 06:49:45 +00:00
Mike Hommey
7f9a51a8f5 Bug 1715282 - Bump minimum Rust version to 1.51. r=firefox-build-system-reviewers,andi
Also update the estimated rust versions for future releases, based on
the updated Firefox release dates.

Differential Revision: https://phabricator.services.mozilla.com/D117737
2021-06-15 09:23:20 +00:00
André Bargull
e3d2b6377c Bug 1714933 - Part 2: Update in-tree ICU to release 69.1. r=tcampbell
Update to ICU 69.1 by running "update-icu.sh" with "maint/maint-69" as the target.

Differential Revision: https://phabricator.services.mozilla.com/D116968
2021-06-15 07:53:58 +00:00
Noemi Erli
ce2801c88f Backed out 8 changesets (bug 1714933) for causing build bustages in 1659595.js CLOSED TREE
Backed out changeset 2f72875b300f (bug 1714933)
Backed out changeset a42831b46643 (bug 1714933)
Backed out changeset c7ccabae5816 (bug 1714933)
Backed out changeset a4f4e4026174 (bug 1714933)
Backed out changeset fca960ad267b (bug 1714933)
Backed out changeset 62bdba475376 (bug 1714933)
Backed out changeset f168a2d1d391 (bug 1714933)
Backed out changeset 85af7c63b9c5 (bug 1714933)
2021-06-14 23:47:43 +03:00
André Bargull
0b804a59a3 Bug 1714933 - Part 2: Update in-tree ICU to release 69.1. r=tcampbell
Update to ICU 69.1 by running "update-icu.sh" with "maint/maint-69" as the target.

Differential Revision: https://phabricator.services.mozilla.com/D116968
2021-06-14 19:46:50 +00:00
Butkovits Atila
c9d6eddfc2 Backed out 7 changesets (bug 1714933) for causing failures on test_ManifestProcessor_lang.html
Backed out changeset 2b4a65b9c1ac (bug 1714933)
Backed out changeset 40c329123b7c (bug 1714933)
Backed out changeset 692101de3873 (bug 1714933)
Backed out changeset 695f3bd8e875 (bug 1714933)
Backed out changeset 30e9aacecf56 (bug 1714933)
Backed out changeset e9f2a0d262c2 (bug 1714933)
Backed out changeset 3de963fab6d6 (bug 1714933)
2021-06-14 19:46:45 +03:00
André Bargull
d165d44525 Bug 1714933 - Part 2: Update in-tree ICU to release 69.1. r=tcampbell
Update to ICU 69.1 by running "update-icu.sh" with "maint/maint-69" as the target.

Differential Revision: https://phabricator.services.mozilla.com/D116968
2021-06-14 13:12:59 +00:00
André Bargull
b104468eb1 Bug 1686052 - Part 4: Update tzdata in ICU data files to 2021a. r=jwalden
ICU 68.2 ships with tzdata 2020d, so update again to 2021a.

Differential Revision: https://phabricator.services.mozilla.com/D101391
2021-06-04 17:42:19 +00:00
André Bargull
50a541b708 Bug 1686052 - Part 3: Update in-tree ICU to release 68.2. r=jwalden
Update to ICU 68.2 by running "update-icu.sh" with "maint/maint-68" as the target.

Differential Revision: https://phabricator.services.mozilla.com/D101389
2021-06-04 17:42:10 +00:00
Mike Hommey
2733dbe0dc Bug 1713733 - Remove WASM_LDFLAGS. r=firefox-build-system-reviewers,mhentges
It's not practically make a difference (the flags we end up setting it
to don't do anything when linking all the wasm files into one).

Differential Revision: https://phabricator.services.mozilla.com/D116437
2021-06-02 04:34:20 +00:00
André Bargull
3d58656e00 Bug 1693575 - Part 3: Implement support for "calendar" option. r=tcampbell
This last part to support "calendar" requires a bit more code.

`GetCalendarDisplayName()` performs the following steps:
1. Validate the input matches the `type` nonterminal, per
   CanonicalCodeForDisplayNames, step 4.a.
2. Then convert it to lower case, because ICU expects lower case names and it
   needs to be in lower case for `LanguageTag::replaceUnicodeExtensionType()`.
3. Replace calendar name aliases with the preferred name, e.g. use "ethioaa"
   instead of "ethiopic-amete-alem".
4. Check the input isn't too large, just in case ICU somehow doesn't properly
   handle large string inputs.
5. Retrieve the old-style value of the calendar name, for example "gregorian"
   for the calendar name "gregory".
6. And finally call `uldn_keyValueDisplayName` to search for the localised name.

Our ICU data file doesn't yet include calendar names. To include calendar names
we need to enable them in "data_filter.json", rebuild the ICU data file, and
then reapply the update for tzdata 2021a. (Reapplying the tzdata changed
"intl/tzdata/GIT-INFO", but otherwise didn't change any time zone files.)

Adding the calendar names to the ICU data file results in a slight increase of
the overall data file size (79,184 bytes).

The existing "calendar.js" test file was renamed to "month-calendar.js", so
the test file for the new "calendar" type can be named "calendar.js".

Differential Revision: https://phabricator.services.mozilla.com/D116008
2021-06-01 07:45:44 +00:00
Mozilla Releng Treescript
e9eb869e90 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2021-05-31 17:00:15 +00:00
Steve Fink
7c81b89a18 Bug 1713212 - Add a check to prevent mozilla/Unused.h from being included r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D116170
2021-05-28 21:41:33 +00:00
carolinecullen
c5a2828bfc Bug 1699271 - Part 1: Generate MIR Opcodes. r=jandem,iain
Differential Revision: https://phabricator.services.mozilla.com/D111043
2021-05-27 22:55:30 +00:00
Mike Hommey
d85b55ac8e Bug 1712947 - Don't pass neon flags to rustc when using thumbv7neon targets. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D116067
2021-05-27 21:36:34 +00:00
Chris Fallin
9e6185bf59 Bug 1706949 part 13 - Fix icu and intl for wasi. r=anba,glandium
Differential Revision: https://phabricator.services.mozilla.com/D113218
2021-05-26 06:44:09 +00:00
Agi Sferro
114966c6e0 Bug 1701269 - Remove mobile/android/base. r=nalexander,flod,owlish
Differential Revision: https://phabricator.services.mozilla.com/D109918
2021-05-20 22:03:03 +00:00
Dan Minor
0452666d00 Bug 1701695 - Add NumberFormat::TryCreate; r=tcampbell
This adds a fallible factory method to create new NumberFormat instances. This
allows us to report initialization errors at time of initialization, rather than
when format is called, and remove internal checks in the implementation for
successful initialization.

The existing fluent code assumes that creating a NumberFormat instance always
succeeds. This patch updates that code to handle failures.

Differential Revision: https://phabricator.services.mozilla.com/D114593
2021-05-12 17:22:51 +00:00
Dan Minor
5f755ac1ab Bug 1701695 - Use intl::NumberFormatterSkeleton in PluralRules r=tcampbell
This temporarily adds intl::NumberFormatterSkeleton to the public API so that
we can use it in PluralRules. This allows us to remove the SpiderMonkey
NumberFormatterSkeleton implementation when we convert SpiderMonkey to use
intl::NumberFormat.

We can remove intl::NumberFormatterSkeleton from the public API when we
implement intl::PluralRules in Bug 1704509.

Differential Revision: https://phabricator.services.mozilla.com/D111887
2021-05-12 17:22:50 +00:00
Brindusan Cristian
efd8dfd0cf Backed out 9 changesets (bug 1701695) for causing xpcshell failures in test_messagecontext.js. CLOSED TREE
Backed out changeset e88dd41c0a90 (bug 1701695)
Backed out changeset 823ed70ef5fe (bug 1701695)
Backed out changeset 11f97bc74622 (bug 1701695)
Backed out changeset fdf12ac55593 (bug 1701695)
Backed out changeset abcf774d3b58 (bug 1701695)
Backed out changeset 4239fe67d69f (bug 1701695)
Backed out changeset 216472b634b9 (bug 1701695)
Backed out changeset 89ff5f91d8e9 (bug 1701695)
Backed out changeset 9c0dbc73dad2 (bug 1701695)
2021-05-11 15:25:46 +03:00
Dan Minor
7a648a32c3 Bug 1701695 - Add NumberFormat::TryCreate; r=tcampbell
This adds a fallible factory method to create new NumberFormat instances. This
allows us to report initialization errors at time of initialization, rather than
when format is called, and remove internal checks in the implementation for
successful initialization.

The existing fluent code assumes that creating a NumberFormat instance always
succeeds. This patch updates that code to handle failures.

Differential Revision: https://phabricator.services.mozilla.com/D114593
2021-05-11 11:37:40 +00:00
Dan Minor
3322d3ceb6 Bug 1701695 - Use intl::NumberFormatterSkeleton in PluralRules r=tcampbell
This temporarily adds intl::NumberFormatterSkeleton to the public API so that
we can use it in PluralRules. This allows us to remove the SpiderMonkey
NumberFormatterSkeleton implementation when we convert SpiderMonkey to use
intl::NumberFormat.

We can remove intl::NumberFormatterSkeleton from the public API when we
implement intl::PluralRules in Bug 1704509.

Differential Revision: https://phabricator.services.mozilla.com/D111887
2021-05-11 11:37:38 +00:00
Mike Hommey
d9c58f174d Bug 1707829 - Go back to building http3server as a rust program. r=necko-reviewers,kershaw
This mostly revert bug 1616238.

Differential Revision: https://phabricator.services.mozilla.com/D113485
2021-05-07 20:22:56 +00:00
Mike Hommey
42db02783f Bug 1709994 - More consistently set MOZ_CARGO_WRAP_LDFLAGS. r=firefox-build-system-reviewers,mhentges
- We can and actually should remove the -fsanitize=% flags consistently
  on all cargo targets, not only programs, but because of limitations in
  cargo we can't really do that everywhere. We do need it for TSAN,
  though.
- Because of the above, we actually don't need to single-out NATIVE_TSAN
  builds anymore.
- The comment regarding the initial filtering of MOZ_CARGO_WRAP_LDFLAGS
  somehow got separated from where it's happening, so we move it back to
  where it belongs.

Differential Revision: https://phabricator.services.mozilla.com/D114579
2021-05-07 20:22:55 +00:00
Sandor Molnar
93e6afe93a Backed out changeset bd2c9d3fa4b0 (bug 1707829) for causing xpc failures. CLOSED TREE 2021-05-07 01:58:43 +03:00
Mike Hommey
eae232636b Bug 1707829 - Go back to building http3server as a rust program. r=necko-reviewers,kershaw
This mostly revert bug 1616238.

Differential Revision: https://phabricator.services.mozilla.com/D113485
2021-05-06 21:37:01 +00:00
Kagami Sascha Rosylight
046e7fa5e8 Bug 1707590 - Part 1: Add vendored libjxl source r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D113358
2021-05-06 02:00:55 +00:00
Noemi Erli
13aa18b8d4 Backed out 4 changesets (bug 1707590) for causing gtest crashes CLOSED TREE
Backed out changeset 3bd322893127 (bug 1707590)
Backed out changeset 8cc3eaf728b6 (bug 1707590)
Backed out changeset 21f41a9df048 (bug 1707590)
Backed out changeset 3201d860afef (bug 1707590)
2021-05-06 04:57:44 +03:00
Kagami Sascha Rosylight
626cb0e6e1 Bug 1707590 - Part 1: Add vendored libjxl source r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D113358
2021-05-06 01:14:20 +00:00
Noemi Erli
3487bbd1ee Backed out 4 changesets (bug 1707590) for causing gtest crashes CLOSED TREE
Backed out changeset 6edab66fe2c5 (bug 1707590)
Backed out changeset e5d2d6824408 (bug 1707590)
Backed out changeset 9c7204c3f03c (bug 1707590)
Backed out changeset 25da391baa22 (bug 1707590)
2021-05-06 02:07:42 +03:00
Kagami Sascha Rosylight
42b950a045 Bug 1707590 - Part 1: Add vendored libjxl source r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D113358
2021-05-05 21:44:06 +00:00
Csoregi Natalia
df171582fd Backed out 4 changesets (bug 1707590) for causing gtest crashes. CLOSED TREE
Backed out changeset fec7b65cc3d7 (bug 1707590)
Backed out changeset 3a7e5c98dd13 (bug 1707590)
Backed out changeset 9dfd0d516062 (bug 1707590)
Backed out changeset 9ab607973f20 (bug 1707590)
2021-05-05 22:23:06 +03:00
Kagami Sascha Rosylight
784f1185b9 Bug 1707590 - Part 1: Add vendored libjxl source r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D113358
2021-05-05 17:33:52 +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
Dorel Luca
f8cffec171 Backed out 4 changesets (bug 1707590) for worker/checkouts/gecko/config/rules.mk. CLOSED TREE
Backed out changeset 4ccdb31e1c5a (bug 1707590)
Backed out changeset 4b69f99caf69 (bug 1707590)
Backed out changeset a3f23a20b532 (bug 1707590)
Backed out changeset f591c3da4311 (bug 1707590)
2021-05-04 20:29:51 +03:00
Kagami Sascha Rosylight
4cf43df159 Bug 1707590 - Part 1: Add vendored libjxl source r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D113358
2021-05-04 15:24:53 +00:00
Iulian Moraru
7e3d199323 Backed out 4 changesets (bug 1707590) for causing build bustages. CLOSED TREE
Backed out changeset f3f40c6fb8e2 (bug 1707590)
Backed out changeset 3e76ff83ebe2 (bug 1707590)
Backed out changeset 40a3f43a2306 (bug 1707590)
Backed out changeset 01bb0e75cb82 (bug 1707590)
2021-05-04 17:11:54 +03:00
Kagami Sascha Rosylight
a75e16755f Bug 1707590 - Part 1: Add vendored libjxl source r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D113358
2021-05-04 13:29:07 +00:00
Nick Alexander
2f109387cc Bug 1707030 - Return to having NSDISTMODE=copy impact INSTALL. r=firefox-build-system-reviewers,mhentges
This reverts [part of Bug
1255485](https://hg.mozilla.org/mozilla-central/rev/5888578c22f8dc006cfd6a405c9fc53b2df73b44).

It should have been reverted in Bug 1641291, which allowed
NSDISTMODE=copy to impact build manifests.  This is useful when
cross-compiling: this stops some symlinks within the object directory
itself, say from `dist/include` to an object directory.

Differential Revision: https://phabricator.services.mozilla.com/D113149
2021-05-04 03:12:49 +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
Deian Stefan
1baf41c196 Bug 1699028 - Update RLBox to add support for app pointers r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D109026
2021-04-27 17:56:44 +00:00
Butkovits Atila
70de203efd Merge mozilla-central to autoland. CLOSED TREE 2021-04-20 19:03:13 +03:00
Steve Fink
9baf08f6af Bug 1706115 - add encoding errors=... param to mozunit mocked open() r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D112622
2021-04-20 14:36:57 +00:00
imoraru
9b430bb1a1 Merge autoland to mozilla-central a=merge 2021-04-20 12:49:23 +03:00
Mike Hommey
79e8df83dd Bug 1377445 - Remove build dependencies on gtk+2. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D111997
2021-04-20 01:57:03 +00:00
Dorel Luca
bbb0a06e58 Backed out changeset 14010706f471 (bug 1706115) for Linting failures. CLOSED TREE 2021-04-20 03:53:13 +03:00
Mike Hommey
58fac4ff62 Bug 1704580 - Set rust optimization level via CARGO_PROFILE_*_OPT_LEVEL. r=firefox-build-system-reviewers,mhentges
Setting it via -C opt-level makes us hit
https://github.com/rust-lang/cargo/issues/9358 so use an alternative
way, that works since rust version 1.43.0.

Differential Revision: https://phabricator.services.mozilla.com/D112158
2021-04-20 00:33:59 +00:00
Steve Fink
2dcfa49f82 Bug 1706115 - add encoding errors=... param to mozunit mocked open() r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D112622
2021-04-19 22:17:17 +00:00
Mozilla Releng Treescript
7e6034ce84 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2021-04-19 19:09:05 +00:00
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
Dorel Luca
1ff59cb7a3 Backed out changeset 7558c8821a07 (bug 1654103) for multiple failures. CLOSED TREE 2020-10-22 03:51:06 +03:00
Dorel Luca
5d3bd01bca Backed out 2 changesets (bug 1440203) for Backout conflicts with Bug 1654103. CLOSED TREE
Backed out changeset 6e44c037b2dc (bug 1440203)
Backed out changeset ab11665d8607 (bug 1440203)
2020-10-22 03:47:17 +03:00
Dorel Luca
26941cf2f5 Backed out changeset 94ec15429e21 (bug 1672023) for Backout conflicts with Bug 1654103. CLOSED TREE 2020-10-22 03:43:01 +03:00
Jed Davis
61a83c3467 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-21 23:34:46 +00:00
Ricky Stewart
8b352f1843 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-21 21:29:30 +00:00
Ricky Stewart
50762dacab 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. 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-21 21:27:27 +00:00
Mike Hommey
0848a4e73a Bug 1644624 - Pass LLVM flags from PROFILE_GEN_CFLAGS to the rust compiler. r=firefox-build-system-reviewers,dmajor
Differential Revision: https://phabricator.services.mozilla.com/D93729
2020-10-20 19:29:58 +00:00
Mike Hommey
6504260166 Bug 1672306 - Don't enable rust "global" LTO when cross LTO is enabled. r=firefox-build-system-reviewers,dmajor
This avoids a sort of duplication of work between both, because the
linker will eventually LTO-compile everything, so we technically don't
really need the extra step of the rust compiler doing an intermediate
LTO on the static libraries it produces.

Differential Revision: https://phabricator.services.mozilla.com/D94224
2020-10-21 01:20:48 +00:00
Cosmin Sabou
b8fd79f461 Backed out 5 changesets (bug 1644624, bug 1671555) for windows shippable bustage.
Backed out changeset fee83fc16940 (bug 1644624)
Backed out changeset afb2a7ff532c (bug 1671555)
Backed out changeset 609ac687f7e3 (bug 1644624)
Backed out changeset d91db0801099 (bug 1644624)
Backed out changeset ce09ad625b53 (bug 1644624)
2020-10-20 06:52:09 +03:00
Mike Hommey
7e240e7af2 Bug 1644624 - Pass LLVM flags from PROFILE_GEN_CFLAGS to the rust compiler. r=firefox-build-system-reviewers,dmajor
Differential Revision: https://phabricator.services.mozilla.com/D93729
2020-10-16 15:45:54 +00:00
Mike Hommey
5afb69830c Bug 1670156 - Use the same prefix/suffix for rust libraries on mingw builds. r=firefox-build-system-reviewers,dmajor
Rustc >= 1.44 changed the file names of the static libraries it
produces with -windows-gnu targets, to match that of mingw clang/gcc.

Considering we still build on 1.43, the best fix would be to derive the
prefix/suffix based on the version of rust, but that actually turns into
a hard-to-solve problem because of configure tests for bindgen also
depending on the prefix/suffix value to be known.

On the other hand, we're soon due to an update to 1.47, so the simpler
solution is to just push mingw builds to require 1.44 (settling for the
smallest upgrade possible for now) and to remove the split between C and
rust library prefix/suffixes.

Differential Revision: https://phabricator.services.mozilla.com/D93726
2020-10-16 16:06:19 +00:00
Narcis Beleuzu
d493d96032 Merge autoland to mozilla-central. a=merge 2020-10-20 00:37:32 +03:00
Mozilla Releng Treescript
1319f81f81 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-10-19 16:39:05 +00:00
Paulo Matias
4dd77eeb91 Bug 1671695 - Fix system icu build; r=zbraniecki
Differential Revision: https://phabricator.services.mozilla.com/D93847
2020-10-19 11:54:20 +00:00
Ricky Stewart
362abcf949 Bug 1670357 - Remove make targets for cleaning: clean, realclean, clobber, distclean, clobber_all, everything r=firefox-build-system-reviewers,mhentges
The `clobber` targets are superseded by `mach clobber`, so we don't need them for any reason. The `clean` target is meant to get you to a post-`configure` state, but it doesn't really work, and if it's necessary for you to be in that state for some reason you can just clobber and re-`configure`, so it doesn't seem worth it to get it working again. Instead, delete all of them. Also delete `everything` which is not useful when `clobber` doesn't exist.

Differential Revision: https://phabricator.services.mozilla.com/D93514
2020-10-15 20:37:18 +00:00
Razvan Maries
5fa72e54df Backed out 2 changesets (bug 1440203) for causing bug 1670277. CLOSED TREE
Backed out changeset 0b10bf76fe35 (bug 1440203)
Backed out changeset 468878422866 (bug 1440203)
2020-10-10 03:39:33 +03:00
Jed Davis
3680ce4b19 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.

Differential Revision: https://phabricator.services.mozilla.com/D90605
2020-10-08 02:25:20 +00:00
Mike Hommey
cd3a2d5a79 Bug 1669633 - Remove MOZ_BUILD_ROOT. r=firefox-build-system-reviewers,andi,rstewart
It is only really used in js/src/devtools/rootAnalysis/Makefile.in,
and even there, the way it is used seems wrong, so fix that at the
same time (binaries have been linked into $DIST/bin directly for a
while).

Differential Revision: https://phabricator.services.mozilla.com/D92721
2020-10-07 17:57:38 +00:00
Mike Hommey
228e721068 Bug 1669442 - Fix dependency between libxul and mozgtk after bug 1573566. r=andi,dmajor
Bug 1573566 moved libxul from toolkit/library to toolkit/library/build,
and that should be reflected in config/recurse.mk.

It's amazing the race condition hasn't caused problems earlier than now.

Differential Revision: https://phabricator.services.mozilla.com/D92708
2020-10-07 12:17:56 +00:00
Razvan Maries
75a5750a87 Backed out 5 changesets (bug 1662564, bug 1664922, bug 1440203) for Valgrind bustages. CLOSED TREE
Backed out changeset 9366b15ee97c (bug 1440203)
Backed out changeset bb512f5fdeda (bug 1440203)
Backed out changeset be90d6aec690 (bug 1664922)
Backed out changeset f6527a1d0f14 (bug 1662564)
Backed out changeset 3a2941fa7d4b (bug 1662564)
2020-10-07 08:38:13 +03:00
Jed Davis
c4968e6653 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.

Differential Revision: https://phabricator.services.mozilla.com/D90605
2020-10-06 19:20:29 +00:00
Christian Holler
0215dcbfc4 Bug 1659392 - Only enable rust fuzzing code with libFuzzer. r=truber
Differential Revision: https://phabricator.services.mozilla.com/D87228
2020-08-18 13:32:15 +00:00
Mozilla Releng Treescript
5aa7b6ef9e Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-09-21 14:12:25 +00:00
Nico Grunbaum
b6b3c20d6f Bug 1654189 - Move sipcc SDP to third_party;r=dminor
Differential Revision: https://phabricator.services.mozilla.com/D89943
2020-09-11 20:19:42 +00:00
Mike Hommey
8d261dbd4e Bug 1663850 - Remove unused variables in config/config.mk. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D89551
2020-09-09 23:50:38 +00:00
Mike Hommey
a34742d98f Bug 1620133 - Allow generated file rules to run in parallel in a given directory. r=firefox-build-system-reviewers,rstewart
Bug 1645986 solved the problem for most generated files by moving their
rules to the top-level, but we're going to add rules that will end up in
subdirectories, so we have to solve the same problem again, in the
subdirectories.

Differential Revision: https://phabricator.services.mozilla.com/D88389
2020-08-28 01:58:48 +00:00
Cosmin Sabou
3dbaa1483b Merge mozilla-central to autoland. CLOSED TREE 2020-08-25 01:10:32 +03:00
Mozilla Releng Treescript
ccbc59dff5 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-08-24 14:18:41 +00:00
Nathan Froyd
527a3cabb9 Bug 1660828 - move HAVE_AS_X86_64_UNWIND_SECTION_TYPE to be x86-64 Unix-specific; r=firefox-build-system-reviewers,rstewart
Somehow we have had it be a general define, but it has not mattered...at
least it won't matter until we upgrade to clang 11, at which point the
compiler will start to complain at us about the codepaths this define
activates.

Differential Revision: https://phabricator.services.mozilla.com/D88056
2020-08-24 19:31:43 +00:00
Mike Hommey
ff764980c5 Bug 1659066 - Move base C/C++ compiler flags for cc-rs to CFLAGS_*/CXXFLAGS_. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D87051
2020-08-22 22:46:12 +00:00