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

255 Коммитов

Автор SHA1 Сообщение Дата
Mark Banner 5552888a2f Bug 1825793 - Re-layout and improve the Editor integration documentation, and link to it from the quick start guide. r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D174320
2023-04-04 16:00:06 +00:00
serge-sans-paille d99a9ba23b Bug 1805664 - Setup python toolchain tasks and add them to the build system r=glandium
This patch introduces:

1. fetch jobs to fetch python source / installer
2. a) build jobs to build python from source on Linux and OSX
   b) build job to manually extract python tree from Windows installer

Some details, per category:

(1) fetches Python 3.8.10 (source) and 3.8.10 (installer).

(2.a) the builds generate optimized version of Python (LTO + PGO)

(2.a) the builds are patched to honor MOZPYTHONHOME instead of
      PYTHONHOME. This is used to make OSX builds relocatable, and not
      needed on Windows.

(2) zstandard and psutil are added to the default build

Differential Revision: https://phabricator.services.mozilla.com/D164663
2023-02-22 06:24:51 +00:00
Cosmin Sabou df1206468f Backed out changeset 5c47ae2de529 (bug 1805664) for causing bug 1817894 and breaking clang 15. CLOSED TREE 2023-02-21 03:21:39 +02:00
serge-sans-paille dd99819744 Bug 1805664 - Setup python toolchain tasks and add them to the build system r=glandium CLOSED TREE
This patch introduces:

1. fetch jobs to fetch python source / installer
2. a) build jobs to build python from source on Linux and OSX
   b) build job to manually extract python tree from Windows installer

Some details, per category:

(1) fetches Python 3.8.10 (source) and 3.8.10 (installer).

(2.a) the builds generate optimized version of Python (LTO + PGO)

(2.a) the builds are patched to honor MOZPYTHONHOME instead of
      PYTHONHOME. This is used to make OSX builds relocatable, and not
      needed on Windows.

(2) zstandard and psutil are added to the default build

Differential Revision: https://phabricator.services.mozilla.com/D164663
2023-02-20 16:07:55 +00:00
Iulian Moraru 9bb81cbca0 Backed out changeset cae102c770b7 (bug 1805664) for causing toolchain clang failures. CLOSED TREE 2023-02-20 19:35:34 +02:00
serge-sans-paille c6cf60f3dd Bug 1805664 - Setup python toolchain tasks and add them to the build system r=glandium
This patch introduces:

1. fetch jobs to fetch python source / installer
2. a) build jobs to build python from source on Linux and OSX
   b) build job to manually extract python tree from Windows installer

Some details, per category:

(1) fetches Python 3.8.10 (source) and 3.8.10 (installer).

(2.a) the builds generate optimized version of Python (LTO + PGO)

(2.a) the builds are patched to honor MOZPYTHONHOME instead of
      PYTHONHOME. This is used to make OSX builds relocatable, and not
      needed on Windows.

(2) zstandard and psutil are added to the default build

Differential Revision: https://phabricator.services.mozilla.com/D164663
2023-02-20 16:07:55 +00:00
Julien Cristau 194799e013 No bug - docs: update link to pycert/pykey. r=aryx DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D168938
2023-02-06 10:51:19 +00:00
Mike Hommey 11cf68787b Bug 1699228 - Update contribution quickref to point to the list of supported windows versions. r=firefox-build-system-reviewers,sylvestre,andi
Differential Revision: https://phabricator.services.mozilla.com/D168554
2023-02-01 16:38:27 +00:00
Chris Martin 5e33cb17af Bug 1799470 - Refactor app starter r=nika
Differential Revision: https://phabricator.services.mozilla.com/D165414
2023-01-18 15:46:09 +00:00
Sylvestre Ledru 974efb2f25 Bug 1805563 - doc: update of the maintainer of Firefox for FreeBSD DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D165547
2022-12-27 15:46:24 +00:00
Eemeli Aro f08c01b802 Bug 1804404 - Update l10n documentation due to DTD & .inc removal. r=flod
Differential Revision: https://phabricator.services.mozilla.com/D164047
2022-12-07 11:50:39 +00:00
Sylvestre Ledru 240a21a7b6 Bug 1801267 - sccache doc: Remove the reference to office sccache r=gerard-majax DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D162370
2022-11-18 09:37:13 +00:00
Nick Alexander e5289052b2 Bug 1792258 - Post: Make it easier to test (Android) multi-locale packages. r=geckoview-reviewers,m_kato
This commit updates the outdated documentation for producing multi-locale
packages, and also arranges for Android multi-locale packages to produce a
GeckoViewExample binary that has `libs` and `assets/omni.ja`.  Together, these
greatly ease multi-locale testing.

Differential Revision: https://phabricator.services.mozilla.com/D160705
2022-11-03 21:36:26 +00:00
ahochheiden fc391c3273 Bug 1766497 - Doc updates regarding `venv` r=firefox-build-system-reviewers,nalexander
- Removed references to Python 2
- Replaced references to `virtualenv` with `venv`

Depends on D145787

Differential Revision: https://phabricator.services.mozilla.com/D158922
2022-11-01 07:48:06 +00:00
Cristian Tuns c8b4aaeb2d Backed out 5 changesets (bug 1766497) for causing build bustages with "No module named 'encodings'" CLOSED TREE
Backed out changeset 09f7f3d1c6dd (bug 1766497)
Backed out changeset 6bb5f754957a (bug 1766497)
Backed out changeset aedf2d7af408 (bug 1766497)
Backed out changeset 394555265c86 (bug 1766497)
Backed out changeset 41be40696e00 (bug 1766497)
2022-10-12 22:51:51 -04:00
ahochheiden 0a3b052351 Bug 1766497 - Doc updates regarding `venv` r=firefox-build-system-reviewers,nalexander
- Removed references to Python 2
- Replaced references to `virtualenv` with `venv`

Differential Revision: https://phabricator.services.mozilla.com/D158922
2022-10-13 00:40:12 +00:00
Eemeli Aro 45a8fe66c1 Bug 1734217 - Merge all about:neterror front-end handling under toolkit. r=mkmelin,smaug,nalexander,flod,Gijs
Following a suggestion from :mkmelin, this seems like an optimal solution: the overriding/duplication in m-c is removed, and all users get a more powerful default choice that they're still able to override with their own, should they so wish.

For clarity and to match other `about:` pages, the shared code is placed under `toolkit/content/`, and all content under `docshell/resources/` is removed.

Differential Revision: https://phabricator.services.mozilla.com/D156478
2022-10-07 18:40:27 +00:00
Katherine Patenio 2151b62487 Bug 1762970 - update Jar Manifests documentation on Firefox Source Docs r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D150475
2022-09-23 17:12:59 +00:00
byron jones 004695a65d no bug: doc: clarify supported macOS versions DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D150530
2022-06-30 07:20:58 +00:00
Sylvestre Ledru 9d7fa70705 no bug - Refresh the 'build is slow' page r=firefox-build-system-reviewers,ahochheiden DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D150454
2022-06-29 12:07:35 +00:00
Mike Hommey 217bd35159 Bug 1773223 - Make the GN processor an independent script. r=firefox-build-system-reviewers,mjf,ahochheiden
The way the processor works currently is that it relies on two different
build backends, one of which produces json files for specific
configurations, and the other which produces moz.build files from the
aggregate of all those configs.

Each of these json files is huge, and we actually don't have enough to
support all the platforms we're supposed to be supporting. Adding more
files is not enticing.

Now that we've made the first step described above work in a single pass
on a single machine (as opposed to multiple passes on multiple machines
previously), we can actually merge both steps and avoid producing the
intermediate json files altogether. This will allow to add more
configurations without having to worry about the weight of those files.

And because this all doesn't need to depend on having the first step
hooked up in the build system, we make the whole an independent script
rather than a build backend.

Differential Revision: https://phabricator.services.mozilla.com/D149210
2022-06-21 02:30:37 +00:00
smolnar feea9954b2 Backed out 6 changesets (bug 1738845, bug 1773223, bug 1760484) for causing multiple failures CLOSED TREE
Backed out changeset e759ac4fb646 (bug 1773223)
Backed out changeset 20c541be9a37 (bug 1760484)
Backed out changeset 653d2024a187 (bug 1738845)
Backed out changeset fd9540114bfd (bug 1773223)
Backed out changeset f24f3dfa49aa (bug 1773223)
Backed out changeset 11f3375a4a70 (bug 1773223)
2022-06-21 03:00:53 +03:00
Mike Hommey 9b835365cc Bug 1773223 - Make the GN processor an independent script. r=firefox-build-system-reviewers,mjf,ahochheiden
The way the processor works currently is that it relies on two different
build backends, one of which produces json files for specific
configurations, and the other which produces moz.build files from the
aggregate of all those configs.

Each of these json files is huge, and we actually don't have enough to
support all the platforms we're supposed to be supporting. Adding more
files is not enticing.

Now that we've made the first step described above work in a single pass
on a single machine (as opposed to multiple passes on multiple machines
previously), we can actually merge both steps and avoid producing the
intermediate json files altogether. This will allow to add more
configurations without having to worry about the weight of those files.

And because this all doesn't need to depend on having the first step
hooked up in the build system, we make the whole an independent script
rather than a build backend.

Differential Revision: https://phabricator.services.mozilla.com/D149210
2022-06-20 22:04:12 +00:00
Cosmin Sabou 18f908cae1 Backed out 11 changesets (bug 1738845, bug 1760484, bug 1773223) for causing build bustages and python failures. CLOSED TREE
Backed out changeset 2faea2e0af45 (bug 1773223)
Backed out changeset 85f0cccbd2a8 (bug 1760484)
Backed out changeset 67ee3490fe22 (bug 1738845)
Backed out changeset 2d0053357489 (bug 1773223)
Backed out changeset 7eccf21b04f2 (bug 1773223)
Backed out changeset 5e1c0d1d4018 (bug 1773223)
Backed out changeset c73d516d7d7f (bug 1773223)
Backed out changeset 05e201f82758 (bug 1773223)
Backed out changeset fe0095ad6576 (bug 1773223)
Backed out changeset 264adb57bb3c (bug 1773223)
Backed out changeset f349d4ad0088 (bug 1773223)
2022-06-21 00:22:01 +03:00
Mike Hommey cc1144c5b9 Bug 1773223 - Make the GN processor an independent script. r=firefox-build-system-reviewers,mjf,ahochheiden
The way the processor works currently is that it relies on two different
build backends, one of which produces json files for specific
configurations, and the other which produces moz.build files from the
aggregate of all those configs.

Each of these json files is huge, and we actually don't have enough to
support all the platforms we're supposed to be supporting. Adding more
files is not enticing.

Now that we've made the first step described above work in a single pass
on a single machine (as opposed to multiple passes on multiple machines
previously), we can actually merge both steps and avoid producing the
intermediate json files altogether. This will allow to add more
configurations without having to worry about the weight of those files.

And because this all doesn't need to depend on having the first step
hooked up in the build system, we make the whole an independent script
rather than a build backend.

Differential Revision: https://phabricator.services.mozilla.com/D149210
2022-06-20 20:58:30 +00:00
Andrew McCreight fa8bfd1245 Bug 1514936, part 2 - Drop the outer arguments from static components. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D146457
2022-05-17 20:24:19 +00:00
Greg Tatum 9884018277 Bug 1758012 - Add a tutorial for writing an XPCOM Interface; r=xpcom-reviewers,kmag
I wrote this tutorial while documenting my process of adding a
component. I attempted to figure out the process rather than just cargo
culting from examples. The idea is that you can follow along with this
to get a new component going, and then reference the more detailed
documentation for implementation details.

Differential Revision: https://phabricator.services.mozilla.com/D140262
2022-04-29 18:26:54 +00:00
Mike Hommey 5ed622ab77 Bug 1289641 - Setup a taskcluster task to build the vs2017 toolchain. r=firefox-build-system-reviewers,mhentges
Its layout differs from the one in the tooltool archive for forward
compatibility with the upcoming (clang 15) -winsysroot flag.

There is probably more filtering we can do to somehow match what
windows_toolchain.py used to do, but we'll keep that for later.

Differential Revision: https://phabricator.services.mozilla.com/D143126
2022-04-12 22:52:53 +00:00
Butkovits Atila 59ebe1ff72 Backed out 7 changesets (bug 1289641) for causing Python failures. CLOSED TREE
Backed out changeset 0c1cedebf915 (bug 1289641)
Backed out changeset 575732020bd2 (bug 1289641)
Backed out changeset 55b68a71e03a (bug 1289641)
Backed out changeset 0b16a05aa405 (bug 1289641)
Backed out changeset acbff13b91b3 (bug 1289641)
Backed out changeset 2645367da7cb (bug 1289641)
Backed out changeset 8b22a8ec44fe (bug 1289641)
2022-04-12 22:23:27 +03:00
Mike Hommey d1119528d0 Bug 1289641 - Setup a taskcluster task to build the vs2017 toolchain. r=firefox-build-system-reviewers,mhentges
Its layout differs from the one in the tooltool archive for forward
compatibility with the upcoming (clang 15) -winsysroot flag.

There is probably more filtering we can do to somehow match what
windows_toolchain.py used to do, but we'll keep that for later.

Differential Revision: https://phabricator.services.mozilla.com/D143126
2022-04-11 23:00:09 +00:00
mvollmer 96c7648608 Bug 1755305 - Fix invalid mach command for Visual Studio clean target r=mhentges DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D139595
2022-03-03 14:17:59 +00:00
Sylvestre Ledru caaedeee98 Bug 1753413 - fx doc: Remove whitespaces, trailing lines & windows CR r=andi,perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D137741
2022-02-03 18:34:58 +00:00
Mitchell Hentges 725792bd05 Bug 1730712: Update "Moz site" terminology r=ahal
The existing terminology had two issues:
* `VirtualenvManager` wasn't always associated with an on-disk
  `virtualenv`: for example, when running in automation, Mach
  "activates" a `VirtualenvManager`, updating its import scope,
  but without ever creating an on-disk `virtualenv`.
* An upcoming patch splits the `VirtualenvManager` class, pulling
  "on-disk virtualenv-handling functions" from the project-wide
  interface for managing Python's import scope.

After some good discussion with Ahal, I think we've struck
the terminology that handles this distinction well: we'll call
the "import scope"-handling part the "site", and we'll continue
to call on-disk virtualenvs (and their representative classes)
as, well, virtualenvs.

Differential Revision: https://phabricator.services.mozilla.com/D130391
2021-11-17 20:54:23 +00:00
Sylvestre Ledru 1df999712f Bug 1714788 - doc: do not provide the language if the code isn't valid r=firefox-source-docs-reviewers,championshuttler DONTBUILD
Otherwise, the warning is displayed:
```
WARNING: Could not lex literal_block as "json". Highlighting skipped.
```

Depends on D131092

Differential Revision: https://phabricator.services.mozilla.com/D131093
2021-11-16 07:59:48 +00:00
Mitchell Hentges 537d201bcc Bug 1732948: Assert that the Mach venv isn't out-of-date during init r=ahal
As we leverage the Mach environment more, it becomes increasingly
important that it isn't out-of-date on developer machines.

Add an `up_to_date()` check during Mach initialization.
To minimize the cost to startup, I'm skipping the "pip list" check.

This change required moving `virtualenv` from `mozbuild` to `mach` to
make it available during the early stage of Mach init.

Differential Revision: https://phabricator.services.mozilla.com/D127144
2021-11-01 21:34:02 +00:00
Alex Hochheiden a457813d8b Bug 1736704 - Added Windows 11 as a Supported Build Host under Tier-1 Hosts and Toolchains. r=gcp,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D128949
2021-10-27 14:44:08 +00:00
Gijs Kruitbosch 40e335f7a4 Bug 1725732 - bring MSVS project generation documentation in line with 2021 realities, r=mhentges
Differential Revision: https://phabricator.services.mozilla.com/D122655
2021-10-20 15:53:40 +00:00
criss 16f898657c Backed out changeset 894fc83e19a0 (bug 1717051) for causing busting macth commands. a=backout 2021-09-30 10:36:36 +03:00
Mitchell Hentges ab439e4045 Bug 1717051: Always populate Mach pths r=firefox-build-system-reviewers,glandium
The previous behaviour was to:
* Never add a `pthfile` to the Mach virtualenv, and
* Always add Mach's paths to the `sys.path` when Mach initializes

However, this meant that `pip` would needlessly install packages
that already exist in the vendored environment.

Tweak `pth` behaviour so that `pip` behaves more efficiently.

Differential Revision: https://phabricator.services.mozilla.com/D120402
2021-09-29 15:09:36 +00:00
Mitchell Hentges f5b0cb5bc1 Bug 1717051: Rename "mach_bootstrap.py" to "mach_initialize.py" r=firefox-build-system-reviewers,glandium
We've overloaded "bootstrap" to mean three different things:
* The "standalone bootstrap script": `python/mozboot/bin/bootstrap.py`.
  This is to freshly clone a new repo, then run `./mach bootstrap`.
* `./mach bootstrap`: Install necessary dependencies and set up the
  system for development.
* "Mach bootstrap": do the in-process initialization work Mach needs
  before it can run commands.

By using the term "initialize" instead, perhaps we can remove
ambiguity when discussing Mach.

I'm not attached to the name (or this change at all), but I'm interested
in reviewer thoughts :)

Differential Revision: https://phabricator.services.mozilla.com/D120410
2021-09-03 20:46:22 +00:00
Mike Hommey 278fa528e2 Bug 1727687 - Upgrade windows builds to MSVC 15.9.6. r=firefox-build-system-reviewers,agashlin,jgilbert,mhentges
There are two big parts in the MSVC toolchain we use:
- the Windows 10 SDK
- Visual C++

For the former, both the 15.8.4 and 15.9.6 toolchains are using the same
version of the Win10 SDK.
For the latter, we're not using the compiler itself anymore, so the only
substantial difference is in the headers and libraries included with
Visual C++, as well as the redist libraries for the CRT. Both versions
are supposed to be compatible to the same set of OS versions, fitting
our system requirements.

This makes us use the same version of MSVC on all our Windows builds
(arm64 builds were already on 15.9.6).

Differential Revision: https://phabricator.services.mozilla.com/D123720
2021-08-30 21:29:35 +00:00
championshuttler cb9bc5986b Bug 1722650 - Import Chrome Registration docs from mdn.r=mossop DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D123106
2021-08-26 15:21:32 +00:00
Andi-Bogdan Postelnicu 0ac52aa9d7 Bug 1725125 - Make a hybrid build system combining non-unified with unified. CLOSED TREE
By hybrid unified system we understand a system that encapsulates modules that are built in the unified mode
but also other modules, like `dom/Animation`, as an example, in the non unified environment.

This approach is desirable since we already have most of the modules transitioned to the non unified system but there are
still some that are not yet compatible, but in the long term this will be done by each module owner and can be also tested
locally using the build system.

If a module can't be built outside the unified method it's `moz.build` config file needs to have `REQUIRES_UNIFIED_BUILD = False`

To also enable this we need to have a flag from `mozconfig`, like:

```
ac_add_options --disable-unified-build
```

Differential Revision: https://phabricator.services.mozilla.com/D122328
2021-08-25 11:21:42 +00:00
Narcis Beleuzu 50dd0540cd Backed out changeset 29d7e91fe721 (bug 1725125) for plain Bp-hybrid bustages 2021-08-25 14:42:09 +03:00
Andi-Bogdan Postelnicu 4b8a4fc95a Bug 1725125 - Make a hybrid build system combining non-unified with unified r=firefox-build-system-reviewers,mhentges,glandium
By hybrid unified system we understand a system that encapsulates modules that are built in the unified mode
but also other modules, like `dom/Animation`, as an example, in the non unified environment.

This approach is desirable since we already have most of the modules transitioned to the non unified system but there are
still some that are not yet compatible, but in the long term this will be done by each module owner and can be also tested
locally using the build system.

If a module can't be built outside the unified method it's `moz.build` config file needs to have `REQUIRES_UNIFIED_BUILD = False`

To also enable this we need to have a flag from `mozconfig`, like:

```
ac_add_options --disable-unified-build
```

Differential Revision: https://phabricator.services.mozilla.com/D122328
2021-08-25 10:46:18 +00:00
surajeet310 6ea83c8ef9 Bug 1714788 - Fixed more Sphinx warnings in 'mach doc' r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D117419
2021-06-10 19:33:53 +00:00
Alexandre Lissy 30ae660e03 Bug 1714547 - Add cross-compile to linux build doc r=sylvestre,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D116829
2021-06-04 21:35:25 +00:00
byron jones 1a494b6f2b Bug 1704426 - Document supported build hosts. r=glob
Define "build host" support tiers, and their relationship
to existing "target" tiers.

Differential Revision: https://phabricator.services.mozilla.com/D111578
2021-05-18 14:57:50 +00:00
Mitchell Hentges cb92d64d4d Bug 1507272: Enable build telemetry for Mozilla devs by default r=firefox-build-system-reviewers,glandium
Check if a user is a Mozilla employee by checking their
Bugzilla groups, or checking if their VCS email ends
with "@mozilla.com".

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

Differential Revision: https://phabricator.services.mozilla.com/D106315
2021-04-20 13:58:51 +00:00
Alex Lopez 201a891006 Bug 1694646 - Remove old build telemetry. r=mhentges
Now that telemetry is gathered with glean, we can remove the old telemetry.

Differential Revision: https://phabricator.services.mozilla.com/D106735
2021-03-02 15:04:27 +00:00