Commit Graph

655 Commits

Author SHA1 Message Date
Steve Fink
c0568910c7 Bug 1708048 - Ensure that bootstrap-generated mozconfigs end with newline r=mhentges
Differential Revision: https://phabricator.services.mozilla.com/D113877
2021-05-03 20:39:09 +00:00
Steve Fink
852ab33676 Bug 1708048 - Implement mach bootstrap --app=js for SpiderMonkey shell development r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D113598
2021-05-03 20:39:08 +00:00
Mike Hommey
f2dcdd5390 Bug 1708592 - Get tools from MOZ_FETCHES_DIR on automation. r=firefox-build-system-reviewers,mhentges
While here, remove the unused clippyProcess.config. And because we need
to manipulate `$PATH` before running `cargo`, use the same wrapping
function in `get_clippy_version`.

Differential Revision: https://phabricator.services.mozilla.com/D113902
2021-04-30 21:09:11 +00:00
Mitchell Hentges
3ac1e14aec Bug 1704764: Don't warn about Defender exclusions if missing permissions r=firefox-build-system-reviewers,glandium
Newer versions of Windows don't allow un-elevated processes to access
the list of Windows Defender exclusions.
Rather than incorrectly falling back to assuming that there's no
exclusions, we now instead skip the exclusion check.

Differential Revision: https://phabricator.services.mozilla.com/D112648
2021-04-27 20:16:15 +00:00
Mitchell Hentges
7ce2d6da4d Bug 1704764: Remove OSError catch for fetching nonexistent registry key r=sheehan
Since Python 3, attempting to fetch a registry key that doesn't exist
throws `FileNotFoundError`, not `WindowsError: [Error 2]`.

Differential Revision: https://phabricator.services.mozilla.com/D112647
2021-04-27 20:16:14 +00:00
Butkovits Atila
2e34e363b9 Backed out 2 changesets (bug 1696251) for causing js-bench-sm failures. CLOSED TREE
Backed out changeset 1c84c9a34575 (bug 1696251)
Backed out changeset e169193b7423 (bug 1696251)
2021-04-23 02:53:36 +03:00
Alex Lopez
d1a82b8092 Bug 1696251 - Pass MachCommandBase object as first argument for Mach Commands. r=mhentges,remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers
As an intermediate step to allow mach commands as standalone functions, the MachCommandBase
subclass instance that currently corresponds to self has to be made available as a separate
argument (named command_context).

Differential Revision: https://phabricator.services.mozilla.com/D109650
2021-04-22 18:56:15 +00:00
Mike Hommey
9437efddc8 Bug 1706557 - Stop installing rosetta in mach bootstrap. r=firefox-build-system-reviewers,andi,mhentges
The last thing that needed rosetta was node, which is native as of
bug 1706545.

Differential Revision: https://phabricator.services.mozilla.com/D112902
2021-04-22 00:03:29 +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
Mike Hommey
79e8df83dd Bug 1377445 - Remove build dependencies on gtk+2. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D111997
2021-04-20 01:57:03 +00:00
Cosmin Sabou
785f9b8a87 Backed out changeset d4a5d8567977 (bug 1696251) for non-unified build bustages. CLOSED TREE 2021-04-19 19:43:31 +03:00
Alex Lopez
75dfe35468 Bug 1696251 - Pass MachCommandBase object as first argument for Mach Commands. r=mhentges,remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers
As an intermediate step to allow mach commands as standalone functions, the MachCommandBase
subclass instance that currently corresponds to self has to be made available as a separate
argument (named command_context).

Differential Revision: https://phabricator.services.mozilla.com/D109650
2021-04-19 16:15:11 +00:00
Mike Hommey
3b212b0272 Bug 1705296 - Don't create a python2 mach virtualenv. r=firefox-build-system-reviewers,mhentges
No mach command uses python2 anymore, so we don't need to create a
virtualenv for python2.

Differential Revision: https://phabricator.services.mozilla.com/D112148
2021-04-16 01:00:09 +00:00
Csoregi Natalia
bd01562887 Backed out changeset 3ec9f9951ffe (bug 1377445) for bustage due to missing file. CLOSED TREE 2021-04-08 11:04:47 +03:00
Bryan Quigley
a1b5fde57c Bug 1377445 - Drop gtk2 depends r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D111121
2021-04-08 07:38:40 +00:00
Nicklas Boman
2722651b9d Bug 1702896 - Mach bootstrap does not work on openSUSE Leap 15.2 (anymore) r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D110771
2021-04-07 19:21:54 +00:00
Nicklas Boman
361cf9d1e8 Bug 1703305 - Mach bootstrap for openSUSE will try to install pip/mercurial as root. maby use --user instead? r=firefox-build-system-reviewers,mhentges
To me this sounds like a good idea, but im not sure :)

Differential Revision: https://phabricator.services.mozilla.com/D110960
2021-04-07 19:21:17 +00:00
Gabriele Svelto
831c355e81 Bug 1701576 - Improve openSUSE detection during bootstrap r=glandium,mhentges DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D110059
2021-04-01 10:04:31 +00:00
Connor Sheehan
17a15ff0aa Bug 1697956: install m4 as a common package on Debian/Ubuntu r=firefox-build-system-reviewers,mhentges DONTBUILD
During `mach bootstrap` for Firefox desktop, m4 is installed via `libgtk2.0-dev`.
Since we don't install that package for Android bootstrap, this causes
configure failures.

Install `m4` as a common package to fix configure on Android. Since we plan
to remove `libgtk2.0-dev` soon, this will also avoid breakage when that change
lands.

Differential Revision: https://phabricator.services.mozilla.com/D108692
2021-03-17 14:19:35 +00:00
Mike Hommey
f74f871db7 Bug 1697950 - Partial support for mach bootstrap on arm64 mac. r=firefox-build-system-reviewers,sheehan,mhentges
This is enough to make the instructions on the Google doc unnecessary.

Differential Revision: https://phabricator.services.mozilla.com/D108132
2021-03-17 02:11:51 +00:00
Mike Hommey
a34d14071f Bug 1697960 - Don't prompt for telemetry when glean couldn't be installed. r=firefox-build-system-reviewers,mhentges,sheehan
Bootstrap runs mach create-mach-environment, which may or may not
successfully install glean. When it doesn't, it's not useful to ask
whether to enable telemetry when it's not going to work.

Differential Revision: https://phabricator.services.mozilla.com/D108131
2021-03-12 21:14:40 +00:00
Mitchell Hentges
9501e0ca97 Bug 1507272: Removes unused parameter in bootstrap function r=firefox-build-system-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D106813
2021-03-12 16:07:12 +00:00
Mitchell Hentges
b7e0dfe1d1 Bug 1695272: Move --no-interactive to global mach args r=firefox-build-system-reviewers,glandium
Updates `./mach bootstrap` to use `--no-interactive` from global args.
Ensures all bootstrap prompts have a default option.

Differential Revision: https://phabricator.services.mozilla.com/D106814
2021-03-12 16:07:11 +00:00
Mitchell Hentges
8133abcb41 Bug 1695973: Remove retry limit from bootstrap prompt r=firefox-build-system-reviewers,sheehan,glandium
The retry limit doesn't add much value - if user doesn't want
to answer a prompt, they can CTRL-C.

Additionally, `prompt_yesno` doesn't have a retry limit, so
this increases prompt behaviour consistency.

Differential Revision: https://phabricator.services.mozilla.com/D107122
2021-03-12 16:07:11 +00:00
Mike Hommey
b09eaee3e9 Bug 1379426 - Simplify Xcode/command line tools setup on macOS. r=firefox-build-system-reviewers,mhentges
Xcode hasn't been necessary to build Firefox for a while. Command line
tools are enough, but if Xcode is available, that's also sufficient.

Mach bootstrap, however, for historic reasons, mostly, ends up wanting
to install both, which is a waste of time and disk space.

Differential Revision: https://phabricator.services.mozilla.com/D107770
2021-03-10 22:33:21 +00:00
Andrew Halberstadt
155dabdde2 Bug 1697272 - [mozboot] Consider 'MACHRC' environment variable when enabling telemetry, r=firefox-build-system-reviewers,mhentges DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D107705
2021-03-09 20:04:57 +00:00
Mike Hommey
88789bd14f Bug 1696091 - Add arm64 mac rustup. r=firefox-build-system-reviewers,sheehan,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D107028
2021-03-08 21:31:25 +00:00
Mike Hommey
c3a31b9c58 Bug 1696091 - Upgrade rustup to 1.23.1. r=firefox-build-system-reviewers,sheehan,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D107027
2021-03-08 21:31:24 +00:00
Mike Hommey
9367a34337 Bug 1696091 - Convert python/mozboot/mozboot/rust.py's __main__ to python 3. r=firefox-build-system-reviewers,sheehan,mhentges
- Replace urllib2.urlopen with requests.get. We use requests because
  http_download_and_hash, which is also used by __main__ uses it already.
- Convert byte strings to unicode strings.
- Don't wrap sys.stdout, and instead explicitly flush when wanted.

Differential Revision: https://phabricator.services.mozilla.com/D107026
2021-03-08 21:31:24 +00:00
Connor Sheehan
a977bf134b Bug 1696509: move to bash installer for Homebrew r=firefox-build-system-reviewers,mhentges
Download `installer.sh` from the same source and pass it to
 `bash` instead of `ruby`.

Differential Revision: https://phabricator.services.mozilla.com/D107279
2021-03-08 17:41:15 +00:00
Connor Sheehan
c5d34d14ef Bug 1688263: remove macports as a package manager in bootstrap r=firefox-build-system-reviewers,mhentges
Removes MacPorts as an option for package management on OSX. Changes
most error messages to be Homebrew specific, and rips out the `getattr`
based function resolution used to support both managers.

Differential Revision: https://phabricator.services.mozilla.com/D107277
2021-03-08 17:41:14 +00:00
Agi Sferro
d7c56b38e4 Bug 1688062 - Update target SDK to API 30. r=esawin,jnicol
Differential Revision: https://phabricator.services.mozilla.com/D106556
2021-03-01 19:12:16 +00:00
Noemi Erli
67edd199af Backed out changeset 0ca845833464 (bug 1688062) for causinf Android Webrender bustages CLOSED TREE 2021-02-27 14:15:09 +02:00
Agi Sferro
b69e57d56f Bug 1688062 - Update target SDK to API 30. r=esawin
Differential Revision: https://phabricator.services.mozilla.com/D106556
2021-02-26 21:45:15 +00:00
Dorel Luca
0875c78fec Backed out changeset 0e3e3b8a55b4 (bug 1688062) for Linting failure in java/org/mozilla/gecko/GeckoAppShell.java. CLOSED TREE 2021-02-26 19:02:12 +02:00
Agi Sferro
c0dc6e84b0 Bug 1688062 - Update target SDK to API 30. r=esawin
Differential Revision: https://phabricator.services.mozilla.com/D106556
2021-02-26 16:34:02 +00:00
Mike Hommey
e5c73b99a0 Bug 1692940 - Don't bootstrap yasm. r=firefox-build-system-reviewers,dmajor
Differential Revision: https://phabricator.services.mozilla.com/D105599
2021-02-23 01:26:47 +00:00
Aaron Klotz
7847613f0d Bug 1581971: Part 1 - Bump Android NDK requirement to 21d; r=snorp,firefox-build-system-reviewers,mhentges
NDK 21 includes `lldb-server`, which we need in order to support
`./mach run --debug` with `lldb`.

The Android SDK manager no longer includes a standalone `lldb` package; perhaps
it was deprecated? Anyway, this appears to currently be the best way to get
`lldb-server` into a location that is easy to find during build configuration.

Differential Revision: https://phabricator.services.mozilla.com/D94379
2021-02-19 21:07:18 +00:00
Mitchell Hentges
a3eb85e571 Bug 1687980: Make macOS quickstart docs more concise r=sylvestre,mhoye
* Puts the docs in order, so that contributors aren't jumping to the
  middle of the page to install system tools, then back to the top to
  clone Firefox.
* Removes docs on MacPorts since it's being removed in bug 1688263.
* Removes step to manually install brew packages since that happens
   automatically in bootstrap now.
* Simplifies mercurial installation docs
* Removes unnecessary mozconfig-tweaking instructions
* Removes almost-always-unnecessary DEFINE and troubleshooting
  information.

Differential Revision: https://phabricator.services.mozilla.com/D102973
2021-02-16 17:48:11 +00:00
Mike Hommey
5d9084e8a0 Bug 1689058 - Rename clang-cl toolchains to clang. r=firefox-build-system-reviewers,dmajor
Bug 1553230 made configure automatically get toolchain artifacts in some
cases. The artifacts for clang-cl builds are clang.tar.zst, and extract to
clang/. Configure derives the task name from that knowledge, and fails
to find clang-cl tasks because of that.

For consistency, these tasks should be called clang. They are clang
builds anyways, and like any other clang builds, they also contain
clang-cl.

Differential Revision: https://phabricator.services.mozilla.com/D103150
2021-01-28 00:30:56 +00:00
Connor Sheehan
57d304dec4 Bug 1686333: don't install libpython2-dev r=firefox-build-system-reviewers,mhentges
Seems it isn't always available. Since Py2 is optional anyways, it
shouldn't cause failures in `mach bootstrap`.

Differential Revision: https://phabricator.services.mozilla.com/D101499
2021-01-12 21:55:57 +00:00
Connor Sheehan
5f3ac9bc5b Bug 1684915: install Python development headers during bootstrap on Fedora/Debian flavors r=firefox-build-system-reviewers,mhentges
Since zstandard has native code that must be compiled, and that code
uses Python headers, we should be installing those headers as part
of bootstrap.

Most users will have these packages on their machines through various
other means (notably installing `pip`, ie `sudo apt install python3-pip`),
but since it is possible to avoid a pip installation (for example
by installing Mercurial through `yum` and then running bootstrap
immediately after cloning) we should specify these packages as required
by bootstrap.

Differential Revision: https://phabricator.services.mozilla.com/D101479
2021-01-12 20:35:24 +00:00
Connor Sheehan
44d4f310aa Bug 1685811: recommend saving bootstrap.py to disk instead of piping directly to python r=mhentges DONTBUILD
The current recommendation fails while waiting on user input. Instead, just
save the script to disk as an intermediate step, then invoke it.

Differential Revision: https://phabricator.services.mozilla.com/D101228
2021-01-11 16:53:32 +00:00
ankushduacodes
fd084434a1 Bug 1684348 - Patching error occuring while running brew cask list as this method has been deprecated by homebrew r=mhentges
Differential Revision: https://phabricator.services.mozilla.com/D100496
2021-01-08 19:51:41 +00:00
Mitchell Hentges
633efc7476 Bug 1680630: Generate android mozconfig without pkg manager r=nalexander
Knowing whether `brew` or `macports` is available isn't necessary
to generate the android mozconfig.
This should fix the generation of android mozconfig when a package
manager isn't available.

Differential Revision: https://phabricator.services.mozilla.com/D99496
2021-01-05 20:30:56 +00:00
Sylvestre Ledru
635ee5f1cd no bug - doc: replaces mdn links by in-tree docs r=marco,andi DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D100782
2021-01-05 15:46:00 +00:00
Cosmin Sabou
8a46d2e9d6 Backed out 3 changesets (bug 1680802, bug 1680630) for turning Bug 1521378 into permafail. CLOSED TREE
Backed out changeset 3464c8f10994 (bug 1680630)
Backed out changeset 591d32364c0f (bug 1680802)
Backed out changeset 3e9350fd509d (bug 1680802)
2021-01-04 18:47:44 +02:00
Mitchell Hentges
043990b9c4 Bug 1680630: Generate android mozconfig without pkg manager r=nalexander
Knowing whether `brew` or `macports` is available isn't necessary
to generate the android mozconfig.
This should fix the generation of android mozconfig when a package
manager isn't available.

Differential Revision: https://phabricator.services.mozilla.com/D99496
2020-12-17 17:41:39 +00:00
longsonr
5bc0a7bf2c Bug 1683929 - fix brew list r=mhentges
Differential Revision: https://phabricator.services.mozilla.com/D100347
2020-12-22 19:38:46 +00:00
Dorel Luca
780ce73d25 Backed out 2 changesets (bug 1680802, bug 1680630) for Linting failure. CLOSED TREE
Backed out changeset 9385e7989433 (bug 1680630)
Backed out changeset 19db3f7eb204 (bug 1680802)
2020-12-16 01:07:11 +02:00