Commit Graph
6081 Commits
Author SHA1 Message Date
Iulian Moraru fb07f0e56d Backed out changeset 78c755371e44 (bug 1776255) for causing artifact build bustages related to Necko WiFi scanning. CLOSED TREE 2024-05-23 04:50:13 +03:00
Mike Hommey fdb1e5adae Bug 1870059 - Add a moz.build hook. r=firefox-build-system-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D211105
2024-05-23 01:13:55 +00:00
ahochheiden bccf57209c Bug 1776255 - Add the appropriate 'when' to all 'option' that end up calling 'pkg_check_modules' later r=firefox-build-system-reviewers,glandium
We don't check for pkg-config on some platforms (Windows, OSX, Android).
On those platforms, calling 'pkg_check_modules' will not work. Adding
the same 'when' used for the 'pkg_config' check to all the options that
end up calling 'pkg_check_modules' effectively disables them, and prevents
'pkg_check_modules' from being called.

Differential Revision: https://phabricator.services.mozilla.com/D150649
2024-05-22 23:38:25 +00:00
serge-sans-paille 30a9edae24 Bug 1895511 - Move MOZ_DEBUGGING_OPTS to moz.configure r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D209734
2024-05-22 06:01:37 +00:00
Kershaw Chang 8acece1218 Bug 1895319 - refactor http3server to use neqo-bin for I/O, timers, event-loop etc. r=necko-reviewers,valentin,glandium,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D209574
2024-05-21 09:34:48 +00:00
ahochheiden b7b96708f7 Bug 1896688 - Prevent unnecessary os.stat call in jar.py r=sergesanspaille
If the destination file doesn't exist, we don't need to check the
current file's time, and we can just write or symlink regardless.

Differential Revision: https://phabricator.services.mozilla.com/D210330
2024-05-17 21:35:05 +00:00
Rob Lemley ad7226ce1c Bug 1888243 - Allow mach cargo vet to work with Thunderbird's cargo config. r=firefox-build-system-reviewers,glandium
Thunderbird has a separate config.toml.in file at comm/rust/.cargo/config.in that
cargo vet needs to use. It's set in the config variable MOZ_OVERRIDE_CARGO_CONFIG.
Before running cargo vet for Thunderbird, mach configure must run first.

Additionally, cargo vet's working directory needs to be `comm/rust`.
This change has no effect on how `mach cargo vet` works for Firefox.
To verify, `mach cargo vet suggest --verbose debug` shows the supply-chain path
in use.

Differential Revision: https://phabricator.services.mozilla.com/D205896
2024-05-14 14:21:39 +00:00
Mike Hommey 1b741e06d9 Bug 1894645 - Adjust non-default-target case after bug 1459764. r=firefox-build-system-reviewers,nalexander
We changed the SHARED_LIBRARY, so we need to adjust the non-default-target
associated with it.

Differential Revision: https://phabricator.services.mozilla.com/D209226
2024-05-02 19:34:10 +00:00
Pierre-Yves David 35125c1939 Bug 1894160: vendor-python: explicitly add the content of the .egg-info directory; r=ahochheiden
We are about to change the hgignore to remove the lookahead expression. This
means the "*.egg-info/" directories will be ignored everywhere again. To
prevent this causing issue with the vendoring logic, we add a new call to
add-remove explicitly listing file in ".egg-info" directories to override the
ignore pattern.

Once tracked, the ignore pattern will no longer affects these file and all will
be good.

Check the next commit for more information on the motivation.

Differential Revision: https://phabricator.services.mozilla.com/D208968
2024-05-01 14:54:58 +00:00
ahochheiden 36bd40c694 Bug 1894157 - Remove Python2 compatibility code in Mach r=firefox-build-system-reviewers,glandium
Mach can currently only run on Python version 3.8 or higher, so it
doesn't make sense to continue having dead code that provides support
for Python2.

Differential Revision: https://phabricator.services.mozilla.com/D209030
2024-05-01 02:32:23 +00:00
ahochheiden b3cf71f41e Bug 1894155 - Replace [email protected] with [email protected] from notification_emails section of pings.yaml and metrics.yaml r=sylvestre
Mitch has been inactive for ~2 years now. I don't necessarily needs to
add myself in his stead, but I think it makes sense to have me on there
as the current triage owner.

Differential Revision: https://phabricator.services.mozilla.com/D209031
2024-05-01 00:12:25 +00:00
Mike Hommey 10dbba38e7 Bug 1459764 - Build libraries in their FINAL_TARGET location rather than installing them during the build. r=firefox-build-system-reviewers,ahochheiden
Like bug 1255485, but for libraries.

Original patch by Chris Manchester.

Differential Revision: https://phabricator.services.mozilla.com/D63281
2024-04-30 23:29:46 +00:00
serge-sans-paille ec42dc40f9 Bug 1892198 - No longer support linkerscript style for moz_expand_libs r=glandium
@file are supported by gcc since gcc 7 and by clang since clang 3.x,
which removes the need for linker script to list input files.

We cannot directly use @file from the compiler driver (it would expand
to a large number of arguments and hit the linker limit) so pass
-Wl,@FILE instead, which is supported since binutils 2.17.

As a side effect this removes the LTO dependency from the check.

Differential Revision: https://phabricator.services.mozilla.com/D207839
2024-04-30 20:51:32 +00:00
serge-sans-paille 5b629e00a7 Bug 1891787 - Remove usage of six in mozbuild/mozconfig.py r=ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D207607
2024-04-30 13:46:32 +00:00
serge-sans-paille 37ca32c55c Bug 1891786 - Remove usage of six in mozbuild/makeutil.py r=ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D207606
2024-04-30 13:46:30 +00:00
serge-sans-paille a965665aa1 Bug 1891785 - Remove usage of six in mozbuild/jar.py r=ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D207605
2024-04-30 13:46:29 +00:00
Florian Quèze 767edda236 Bug 1892641 - include timestamps in BUILDSTATUS lines from gradle, r=glandium.
Differential Revision: https://phabricator.services.mozilla.com/D208531
2024-04-30 08:17:13 +00:00
serge-sans-paille 43a2edcfb6 Bug 1891665 - Restore generator evaluation in presence of multiple backends r=ahochheiden
Original bug introduced in 1888370.

Differential Revision: https://phabricator.services.mozilla.com/D208888
2024-04-29 19:08:27 +00:00
Nick Alexander 0d533425ee Bug 1893365 - Part 2: Ignore packaged update frameworks. r=bytesized
We don't want the packaged update frameworks, we only want the
localbuild variants fetched from the `update_framework_artifacts`
extra archive.  These don't impact builds, but they clutter the object
directory and are misleading.

Differential Revision: https://phabricator.services.mozilla.com/D208662
2024-04-25 20:31:12 +00:00
Nick Alexander 6a62953c25 Bug 1885985 - Produce and consume macOS frameworks for artifact builds. r=spohl,application-update-reviewers,bytesized,firefox-build-system-reviewers,glandium
This patch:

1. Produces additional frameworks as part of every build.  In compile
   builds, the frameworks are built; in artifact builds, the frameworks
   binaries are taken from fetched artifacts.  It's not easy to compile a
   single framework with the same name twice in the `moz.build` DSL, so
   some file shuffling is done in `Makefile.in` files to arrange the
   correct layout.

2. Packages and uploads a new `update_framework_artifacts` extra
   archive for artifact builds to consume.

3. Consumes the new extra archive in artifact builds.

Produced frameworks live in
`dist/macos_framework_artifacts/xyz.framework/**`.

Consumed frameworks are made availabe to artifact builds in
`dist/macos_framework_artifacts`.

Bug 1885985 - Part 2:

Differential Revision: https://phabricator.services.mozilla.com/D205936
2024-04-24 20:51:25 +00:00
Ryan VanderMeulen 21c58a0027 Bug 1892371 - Update to JDK 17.0.11. r=geckoview-reviewers,amejiamarmol
Differential Revision: https://phabricator.services.mozilla.com/D208279
2024-04-23 21:19:48 +00:00
Cristian Tuns 816095489d Backed out changeset 390c5748d868 (bug 1892198) for causing Bug 1892493. CLOSED TREE 2024-04-19 15:46:42 -04:00
Cristina Horotan 574cce2c9e Backed out changeset a6309c1903e7 (bug 1885985) for busted artifact builds a=backout 2024-04-19 18:21:33 +03:00
serge-sans-paille cb1e1615a1 Bug 1892198 - No longer support linkerscript style for moz_expand_libs r=glandium
@file are supported by gcc since gcc 7 and by clang since clang 3.x,
which removes the need for linker script to list input files.

We cannot directly use @file from the compiler driver (it would expand
to a large number of arguments and hit the linker limit) so pass
-Wl,@FILE instead, which is supported since binutils 2.17.

As a side effect this removes the LTO dependency from the check.

Differential Revision: https://phabricator.services.mozilla.com/D207839
2024-04-19 09:31:13 +00:00
serge-sans-paille e4edb9b9d7 Bug 1891778 - Move mozilla_build_version out of mozbuild/util.py r=ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D207594
2024-04-19 09:08:57 +00:00
serge-sans-paille a3bd10e462 Bug 1891776 - Split mkdir and ensureParentDir from mozbuild/util.py r=perftest-reviewers,afinder
Differential Revision: https://phabricator.services.mozilla.com/D207593
2024-04-19 09:08:56 +00:00
serge-sans-paille 5377b85afd Bug 1891774 - Move lock file utility out of mozbuild/util.py r=ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D207592
2024-04-19 09:08:56 +00:00
serge-sans-paille 9c6237b9cd Bug 1891773 - Remove process_time from mozbuild/util.py r=ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D207591
2024-04-19 09:08:56 +00:00
Nick Alexander 0c1671394b Bug 1885985 - Produce and consume macOS frameworks for artifact builds. r=spohl,application-update-reviewers,bytesized,firefox-build-system-reviewers,glandium
This patch:

1. Produces additional frameworks as part of every build.  In compile
   builds, the frameworks are built; in artifact builds, the frameworks
   binaries are taken from fetched artifacts.  It's not easy to compile a
   single framework with the same name twice in the `moz.build` DSL, so
   some file shuffling is done in `Makefile.in` files to arrange the
   correct layout.

2. Packages and uploads a new `update_framework_artifacts` extra
   archive for artifact builds to consume.

3. Consumes the new extra archive in artifact builds.

Produced frameworks live in
`dist/macos_framework_artifacts/xyz.framework/**`.

Consumed frameworks are made availabe to artifact builds in
`dist/macos_framework_artifacts`.

Bug 1885985 - Part 2:

Differential Revision: https://phabricator.services.mozilla.com/D205936
2024-04-19 04:02:29 +00:00
Andrew Halberstadt a680bcd3e1 Bug 1868440 - [ci] Upgrade taskcluster-taskgraph to v7.4.0, r=perftest-reviewers,geckoview-reviewers,ci-and-tooling,devtools-reviewers,taskgraph-reviewers,releng-reviewers,mach-reviewers,omc-reviewers,jmaher,hneiva,aminomancer,jari,dom-storage-reviewers,afinder,asuth,bhearsum,owlish
Differential Revision: https://phabricator.services.mozilla.com/D206260
2024-04-18 20:39:09 +00:00
Stanca Serban 3dbb534055 Backed out 2 changesets (bug 1868440) for gecko decision task broken. CLOSED TREE
Backed out changeset 4b22948d849a (bug 1868440)
Backed out changeset 837bdcb3694a (bug 1868440)
2024-04-18 21:25:43 +03:00
Andrew Halberstadt ef4f1e168b Bug 1868440 - [ci] Upgrade taskcluster-taskgraph to v7.4.0, r=perftest-reviewers,geckoview-reviewers,ci-and-tooling,devtools-reviewers,taskgraph-reviewers,releng-reviewers,mach-reviewers,omc-reviewers,jmaher,hneiva,aminomancer,jari,dom-storage-reviewers,afinder,asuth,bhearsum,owlish
Differential Revision: https://phabricator.services.mozilla.com/D206260
2024-04-18 17:50:50 +00:00
Kelsey Gilbert 03f56b8130 Bug 1891886 - Check for hasattr("_handler") not "handler" in mozbuild/controller/building.py. r=firefox-build-system-reviewers,glandium
The hasattr(self, "handler") was added in bug 889963, and back then
self.handler *was* set. That changed in bug 883209, which changed the
setting of self.handler to self._handler, but left out the ones from
this code.

Differential Revision: https://phabricator.services.mozilla.com/D207649
2024-04-18 16:41:49 +00:00
serge-sans-paille c55c7eab7e Bug 1891781 - Lazily import FileFinder in mozbuild/jar.py r=ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D207599
2024-04-18 14:35:30 +00:00
Natalia Csoregi cc74b5f984 Backed out changeset 9f185bc37baf (bug 1885985) for causing failures on UpdateSettings. CLOSED TREE 2024-04-17 22:35:59 +03:00
Nick Alexander c9c2b4cf80 Bug 1885985 - Produce and consume macOS frameworks for artifact builds. r=spohl,application-update-reviewers,bytesized,firefox-build-system-reviewers,glandium
This patch:

1. Produces additional frameworks as part of every build.  In compile
builds, the frameworks are built; in artifact builds, the frameworks
binaries are taken from fetched artifacts.  It's not easy to compile
the same framework twice in the `moz.build` DSL, so some file
shuffling is done in `Makefile.in` files to arrange the correct
layout.

2. Packages and uploads a new `macos_framework_artifacts` extra
archive for artifact builds to consume.

3. Consumes the new extra archive in artifact builds.

Produced frameworks live in
`$(topobjdir)/macos_framework_artifacts/xyz.framework/**`.

Consumed frameworks are made availabe to artifact builds in
`$(distdir)/macos_framework_artifacts`.

Bug 1885985 - Part 2:

Differential Revision: https://phabricator.services.mozilla.com/D205936
2024-04-17 18:18:47 +00:00
Tooru Fujisawa fe643ded19 Bug 1854571 - Print package path in mach package. r=firefox-build-system-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D207204
2024-04-15 23:38:29 +00:00
Gabriel Bustamante 5d8f9bc20b Bug 1887210 - Repackage the nightly linux64-aarch64 builds as .deb packages and upload them to the APT repository r=releng-reviewers,taskgraph-reviewers,bhearsum
Depends on D205402

Differential Revision: https://phabricator.services.mozilla.com/D205501
2024-04-15 20:51:00 +00:00
Mike Hommey ccda4e42d7 Bug 1890454 - Add unit tests for imply_option corner cases. r=sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D206973
2024-04-15 20:03:22 +00:00
serge-sans-paille 8d295d984a Bug 1888370 - Run configure backends in parallel r=glandium
Once the configure step is built, each backend processes it independently,
there was a parallelization opportunity here. Most of the gain comes
from clangd backend and RecursiveMake backend being run concurrently.

Only active when multiprocessing's fork starting method is used due to
incompatibility with pickling fo some of our internal structures.

Differential Revision: https://phabricator.services.mozilla.com/D205992
2024-04-15 09:05:08 +00:00
serge-sans-paille d100801224 Bug 1888365 - Obsolete OrderedDefaultDict in favor of defaultdict r=glandium
defaultdict is ordered by default since python 3.7 (as a subclass of
dict)

Differential Revision: https://phabricator.services.mozilla.com/D205989
2024-04-15 09:05:08 +00:00
serge-sans-paille d1c86309e0 Bug 1888163 - Improve quoting in clangd configure backend r=glandium
Some micro-optimization in the mozbuild/shellutil.py quoting function,
and use it at a finer grain to avoid some extra list creation.
This saves time in the configure step.

Differential Revision: https://phabricator.services.mozilla.com/D205861
2024-04-11 06:59:09 +00:00
Mike Hommey 7b4b4cbfd6 Bug 1888321 - Followup: properly refresh .cargo/config.toml.in when vendoring. r=firefox-build-system-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D206568
2024-04-04 01:00:32 +00:00
Natalia Csoregi 5b524d1f45 Backed out changeset 2075af244745 (bug 1888243) for causing vendor failures. CLOSED TREE 2024-04-03 00:26:47 +03:00
Rob Lemley b5aafa4cd9 Bug 1888243 - Allow mach cargo vet to work with Thunderbird's cargo config. r=firefox-build-system-reviewers,glandium
Thunderbird has a separate .cargo/config.in file at comm/rust/.cargo/config.in that
cargo vet needs to use. It's set in the config variable MOZ_OVERRIDE_CARGO_CONFIG.
Additionally, cargo vet's working directory needs to be `comm/rust`.
This change has no effect on how `mach cargo vet` works for Firefox.
To verify, `mach cargo vet suggest --verbose debug` shows the supply-chain path
in use.

Differential Revision: https://phabricator.services.mozilla.com/D205896
2024-04-02 13:58:38 +00:00
Mike Hommey a2a2df8b4a Bug 1888321 - Rename .cargo/config.in to .cargo/config.toml.in. r=firefox-build-system-reviewers,webdriver-reviewers,ahochheiden
Cargo 1.79 is emitting a warning when using .cargo/config.
.cargo/config.toml has been supported since cargo 1.39.

Differential Revision: https://phabricator.services.mozilla.com/D205974
2024-04-01 21:26:49 +00:00
Mike Hommey b23b901a0f Bug 1851739 - Switch default target for android to x86_64 on x86_64 hosts. r=geckoview-reviewers,owlish
Differential Revision: https://phabricator.services.mozilla.com/D205760
2024-04-01 21:20:14 +00:00
Mike Hommey d7cd8b16e2 Bug 1887728 - Switch builds to macOS 14.4 SDK. r=spohl,firefox-build-system-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D205627
2024-03-28 21:22:56 +00:00
Julien Cristau 2eebed2f9b Bug 1886984 - add source-hosting: yaml-dir support to mach vendor. r=tjr,gbrown
The source-host-path option can be set to let mach vendor find a python
module/class next to moz.yaml, that is then used as source host.

Differential Revision: https://phabricator.services.mozilla.com/D205710
2024-03-28 15:01:55 +00:00
Henri Sivonen 41075b8198 Bug 1887597 - Add Unicode-3.0 as an allowed third-party SPDX license identifier. r=glandium,dnazer
Differential Revision: https://phabricator.services.mozilla.com/D205540
2024-03-26 06:17:13 +00:00