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

377 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 6c620a55e7 Bug 1523341 - Allow to only pass the CPU to --target and get the right thing for Fennec builds. r=nalexander
Also use armv7a as the default when no target is given at all.

Also change bootstrap to create a simpler mozconfig. The downside is
that the resulting mozconfig would not work when building older
revisions.

Add unit tests for this as well as the simplications added in bug
1523341.

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

--HG--
extra : moz-landing-system : lando
2019-01-31 18:08:44 +00:00
Jan Henning 879d1a037c Bug 1503455 - Part 4: Compile with SDK28. r=nalexander,snorp
android.test.* is no longer part of the main framework, so as per
https://developer.android.com/training/testing/set-up-project,
- we must no longer declare them as a *required* dependency in our manifests
- we must explicitly include a dependency on them in our build config

This will temporarily break running tests depending on android.test.* (i.e.
mainly Robocop) on devices using P or newer until we also start targeting P as
well.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 18:32:11 +00:00
Nick Alexander 3036f1ed4d Bug 1477487 - Part 3: Make |mach bootstrap| for Android install Rust toolchains. r=agi
Differential Revision: https://phabricator.services.mozilla.com/D16139

--HG--
extra : moz-landing-system : lando
2019-01-17 21:31:12 +00:00
Nick Alexander aa8a7a854c Bug 1477487 - Part 2: Make |mach bootstrap| for Android recommend toolchain clang and lld. r=agi,froydnj,#firefox-build-system-reviewers
We're seeing all sorts of problems with the NDK toolchain compilers
and the various versions of the NDK.  In automation we build with r17b
and our own toolchain clang; let's try to standardize on that.

This patch is ugly because of the evolution of mozboot.  Long ago, we
passed arguments around and interpolated strings into function names
rather than setting members with the application name and whether
we're in artifact mode.  The places I needed to modify didn't have the
right data at the right time so I added it to the bootstrap instance.
I don't have the time or energy to use the instance variables
through-out: that'll have to be future follow-up.

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

--HG--
extra : moz-landing-system : lando
2019-01-17 21:30:49 +00:00
Nick Alexander 57c01fa819 Bug 1477487 - Part 1: Look for java and pin to Java 1.8 in |mach bootstrap|; r=agi
What is happening is that distribution JRE and JDK packages roll
forward, installing a different version of Java than what is expected.
We don't check the version installed, so sadness ensues.

Right now, we require Java 1.8 to build, but in the near future, after
Android-Gradle plugin 3.2.1+, we'll be free to use later Java
versions.

However, Android's `sdkmanager` itself requires exactly Java 1.8.  We
only require `sdkmanager` to install `emulator`, really -- everything
else will be fetched by Gradle -- but I don't want to unravel that
right now.

So let's just provide decent error messages and try to prevent the
worst of the footguns.

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

--HG--
extra : moz-landing-system : lando
2019-01-17 21:30:29 +00:00
Nick Alexander 2a42763c8f Bug 1477487 - Part 0: Make GeckoView more prominent in |mach bootstrap|. r=agi
This is part of the larger shift toward GeckoView and away from
Firefox for Android.  We need GV to "show up" in these kind of
onboarding tools; here's a small first step.

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

--HG--
extra : moz-landing-system : lando
2019-01-17 21:30:06 +00:00
Nick Alexander 35758fd122 Bug 1477487 - Pre: Bump Android SDK version. r=agi
Just hygiene, no reason to lag, no reason to expect changes.

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

--HG--
extra : moz-landing-system : lando
2019-01-17 21:29:40 +00:00
Nick Alexander 2ac1dba7f9 Bug 1477487 - Pre: Don't require outdated packages. r=agi
These are downloaded from maven.google.com by Gradle now.

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

--HG--
extra : moz-landing-system : lando
2019-01-17 21:29:15 +00:00
Mark Banner 748a95812e Bug 1487490 - Update the python modules installed on OS X by bootstrap, following changes in homebrew. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D16672

--HG--
extra : moz-landing-system : lando
2019-01-16 15:07:11 +00:00
Nomis101 7c37532cdf Bug 1519740 - Include MacPorts Mojave package in bootstrap.py. r=glandium
--HG--
extra : amend_source : 7457ca919e02b7d803821bc98ceede57d6be9d1d
2019-01-14 00:08:54 +01:00
Chris Manchester ccddf2ca6c Bug 1515512 - Require rustc 1.31. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D15396

--HG--
extra : source : f162598ad12cd59e1f653c541e6786b715b144fd
2018-12-27 02:22:54 +00:00
Cosmin Sabou c3c97ee7de Backed out changeset f162598ad12c (bug 1515512) on the suspicion of causing Linux asan browser chrome exceptions. 2018-12-27 07:43:08 +02:00
Chris Manchester ac40054b22 Bug 1515512 - Require rustc 1.31. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D15396

--HG--
extra : moz-landing-system : lando
2018-12-27 02:22:54 +00:00
Kim Moir 4380b3f45b Bug 1510602 - update build documentation to mention artifact builds r=firefox-build-system-reviewers,gps
Differential Revision: https://phabricator.services.mozilla.com/D13435

--HG--
extra : moz-landing-system : lando
2018-12-05 19:49:38 +00:00
Andi-Bogdan Postelnicu e82882ae01 Bug 1511827 - Download clang based static-analysis during bootstrap after every other dependency is downloaded. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D13678

--HG--
extra : moz-landing-system : lando
2018-12-04 18:42:00 +00:00
Panos Astithas a825a2ade4 Bug 1508184 - Don't try to set the active python during bootstrap if not necessary r=gps
Differential Revision: https://phabricator.services.mozilla.com/D12237

--HG--
extra : moz-landing-system : lando
2018-11-30 00:25:48 +00:00
Andi-Bogdan Postelnicu ecc4f819bb Bug 1509296 - Download clang based static-analysis during bootstrap. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D12658

--HG--
extra : moz-landing-system : lando
2018-11-27 19:43:37 +00:00
Thomas Daede 9ae2c6e168 Bug 1501796 - Add nasm to bootstrap scripts. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D9852

--HG--
extra : moz-landing-system : lando
2018-11-09 05:27:54 +00:00
Panos Astithas b23feb0362 Bug 1506317 - Use clang-7.0 for bootstraping using macports r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D11548

--HG--
extra : moz-landing-system : lando
2018-11-13 05:01:37 +00:00
Nathan Froyd 9f42e70b61 Bug 1504031 - follow-up - require Rust 1.30.1 in bootstrap; r=me 2018-11-09 18:47:37 -05:00
Ted Mielczarek 8a92d6f72c bug 1483941 - prompt to enable build system telemetry in bootstrap. r=nalexander
This change adds a prompt to enable build system telemetry as part of
bootstrap. The prompt will only be shown if the build.telemetry config value
is not present, so users will not be prompted again if they have already
opted-in. However, if a user answers 'no' we don't save that value to
the config file because the default is to not send telemetry, so unless
they manually add `telemetry = false` to their config file they will be
prompted again the next time they run bootstrap.

The config value is always written to `~/.mozbuild/machrc` where we store
other Firefox build-related state. A standalone function is used to write
the config file so that we can do so even when running from bootstrap.py
outside of the context of a mach command.

As part of this change a `prompt_yesno` method is added to `BaseBootstrapper`.

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

--HG--
extra : moz-landing-system : lando
2018-11-06 14:19:24 +00:00
Gurzau Raul 26c6e57600 Backed out changeset dc7924e3ea6b (bug 1483941) for causing bug 1504449. a=backout 2018-11-03 20:41:00 +02:00
Emilio Cobos Álvarez b21276e549 Bug 1482923 - cross-compile cbindgen on Mac OS. r=froydnj
I got nerdsniped on the weekend.

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

--HG--
extra : moz-landing-system : lando
2018-11-01 13:35:44 +00:00
Connor Sheehan c51f546bd5 Bug 1503817: add missing checkout directory argument to `configure_git` call r=glob
In bug 1481425 I added an argument to `configure_git` for
the root directory of the current Firefox checkout, so
we could check for and remove the MozReview commit message
hook. I overlooked one other call to that function in
`bootstrap.py`, which is now failing due to too few
arguments. This commit adds the missing parameter.

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

--HG--
extra : moz-landing-system : lando
2018-11-01 13:54:50 +00:00
Ted Mielczarek 01a1ddddb0 bug 1483941 - prompt to enable build system telemetry in bootstrap. r=nalexander
This change adds a prompt to enable build system telemetry as part of
bootstrap. The prompt will only be shown if the build.telemetry config value
is not present, so users will not be prompted again if they have already
opted-in. However, if a user answers 'no' we don't save that value to
the config file because the default is to not send telemetry, so unless
they manually add `telemetry = false` to their config file they will be
prompted again the next time they run bootstrap.

The config value is always written to `~/.mozbuild/machrc` where we store
other Firefox build-related state. A standalone function is used to write
the config file so that we can do so even when running from bootstrap.py
outside of the context of a mach command.

As part of this change a `prompt_yesno` method is added to `BaseBootstrapper`.

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

--HG--
extra : moz-landing-system : lando
2018-10-31 20:03:53 +00:00
Emilio Cobos Álvarez b85791110f Bug 1503401 - Update cbindgen due to breaking change. r=boris
https://github.com/eqrion/cbindgen/pull/233 changed the way one of the options
we use work.

I think the new behavior is better, but we should do this sooner rather than
later, and fix broken builds.

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

--HG--
extra : moz-landing-system : lando
2018-10-30 21:25:17 +00:00
Connor Sheehan 97ed5fb15c Bug 1481425: remove git-mozreview commit message hook during `mach vcs-setup` r=mcote,gps
During the MozReview days, users of git-cinnabar would install a
commit message hook to include `MozReview-Commit-Id` in their
commit messages. MozReview has seen been retired, yet there
are still a few users with the hook in their configs who now
have both a MozReview commit ID and a Phabricator Differential
link in their commits. This commit makes `mach vcs-setup` (and
`mach bootstrap`, since the former is called during the latter)
remove the commit hook on git checkouts of a Firefox repo. We
check the `commit-msg` hook file for "mozreview" anywhere in
the hook and remove if it is found.

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

--HG--
extra : moz-landing-system : lando
2018-10-30 17:52:52 +00:00
Emilio Cobos Álvarez f00ba0c6e2 Bug 1496619 - Update min cbindgen version in osx.py. a=emilio
I mentioned it on the review but it slipped through it seems.

--HG--
extra : source : cd47bdbd4efa6bda0dc86c3eec25d1ea92e2518a
2018-10-27 13:07:10 +02:00
Chris Manchester 2afea4f01b Bug 1500269 - Upgrade to rustc 1.29.2 r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D9170

--HG--
extra : moz-landing-system : lando
2018-10-22 13:12:43 +00:00
Tooru Fujisawa 0c58650a99 Bug 1494287 - followup: Fix undefined variable in fallback path. r=me 2018-10-12 08:24:04 +09:00
Tooru Fujisawa c5cbf8d38f Bug 1494287 - Check existing cbindgen version and update if necessary. r=ted 2018-10-12 07:59:22 +09:00
Jan Beich 9bfc52ba08 Bug 1496708 - Install node as system package. f=gaston r=Build r=froydnj
Mozilla binaries (including toolchain artifacts) aren't available on BSDs.
2018-10-05 05:37:00 +03:00
Jan Beich 4737c23ba2 Bug 1496708 - Install cbindgen as system package. f=gaston r=Build r=froydnj
cargo build is no longer called, so bootstrap will be faster.
All dependencies (including cbindgen) are usually up-to-date on BSDs
because there's no fallback to Mozilla binaries.
2018-10-05 05:37:00 +03:00
Jan Beich c6dd37c2bc Bug 1496733 - Explicitly install libXt on FreeBSD. r=Build r=froydnj 2018-10-05 07:02:00 +03:00
Chris Manchester de165d4dba Bug 1490145 - Download rustc 1.29 in mach bootstrap. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D5825

--HG--
extra : moz-landing-system : lando
2018-09-14 02:21:26 +00:00
Steve Armand 1812539078 Bug 1490167 - MacPorts in bootstrap.py is out of date r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D5494

--HG--
extra : moz-landing-system : lando
2018-09-11 19:36:09 +00:00
Gabriele Svelto d5ab0ca667 Bug 1490355 - Teach |mach bootstrap| to automatically install the latest version of the Oracle JDK r=nalexander
This patch makes the bootstrap code "ask" Gentoo's package manager for
human-readable information on how to get the latest JDK, then parses it and
locates the tarball URL on its own. The whole procedure is now fully automatic
(until the package output or Oracle web pages change).

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

--HG--
extra : moz-landing-system : lando
2018-09-12 12:08:51 +00:00
Bas Schouten efa3734e21 Bug 1485485 - Followup: Fix which function definition in derrived classes. r=froydnj 2018-08-28 18:24:50 +02:00
Nathan Froyd 5ba4a13346 Bug 1485485 - make bootstrap accept rustc/cargo in known-good locations; r=chmanchester
moz.configure looks for rustc/cargo on PATH and in ~/.cargo/bin.
Bootstrap only looks on PATH and not in ~/.cargo/bin, though it is smart
enough to complain if rustc/cargo can't be found on PATH and you have
them in ~/.cargo/bin.  Bootstrap should look in both places by default,
and be content if it finds them wherever they are, so long as
moz.configure can find them.
2018-08-28 09:31:48 -04:00
Panos Astithas 312fdae0eb Bug 1484243 - Detect vcs automatically in |mach vcs-setup|. r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D3942

--HG--
extra : moz-landing-system : lando
2018-08-22 17:26:58 +00:00
Emilio Cobos Álvarez fd187833dd Bug 1484485: Create state dir and install node / stylo stuff in bootstrap's non-interactive mode. r=ted
The state directory is in $HOME by default, so should be fine to just create it
if we get --no-interactive I think.

Differential Revision: https://phabricator.services.mozilla.com/D3838
2018-08-22 11:17:51 +02:00
Panos Astithas 6a01b19a19 Bug 1257478 - Turn mercurial-setup into vcs-setup and add git support. r=gps
MozReview-Commit-ID: AD6gLqFm8Nn

--HG--
extra : rebase_source : 0214cdc6f6acaaf0621e25f30cb0a2c81849063e
2018-07-04 21:48:42 +03:00
Ting-Yu Lin 1199851701 Bug 1476147 - Use path.isfile() instead of patch.exists() in which(). r=glandium
This excludes directories, and returns true only if it's an executable file.

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

--HG--
extra : moz-landing-system : lando
2018-08-15 06:15:57 +00:00
Emilio Cobos Álvarez 818db7603f Bug 1478813 - Add cbindgen toolchain job and install via bootstrap. r=ted
And require it for taskcluster build already, because it doesn't harm and lets
me put all the yml changes in the same commit.

I gave up cross-compiling for OSX after a few tries and after realizing it
wasn't enough with cctools and such, but that I also needed the Mac SDK, for
which I don't have permission...

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

--HG--
extra : moz-landing-system : lando
2018-08-13 10:58:22 +00:00
Dan Mosedale b7242c9e28 Bug 1481693 - Implement no_system_changes for moz_bootstrap, r=gps
MozReview-Commit-ID: CnS94verabV
2018-08-10 19:58:03 -07:00
Dan Mosedale ee200cd836 Bug 1481693 - Factor out install_private_packages from moz_bootstrap, r=gps
MozReview-Commit-ID: It9IumV141L
2018-08-10 19:58:03 -07:00
Dan Mosedale 98be0c2bfe Bug 1481693 - Factor out try_to_create_state_dir from mach_bootstrap, r=gps
MozReview-Commit-ID: H6DhV56n3Cc
2018-08-10 19:58:02 -07:00
Dan Mosedale 58963c546b Bug 1481693 - Add --no-system-changes argument to 'mach bootstrap', r=gps
MozReview-Commit-ID: AMYM3rAPVcl
2018-08-10 19:58:01 -07:00
Dan Mosedale e2e43a5c7a Bug 1481693 - Teach mach bootstrap to install NodeJS from toolchain artifact, r=gps
MozReview-Commit-ID: DBUCcGXxM0a
2018-08-10 19:58:00 -07:00
Mike Hommey f4f54e5aeb Bug 1482330 - Upgrade to Android NDK r17b and API level 16 (JB). r=snorp
We're currently using NDK r15c, which is rather old, and happens to come
with a buggy gold linker. Let's use a more recent NDK, with a fixed
linker.

Unfortunately, we're currently at NDK API level 9, which the newer NDK
doesn't provide for x86 anymore. But that corresponds to Gingerbread
(2.3), which we've long stopped supporting. On the SDK side, we already
dropped support of versions before Jelly Bean, so we can do the same on
the NDK side. That corresponds to API level 16. So let's just use that
as a baseline.

Another change in the newer NDK is that the target-name changed from
i386-linux-android to i686-linux-android, so adjust for that in the
android x86 mozconfigs.
2018-08-11 09:47:41 +09:00