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

5694 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 3a2a805477 Bug 1653909 - Use the stub file for the icu data file dependencies. r=froydnj
The rules we create in the backend for generated files use a stub file
for the real file generation, and we do need dependencies on that
specific target for the changes in bug 1264836 to work without races.

Differential Revision: https://phabricator.services.mozilla.com/D84311
2020-07-21 13:13:02 +00:00
Mike Hommey cb5b458548 Bug 1640982 - Set CARGO_PROFILE_RELEASE_LTO=true when enabling rust LTO. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D84098
2020-07-20 16:05:36 +00:00
Mike Hommey 7eb905c213 Bug 1264836 - Automatically convert the little-endian ICU data file for big-endian builds. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D83857
2020-07-17 22:25:57 +00:00
Butkovits Atila 1b5a008148 Backed out changeset cfaeba06ee87 (bug 1264836) for bustages at AccessibleRole.h. CLOSED TREE 2020-07-18 02:57:28 +03:00
Mike Hommey 7661e8879a Bug 1264836 - Automatically convert the little-endian ICU data file for big-endian builds. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D83857
2020-07-17 22:25:57 +00:00
Narcis Beleuzu bef8fd0583 Backed out changeset d3004626988d (bug 1264836) for breaking the Gecko Decision Task. CLOSED TREE 2020-07-18 00:42:05 +03:00
Mike Hommey f1ffe803dd Bug 1264836 - Automatically convert the little-endian ICU data file for big-endian builds. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D83857
2020-07-17 20:06:42 +00:00
Mike Hommey 0ebe2bbd8f Bug 1652448 - Use the same codegen-units numbers on host and target rust builds. r=firefox-build-system-reviewers,rstewart
Otherwise, crates that are shared between host and target are always
rebuilt because of the difference in rust flags.

Differential Revision: https://phabricator.services.mozilla.com/D83412
2020-07-13 22:24:59 +00:00
Nathan Froyd bddb48ea03 Bug 1625281 - force make to update timestamp caches when building rust programs; r=firefox-build-system-reviewers,rstewart
Doing this means that make will correctly understand that the underlying
program has changed and therefore it needs to trigger install rules.

Differential Revision: https://phabricator.services.mozilla.com/D83326
2020-07-13 19:01:40 +00:00
Mike Hommey ee3002aa4e Bug 1651287 - Hook the pre-compile pseudo-tier in the compile graph. r=nalexander
This makes dir/target, dir/target-objects, etc. depend on
dir/pre-compile, which ensures all items in the pre-compile pseudo-tier
are built before entering in the directory they are defined in, during
the compile tier. This removes the need for EXTRA_DEPS hacks.

Differential Revision: https://phabricator.services.mozilla.com/D83036
2020-07-10 21:03:41 +00:00
Mike Hommey c4e1894f04 Bug 1651287 - Add a pre-compile pseudo-tier. r=firefox-build-system-reviewers,rstewart
Generated files marked as "required during compile" are limited to a
number of extensions, most of which are source file types, so they get
generated when compiling the corresponding object file. Other types,
though, are currently handled via EXTRA_DEPS, which is clunky.

As of now, these other types are limited to link-related items, but more
would be useful (e.g. .inc files, which are only included in one
location).

This however works against the static analysis tasks (coverity and
clang-tidy), which currently rely on everything they need being created
via the export tier. That excludes using EXTRA_DEPS-based hacks.

We create a "pre-compile" tier, that is not used during a normal build,
but can be invoked manually, which the static analysis tasks will do.

Differential Revision: https://phabricator.services.mozilla.com/D83035
2020-07-11 22:18:25 +00:00
Mike Hommey b979f62e15 Bug 1648680 - Do not build w95sock.c as part of a unified compilation unit. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D81290
2020-07-10 20:32:25 +00:00
Mike Hommey df18e17e18 Bug 1651608 - Remove leftovers from bug 1557788. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D82866
2020-07-09 12:19:58 +00:00
Tom Prince 204d796929 Bug 1651731: [lint] Python and shell files without `#!` should not be executable; r=linter-reviewers,perftest-reviewers,geckoview-reviewers,agi,sylvestre,sparky
Differential Revision: https://phabricator.services.mozilla.com/D82954
2020-07-09 20:29:18 +00:00
Ricky Stewart 51a23a4ba2 Bug 1651641 - `servo/components/style/build.rs` reads `PYTHON3` configuration value in addition to environment variable r=glandium
The previous logic would check the value of the `PYTHON3` environment variable, which is not set by the Firefox build system, so this build script tends to just use the `python3` at the tip of the `PATH`, regardless of which value you've configured for it. Instead, it should prefer to read from the `OBJDIR` if one is present.

Differential Revision: https://phabricator.services.mozilla.com/D82981
2020-07-09 22:03:23 +00:00
Kris Maglione b18c12677e Bug 1464542: Part 1 - Generate symbolic names for XPT interfaces and add lookup function. r=nika,froydnj
This makes it much simpler for the for the static JS services cache to store
and lookup interface IDs for components.

Differential Revision: https://phabricator.services.mozilla.com/D81416
2020-07-09 20:42:49 +00:00
Mike Hommey 2808f56f12 Bug 1651207 - Build the ICU data through an assembly file. r=froydnj
... instead of a C file. This avoids issues with sccache (via dist or
caching), because sccache doesn't do anything with assembly files,
but with a C file, it doesn't know about the incbin-included data file.

This has the unfortunate side effect of requiring some manual work to
mark the file for safeseh on 32-bits Windows.

Differential Revision: https://phabricator.services.mozilla.com/D82814
2020-07-09 12:20:56 +00:00
Csoregi Natalia b355fcc4bf Backed out 6 changesets (bug 1464542) for xpcshell failures on test_Services.js. CLOSED TREE
Backed out changeset b50af9005851 (bug 1464542)
Backed out changeset 9d3a0ea2cf65 (bug 1464542)
Backed out changeset 71c3475fcbc2 (bug 1464542)
Backed out changeset 51ff93220a95 (bug 1464542)
Backed out changeset e84de1547c09 (bug 1464542)
Backed out changeset bbecc16d08eb (bug 1464542)
2020-07-09 23:19:26 +03:00
Andrew Halberstadt 0d3d8d4744 Bug 1640902 - [python-test] Add ability to mark tests as "slow" and an arugment to run them, r=raphael
This creates a general pytest plugin under "config/mozunit" which implements
the ability to mark tests as "slow". Slow tests will be skipped by default
unless "--run-slow" is passed in.

Differential Revision: https://phabricator.services.mozilla.com/D81402
2020-07-09 17:46:07 +00:00
Kris Maglione 55b68bde08 Bug 1464542: Part 1 - Generate symbolic names for XPT interfaces and add lookup function. r=nika,froydnj
This makes it much simpler for the for the static JS services cache to store
and lookup interface IDs for components.

Differential Revision: https://phabricator.services.mozilla.com/D81416
2020-07-09 17:59:09 +00:00
Axel Hecht ac4d08312c Bug 1614941, add more date formats to dsb and hsb, r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D62732
2020-07-07 11:46:05 +00:00
Nick Alexander b41ff18a94 Bug 1641291 - Part 2: Make NSDISTMODE=copy impact install manifests. r=glandium
This is strictly a quality of life improvement when cross-compiling to
Windows targets.  A common scenario is mounting an object directory
into a Windows VM, which requires additional VM configuration to
handle (absolute) symlinks.  With this patch, `export NSDISTMODE=copy`
in a mozconfig sidesteps any such symlink issues.

Differential Revision: https://phabricator.services.mozilla.com/D77118
2020-07-07 02:16:12 +00:00
Mike Hommey f801a642f4 Bug 1650592 - Disable ICU dynamic loading. r=jwalden
For a while, now, ICU data has been stored as raw read-only data in rather
than a separate loadable library. This means the parts of ICU that can load
such a module are not necessary.

Differential Revision: https://phabricator.services.mozilla.com/D82262
2020-07-07 00:24:37 +00:00
Mike Hommey e1f7ae82ed Bug 1650299 - Unify the inclusion of the ICU data file. r=froydnj
All the supported compilers support a GNU AS-like syntax, with only a
few details varying. It means we can use a single, simpler, way to
include the ICU data file, instead of 3 different ways, including one
that uses armasm64.exe, possibly wrapped with Wine.

Differential Revision: https://phabricator.services.mozilla.com/D82144
2020-07-06 22:57:53 +00:00
André Bargull 1f92968bc6 Bug 1496584 - Part 2: Include previously disabled date-interval formatters. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D79318
2020-07-01 11:19:52 +00:00
Mike Hommey 9c264b7cf2 Bug 1240930 - Move jar_maker to the misc tier. r=firefox-build-system-reviewers,geckoview-reviewers,rstewart,agi
Because jar_maker is not in the libs tier, we also rename the libs-%
targets for l10n repacks to l10n-%, which make it clearer what they are
for.

And because multilocale.txt is both a GeneratedFile and a file that is
generated (and installed) via manual build rules, keeping it in the misc
target actually breaks building in toolkit/locales during l10n repacks,
so move it to libs for now.

Differential Revision: https://phabricator.services.mozilla.com/D81766
2020-06-30 21:34:32 +00:00
Mozilla Releng Treescript f6180a922b Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-06-29 15:15:46 +00:00
Emilio Cobos Álvarez 7c995807da Bug 1646936 - Generate a single metadata file in the objdir, and feed it to cbindgen. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D80360
2020-06-26 10:41:26 +00:00
Coroiu Cristina 302c2fa31a Backed out changeset 8f948dd74aba (bug 1646936) for SM and Toolchain failures on a CLOSED TREE 2020-06-26 13:08:09 +03:00
Emilio Cobos Álvarez 9c7c03bf30 Bug 1646936 - Generate a single metadata file in the objdir, and feed it to cbindgen. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D80360
2020-06-26 09:37:16 +00:00
Mike Hommey 382cebd8f2 Bug 1648575 - Fix Android artifact builds after bug 1645986. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D81240
2020-06-25 22:31:02 +00:00
Mike Hommey a87a1c3b54 Bug 1645986 - Move most GeneratedFile generation to top-level backend.mk. r=firefox-build-system-reviewers,rstewart
While ideally we'd just move all of them at the top-level, there are
other things that depend on them that wouldn't then get the right
dependencies. One of them is install steps in dist/something, but there
are others, and that's a rather long pole of things requiring many
changes along with chances to break things.

So instead, we go with a simpler and more limited approach, where we
still recurse into directories to run their export tier (to run whatever
else than GeneratedFiles they have), but ensure the GeneratedFiles we
moved at the top-level are built before recursing by making
directory/export depend on them.

Differential Revision: https://phabricator.services.mozilla.com/D80608
2020-06-24 04:23:02 +00:00
Mike Hommey 9820df71e8 Bug 1645986 - Avoid relative paths in GeneratedFile targets. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D80605
2020-06-24 04:23:09 +00:00
Dorel Luca fdb71d7688 Backed out 4 changesets (bug 1645986) for Valgrid failure. CLOSED TREE
Backed out changeset 602ea804234f (bug 1645986)
Backed out changeset c43f9360b0a5 (bug 1645986)
Backed out changeset fe1142397e72 (bug 1645986)
Backed out changeset faf6de9409f9 (bug 1645986)
2020-06-24 07:16:13 +03:00
Mike Hommey 8a86310ac3 Bug 1645986 - Move most GeneratedFile generation to top-level backend.mk. r=firefox-build-system-reviewers,rstewart
While ideally we'd just move all of them at the top-level, there are
other things that depend on them that wouldn't then get the right
dependencies. One of them is install steps in dist/something, but there
are others, and that's a rather long pole of things requiring many
changes along with chances to break things.

So instead, we go with a simpler and more limited approach, where we
still recurse into directories to run their export tier (to run whatever
else than GeneratedFiles they have), but ensure the GeneratedFiles we
moved at the top-level are built before recursing by making
directory/export depend on them.

Differential Revision: https://phabricator.services.mozilla.com/D80608
2020-06-24 00:45:25 +00:00
Mike Hommey eccc2c2c6b Bug 1645986 - Avoid relative paths in GeneratedFile targets. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D80605
2020-06-24 00:45:32 +00:00
Dorel Luca b159956383 Backed out 4 changesets (bug 1645986) for Build bustage
Backed out changeset ac871b2f34dc (bug 1645986)
Backed out changeset 07b14b6a0b91 (bug 1645986)
Backed out changeset fdd319bdbfa7 (bug 1645986)
Backed out changeset ce213e6bbc1f (bug 1645986)
2020-06-24 03:42:47 +03:00
Mike Hommey f6fcdd8d5c Bug 1645986 - Move most GeneratedFile generation to top-level backend.mk. r=firefox-build-system-reviewers,rstewart
While ideally we'd just move all of them at the top-level, there are
other things that depend on them that wouldn't then get the right
dependencies. One of them is install steps in dist/something, but there
are others, and that's a rather long pole of things requiring many
changes along with chances to break things.

So instead, we go with a simpler and more limited approach, where we
still recurse into directories to run their export tier (to run whatever
else than GeneratedFiles they have), but ensure the GeneratedFiles we
moved at the top-level are built before recursing by making
directory/export depend on them.

Differential Revision: https://phabricator.services.mozilla.com/D80608
2020-06-23 16:07:26 +00:00
Mike Hommey f1eea6d9e3 Bug 1645986 - Avoid relative paths in GeneratedFile targets. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D80605
2020-06-23 16:19:21 +00:00
Mike Hommey 39efc5bc7b Bug 1646653 - Remove dependencies on xpcom/xpidl/export. r=froydnj
They were necessary some time ago, but:
- there is no js/xpconnect/src/export target anymore,
- accessibility/xpcom/export had a dependency on xpcom/xpidl/export for
  the ply cache files, but they're not used as of bug 1633156.
- the recursive make backend was adding automatic dependencies on
  xpcom/xpidl/export for the ply cache files.

Differential Revision: https://phabricator.services.mozilla.com/D80150
2020-06-18 11:02:46 +00:00
Ricky Stewart 09750d5dab Bug 1646190 - Remove pymake from tree r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D79920
2020-06-18 21:06:32 +00:00
Ted Campbell 6aa5132146 Bug 1645464 - Use a shared ProfilingCategoryList.h r=gerald,froydnj
Replace the duplicate lists in mozglue/baseprofiler/public and js/public with
a shared list. Add this list to both moz.build files so it is published twice
which simplifies supporting different standalone configurations.

Differential Revision: https://phabricator.services.mozilla.com/D79520
2020-06-15 13:59:55 +00:00
Geoff Brown e1d05bdc1d Bug 1644228 - Remove support for IMPACTED_TESTS; r=remote-protocol-reviewers,firefox-build-system-reviewers,rstewart,whimboo
IMPACTED_TESTS was added in bug 1184405, but is under-utilized in current moz.build
annotations; also bug 1516847 removed use of IMPACTED_TESTS in 'mach test'. This
patch removes remaining support for IMPACTED_TESTS.

Differential Revision: https://phabricator.services.mozilla.com/D79141
2020-06-12 08:04:08 +00:00
André Bargull 3d23887ba7 Bug 1636984 - Part 2: Reimport ICU to generate the data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D74682
2020-06-12 12:50:04 +00:00
Coroiu Cristina 3cce853af2 Backed out 4 changesets (bug 1641291) for build bustages and SM failures on a CLOSED TREE
Backed out changeset 9c0a44614576 (bug 1641291)
Backed out changeset 0dcf604b880e (bug 1641291)
Backed out changeset d830bee40b5c (bug 1641291)
Backed out changeset fe38c82c2dad (bug 1641291)
2020-06-03 22:09:52 +03:00
Nick Alexander e3368880ab Bug 1641291 - Part 3: Ensure that paths are considered paths when compiling. r=glandium
Extremely common file paths on macOS like `/Users/...` are interpreted
as `/U...` flags by `clang-cl`.  This is so common that there's a
`-Wslash-u-filename` warning.  Ensure that file paths are considered
paths when compiling by terminating options with `--`.

This commit handles everything except assembler invocations, because
at least `nasm` doesn't handle `--`.

Differential Revision: https://phabricator.services.mozilla.com/D77119
2020-06-03 18:18:32 +00:00
Nick Alexander 26518d1bde Bug 1641291 - Part 2: Make NSDISTMODE=copy impact install manifests. r=glandium
This is strictly a quality of life improvement when cross-compiling to
Windows targets.  A common scenario is mounting an object directory
into a Windows VM, which requires additional VM configuration to
handle (absolute) symlinks.  With this patch, `export NSDISTMODE=copy`
in a mozconfig sidesteps any such symlink issues.

Differential Revision: https://phabricator.services.mozilla.com/D77118
2020-06-03 18:18:23 +00:00
Dorel Luca 61e47c120c Merge mozilla-cental to autoland. CLOSED TREE 2020-06-01 19:35:58 +03:00
Mozilla Releng Treescript a56e4bfdd7 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-06-01 10:15:55 +00:00
Ricky Stewart 0bbaac721b Bug 1641693 - Replace a bunch of uses of `GENERATED_FILES` with the `GeneratedFile` template r=necko-reviewers,geckoview-reviewers,aklotz,dragana,froydnj
Also update documentation to suggest using the `GeneratedFile` template rather than directly referencing `GENERATED_FILES` where possible.

Differential Revision: https://phabricator.services.mozilla.com/D77496
2020-06-01 16:00:28 +00:00
Axel Hecht 22b8c9b311 Bug 1642092, find toolkit/locales/en-US/defines.inc for comm* builds, r=nalexander
This was regressed by bug 1641791, mostly for the lack of comments in at
least two places.

Differential Revision: https://phabricator.services.mozilla.com/D77590
2020-05-31 01:30:57 +00:00
Axel Hecht 1343d506c0 Bug 1641184, use only the merge dir for repacks, r=nalexander
l10n-merge creates a full merge dir for a while now, let's
simplify the build logic to only read from that directory
during repacks and langpacks.

Differential Revision: https://phabricator.services.mozilla.com/D77023
2020-05-27 17:04:06 +00:00
André Bargull d9dc862621 Bug 1557727 - Part 3: Implement Intl.DisplayNames proposal. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D52165
2020-05-19 11:18:16 +00:00
André Bargull b029ce9ac8 Bug 1557727 - Part 1: Add resources for Intl.DisplayNames to ICU data file. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D52163
2020-05-19 11:17:21 +00:00
Nathan Froyd 8e55e43475 Bug 1638870 - add unicode/uniset.h to system headers; r=firefox-build-system-reviewers,rstewart
I haven't been able to confirm that this would actually fix
`--with-system-icu`, but since the new regexp
engine (`js/src/new-regexp`) explicitly includes this file and this file
isn't already present in system-headers...it seems very likely that this
change will fix `--with-system-icu`.

Differential Revision: https://phabricator.services.mozilla.com/D75809
2020-05-18 20:20:21 +00:00
Mike Hommey 28de21d935 Bug 1638193 - Remove build system support for iOS. r=nalexander
iOS support for Gecko has not been tested in years and is most probably
out of date. The build system part of it, specifically the checks in
build/autoconf/ios.m4, are not trivial to port to python configure, and
they prevent other things from moving to python configure (because some
of them change value when MOZ_IOS is set).

The code is left alone, although it could probably be stripped off as
well, but I'll leave that as an exercise for someone else.

Differential Revision: https://phabricator.services.mozilla.com/D75463
2020-05-15 03:56:16 +00:00
Ricky Stewart 933b3522b8 Bug 1633156 - Don't emit cached table files from ply r=glandium
`ply`, [by design](https://github.com/dabeaz/ply/issues/79), does not produce reproducible table files; hence bug 1633156. (Note that this was *always* true, but only became a problem once we switched to Python 3, which has more unpredictable dict iteration order than Python 2.7, at least prior to [3.7](https://docs.python.org/3/whatsnew/3.7.html#summary-release-highlights).)

In any other circumstance I would consider submitting a patch to `ply` to fix this, but as of the [in-progress version 4.0 of the library](https://github.com/dabeaz/ply/blob/master/CHANGES), it doesn't even emit this cached data any more, and indeed the [latest version of the code](1fac9fed64/ply) doesn't even call `open()` at all except to do logging or to read the text data to be parsed from `stdin`. So if we were going to pin our future on `ply` and upgrade to later versions of the library in the future, we would have to live in a world where `ply` doesn't generate cached table files for us anyway.

Emitting the cached table files so later build steps can consume them is an "optimization", but it's not clear exactly how much actual value that optimization provides overall. Quoth the `CHANGES` file from that repository:

```
PLY no longer writes cached table files.  Honestly, the use of
the cached files made more sense when I was developing PLY on
my 200Mhz PC in 2001. It's not as much as an issue now. For small
to medium sized grammars, PLY should be almost instantaneous.
```

In practice, I have found this to be true; namely, `./mach build pre-export export` takes just about as long on my machine after this patch as it did before, and in a try push I performed, there's no noticeable performance regression from applying this patch. In local testing I also found that generating the LALR tables in calls to `yacc()` takes about 0.01s on my machine generally, and we generate these tables a couple dozen times total over the course of the `export` tier now. This isn't *nothing*, but in my opinion it's also not nearly long enough where it would be a concern given how long `export` already takes.

That `CHANGES` file also stresses that if caching this data is important, we have the option of doing so via `pickle`. If and when we decide that re-enabling this optimization is valuable for us, we should take control of this process and perform the generation in such a way that we can guarantee reproducibility.

Differential Revision: https://phabricator.services.mozilla.com/D73484
2020-05-07 00:39:28 +00:00
Mike Hommey 824e3fcd1f Bug 1634926 - Drive-by: fix condition for security/target vs. multiple target. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D73797
2020-05-05 11:07:16 +00:00
Mike Hommey 4fc2a1364a Bug 1634926 - Don't depend on in-tree NSS/NSPR when building against system NSS/NSPR. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D73796
2020-05-05 11:28:54 +00:00
Ricky Stewart 4d4b22b3de Bug 1599658 - Delete previous definition of py_action in Makefiles. Now py_action calls into Python 3 and py3_action doesn't exist. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D72487
2020-05-05 20:04:30 +00:00
Ricky Stewart fd72a5d35e Bug 1633016 - Remove a bunch of references to PYTHON(2) in Makefiles r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D72479
2020-05-05 19:53:22 +00:00
Ricky Stewart 3749c34fb4 Bug 1632916 - Run JS/web-platform/ipdl build machinery in Python 3 r=jgraham,nika,glandium
Differential Revision: https://phabricator.services.mozilla.com/D72478
2020-05-05 20:32:12 +00:00
André Bargull 13060683c1 Bug 1632434 - Part 2: Update ICU data file again to tzdata 2020a. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D72910
2020-04-29 23:47:39 +00:00
André Bargull 57a5eb29e7 Bug 1632434 - Part 1: Update in-tree ICU to release 67.1. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D72908
2020-04-29 23:47:31 +00:00
Mozilla Releng Treescript b6bf8b5422 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-05-04 14:53:37 +00:00
Bogdan Tara f137fa0613 Backed out 6 changesets (bug 1632916, bug 1599658, bug 1633037, bug 1633039, bug 1633016, bug 1632920) for SA bustages CLOSED TREE
Backed out changeset 332ce0963b4e (bug 1633039)
Backed out changeset a9904cbc40d9 (bug 1633037)
Backed out changeset d06b0ec349f8 (bug 1599658)
Backed out changeset 8fd300cad80f (bug 1633016)
Backed out changeset f8820941c703 (bug 1632916)
Backed out changeset ac9c2c8746ed (bug 1632920)
2020-05-02 01:49:29 +03:00
Ricky Stewart 0daacc12c3 Bug 1599658 - Delete previous definition of py_action in Makefiles. Now py_action calls into Python 3 and py3_action doesn't exist. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D72487
2020-04-30 15:27:13 +00:00
Ricky Stewart bb4e86d85a Bug 1633016 - Remove a bunch of references to PYTHON(2) in Makefiles r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D72479
2020-04-30 15:25:22 +00:00
Ricky Stewart d990224458 Bug 1632916 - Run JS/web-platform/ipdl build machinery in Python 3 r=jgraham,nika,glandium
Differential Revision: https://phabricator.services.mozilla.com/D72478
2020-05-01 16:31:21 +00:00
Kirk Steuber 01623391ec Bug 1627805 - Allow the update agent to link against updatecommon r=glandium
Linking Rust code against the updatecommon library is not well supported by our build system, but it should be possible. The changes to updatecommon's moz.build will cause updatecommon.lib to be created, which Rust can link against. The build.rs script tells cargo which shared Windows libraries are needed for linking, and where updatecommon.lib can be found. The change to config/recurse.mk enforces the dependency of the update agent on updatecommon, so that we do not attempt to link the agent before updatecommon has been built.

Differential Revision: https://phabricator.services.mozilla.com/D70207
2020-04-24 19:23:08 +00:00
André Bargull 1265aecea0 Bug 1633331: Update tzdata in ICU data files to 2020a. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D72588
2020-04-28 08:47:11 +00:00
Jamie Nicol d384e8fa67 Bug 1604615 - Use cargo linker wrapper for native sanitizer builds, but don't set problematic flags. r=glandium
For native sanitizer builds, we currently do not pass the linker flags
to cargo, as they were causing crashes in some build scripts. Without
this, however, the linker is unable to find libstdc++. Instead, do
tell cargo to use the linker wrapper, but omit the problematic flags
from MOZ_CARGO_WRAP_LDFLAGS.

Differential Revision: https://phabricator.services.mozilla.com/D70354
2020-04-21 10:31:53 +00:00
Nika Layzell 1840f4505c Bug 1630361 - Remove [NeedsWindowsUndef] attribute from webidl, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D69450
2020-04-16 23:40:57 +00:00
Jan de Mooij 72d50388f6 Bug 1629791 part 3 - Define CacheIR ops in a YAML file and use that to generate a header file. r=iain
For now this generates just CACHE_IR_OPS and CACHE_IR_SHARED_OPS in CacheIROpsGenerated.h
but the plan is to use this to generate parts of the IR writer and compiler/transpiler
interface. The spewer could also potentially be improved now that each operand has a name
and more precise type.

Generating the IR writer will likely happen incrementally so that will give us
another chance to double check the precise types match what's in the YAML file.

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

--HG--
extra : moz-landing-system : lando
2020-04-16 05:21:38 +00:00
Jan de Mooij c60dee00d5 Bug 1629791 part 1 - Rename MOpcodes.h to MOpcodesGenerated.h and LOpcodes to LOpcodesGenerated.h. r=iain
Most other generated SpiderMonkey files have the 'Generated' suffix so let's
follow that convention.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 14:06:21 +00:00
David Major e8a38f48d0 Bug 1627768 - Expand check_networking exemption to ASan and UBSan builds r=rstewart
They all fail for the same reason: the sanitizer runtime in compiler-rt installs an interceptor for `getsockname` which then contains a call to the real implementation.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 15:56:34 +00:00
Jan Beich 307671c87e Bug 1628660 - Unbreak tests on Tier3 platforms after bug 1587353 r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D70374

--HG--
extra : moz-landing-system : lando
2020-04-09 16:19:04 +00:00
Mike Hommey 5944220eee Bug 1628205 - Convert nsinstall.py to python 3. r=rstewart
Also enable all config/tests with python3. unit-nsinstall.py was the
last one that didn't pass with python 3.

Switch the test to using @unittest.skipIf and disable the subprocess
test because we purposely broke running nsinstall.py independently with
python 2.

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

--HG--
extra : moz-landing-system : lando
2020-04-09 00:24:51 +00:00
Mike Hommey ac5b6e6cd0 Bug 1628200 - Fix config/tests/test_mozbuild_reading.py. r=rstewart
Since the test goes through all moz.build files disregarding DIRS and
the conditions that may disable directories, in some cases, moz.builds
can fail to be evaluated properly because of missing variables in
config.status. This time (because it's not the first), it's
LLVM_DLLTOOL.

After fixing that, it turns out many of the files/directories pointed to
by Files() directives were removed or moved.

While here, make the test script python3-ready.

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

--HG--
extra : moz-landing-system : lando
2020-04-09 00:24:29 +00:00
Mike Hommey 0fb4a38faf Bug 1621436 - Run process_install_manifest with python3. r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D70156

--HG--
extra : moz-landing-system : lando
2020-04-09 00:21:12 +00:00
Mozilla Releng Treescript a17ce3b6b4 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-04-06 14:28:50 +00:00
Sylvestre Ledru 9e1d0beec8 Bug 1627439 - Remove an old reference to doxygen r=nalexander DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D69702

--HG--
extra : moz-landing-system : lando
2020-04-04 15:01:04 +00:00
Michal Novotny e4de0c38d1 Bug 1587353 - Add an http3 test server r=agrover
Differential Revision: https://phabricator.services.mozilla.com/D48666

--HG--
extra : moz-landing-system : lando
2020-03-28 20:06:41 +00:00
Mike Hommey 32bf570594 Bug 1618782 - Use winchecksec on Windows cross builds too. r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D68162

--HG--
extra : moz-landing-system : lando
2020-03-27 10:41:06 +00:00
Mike Hommey e25a8bf02e Bug 1450088 - Use Winchecksec instead of Binscope. r=dmajor
While almost rewriting autobinscope.py entirely (and renaming it),
switch to python 3.

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

--HG--
rename : build/win32/autobinscope.py => build/win32/autowinchecksec.py
extra : moz-landing-system : lando
2020-03-26 22:13:14 +00:00
Mike Hommey a80be41972 Bug 1021214 - Run binscope on all executables and libraries. r=froydnj
This needs a few adjustments to the autobinscope script because running
binscope currently creates an HTML file in the binscope directory, and
when multiple binscopes run at the same time (which happens during the
build with the changes to run it on all executables and libraries), all
but one fail to open the HTML file for write access.

So add a flag to create that file in a temporary directory.

While here, remove log_file_path, which hasn't been used since
bug 1448306.

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

--HG--
extra : moz-landing-system : lando
2020-03-20 01:54:00 +00:00
Iain Ireland f502cef5ef Bug 1624015: Update shim code to support new import r=mgaudet
Because most of the recent changes to irregexp were patches I contributed myself, we barely need to change any of the shim code.

The only notable change is the addition of '#define COMPILING_IRREGEXP_FOR_EXTERNAL_EMBEDDER'. This is the solution that Jakob Gruber and I eventually came up with for the question of what to do with awkward V8 code that SM doesn't want. For example, NativeRegExpMacroAssembler::Match (in regexp-macro-assembler.cc) gets down in the muck with the internal details of V8's String implementation. It would be most convenient for SM if that function just didn't exist; we aren't going to use it, and we don't want to have to define a bunch of unused string API gunk in our shim. The answer is to wrap functions we don't need in "#ifndef COMPILING_IRREGEXP_FOR_EXTERNAL_EMBEDDER", which solves our problem and is minimally disruptive upstream.

Depends on D67718

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

--HG--
extra : moz-landing-system : lando
2020-03-23 19:19:38 +00:00
Oana Pop Rus 55ec4515da Backed out changeset 8009b44fdab1 (bug 1021214) for build bustages in autobinscope.py on a CLOSED TREE 2020-03-20 03:49:30 +02:00
Mike Hommey 89f6c7e9b7 Bug 1021214 - Run binscope on all executables and libraries. r=froydnj
This needs a few adjustments to the autobinscope script because running
binscope currently creates an HTML file in the binscope directory, and
when multiple binscopes run at the same time (which happens during the
build with the changes to run it on all executables and libraries), all
but one fail to open the HTML file for write access.

So add a flag to create that file in a temporary directory.

While here, remove log_file_path, which hasn't been used since
bug 1448306.

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

--HG--
extra : moz-landing-system : lando
2020-03-20 00:41:44 +00:00
André Bargull 5020091e8c Bug 1610512 - Part 1: Update in-tree ICU to release 66.1. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D66555

--HG--
extra : moz-landing-system : lando
2020-03-19 01:09:56 +00:00
William Lachance e4da848fd8 Bug 1623132 - Rewrite printconfigsetting to use configparser, python 3 r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D67210

--HG--
extra : moz-landing-system : lando
2020-03-18 15:07:24 +00:00
Michael Woerister 5327bb2166 Bug 1623085 - Only explicitly set number of Rust codegen-units for target artifacts. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D67162

--HG--
extra : moz-landing-system : lando
2020-03-17 16:47:52 +00:00
Anthony Ramine 3d7a2ce032 Bug 1623073 - Properly prefix ICU data symbol with GNU as when needed; r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D67148

--HG--
extra : moz-landing-system : lando
2020-03-17 14:03:52 +00:00
Jan Beich 75deb5e1ac Bug 1622227 - Unhide more ICU headers after bug 1560038. r=zbraniecki
--HG--
extra : histedit_source : 0389f4496364d9dbebb9b49f899ac4833db5d37d
2020-03-17 09:57:56 +02:00
Ricky Stewart 13aa77e4a5 Bug 1619460 - ensure subsequent runs of `./mach build-backend` under Python 3 produce consistent results r=dmajor
Dictionary iteration under Python 3 is in an inherently unpredictable order, and while we try to keep DEFINES ordered through the use of OrderedDicts, if at any point we populate DEFINES directly or indirectly while iterating through the contents of a non-ordered dictionary, the order of the DEFINES (and therefore the contents of the output Makefile) will be nondeterministic as well. This patch makes a number of changes to ensure that we only ever populate DEFINES in a deterministic fashion. (Note that in Python 3.7 and later, the built-in dict class actually has deterministic ordering, so these changes are technically only necessary until our minimum Python version becomes 3.7.)

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

--HG--
extra : moz-landing-system : lando
2020-03-12 21:05:26 +00:00
Narcis Beleuzu 4437350f38 Backed out changeset 1f0cfca78242 (bug 1619460) perf regression in automation, req by rstewart. CLOSED TREE
--HG--
extra : rebase_source : ef3f1ce03bc9fdedb81d33ede68f9925f447ba32
2020-03-12 19:37:27 +02:00
Mike Shal 2626cb441d Bug 1620744 - Convert jar_maker action to py3; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65857

--HG--
extra : moz-landing-system : lando
2020-03-10 20:19:47 +00:00
Mike Shal c2e3a05aa3 Bug 1620744 - Convert dumpsymbols.py to py3; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65856

--HG--
extra : moz-landing-system : lando
2020-03-10 20:19:44 +00:00
Mike Shal b5ef4a8d81 Bug 1620744 - Convert check_binary.py to py3; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65855

--HG--
extra : moz-landing-system : lando
2020-03-10 20:19:42 +00:00
Mike Shal 4017368b2f Bug 1620744 - Use py3_action for cases that already support it; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65846

--HG--
extra : moz-landing-system : lando
2020-03-10 20:19:13 +00:00
Daniel Varga 09acd57d19 Backed out 13 changesets (bug 1620744) for causing diffoscope failures firefox/browser/chrome/browser/content/browser/built_in_addons.json
CLOSED TREE

Backed out changeset 6beda54bcb9b (bug 1620744)
Backed out changeset a1e97f0b91ef (bug 1620744)
Backed out changeset b8faa0184d4f (bug 1620744)
Backed out changeset 3bc8fda68107 (bug 1620744)
Backed out changeset 8e95b21b2ae3 (bug 1620744)
Backed out changeset 1de09de1a802 (bug 1620744)
Backed out changeset 622a2f7414fa (bug 1620744)
Backed out changeset 3372c9ab721c (bug 1620744)
Backed out changeset 0997313a9f99 (bug 1620744)
Backed out changeset 2fa34749bbfa (bug 1620744)
Backed out changeset 6d597d2eb792 (bug 1620744)
Backed out changeset 78e78f7c7b26 (bug 1620744)
Backed out changeset 6e4d85b19f88 (bug 1620744)
2020-03-10 21:13:18 +02:00
Mike Shal 45ba77d509 Bug 1620744 - Convert jar_maker action to py3; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65857

--HG--
extra : moz-landing-system : lando
2020-03-09 22:02:48 +00:00
Mike Shal a6b38f31ae Bug 1620744 - Convert dumpsymbols.py to py3; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65856

--HG--
extra : moz-landing-system : lando
2020-03-10 17:38:05 +00:00
Mike Shal 7e2ee7cfd9 Bug 1620744 - Convert check_binary.py to py3; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65855

--HG--
extra : moz-landing-system : lando
2020-03-09 22:02:43 +00:00
Mike Shal a1ea58eb94 Bug 1620744 - Use py3_action for cases that already support it; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65846

--HG--
extra : moz-landing-system : lando
2020-03-09 22:02:22 +00:00
Ricky Stewart 5a39034089 Bug 1619460 - ensure subsequent runs of `./mach build-backend` under Python 3 produce consistent results r=dmajor
Dictionary iteration under Python 3 is in an inherently unpredictable order, and while we try to keep DEFINES ordered through the use of OrderedDicts, if at any point we populate DEFINES directly or indirectly while iterating through the contents of a non-ordered dictionary, the order of the DEFINES (and therefore the contents of the output Makefile) will be nondeterministic as well. This patch makes a number of changes to ensure that we only ever populate DEFINES in a deterministic fashion. (Note that in Python 3.7 and later, the built-in dict class actually has deterministic ordering, so these changes are technically only necessary until our minimum Python version becomes 3.7.)

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

--HG--
extra : moz-landing-system : lando
2020-03-09 22:34:19 +00:00
ffxbld 7a35fa9703 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-03-09 15:41:51 +00:00
Greg V 9949bb054e Bug 1594027 - add more STL wrappers to fix build with libc++ 9 r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D62847

--HG--
extra : moz-landing-system : lando
2020-02-24 20:18:01 +00:00
Mike Hommey d2ca2acccf Bug 1620165 - Support compiling icudata.asm through Wine. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D65479

--HG--
extra : moz-landing-system : lando
2020-03-05 21:37:14 +00:00
Ricky Stewart bd01350f97 Bug 1619788 - Ensure files generated by `./mach configure` don't have CRLF line endings, even under Python 3 r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D65354

--HG--
extra : moz-landing-system : lando
2020-03-06 02:19:21 +00:00
Mike Shal f91105f2f1 Bug 1618620 - Convert run_spidermonkey_checks.py to py3; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D64625

--HG--
extra : moz-landing-system : lando
2020-02-28 00:28:36 +00:00
Mike Hommey 01879b59e1 Bug 1618766 - Properly find and use MT on Windows cross-builds. r=froydnj
- Remove the separate option() for MT, because it dates back from when
  we needed `MT` not being an absolute path, but that hasn't been true
  since bug 1290040.

- Extend what was done in bug 1617794 to MT, although the long term move
  is to not rely on MT at all.

- Patch leftovers from bug 1613799.

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

--HG--
extra : moz-landing-system : lando
2020-02-28 12:33:03 +00:00
Mike Hommey f9285c1941 Bug 1618760 - Remove MSVC-specific include hacks in header wrappers. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D64708

--HG--
extra : moz-landing-system : lando
2020-02-28 21:41:18 +00:00
Tooru Fujisawa 350ed0cf8c Bug 1612515 - Part 6: Import the SmooshMonkey change from rust-frontend. r=jorendorff,glandium
Differential Revision: https://phabricator.services.mozilla.com/D64170

--HG--
extra : moz-landing-system : lando
2020-02-28 14:17:33 +00:00
Mike Hommey d747b65211 Bug 1617794 - Wrap Windows tools with Wine on cross builds. r=dmajor
Windows programs run via Wine don't like Unix absolute paths (they look
like command line arguments), so we need to use relative paths.

Mingw already run fxc2 via wine, but for some reason it doesn't care
about the Unix absolute paths. genshaders does need some adjustements to
run properly with the real fxc.

Now, on actual Windows, because the temporary directory where
tempfile.NamedTemporaryFile creates files by default is not necessarily
on the same drive as where the command runs from, a relative path can't
be constructed. So we also force the temporary file to be created in the
current (obj) directory.

There is no similar concern for other files because we only go from
objdir to srcdir, and the build system already doesn't support both
being on a separate drive.

While here, flush stdout when the genshared script writes to it, so that
the messages are printed out immediately rather than randomly, later,
after output from subprocesses.

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

--HG--
extra : moz-landing-system : lando
2020-02-27 04:42:57 +00:00
Mike Hommey 83f784d880 Bug 1617794 - Properly set the target flag for bindgen when cross compiling for Windows. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D64292

--HG--
extra : moz-landing-system : lando
2020-02-26 20:52:09 +00:00
David Major 5310d823e4 Bug 1617639 - No need to pass -LTCG in AR_FLAGS for Windows r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D63888

--HG--
extra : moz-landing-system : lando
2020-02-24 20:16:55 +00:00
Marco Bonardo b5b6473a6d Bug 1611386 - Drop support for --enable-system-sqlite. r=asuth,glandium
Differential Revision: https://phabricator.services.mozilla.com/D63177

--HG--
extra : moz-landing-system : lando
2020-02-20 22:16:03 +00:00
Mike Shal c8abdd68c2 Bug 1616630 - Use py3_action for GENERATED_FILES that already support it; r=firefox-build-system-reviewers,kvark,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D63438

--HG--
extra : moz-landing-system : lando
2020-02-21 00:05:17 +00:00
Csoregi Natalia 6360b24e80 Backed out 2 changesets (bug 1616630) for Android bustage. CLOSED TREE
Backed out changeset 15016546c954 (bug 1616630)
Backed out changeset dcb7dc51633b (bug 1616630)
2020-02-20 21:24:11 +02:00
Mike Shal 39492660f4 Bug 1616630 - Use py3_action for GENERATED_FILES that already support it; r=firefox-build-system-reviewers,kvark,rstewart
Depends on D63437

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

--HG--
extra : moz-landing-system : lando
2020-02-20 16:21:55 +00:00
Ricky Stewart 8528d9c4dd Bug 1613263 - Use io.open() rather than open() in mozbuild/preprocessor.py r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D61647

--HG--
extra : moz-landing-system : lando
2020-02-19 21:50:50 +00:00
Nick Alexander 7f5f33cf2f Bug 1616426 - Make cargo use --color=never on Windows. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D63279

--HG--
extra : moz-landing-system : lando
2020-02-19 01:26:38 +00:00
Mike Shal d8e4653d19 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

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

--HG--
extra : moz-landing-system : lando
2020-02-14 13:22:46 +00:00
Nathan Froyd e2ce985f34 Bug 1615072 - don't trigger the deadlock detector from static initializers for RWLock; r=mccr8
This change is a little gross, because we don't totally control where
the statically initialized instances of `RWLock` live, due to its uses
in third-party libraries.

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

--HG--
extra : moz-landing-system : lando
2020-02-14 21:44:05 +00:00
Cosmin Sabou ff39f9206d Backed out 2 changesets (bug 1613263, bug 1611326) for presummably causing l10n langpack bustages. a=backout
Backed out changeset 77e54e76848a (bug 1611326)
Backed out changeset 36ba18ac3a68 (bug 1613263)
2020-02-14 15:02:21 +02:00
Mike Shal ad0c283ab2 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

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

--HG--
extra : moz-landing-system : lando
2020-02-13 23:07:04 +00:00
Mike Hommey 89d916fc02 Bug 1615204 - Remove some MSVC-only compiler flags. r=dmajor
- -NOLOGO is used to hide the banner that MSVC displays by default. It's
a no-op with clang-cl, no need to keep it now that we don't support
MSVC.

- -utf-8 is only passed when the compiler is not GCC-ish and not
clang-cl, which used to mean MSVC, but now means no compiler.

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

--HG--
extra : moz-landing-system : lando
2020-02-13 13:40:15 +00:00
Nathan Froyd b5ec5b84be Bug 1610986 - invoke lucetc with custom LD and LDFLAGS; r=firefox-build-system-reviewers,rstewart
`lucetc` by default will invoke `ld` directly, which is usually not what
we want, particularly when cross-compiling.  Instead, let's invoke the
compiler, which will do the hard work of determining the correct linker
to use, and we'll also explicitly specify `LDFLAGS`, since the default
`LDFLAGS` from `lucetc` assume you're invoking the linker directly.

Depends on D62797

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

--HG--
extra : moz-landing-system : lando
2020-02-13 21:19:56 +00:00
Nathan Froyd 9df9f90a4a Bug 1610986 - add a specific target for lucet compilation; r=firefox-build-system-reviewers,rstewart
We're going to need this for handling Mac cross compiles correctly.

Depends on D62795

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

--HG--
extra : moz-landing-system : lando
2020-02-13 21:20:34 +00:00
Brindusan Cristian e2fb6b8344 Backed out changeset 7fefed11f117 (bug 1611326) for build bustages at update-1.xpi.stub. CLOSED TREE 2020-02-13 23:33:34 +02:00
Ricky Stewart 728d4108db Bug 1613263 - Use io.open() rather than open() in mozbuild/preprocessor.py r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D61647

--HG--
extra : moz-landing-system : lando
2020-02-13 17:27:53 +00:00
Mike Shal e6464dd404 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

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

--HG--
extra : moz-landing-system : lando
2020-02-13 20:31:50 +00:00
shindli b1e3726298 Backed out changeset 54f82c735487 (bug 1613263) for causing diff artifact bustages in generated-files.diff.txt CLOSED TREE 2020-02-13 03:51:15 +02:00
Ricky Stewart 3314dda593 Bug 1613263 - Use io.open() rather than open() in mozbuild/preprocessor.py r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D61647

--HG--
extra : moz-landing-system : lando
2020-02-12 23:19:37 +00:00
shravanrn@gmail.com 4fbd7a0f7c Bug 1610991 - Update rlbox_lucet lib to Mac compatible version r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D61077

--HG--
extra : moz-landing-system : lando
2020-02-12 04:11:49 +00:00
ffxbld 0d739c0fa1 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-02-10 10:58:31 +00:00
Michael Woerister 785600d4d3 Bug 1613649 - Explicitly opt-out of Rust's local ThinLTO for DEVELOPER_OPTIONS builds. r=firefox-build-system-reviewers,chmanchester
By default the Rust compiler will perform a limited kind of ThinLTO on each
crate. For local builds this additional optimization is not worth the
increase in compile time.

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

--HG--
extra : moz-landing-system : lando
2020-02-07 08:55:04 +00:00
Mike Hommey b62c405df2 Bug 1613799 - Stop supporting manifests in the objdir. r=froydnj
Baby steps. Working towards not using $(MT), let's unsupport what we
currently don't rely on (and in case someone would try to rely on it,
throw an error).

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

--HG--
extra : moz-landing-system : lando
2020-02-07 01:06:07 +00:00
Marco Castelluccio 459b81c52f Bug 1509665 - Only pass the base compiler flags for all coverage builds. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D61504

--HG--
extra : moz-landing-system : lando
2020-02-03 20:43:07 +00:00
Dzmitry Malyshau a98a848163 Bug 1611296 - Replace spirv_cross by a wrapper crate with a different name r=jrmuizel
This works around a check in rustc that skips object files that start with the rust crate name when linking with LTO.
See upstream https://github.com/rust-lang/rust/issues/66285#issuecomment-578163265
Also, re-enables LTO for macOS fuzzy builds, since it was disabled previously in bug 1595805 as a workaround.

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

--HG--
rename : third_party/rust/spirv_cross/.cargo-checksum.json => third_party/rust/spirv-cross-internal/.cargo-checksum.json
rename : third_party/rust/spirv_cross/Cargo.toml => third_party/rust/spirv-cross-internal/Cargo.toml
rename : third_party/rust/spirv_cross/build.rs => third_party/rust/spirv-cross-internal/build.rs
rename : third_party/rust/spirv_cross/src/bindings_native.rs => third_party/rust/spirv-cross-internal/src/bindings_native.rs
rename : third_party/rust/spirv_cross/src/bindings_wasm.rs => third_party/rust/spirv-cross-internal/src/bindings_wasm.rs
rename : third_party/rust/spirv_cross/src/bindings_wasm_functions.rs => third_party/rust/spirv-cross-internal/src/bindings_wasm_functions.rs
rename : third_party/rust/spirv_cross/src/compiler.rs => third_party/rust/spirv-cross-internal/src/compiler.rs
rename : third_party/rust/spirv_cross/src/emscripten.rs => third_party/rust/spirv-cross-internal/src/emscripten.rs
rename : third_party/rust/spirv_cross/src/glsl.rs => third_party/rust/spirv-cross-internal/src/glsl.rs
rename : third_party/rust/spirv_cross/src/hlsl.rs => third_party/rust/spirv-cross-internal/src/hlsl.rs
rename : third_party/rust/spirv_cross/src/lib.rs => third_party/rust/spirv-cross-internal/src/lib.rs
rename : third_party/rust/spirv_cross/src/msl.rs => third_party/rust/spirv-cross-internal/src/msl.rs
rename : third_party/rust/spirv_cross/src/ptr_util.rs => third_party/rust/spirv-cross-internal/src/ptr_util.rs
rename : third_party/rust/spirv_cross/src/spirv.rs => third_party/rust/spirv-cross-internal/src/spirv.rs
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/.clang-format => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/.clang-format
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/.gitignore => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/.gitignore
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/CMakeLists.txt => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/CMakeLists.txt
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/GLSL.std.450.h => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/GLSL.std.450.h
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/LICENSE => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/LICENSE
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/Makefile => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/Makefile
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/cmake/gitversion.in.h => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/cmake/gitversion.in.h
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/format_all.sh => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/format_all.sh
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/gn/BUILD.gn => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/gn/BUILD.gn
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/include/spirv_cross/barrier.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/include/spirv_cross/barrier.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/include/spirv_cross/external_interface.h => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/include/spirv_cross/external_interface.h
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/include/spirv_cross/image.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/include/spirv_cross/image.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/include/spirv_cross/internal_interface.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/include/spirv_cross/internal_interface.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/include/spirv_cross/sampler.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/include/spirv_cross/sampler.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/include/spirv_cross/thread_group.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/include/spirv_cross/thread_group.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/main.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/main.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/pkg-config/spirv-cross-c-shared.pc.in => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/pkg-config/spirv-cross-c-shared.pc.in
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv.h => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv.h
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cfg.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cfg.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cfg.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cfg.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_common.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_common.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cpp.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cpp.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cpp.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cpp.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross_c.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross_c.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross_c.h => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross_c.h
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross_containers.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross_containers.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross_error_handling.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross_error_handling.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross_parsed_ir.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross_parsed_ir.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross_parsed_ir.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross_parsed_ir.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross_util.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross_util.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_cross_util.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_cross_util.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_glsl.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_glsl.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_glsl.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_glsl.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_hlsl.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_hlsl.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_hlsl.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_hlsl.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_msl.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_msl.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_msl.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_msl.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_parser.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_parser.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_parser.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_parser.hpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_reflect.cpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_reflect.cpp
rename : third_party/rust/spirv_cross/src/vendor/SPIRV-Cross/spirv_reflect.hpp => third_party/rust/spirv-cross-internal/src/vendor/SPIRV-Cross/spirv_reflect.hpp
rename : third_party/rust/spirv_cross/src/wrapper.cpp => third_party/rust/spirv-cross-internal/src/wrapper.cpp
rename : third_party/rust/spirv_cross/src/wrapper.hpp => third_party/rust/spirv-cross-internal/src/wrapper.hpp
rename : third_party/rust/spirv_cross/tests/common/mod.rs => third_party/rust/spirv-cross-internal/tests/common/mod.rs
rename : third_party/rust/spirv_cross/tests/glsl_tests.rs => third_party/rust/spirv-cross-internal/tests/glsl_tests.rs
rename : third_party/rust/spirv_cross/tests/hlsl_tests.rs => third_party/rust/spirv-cross-internal/tests/hlsl_tests.rs
rename : third_party/rust/spirv_cross/tests/msl_tests.rs => third_party/rust/spirv-cross-internal/tests/msl_tests.rs
rename : third_party/rust/spirv_cross/tests/shaders/array.vert => third_party/rust/spirv-cross-internal/tests/shaders/array.vert
rename : third_party/rust/spirv_cross/tests/shaders/array.vert.spv => third_party/rust/spirv-cross-internal/tests/shaders/array.vert.spv
rename : third_party/rust/spirv_cross/tests/shaders/rasterize_disabled.vert => third_party/rust/spirv-cross-internal/tests/shaders/rasterize_disabled.vert
rename : third_party/rust/spirv_cross/tests/shaders/rasterize_disabled.vert.spv => third_party/rust/spirv-cross-internal/tests/shaders/rasterize_disabled.vert.spv
rename : third_party/rust/spirv_cross/tests/shaders/sampler.frag => third_party/rust/spirv-cross-internal/tests/shaders/sampler.frag
rename : third_party/rust/spirv_cross/tests/shaders/sampler.frag.spv => third_party/rust/spirv-cross-internal/tests/shaders/sampler.frag.spv
rename : third_party/rust/spirv_cross/tests/shaders/simple.vert => third_party/rust/spirv-cross-internal/tests/shaders/simple.vert
rename : third_party/rust/spirv_cross/tests/shaders/simple.vert.spv => third_party/rust/spirv-cross-internal/tests/shaders/simple.vert.spv
rename : third_party/rust/spirv_cross/tests/shaders/specialization.comp => third_party/rust/spirv-cross-internal/tests/shaders/specialization.comp
rename : third_party/rust/spirv_cross/tests/shaders/specialization.comp.spv => third_party/rust/spirv-cross-internal/tests/shaders/specialization.comp.spv
rename : third_party/rust/spirv_cross/tests/shaders/struct.frag => third_party/rust/spirv-cross-internal/tests/shaders/struct.frag
rename : third_party/rust/spirv_cross/tests/shaders/struct.frag.spv => third_party/rust/spirv-cross-internal/tests/shaders/struct.frag.spv
rename : third_party/rust/spirv_cross/tests/shaders/struct.vert => third_party/rust/spirv-cross-internal/tests/shaders/struct.vert
rename : third_party/rust/spirv_cross/tests/shaders/struct.vert.spv => third_party/rust/spirv-cross-internal/tests/shaders/struct.vert.spv
rename : third_party/rust/spirv_cross/tests/shaders/workgroup.comp => third_party/rust/spirv-cross-internal/tests/shaders/workgroup.comp
rename : third_party/rust/spirv_cross/tests/shaders/workgroup.comp.spv => third_party/rust/spirv-cross-internal/tests/shaders/workgroup.comp.spv
rename : third_party/rust/spirv_cross/tests/spirv_tests.rs => third_party/rust/spirv-cross-internal/tests/spirv_tests.rs
extra : moz-landing-system : lando
2020-01-24 14:55:41 +00:00
Ricky Stewart e8aaf28d20 Bug 1607503 - mozbuild/test/configure/test_configure.py supports Python 3 r=ahal,mars
Differential Revision: https://phabricator.services.mozilla.com/D58969

--HG--
extra : moz-landing-system : lando
2020-01-10 21:04:14 +00:00
Coroiu Cristina c9e1368a0f Backed out 5 changesets (bug 1607345, bug 1607284, bug 1607512, bug 1563797, bug 1607503) for flake8 failure at python/mozbuild/mozbuild/configure/__init__.py on a CLOSED TREE
Backed out changeset 8dab339bab78 (bug 1607512)
Backed out changeset 1c5880c1c459 (bug 1607503)
Backed out changeset 42a69c5056b0 (bug 1607345)
Backed out changeset 431cb34ec6b0 (bug 1607284)
Backed out changeset 9837631a9c71 (bug 1563797)
2020-01-10 22:59:13 +02:00
Ricky Stewart 658b39b268 Bug 1607503 - mozbuild/test/configure/test_configure.py supports Python 3 r=ahal,mars
Differential Revision: https://phabricator.services.mozilla.com/D58969

--HG--
extra : moz-landing-system : lando
2020-01-08 15:51:18 +00:00
Sylvestre Ledru 7ce533a642 Bug 1607592 - Disable some unused NSPR files in the Firefox build r=kaie
Differential Revision: https://phabricator.services.mozilla.com/D59012

--HG--
extra : moz-landing-system : lando
2020-01-08 11:47:30 +00:00
Nathan Froyd b0977482bc Bug 1607278 - specify memory and guard page sizes for lucetc; r=firefox-build-system-reviewers,chmanchester
...and pull lucetc options out into a separate variable for readability.

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

--HG--
extra : moz-landing-system : lando
2020-01-07 19:29:24 +00:00
Noemi Erli 79c4589718 Merge autoland to mozilla-central. a=merge 2020-01-06 23:53:16 +02:00
ffxbld 96ff1ca153 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-01-06 15:53:38 +00:00
Ricky Stewart 3527413fa7 Bug 1606462 - mozbuild/jar.py supports Python 3 r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D58446

--HG--
extra : moz-landing-system : lando
2020-01-01 00:16:01 +00:00
Nathan Froyd d98002172b Bug 1606625 - don't add PGO flags for wasm compilation; r=rstewart
At the moment, everything we're putting in a wasm sandbox is not
performance-critical, so we don't need PGO.  It's also not clear that
PGO would actually work properly with code that's been run through
wasm.  Let's leave figuring that out until, at the very least, the wasm
toolchain is a little more mature.

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

--HG--
extra : moz-landing-system : lando
2020-01-02 15:38:20 +00:00