Commit Graph

5573 Commits

Author SHA1 Message Date
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