Commit Graph

8888 Commits

Author SHA1 Message Date
David Major
705563e08e Bug 1326486 - build-clang: Install imports and asan symbols only in the final stage r=glandium
Otherwise, PGO builds would fail to find asan at stage2 because the instrumented build uses `LLVM_BUILD_RUNTIME=No`.

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

--HG--
extra : moz-landing-system : lando
2020-04-07 14:12:56 +00:00
David Major
116a8a120b Bug 1326486 - build-clang: avoid building unnecessary things in intermediate stages. r=glandium
This will partially atone for making builds longer with PGO.

Depends on D69618

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

--HG--
extra : moz-landing-system : lando
2020-04-07 14:12:47 +00:00
David Major
009ae37b4f Bug 1326486 - build-clang: pass is_final_stage even for stage1. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D69618

--HG--
extra : moz-landing-system : lando
2020-04-07 14:12:49 +00:00
Arthur Iakab
d2c2253278 Backed out changeset 5616dd0ad683 (bug 1592877) for causing browser-chrome failures on browser_aboutCertError_manySANsError.js
CLOSED TREE
2020-04-08 15:26:13 +03:00
Lupita Arroyo
929140139b Bug 1592877 - Truncate SANs to 50 in aboutNetError.js and add a test for it. r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D68730

--HG--
extra : moz-landing-system : lando
2020-04-08 11:22:10 +00:00
Mike Hommey
f805480ab5 Bug 1627163 - Switch python configure to python 3. r=firefox-build-system-reviewers,rstewart
This also does a few remaining python 2 incompatible changes to
.configure files.

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

--HG--
extra : moz-landing-system : lando
2020-04-07 18:31:56 +00:00
Mike Hommey
19b511423c Bug 1627163 - Fix a few more python 3 incompatibilities in some .configure files. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D69948

--HG--
extra : moz-landing-system : lando
2020-04-07 15:44:06 +00:00
Mike Hommey
2f950fc227 Bug 1627163 - Add comments to virtualenv_python2 that can be seen in virtualenv_python3. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D69536

--HG--
extra : moz-landing-system : lando
2020-04-05 08:51:22 +00:00
Mihai Alexandru Michis
964773e27c Backed out 7 changesets (bug 1326486) for causing bpgo failures.
CLOSED TREE

Backed out changeset 810a84a18948 (bug 1326486)
Backed out changeset e04c57ed0c04 (bug 1326486)
Backed out changeset 493c338ad705 (bug 1326486)
Backed out changeset 96701b9815c2 (bug 1326486)
Backed out changeset 8adfc59eb3c5 (bug 1326486)
Backed out changeset 441282fd1fea (bug 1326486)
Backed out changeset a64593d4c645 (bug 1326486)
2020-04-07 17:08:08 +03:00
David Major
abffbe294c Bug 1326486 - build-clang: Convert 3-stage builds to 4-stage PGO builds. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D69084

--HG--
extra : moz-landing-system : lando
2020-04-07 08:32:59 +00:00
David Major
26ce55ba6d Bug 1326486 - build-clang: Add support for PGO builds. r=glandium
This adds the ability to do four-stage PGO builds. This was surprisingly straightforward thanks to PGO being a well-supported scenario in LLVM's cmake.

For reference, the stages are:
stage1: Initial build with gcc
stage2: Instrumented build using stage1
stage3: Train by using the instrumented stage2 to build the clang tree
stage4: Optimize using the stage3 compiler and the profdata created with it

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

--HG--
extra : moz-landing-system : lando
2020-04-07 08:32:32 +00:00
David Major
b893b82141 Bug 1326486 - build-clang: Add support for 4-stage builds r=glandium
Separating out the mechanical/"boring" changes to make the next patch more clear. This patch adds the ability to build a fourth stage that for now doesn't do anything special.

I changed to using >= to make it more obvious that e.g. "here is what's going to happen for stage 2" -- the off-by-one was too hard on my brain.

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

--HG--
extra : moz-landing-system : lando
2020-04-07 08:29:02 +00:00
David Major
fc99fcb538 Bug 1326486 - build-clang: Merge LLVM a84b200e604 to fix Windows PGO. r=glandium
a84b200e60

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

--HG--
extra : moz-landing-system : lando
2020-04-07 08:27:54 +00:00
David Major
5f9aa001c2 Bug 1326486 - build-clang: Install imports and asan symbols only in the final stage r=glandium
Otherwise, PGO builds would fail to find asan at stage2 because the instrumented build uses `LLVM_BUILD_RUNTIME=No`.

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

--HG--
extra : moz-landing-system : lando
2020-04-07 08:27:36 +00:00
David Major
ec2075139f Bug 1326486 - build-clang: avoid building unnecessary things in intermediate stages. r=glandium
This will partially atone for making builds longer with PGO.

Depends on D69618

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

--HG--
extra : moz-landing-system : lando
2020-04-07 08:27:26 +00:00
David Major
4eea888422 Bug 1326486 - build-clang: pass is_final_stage even for stage1. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D69618

--HG--
extra : moz-landing-system : lando
2020-04-07 08:25:29 +00:00
Mike Hommey
75c9894119 Bug 1627163 - Fix a couple python 3 incompatibilities in old.configure. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D69533

--HG--
extra : moz-landing-system : lando
2020-04-05 08:51:21 +00:00
Mike Hommey
5e73bfc93a Bug 1627163 - Use POINTER from ctypes rather than wintypes. r=firefox-build-system-reviewers,rstewart
It's in both in python 2, but only in the former in python 3.

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

--HG--
extra : moz-landing-system : lando
2020-04-05 08:51:21 +00:00
Mike Hommey
15c01b2687 Bug 1627163 - Unify how python version is shown for py2 and py3. r=firefox-build-system-reviewers,rstewart
Using @checking doesn't go well with the virtualenv creation, so print
the version information after the fact. And do so uniformely for python
2 and python 3.

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

--HG--
extra : moz-landing-system : lando
2020-04-05 08:51:20 +00:00
Mike Hommey
a7c4179e58 Bug 1627163 - Remove mozconfig dependency from virtualenv_python3. r=firefox-build-system-reviewers,rstewart
This is yet another cargo-cult from virtualenv_python2, which is not
necessary because by the time we reach virtualenv_python3, the mozconfig
configure *has* been injected already.

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

--HG--
extra : moz-landing-system : lando
2020-04-05 08:51:20 +00:00
Mike Hommey
b63a0b8665 Bug 1627163 - Remove the --help dependency on virtualenv_python3. r=firefox-build-system-reviewers,rstewart
It was cargo-culted from virtualenv_python2, but is not necessary
because virtualenv_python3 is not going to re-execute python, which is
what the dependency is there to avoid.

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

--HG--
extra : moz-landing-system : lando
2020-04-05 08:51:19 +00:00
Mike Hommey
40781d2c48 Bug 1627163 - Do not re-execute configure with python 3. r=firefox-build-system-reviewers,rstewart
This was cargo-culted from virtualenv_python2, but this is not
necessary: currently, the only way configure code will execute with
python 3 is if something uses the configure sandbox from python 3, not
configure. Only configure itself is meant to re-execute itself with
python, so we don't want python 3 to re-execute.

We'll be swapping virtualenv_python2 and virtualenv_python3 later, when
switching to python 3.

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

--HG--
extra : moz-landing-system : lando
2020-04-05 08:51:19 +00:00
Aaron Klotz
1b0b7382dd Bug 1627354: Part 1 - Modify android-sdk.configure to use build tools 29.0.3; r=nalexander
* We change the SDK version to use build tools 29.0.3;
* We change `build_tools_version` from a list to a string;
* We convert `android_build_tools` to work correctly with the above change;
* We set the build tools version in configure, as gradle needs to access it
  in a subsequent patch.

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

--HG--
extra : moz-landing-system : lando
2020-04-06 17:27:42 +00:00
Mike Hommey
314c1a65a3 Bug 1626951 - Disable new pass manager on aarch64-windows builds without LTO. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D69500

--HG--
extra : moz-landing-system : lando
2020-04-03 14:27:45 +00:00
Tarek Ziadé
5c0481ca70 Bug 1623321 - Add perftest r=sparky,perftest-reviewers,marionette-reviewers,whimboo,ahal
mach perftest

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

--HG--
extra : moz-landing-system : lando
2020-04-02 13:04:41 +00:00
Sebastian Hengst
2fbcddc03d Bug 1620842 - change Firefox for Android bugzilla components to GeckoView. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D65895

--HG--
extra : moz-landing-system : lando
2020-03-17 18:36:33 +00:00
Kirk Steuber
f8896b428d Bug 1625461 - Fix bug where conditionally including the update URL in application.ini breaks building without the updater r=rstewart
Switched handling of AppUpdate:URL from it being required to it being optional, much as Crash Reporter:serverurl is handled.

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

--HG--
extra : moz-landing-system : lando
2020-03-31 21:11:10 +00:00
Stephen A Pohl
2e96a507c8 Bug 1626329: Allow builds with the 10.15.4 macOS SDK. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D69032

--HG--
extra : moz-landing-system : lando
2020-03-31 16:56:20 +00:00
Bogdan Tara
6b0b300cc5 Backed out 3 changesets (bug 1620145) for lints failure and Android bustages CLOSED TREE
Backed out changeset eee5907efc81 (bug 1620145)
Backed out changeset 80acd7d7bc10 (bug 1620145)
Backed out changeset f07bb47f20b3 (bug 1620145)
2020-03-28 01:36:27 +02:00
Aaron Klotz
fa8d4a5ee5 Bug 1620145: Part 0 - Set compileSdkVersion to use ANDROID_TARGET_SDK; r=geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D68612

--HG--
extra : moz-landing-system : lando
2020-03-27 22:52:30 +00:00
James Willcox
ed993b2081 Bug 1598068 - Increase Android targetSdk to 29 r=geckoview-reviewers,aklotz
Differential Revision: https://phabricator.services.mozilla.com/D61013

--HG--
extra : moz-landing-system : lando
2020-03-26 23:28:47 +00:00
Ian Neal
1e45ce9eed Bug 1625466 - Fix print statements in appini_header.py r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D68564

--HG--
extra : moz-landing-system : lando
2020-03-27 14:52:34 +00:00
Christian Holler
367201db7c Bug 1625268 - Disable new pass manager for fuzzing when using older Clang. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D68525

--HG--
extra : moz-landing-system : lando
2020-03-27 13:32:06 +00:00
Mike Hommey
32bf570594 Bug 1618782 - Use winchecksec on Windows cross builds too. r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D68162

--HG--
extra : moz-landing-system : lando
2020-03-27 10:41:06 +00:00
Mike Hommey
f352b032de Bug 1618782 - Enable hardening on win64-aarch64 build when the compiler supports it. r=rstewart
We only enabled hardening with an explicit --enable-hardening because we
needed a patch. That patch was applied to upstream clang 8.0.1, so we
can now enable automatically whenever using the right version.

The explicit --enable-hardening was also not applied to win64-aarch64
debug builds, and this indirectly enables it there too, matching other
debug builds. This also avoids breaking debug builds when enabling
winchecksec on cross builds.

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

--HG--
extra : moz-landing-system : lando
2020-03-27 10:41:23 +00:00
Mike Hommey
e25a8bf02e Bug 1450088 - Use Winchecksec instead of Binscope. r=dmajor
While almost rewriting autobinscope.py entirely (and renaming it),
switch to python 3.

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

--HG--
rename : build/win32/autobinscope.py => build/win32/autowinchecksec.py
extra : moz-landing-system : lando
2020-03-26 22:13:14 +00:00
Mike Hommey
aa3b1da222 Bug 1450088 - Build clang with libxml2 support. r=froydnj
This is required for llvm-mt, which building winchecksec will require.
We do a dummy change to build-clang.sh so as to change the toolchain
index hash.

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

--HG--
extra : moz-landing-system : lando
2020-03-26 21:53:00 +00:00
Kirk Steuber
acc51b1485 Bug 1568994 - Add Update URL template to application.ini, XREAppData, and Services.appinfo r=glandium
This is being added to facilitate moving generation of the update URL to Rust (Bug 1567286). Once that has been completed, we should be able to remove the update URL from its current location in firefox.js so that it is not being duplicated in application.ini.

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

--HG--
extra : moz-landing-system : lando
2020-03-26 00:57:13 +00:00
Mike Hommey
663eefb54e Bug 1624535 - Make check_prog(allow_missing=depends(...)) work. r=froydnj
For consistency with e.g. pkg_check_modules.

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

--HG--
extra : moz-landing-system : lando
2020-03-26 00:19:31 +00:00
Mike Hommey
a80be41972 Bug 1021214 - Run binscope on all executables and libraries. r=froydnj
This needs a few adjustments to the autobinscope script because running
binscope currently creates an HTML file in the binscope directory, and
when multiple binscopes run at the same time (which happens during the
build with the changes to run it on all executables and libraries), all
but one fail to open the HTML file for write access.

So add a flag to create that file in a temporary directory.

While here, remove log_file_path, which hasn't been used since
bug 1448306.

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

--HG--
extra : moz-landing-system : lando
2020-03-20 01:54:00 +00:00
Ricky Stewart
a9e3414c54 Bug 1623952 - Make remaining tweaks to configure so it works under macOS on Python 3 r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D67647

--HG--
extra : moz-landing-system : lando
2020-03-25 18:58:51 +00:00
David Major
805504c21e Bug 1622168 - Disable new pass manager on non-pgo mac builds due to hangs r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D67952

--HG--
extra : moz-landing-system : lando
2020-03-25 14:24:08 +00:00
David Major
8b83bf74b3 Bug 1624706 - Pass through RUSTC in RunCbindgen.py r=emilio
After cargo 7caa161, which was included in rust 1.43 nightly 2020-02-23 as part of rust 11530de, if you don't have rustc installed in the normal place (which our CI builders don't) then you need to specify RUSTC explicitly during cargo metadata or else the call will fail. In our build system, the RUSTC wasn't being passed through in RunCbindgen.py.

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

--HG--
extra : moz-landing-system : lando
2020-03-24 22:59:26 +00:00
Christian Holler
71be193b65 Bug 1624267 - Fix intermittent hangs with ThreadSanitizer. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D67812

--HG--
extra : moz-landing-system : lando
2020-03-23 13:08:47 +00:00
Simon Giesecke
7e9a7de895 Bug 1620632 - Rename confusingly named types/macros for relocation handling of nsTArray. r=froydnj
Specifically, this renames
* nsTArray_CopyChooser to nsTArray_RelocationStrategy
* the Copy template argument of nsTArray_base to RelocationStrategy
* nsTArray_CopyWithConstructors to nsTArray_RelocateUsingMoveConstructor
* nsTArray_CopyWithMemutils to nsTArray_RelocateUsingMemutils
* DECLARE_USE_COPY_CONSTRUCTORS to MOZ_DECLARE_RELOCATE_USING_MOVE_CONSTRUCTOR

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

--HG--
extra : moz-landing-system : lando
2020-03-20 17:04:27 +00:00
Mike Hommey
b80ad1b15a Bug 1620166 - Switch shippable windows builds to cross builds. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D67279

--HG--
extra : moz-landing-system : lando
2020-03-20 00:59:15 +00:00
Oana Pop Rus
55ec4515da Backed out changeset 8009b44fdab1 (bug 1021214) for build bustages in autobinscope.py on a CLOSED TREE 2020-03-20 03:49:30 +02:00
Mike Hommey
89f6c7e9b7 Bug 1021214 - Run binscope on all executables and libraries. r=froydnj
This needs a few adjustments to the autobinscope script because running
binscope currently creates an HTML file in the binscope directory, and
when multiple binscopes run at the same time (which happens during the
build with the changes to run it on all executables and libraries), all
but one fail to open the HTML file for write access.

So add a flag to create that file in a temporary directory.

While here, remove log_file_path, which hasn't been used since
bug 1448306.

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

--HG--
extra : moz-landing-system : lando
2020-03-20 00:41:44 +00:00
Noemi Erli
abc5a1f51d Merge mozilla-central to autoland. a=merge CLOSED TREE 2020-03-19 19:10:43 +02:00
Noemi Erli
8ccf549d4a Merge autoland to mozilla-central. a=merge 2020-03-19 18:55:49 +02:00