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

8520 Коммитов

Автор SHA1 Сообщение Дата
Mark Banner ef018717ee Bug 1555300 - .eslintignore no longer needs to ignore directories with no js files. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D32993

--HG--
extra : moz-landing-system : lando
2019-05-31 08:49:17 +00:00
Mike Hommey cfe985532a Bug 1554928 - Remove configure options that have been deprecated for a while. r=nalexander
- DISABLE_SHARED_JS and DISABLE_EXPORT_JS have been deprecated for 3
years,
- MOZ_JEMALLOC4 has been deprecated for 2 years.

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

--HG--
extra : moz-landing-system : lando
2019-05-29 02:01:02 +00:00
Cosmin Sabou 4b7060c540 Backed out changeset f593f5a5bfa3 (bug 1555346) for build bustages on llvm-profdata. CLOSED TREE 2019-05-29 19:14:25 +03:00
Nathan Froyd 74a42ff95b Bug 1555346 - require llvm-profdata when using pgo with clang{,-cl}; r=dmajor
Detecting problems earlier is better than detecting them later.

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

--HG--
extra : moz-landing-system : lando
2019-05-29 15:59:18 +00:00
Ehsan Akhgari 4cb428d268 Bug 1555205 - Move db/sqlite3 to third_party/; r=mak
Differential Revision: https://phabricator.services.mozilla.com/D32939

--HG--
rename : db/sqlite3/README => third_party/sqlite3/README
rename : db/sqlite3/README.MOZILLA => third_party/sqlite3/README.MOZILLA
rename : db/sqlite3/src/moz.build => third_party/sqlite3/src/moz.build
rename : db/sqlite3/src/sqlite.symbols => third_party/sqlite3/src/sqlite.symbols
rename : db/sqlite3/src/sqlite3.c => third_party/sqlite3/src/sqlite3.c
rename : db/sqlite3/src/sqlite3.h => third_party/sqlite3/src/sqlite3.h
extra : moz-landing-system : lando
2019-05-29 10:16:29 +00:00
Kagami Sascha Rosylight 4d696c5df3 Bug 1554186: Fix Python 3 negative import level error r=glandium
Negative value for import level is obsolete in Python 3, which was used on Py2 for implicit relative import. This change ensures the level value to be >=0 on Py3 to fix test failures.

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

--HG--
extra : moz-landing-system : lando
2019-05-29 07:58:19 +00:00
Justin Wood dbf256c14c Bug 1547730 - Update a build moz.configure function, to support py3 r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D28115

--HG--
extra : moz-landing-system : lando
2019-05-28 14:28:43 +00:00
Mihai Alexandru Michis bf0f822195 Backed out changeset 8b110b9889c3 (bug 1196094) as requested by Gijs. 2019-05-28 16:01:19 +03:00
Mike Hommey 69fe19f2a6 Bug 1554043 - Make the valgrind-test error when valgrind exits with a non-zero code slightly more useful. r=dmajor
The exit code from valgrind may subtly indicate how it failed (like, if
it's 139 or 137, which would mean respectively segfault or killed by
something external), which is currently completely hidden, making
diagnostics of things like bug 1545094 harder.

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

--HG--
extra : moz-landing-system : lando
2019-05-24 11:47:13 +00:00
Gijs Kruitbosch bd641f5fa6 Bug 1196094 - use e10s when doing PGO profiling, r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D32329

--HG--
extra : moz-landing-system : lando
2019-05-27 09:05:21 +00:00
Nathan Froyd 0839a1bd24 Bug 1542746 - remove code for frontend-based PGO instrumentation; r=dmajor
We're moving to IR-level PGO instrumentation for clang-cl.  We've also
moved to using static linker ordering files, which was the primary
application of the previous style of PGO instrumentation.  We therefore
we no longer need this code.

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

--HG--
extra : moz-landing-system : lando
2019-05-24 20:00:38 +00:00
Nathan Froyd 875e72df9f Bug 1542746 - switch clang{,-cl} to use IR-based instrumentation for PGO; r=firefox-build-system-reviewers,chmanchester
This form of instrumentation is more like our other platforms, and also
opens the possibility of interacting properly with Rust IR-level PGO.

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

--HG--
extra : moz-landing-system : lando
2019-05-24 19:52:41 +00:00
Nathan Froyd 2b3a15afe9 Bug 1542746 - use a static MOZ_PROFILE_ORDER_FILE; r=nalexander,chmanchester
We're planning on switching to IR-based profiling, so we can't use the
frontend-based instrumentation to collect the order in which functions
are executed...at least not during the build itself.  Performance tests
indicate that not having the order information decreases performance
significantly.  So we're going to check in static files for Win32 and
Win64 and use those to perform the ordering.  It's OK if these files are
slightly out of date; as of this writing, builds that generate and then
use these files complain that ~1/3 of the functions can't be found (!).
We're just trying to do something slightly smarter than whatever the
linker default is.

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

--HG--
extra : moz-landing-system : lando
2019-05-24 01:54:59 +00:00
Nathan Froyd 93a44ee14e Bug 1553972 - make --with-pgo-profile-path take a directory; r=nalexander
e10s profiling or IR-based PGO instrumentation will both produce
multiple `.profraw` files that need to be handled in some way.  Since
clang's `-fprofile-generate` option takes a directory, it seems fitting
to make `--with-pgo-profile-path` mirror that by taking a directory, and
letting `merge_profdata.py` deal with whatever files it might find in
said directory.

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

--HG--
extra : moz-landing-system : lando
2019-05-24 01:53:59 +00:00
Kagami Sascha Rosylight bead355959 Bug 1550956: Import builtins in Python 3 compatible way r=firefox-build-system-reviewers,chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D30790

--HG--
extra : moz-landing-system : lando
2019-05-23 03:57:17 +00:00
Mike Hommey 146d61ba71 Bug 1530650 - Add --cap-lints warn to RUSTFLAGS when not building with --enable-warnings-as-errors. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D32080

--HG--
extra : moz-landing-system : lando
2019-05-22 12:59:01 +00:00
Chris Manchester a18c4d2cbd Bug 1553339 - Abandon "2" in name of sccache toolchain artifacts. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D32218

--HG--
extra : moz-landing-system : lando
2019-05-22 21:06:16 +00:00
Brindusan Cristian 952521e616 Backed out changeset fa4c37c31dfd (bug 1550956) as requested by mikedeboer on IRC for causing mach to stop working on Python 2. a=backout 2019-05-22 12:33:23 +03:00
Kagami Sascha Rosylight 2dd546dac6 Bug 1550956: Import builtins in Python 3 compatible way r=firefox-build-system-reviewers,chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D30790

--HG--
extra : moz-landing-system : lando
2019-05-21 18:38:46 +00:00
Nathan Froyd 37d0db29a9 Bug 1551690 - be more specific about the LLVM target on OS X; r=nalexander
Our current OS X builds use `--target=x86_64-darwin11` (which
corresponds to OS X 10.7).  This target is problematic for two reasons:

* We're actually targeting for OS X 10.9 (`MACOSX_DEPLOYMENT_TARGET`);
* It's slightly different from the default Rust target.

Let's address these problems in reverse order: differences from the Rust
target are bad, because the `--target` we provide to `clang` and the
Rust target find their way into LLVM bitcode files and the linker will
refuse to link together bitcode files that have incompatible targets.

Why are the two incompatible?  The current `--target` doesn't have a
"vendor" in triple-speak, whereas the Rust one has "apple" as the
vendor (`x86_64-apple-darwin`) We therefore need to change the
`--target` we pass to `clang` to have a vendor of "apple".

This need is behind the {init,toolchain}.configure changes,
but it has ramifications elsewhere, because `clang` looks for
`--target`-prefixed build tools.  So we have to change the `--target`
for cctools to get the right tool prefixes and we have to change the
`--target` for building clang ourselves so that *those* builds can find
the newly renamed cctools.

Once we've done, that's really enough; we don't *need to address the
first problem: While the `--target` might be `x86_64-apple-darwin11`,
both `clang` and `rustc` will dynamically choose the target triple that
eventually lands in LLVM bitcode files based on
`MACOSX_DEPLOYMENT_TARGET`, which we set in all builds.  But the current
target is slightly misleading, and the cctools don't need to be prefixed
with a particular Darwin version, since they work for all Darwin
targets.  Let's just drop the "11" from the `--target` and eliminate a
little bit of confusion.

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

--HG--
extra : moz-landing-system : lando
2019-05-21 17:53:44 +00:00
Andreea Pavel 58566309c2 Backed out changeset ae7096d1add7 (bug 1551690) for toolchain bustages on a CLOSED TREE 2019-05-21 17:05:24 +03:00
Nathan Froyd d49bc5f0ef Bug 1551690 - be more specific about the LLVM target on OS X; r=nalexander
Our current OS X builds use `--target=x86_64-darwin11` (which
corresponds to OS X 10.7).  This target is problematic for two reasons:

* We're actually targeting for OS X 10.9 (`MACOSX_DEPLOYMENT_TARGET`);
* It's slightly different from the default Rust target.

Let's address these problems in reverse order: differences from the Rust
target are bad, because the `--target` we provide to `clang` and the
Rust target find their way into LLVM bitcode files and the linker will
refuse to link together bitcode files that have incompatible targets.

Why are the two incompatible?  The current `--target` doesn't have a
"vendor" in triple-speak, whereas the Rust one has "apple" as the
vendor (`x86_64-apple-darwin`) We therefore need to change the
`--target` we pass to `clang` to have a vendor of "apple".

This need is behind the {init,toolchain}.configure changes,
but it has ramifications elsewhere, because `clang` looks for
`--target`-prefixed build tools.  So we have to change the `--target`
for cctools to get the right tool prefixes and we have to change the
`--target` for building clang ourselves so that *those* builds can find
the newly renamed cctools.

Once we've done, that's really enough; we don't *need to address the
first problem: While the `--target` might be `x86_64-apple-darwin11`,
both `clang` and `rustc` will dynamically choose the target triple that
eventually lands in LLVM bitcode files based on
`MACOSX_DEPLOYMENT_TARGET`, which we set in all builds.  But the current
target is slightly misleading, and the cctools don't need to be prefixed
with a particular Darwin version, since they work for all Darwin
targets.  Let's just drop the "11" from the `--target` and eliminate a
little bit of confusion.

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

--HG--
extra : moz-landing-system : lando
2019-05-21 13:48:23 +00:00
Coroiu Cristina c4361da40f Backed out changeset 2e560a9e4bcf (bug 1551690) for build bustages 2019-05-21 03:51:56 +03:00
Nathan Froyd dc2ad25275 Bug 1551690 - be more specific about the LLVM target on OS X; r=nalexander
Our current OS X builds use `--target=x86_64-darwin11` (which
corresponds to OS X 10.7).  This target is problematic for two reasons:

* We're actually targeting for OS X 10.9 (`MACOSX_DEPLOYMENT_TARGET`);
* It's slightly different from the default Rust target.

Let's address these problems in reverse order: differences from the Rust
target are bad, because the `--target` we provide to `clang` and the
Rust target find their way into LLVM bitcode files and the linker will
refuse to link together bitcode files that have incompatible targets.

Why are the two incompatible?  The current `--target` doesn't have a
"vendor" in triple-speak, whereas the Rust one has "apple" as the
vendor (`x86_64-apple-darwin`) We therefore need to change the
`--target` we pass to `clang` to have a vendor of "apple".

This need is behind the {init,toolchain}.configure changes,
but it has ramifications elsewhere, because `clang` looks for
`--target`-prefixed build tools.  So we have to change the `--target`
for cctools to get the right tool prefixes and we have to change the
`--target` for building clang ourselves so that *those* builds can find
the newly renamed cctools.

Once we've done, that's really enough; we don't *need to address the
first problem: While the `--target` might be `x86_64-apple-darwin11`,
both `clang` and `rustc` will dynamically choose the target triple that
eventually lands in LLVM bitcode files based on
`MACOSX_DEPLOYMENT_TARGET`, which we set in all builds.  But the current
target is slightly misleading, and the cctools don't need to be prefixed
with a particular Darwin version, since they work for all Darwin
targets.  Let's just drop the "11" from the `--target` and eliminate a
little bit of confusion.

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

--HG--
extra : moz-landing-system : lando
2019-05-15 21:13:17 +00:00
Tom Ritter 505cced8b9 Bug 1471698 - Switch the mingw clang compiler to the 8 branch r=froydnj
This will match the compiler version Tor would like. We backport several
llvm-objcopy patches that landed right after the 8 branch though. We
also grab some upstream changes from mingw-clang in the build script

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

--HG--
extra : moz-landing-system : lando
2019-05-17 19:21:15 +00:00
David Major 12a5d86407 Bug 1526443 - Pick up LLVM fix for CFG on arm64-windows builds r=froydnj
Cherry-picks https://bugs.llvm.org/show_bug.cgi?id=39799 and enables CFG on aarch64-windows automation. It's keyed on an explicit --enable-hardening to avoid breaking the local builds of developers who haven't yet picked up the compiler patch.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 17:53:37 +00:00
Bastien Orivel e661e801af Bug 1552695 - Part 1: Deduplicate syn and quote. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D31737

--HG--
extra : moz-landing-system : lando
2019-05-20 12:21:20 +00:00
Coroiu Cristina 55a63d1520 Backed out 2 changesets (bug 1523526, bug 1526443) for Be bustage on Windows AArch on a CLOSED TREE
Backed out changeset 98013639d600 (bug 1526443)
Backed out changeset e8ac4b512f9d (bug 1523526)
2019-05-20 20:21:56 +03:00
David Major f0dc4b3dbe Bug 1526443 - Pick up LLVM fix for CFG on arm64-windows builds r=froydnj
Cherry-picks https://bugs.llvm.org/show_bug.cgi?id=39799 and enables CFG on aarch64-windows automation. It's keyed on an explicit --enable-hardening to avoid breaking the local builds of developers who haven't yet picked up the compiler patch.

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

--HG--
extra : moz-landing-system : lando
2019-05-13 18:38:23 +00:00
Gijs Kruitbosch 1722aa9085 Bug 1552425 - re-disable e10s when generating PGO profile data to fix speedometer perf regression r=froydnj
Bug 1548941 restricted under which circumstances we allow the
browser.tabs.remote.autostart pref to turn off e10s. The PGO profileserver.py
script relied on the unittest-required user.js prefs collection to turn off
e10s (see also bug 1196094) via this pref. For PGO builds, we do not set the
MOZ_DISABLE_NONLOCAL_CONNECTIONS env var, which meant that we stopped
honouring the pref to turn off e10s. Unfortunately, this meant that
e10s was inadvertently now switched on for the pgo profiling, which
negatively impacted speedometer on PGO builds (and possibly other tests).

All this change does is re-disable e10s for PGO profiling. We should
investigate how to turn e10s on "properly" for PGO, but we can do that in
bug 1196094, without taking this temporary regression, especially as 68
branches.

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

--HG--
extra : moz-landing-system : lando
2019-05-19 13:26:13 +00:00
Chris Manchester 5fa8ca19bf Bug 1552021 - Add an option to turn off rust incremental compilation. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D31341

--HG--
extra : moz-landing-system : lando
2019-05-17 23:00:30 +00:00
Emilio Cobos Álvarez dba21ae038 Bug 1552476 - Ensure we pass a string to CDLL on Windows. r=froydnj
Apparently it doesn't deal very well with unicode objects.

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

--HG--
extra : moz-landing-system : lando
2019-05-17 19:16:55 +00:00
Emilio Cobos Álvarez cee627fc60 Bug 1529002 - Update cbindgen. r=boris
We need this to auto-generate the copy-constructor for TransformOperation,
without which the patch wouldn't build.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 23:24:17 +00:00
Ciure Andrei 00a73f5055 Backed out 17 changesets (bug 1550554, bug 1549593, bug 1551991, bug 1529002) for failing multiple Android tests and Windows 2012 bustages CLOSED TREE
Backed out changeset 3bb3fafa62e2 (bug 1551991)
Backed out changeset e12a979de502 (bug 1551991)
Backed out changeset d81e4aa6bf0c (bug 1551991)
Backed out changeset c354e61f2a34 (bug 1551991)
Backed out changeset 37fd602bebc2 (bug 1551991)
Backed out changeset 6c1f00cc30ca (bug 1551991)
Backed out changeset 8a7a0329bdc3 (bug 1551991)
Backed out changeset 86159475ddd3 (bug 1551991)
Backed out changeset 35f91a9ea82a (bug 1529002)
Backed out changeset 6798155e71dc (bug 1529002)
Backed out changeset b90c2cf5b8c5 (bug 1550554)
Backed out changeset 882ab9868c95 (bug 1550554)
Backed out changeset b28a48e2ed21 (bug 1550554)
Backed out changeset 2c31fe18eefd (bug 1550554)
Backed out changeset 57f2362aa538 (bug 1550554)
Backed out changeset 45f171b26e95 (bug 1550554)
Backed out changeset 2e4b263c9410 (bug 1549593)
2019-05-16 13:17:10 +03:00
Emilio Cobos Álvarez e10c38f6f4 Bug 1529002 - Update cbindgen. r=boris
We need this to auto-generate the copy-constructor for TransformOperation,
without which the patch wouldn't build.

Differential Revision: https://phabricator.services.mozilla.com/D30799
2019-05-16 16:24:36 +02:00
Kevin Jacobs b93f23a66b Bug 1535210 - Set SSL STATE_IS_BROKEN flag for TLS1.0 and TLS 1.1 connections. r=keeler
Differential Revision: https://phabricator.services.mozilla.com/D29576

--HG--
extra : moz-landing-system : lando
2019-05-15 23:34:52 +00:00
Emilio Cobos Álvarez c74f3a885b Bug 1549762 - Don't build mozglue linker tests if building with icecream. r=glandium
As icecream doesn't deal well with .incbin.

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

--HG--
extra : moz-landing-system : lando
2019-05-15 13:40:23 +00:00
Emilio Cobos Álvarez 56a3566948 Bug 1551618 - Check for libclang >= 4.0 in configure. r=froydnj
This is better than failing with obscure rust errors later on.

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

--HG--
extra : moz-landing-system : lando
2019-05-15 13:11:52 +00:00
Nathan Froyd 85925b5be6 Bug 1547196 - remove rustup wrapper from `rustc` as well as `cargo`; r=glandium
Having `rustc` be `rustup`'s wrapper for `rustc` means that we may
silently honor `rustup`'s override mechanisms.  We noticed this first on
OS X, where we use the "real" `cargo` but `rustup`'s `rustc` wrapper,
and problems ensued when `cargo` thought it was using one version of
`rustc`, but actually wound up using something different.

It seems better to avoid silently interposing `rustup`'s toolchain
override mechanisms everywhere, rather than having to special-case OS
X.  So let's factor out a general mechanism for removing the wrappers
`rustup` provides and use that for both `rustc` and `cargo`.  The tests
need adjusting because we weren't triggering the unwrapping cases
before; we don't yet test the case where we really do need to unwrap.
That test can be left for a future patch.

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

--HG--
extra : moz-landing-system : lando
2019-05-14 05:43:19 +00:00
Nathan Froyd 1396262e0e Bug 1550868 - enforce a minimum version of clang-cl; r=glandium
We've not been checking the clang-cl version in use.  This lack of
checking is bad, for a couple of reasons:

* Released versions of clang-cl differ drastically in their robustness;
* Only the most recent version of clang-cl supports aarch64.

We should check for a minimum version of clang-cl, just like our other
supported compilers.  As a bonus, we can then start depending on
features that we know appear in the particular minimum clang-cl
version.  (The current patch is motivated by `/clang:` command-line
support, but one could pick other things.)

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

--HG--
extra : moz-landing-system : lando
2019-05-14 14:22:55 +00:00
Sebastian Streich 99e0852267 Bug 1402530 - Use IsOriginPotentiallyTrustworthy in ShouldLoad r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D30917

--HG--
extra : moz-landing-system : lando
2019-05-13 14:40:40 +00:00
Nathan Froyd f104ce2b4a Bug 1546438 - add a `cross` option to `MOZ_LTO` for cross-language LTO; r=mshal
This option is for performing LTO between C++ code and Rust code.  The
actual build pieces for Rust code are coming in the next patch.

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

--HG--
extra : moz-landing-system : lando
2019-05-10 20:16:36 +00:00
Nathan Froyd ae023b43de Bug 1549794 - add sysroot flags for the macOS SDK to bindgen's flags; r=nalexander
We already do this for the compiler that we detect via
toolchain.configure...but as the comment in `basic_bindgen_cflags`
alludes to, we don't actually use that compiler here.  We use a much
more bare-bones compiler, so we have to add the necessary flags manually.

We need to make `--with-macos-sdk` a `js_option` so that uses of bindgen
in the JS engine will receive the proper flags.

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

--HG--
extra : moz-landing-system : lando
2019-05-10 20:07:34 +00:00
Gijs Kruitbosch c14acdeadd Bug 1548941 - remove e10s force-enable and force-disable prefs, and on desktop restrict 'normal' e10s pref to automation and unofficial builds, r=bholley,ahal
Differential Revision: https://phabricator.services.mozilla.com/D29892

--HG--
extra : moz-landing-system : lando
2019-05-09 21:55:46 +00:00
Noemi Erli 1c65279044 Backed out changeset 38ce182f68ea (bug 1402530) for build bustages in nsMixedContentBlocker.cpp CLOSED TREE 2019-05-09 17:29:38 +03:00
Sebastian Streich db1660661f Bug 1402530 - Use IsOriginPotentiallyTrustworthy in ShouldLoad r=ckerschb,jkt
Differential Revision: https://phabricator.services.mozilla.com/D28870

--HG--
extra : moz-landing-system : lando
2019-05-07 18:08:19 +00:00
Mike Hommey fa3631a2e3 Bug 1549886 - Move MOZ_TELEMETRY_REPORTING to python configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D30335

--HG--
extra : moz-landing-system : lando
2019-05-08 14:33:54 +00:00
Andreea Pavel 0a95eec6ae Backed out changeset 4e2250bbaed3 (bug 1548941) for failing test_gpuprocess.js on a CLOSED TREE 2019-05-08 22:55:45 +03:00
Gijs Kruitbosch 65eb7a47aa Bug 1548941 - remove e10s force-enable and force-disable prefs, and on desktop restrict 'normal' e10s pref to automation and unofficial builds, r=bholley,ahal
Differential Revision: https://phabricator.services.mozilla.com/D29892

--HG--
extra : moz-landing-system : lando
2019-05-08 15:56:53 +00:00
Alexis Beingessner 1017bd764c Bug 1525402 - Bump cbindgen to 0.8.6. r=kvark
This version adds support for Rust 2018's new externs

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

--HG--
extra : moz-landing-system : lando
2019-05-07 01:40:15 +00:00
Nick Alexander a7e3d82701 Bug 1543247 - Part 1: Add `mach browsertime` command that installs and invokes browsertime. r=Standard8,ahal
[browsertime](https://github.com/sitespeedio/browsertime) is a harness
for running performance tests, similar to Mozilla's Raptor testing
framework.  The Performance Team is using it locally with some
success, but we're running a heavily modified toolchain that is
challenging to install.  This mach command is intended to be leverage
for getting more folks able to use browsertime easily.

In particular, the version of browsertime that this installs has
nalexander's changes to support testing GeckoView-based vehicles.  If
this approach meets with approval, I'll continue to follow-up with
additional configuration and tooling layers to make it even easier to
drive GeckoView-based vehicles.

I elected to piggy-back install on the eslint installation process,
since this is very similar.  To that end, I generalized what was there
very slightly.  I elected not to try to move the existing code into a
more obvious shared location, although it might be possible, because
it wasn't clear what contexts the existing code would be invoked
from.  In particular I wasn't certain the code could rely on a
complete mozbuild checkout.

I did need to ensure the local Node.js binary is early on the PATH;
this was an issue I ran into with my initial Node/Yarn prototyping
many months ago.  At heart the issue is that package scripts in the
wild invoke a bare `node` or `npm` command; if there was a culture of
invoking $NODE or $NPM, this wouldn't be necessary.  There's no harm
doing it for ESlint, and it will help the next person who wants to
install an NPM package for tooling in this manner.

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

--HG--
extra : moz-landing-system : lando
2019-05-06 23:56:49 +00:00
Ryan VanderMeulen 40c297ce51 Bug 1548916 - Add support for specifying a custom path for app version files. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D29918

--HG--
extra : moz-landing-system : lando
2019-05-06 23:19:44 +00:00
Kartikaya Gupta 3068d94ed2 Bug 1549554 - Use biplist instead of plistlib so we can parse SDKSettings.plist in the 10.14 SDK. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D30097

--HG--
extra : moz-landing-system : lando
2019-05-06 20:11:16 +00:00
Razvan Maries 12bcfbb334 Backed out 2 changesets (bug 1543247) for build bustages. CLOSED TREE
Backed out changeset feb726e4f15d (bug 1543247)
Backed out changeset 4b3619d89abd (bug 1543247)
2019-05-04 03:10:55 +03:00
Nick Alexander 6df6c7ee39 Bug 1543247 - Part 1: Add `mach browsertime` command that installs and invokes browsertime. r=Standard8,ahal
[browsertime](https://github.com/sitespeedio/browsertime) is a harness
for running performance tests, similar to Mozilla's Raptor testing
framework.  The Performance Team is using it locally with some
success, but we're running a heavily modified toolchain that is
challenging to install.  This mach command is intended to be leverage
for getting more folks able to use browsertime easily.

In particular, the version of browsertime that this installs has
nalexander's changes to support testing GeckoView-based vehicles.  If
this approach meets with approval, I'll continue to follow-up with
additional configuration and tooling layers to make it even easier to
drive GeckoView-based vehicles.

I elected to piggy-back install on the eslint installation process,
since this is very similar.  To that end, I generalized what was there
very slightly.  I elected not to try to move the existing code into a
more obvious shared location, although it might be possible, because
it wasn't clear what contexts the existing code would be invoked
from.  In particular I wasn't certain the code could rely on a
complete mozbuild checkout.

I did need to ensure the local Node.js binary is early on the PATH;
this was an issue I ran into with my initial Node/Yarn prototyping
many months ago.  At heart the issue is that package scripts in the
wild invoke a bare `node` or `npm` command; if there was a culture of
invoking $NODE or $NPM, this wouldn't be necessary.  There's no harm
doing it for ESlint, and it will help the next person who wants to
install an NPM package for tooling in this manner.

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

--HG--
extra : moz-landing-system : lando
2019-05-03 22:44:23 +00:00
Mike Shal 035996e0ef Bug 1523324 - Add retries to upload_generated_sources.py; r=nalexander
Occasionally the taskcluster fetches can fail, so make sure the requests
library automatically retries if possible.

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

--HG--
extra : moz-landing-system : lando
2019-05-03 23:26:51 +00:00
Dan Minor e2aee8c88f Bug 1540760 - Make it possible to use clang-cl as an assembler; r=firefox-build-system-reviewers,mshal
Some media libraries use gas syntax in their assembly files. Rather than
converting these arm assembly syntax files for aarch64, we can use clang-cl
to build them directly.

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

--HG--
extra : moz-landing-system : lando
2019-05-01 15:04:48 +00:00
Rob Thijssen c00716af37 Bug 1543026 - enable sccache on gcp r=wcosta
this change comprises the in-tree changes required to make use of sccache in gcp.
specifically:
- a gcp metadata lookup for availability-zone is added to mozconfig, enabling a build to determine its regional gcp sccache bucket
- the sccache cargo build command is modified to include the gcs feature when the environment contains gcs configuration

note that further changes are required on infra to support sccache use. the required changes already [exist](https://github.com/mozilla-releng/OpenCloudConfig/commit/1d515dc) and are enabled for gcp windows infra, including:
- a json credential file on the build instance filesystem, containing credentials valid for the appropriate scm level bucket for the gcp region
- an `SCCACHE_GCS_KEY_PATH` env variable containing the path to the json credential file
- an `SCCACHE_GCS_RW_MODE` env variable containg the text `READ_WRITE`
- sccache buckets must exist for each region and scm levels 1 & 3
- credentials for scm level 1 buckets **must not** be valid for scm level 3 buckets

on gcp systems which do not contain credential files and the above mentioned env variables (eg gecko-[1-3]-b-linux), sccache should fail gracefully without breaking builds.

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

--HG--
extra : moz-landing-system : lando
2019-05-02 12:56:20 +00:00
Sylvestre Ledru e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

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

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
Geoff Brown ad07ef3e50 Bug 1548137 - Change bug component for build/mobile; r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D29428

--HG--
extra : moz-landing-system : lando
2019-04-30 22:45:44 +00:00
Mike Hommey e958e4adc0 Bug 1536543 - Require rust 1.34. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D25896

--HG--
extra : moz-landing-system : lando
2019-04-30 22:16:11 +00:00
Nathan Froyd 20f2bebd3f Bug 1547038 - ignore unrelated errors when checking compiler flags with ccache; r=chmanchester
Using `ccache` apparently interferes with how flag checking is done when
we're using `clang` as our compiler.  We can work around this by adding
a few more flags to flag checking.

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

--HG--
extra : moz-landing-system : lando
2019-04-30 20:04:22 +00:00
Bobby Holley cc31352b96 Bug 1547847 - Refine MacOS header configure check to whitelist cross-compilation. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D29285

--HG--
extra : moz-landing-system : lando
2019-04-30 00:06:53 +00:00
Nathan Froyd 0eebba71e5 Bug 1540082 - add an aarch64-cross clang build; r=nalexander
Analogously to the existing `linux64-clang-8-android-cross` build, this
build is a linux x86-64 build with runtime library support for aarch64.

Depends on D28405

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

--HG--
extra : moz-landing-system : lando
2019-04-22 22:11:12 +00:00
Nathan Froyd 047805c859 Bug 1540082 - add support for extra runtime targets in build-clang.py; r=firefox-build-system-reviewers,chmanchester
This change enables us to build compiler-rt and related
libraries (e.g. address sanitizer, etc.) for whatever targets we like,
assuming that we have an accessible sysroot for the target on the build
machine.

Depends on D28404

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

--HG--
extra : moz-landing-system : lando
2019-04-23 19:45:06 +00:00
Nathan Froyd 29df08bb6d Bug 1546136 - dump cmake logs on command failures; r=firefox-build-system-reviewers,chmanchester
CMake errors can be pretty opaque, especially if CMake is being run
inside the Ninja build process.  Let's try to surface those errors to
make problems easier to debug.

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

--HG--
extra : moz-landing-system : lando
2019-04-23 19:44:55 +00:00
Mark Banner e4c79f2689 Bug 1495672 - Block configure if the Mac OS X headers are not installed on 10.14. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D28817

--HG--
extra : moz-landing-system : lando
2019-04-25 16:27:18 +00:00
Nathan Froyd e6da99d7d3 Bug 1546491 - raise minimum windows SDK version; r=RyanVM
We've landed some recent changes that implicitly require SDK
10.0.17134.0.  Since we've been building with that version for some time
in automation, let's go ahead and raise the minimum version accordingly.

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

--HG--
extra : moz-landing-system : lando
2019-04-24 16:15:10 +00:00
Cosmin Sabou 428af65705 Backed out changeset 445a4ea25bb1 (bug 1546491) for build bustages on test/configure/lint.py. CLOSED TREE 2019-04-24 18:44:08 +03:00
Nathan Froyd c7748ae96f Bug 1546491 - raise minimum windows SDK version; r=RyanVM
We've landed some recent changes that implicitly require SDK
10.0.17134.0.  Since we've been building with that version for some time
in automation, let's go ahead and raise the minimum version accordingly.

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

--HG--
extra : moz-landing-system : lando
2019-04-24 15:09:05 +00:00
Gabriele Svelto 83c135087e Bug 1542827 - Revert a change to LLVM to fix unwinding to the exception handler on Windows/AArch64 r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D27798

--HG--
extra : moz-landing-system : lando
2019-04-24 11:52:11 +00:00
Nathan Froyd 49c1be9b8f Bug 1545502 - move fuzzing options to toolchain.configure; r=firefox-build-system-reviewers,chmanchester
We moved fuzzing options out of `toolkit/moz.configure` into `js`'s
configure a while back, but we seem to have snuck some fuzzing-related
options into `toolchain.configure` in the interim.  But we can't make
the `toolchain.configure` bits depend on the `js` bits; let's just put
everything in `toolchain.configure`.

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

--HG--
extra : moz-landing-system : lando
2019-04-23 19:15:17 +00:00
Nathan Froyd 3b7164be54 Bug 1542958 - fix code section adjustments in elfhack; r=glandium
We were never adjusting `last` in this loop, so we were computing the
wrong addresses for all sections beyond the first.  Which in turn meant
that we would compute the wrong size for the section data we needed to
allocate.

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

--HG--
extra : moz-landing-system : lando
2019-04-22 23:44:28 +00:00
Nathan Froyd cc22b1cec2 Bug 1544568 - pull out runtime library-related settings in build-clang.py; r=firefox-build-system-reviewers,chmanchester
It seems better to set switches enabling runtime libraries and switches
enabling runtime libraries to build in different places, as future
changes might only enable runtime libraries for certain targets, but not
need any special switches for building.

Depends on D27594

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

--HG--
extra : moz-landing-system : lando
2019-04-16 17:18:01 +00:00
Nathan Froyd 8fffaf4e11 Bug 1544568 - make setting of `LLVM_*_TARGETS` more explicit; r=firefox-build-system-reviewers,chmanchester
`android_targets` here is a dict, not a sequence, and while `iter` on a
dict object implicitly means `dict.iterkeys()`, that's not really
obvious.  We should instead be explicit about what we're doing here.

Depends on D27593

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

--HG--
extra : moz-landing-system : lando
2019-04-16 17:15:15 +00:00
Nathan Froyd cc3cc65fd7 Bug 1544568 - don't build XRay libraries; r=firefox-build-system-reviewers,chmanchester
We don't need them and we might as well be explicit about not building them.

Depends on D27592

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

--HG--
extra : moz-landing-system : lando
2019-04-16 17:14:15 +00:00
Nathan Froyd 306721430b Bug 1544568 - move compiler-rt runtimes setup into build_one_stage; r=firefox-build-system-reviewers,chmanchester
The setup for compiler-rt is currently done before the stage 2 build,
which happens to be the final stage for our android runtime libraries
build.  But we may also want to build runtime libraries on 3-stage
bootstrap builds, in which case we don't want compiler-rt to be active
for the second stage.  Move the setup into build_one_stage so that the
setup is controllable by is_final_stage, which is set in all the place
that we care about.

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

--HG--
extra : moz-landing-system : lando
2019-04-16 17:13:58 +00:00
Ehsan Akhgari ccfae51c32 Bug 1500533 - Ensure that TLS session resumption tickets are only consumed if the channel isn't isolated by anti-tracking checks; r=michal,baku
Differential Revision: https://phabricator.services.mozilla.com/D26996

--HG--
extra : moz-landing-system : lando
2019-04-18 01:00:22 +00:00
Jesse Schwartzentruber 3b2a6e156c Bug 1537751 - Add x86_64 target to Android Clang build configuration. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D24349

--HG--
extra : moz-landing-system : lando
2019-04-16 18:30:56 +00:00
Emilio Cobos Álvarez 4f84601466 Bug 1542878 - Check all the cbindgen executables before failing configure. r=froydnj
Before this patch, we first find an executable, then check the version. So if
the first executable we find is outdated, we won't look for others.

Instead, check each of them for different versions manually. This will also
unblock bug 1540533, since at that point we know that we'll be able to find
a cbindgen with the right version.

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

--HG--
extra : moz-landing-system : lando
2019-04-17 14:31:19 +00:00
Eric Rahm 1cfab6d66f Bug 1544418 - Increase max OSX SDK version to 10.14. r=mshal
We are no longer seeing black screen issues on OSX 10.14.4.

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

--HG--
extra : moz-landing-system : lando
2019-04-16 18:00:45 +00:00
Eric Rahm 2016216d6f Bug 1544418 - Backed out changeset 3d0236f985f8. r=mshal
Backout update that broke OSX 10.13 builds.

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

--HG--
extra : moz-landing-system : lando
2019-04-16 18:00:57 +00:00
Nathan Froyd 0d8cc55ffb Bug 1542958 - avoid malloc/delete[] mismatches in elfhack; r=glandium
We were allocating ElfSection's data with `new[]` and modifying it with
`realloc` in some places, which causes allocator mismatches.
Consistently manage the data with `malloc`, `realloc`, and `free` instead.

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

--HG--
extra : moz-landing-system : lando
2019-04-15 23:40:04 +00:00
Chris Manchester 0ce6855fe4 Bug 1544139 - Un-set RUSTFLAGS for artifact builds. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D27397

--HG--
extra : moz-landing-system : lando
2019-04-12 22:47:52 +00:00
Mike Shal 63403bb0df Bug 1522931 - always check the OSX SDK version; r=firefox-build-system-reviewers,chmanchester
Bug 1500504 added a version check for the SDK, but it only does the
check if --with-macos-sdk is used. We should also check the version when
using the default SDK.

Note that this means we now set MACOS_SDK_DIR to be the default SDK even
if it wasn't set explicitly from --with-macos-sdk

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

--HG--
extra : moz-landing-system : lando
2019-04-12 19:00:13 +00:00
Mike Shal b64b81d0c5 Bug 1522931 - Vendor biplist; r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D26390

--HG--
extra : moz-landing-system : lando
2019-04-12 19:00:15 +00:00
Cosmin Sabou 856169370c Backed out changeset ac23ad5ef0c1 (bug 1542862) as requested by glandium for being obsolete after bug 1536486. 2019-04-12 02:24:21 +03:00
Mike Hommey 35d057b2e3 Bug 1536486 - Use plain cargo instead of rustup cargo on OSX. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D27040

--HG--
extra : moz-landing-system : lando
2019-04-11 22:25:51 +00:00
Oana Pop Rus 76651301a1 Backed out changeset acb04833e713 (bug 1500533) for assertion failure in nsHttpChannel.cpp on a CLOSED TREE 2019-04-11 23:15:08 +03:00
Ehsan Akhgari bf2a5e6e54 Bug 1500533 - Ensure that TLS session resumption tickets are only consumed if the channel isn't isolated by anti-tracking checks; r=michal,baku
Differential Revision: https://phabricator.services.mozilla.com/D26996

--HG--
extra : moz-landing-system : lando
2019-04-11 18:36:16 +00:00
Mike Shal e28f6db31f Bug 1537574 - Use mozbuild's backend-out-of-date logic for RecursiveMake; r=firefox-build-system-reviewers,chmanchester
If mozbuild parsing fails due to a missing file (eg: a file not existing
in UNIFIED_SOURCES), then no Makefiles are written out, but
config.status exists. This would cause mozbuild to think that configure
doesn't need to run, and rely on make to perform the backend-out-of-date
check in rebuild-backend.mk. Unfortunately since no Makefiles were
written, the make command fails immediately and no attempt is made to
re-create the backend. Note that this is only a problem if the first
mozbuild parsing from a clobber build fails, otherwise there is
typically a top-level Makefile from a previous build to call into (at
which point make can determine it is out-of-date, and re-invoke itself).

The fix is to have the RecursiveMake backend re-use the same logic that
was introduced into mozbuild for alternate backends, and remove
rebuild-backend.mk. This way, mozbuild can always determine if the
backend needs to be regenerated, even if the initial parsing failed.

Test code was also relying on rebuild-backend.mk to generate the
TestBackend, but moving backend_out_of_date() into MozbuildObject allows
this code to be shared.

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

--HG--
rename : build/gen_test_backend.py => python/mozbuild/mozbuild/gen_test_backend.py
extra : moz-landing-system : lando
2019-04-10 22:14:27 +00:00
Daniel Varga 6d6f6dadce Backed out 4 changesets (bug 1458385) for nightly updates fail. a=backout
Backed out changeset 09338587b68e (bug 1458385)
Backed out changeset f7791b680d46 (bug 1458385)
Backed out changeset cc06a7beb3d1 (bug 1458385)
Backed out changeset 3b10487587c3 (bug 1458385)
2019-04-10 21:09:46 +03:00
Csoregi Natalia efc3a9c990 Backed out 2 changesets (bug 1522931) for breaking macOS build on 10.14. a=backout
Backed out changeset 27214432fe48 (bug 1522931)
Backed out changeset 71191e5499a1 (bug 1522931)
2019-04-10 17:10:12 +03:00
Mike Shal 3af5e94461 Bug 1522931 - always check the OSX SDK version; r=firefox-build-system-reviewers,chmanchester
Bug 1500504 added a version check for the SDK, but it only does the
check if --with-macos-sdk is used. We should also check the version when
using the default SDK.

Note that this means we now set MACOS_SDK_DIR to be the default SDK even
if it wasn't set explicitly from --with-macos-sdk

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

--HG--
extra : moz-landing-system : lando
2019-04-09 20:38:51 +00:00
Mike Hommey c0bec91e84 Bug 1537644 - Avoid using link.exe during configure. r=chmanchester
Interestingly, the change makes one configure test have a different
result (localeconv ends up being found when it used not to be found),
but the result of that check is actually not used on Windows because we
set HAVE_LOCALECONV manually.

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

--HG--
extra : moz-landing-system : lando
2019-04-09 21:57:19 +00:00
Mike Shal ca72d9f976 Bug 1522931 - Vendor biplist; r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D26390

--HG--
extra : moz-landing-system : lando
2019-04-08 16:29:55 +00:00
Bobby Holley 2a1f1c84f4 Bug 1542862 - Eagerly fail when building Android on OSX with rust 1.33 and point to the bug/workaround. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D26589

--HG--
extra : moz-landing-system : lando
2019-04-09 18:40:44 +00:00
Tom Prince b4e1868e59 Bug 1458385: Package mar and mbsdiff as a toolchain; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D24229

--HG--
extra : moz-landing-system : lando
2019-04-06 05:49:31 +00:00
Andreea Pavel a7f868ac25 Backed out changeset 95b3298fd2d4 (bug 1537574) for windows task timeouts a=backout
--HG--
rename : python/mozbuild/mozbuild/gen_test_backend.py => build/gen_test_backend.py
2019-04-08 22:23:03 +03:00
Chris Manchester 37d285c812 Bug 1542400 - Don't set LLVM_DEFAULT_TARGET_TRIPLE to possibly erroneous value when building clang runtimes. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D26384

--HG--
extra : moz-landing-system : lando
2019-04-08 16:28:24 +00:00
Mike Shal 96425af79a Bug 1537574 - Use mozbuild's backend-out-of-date logic for RecursiveMake; r=firefox-build-system-reviewers,chmanchester
If mozbuild parsing fails due to a missing file (eg: a file not existing
in UNIFIED_SOURCES), then no Makefiles are written out, but
config.status exists. This would cause mozbuild to think that configure
doesn't need to run, and rely on make to perform the backend-out-of-date
check in rebuild-backend.mk. Unfortunately since no Makefiles were
written, the make command fails immediately and no attempt is made to
re-create the backend. Note that this is only a problem if the first
mozbuild parsing from a clobber build fails, otherwise there is
typically a top-level Makefile from a previous build to call into (at
which point make can determine it is out-of-date, and re-invoke itself).

The fix is to have the RecursiveMake backend re-use the same logic that
was introduced into mozbuild for alternate backends, and remove
rebuild-backend.mk. This way, mozbuild can always determine if the
backend needs to be regenerated, even if the initial parsing failed.

Test code was also relying on rebuild-backend.mk to generate the
TestBackend, but moving backend_out_of_date() into MozbuildObject allows
this code to be shared.

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

--HG--
rename : build/gen_test_backend.py => python/mozbuild/mozbuild/gen_test_backend.py
extra : moz-landing-system : lando
2019-04-08 16:37:56 +00:00
Mike Hommey b22d57ac74 Bug 1541821 - Update debian7 docker images for CVE-2019-3462. r=tomprince
This imports the changes from wheezy-lts (http://deb.freexian.com/extended-lts/)
and creates a package we install in the debian7-based images (with a
modified version number to work around bug #1419577.

This leaves out debian7-raw and debian7-packages as unpatched, because
of the chicken-and-egg problem.

Depends on D26100

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

--HG--
extra : moz-landing-system : lando
2019-04-04 16:23:58 +00:00
Masatoshi Kimura 6498afaa9e Bug 1325897 - Unship some Universal CRT DLLs. r=dmajor,glandium
Differential Revision: https://phabricator.services.mozilla.com/D23794

--HG--
extra : moz-landing-system : lando
2019-04-04 22:59:55 +00:00
Christian Holler e3fb12ff12 Bug 1541943 - Temporarily switch libFuzzer builds back to clang-7. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D26194

--HG--
extra : moz-landing-system : lando
2019-04-04 16:47:57 +00:00
Mike Hommey aeac69533b Bug 1540882 - Align binutils aarch64 target with build time clang --target. r=froydnj
When cross-building with clang, we use `--target` with a target that is
derived from the configure target, with the vendor removed. So for
`configure --target=aarch64-unknown-linux-gnu`, we use
`clang --target=aarch64-linux-gnu`.

Then, clang itself looks for tools as `$target-$tool` first, then
`$tool`, which means for the assembler,  it's looking for
`aarch64-linux-gnu-as` before `as`, but not
`aarch64-unknown-linux-gnu-as`.

Building GNU as with `--target=aarch64-unknown-linux-gnu` creates the
`aarch64-unknown-linux-gnu-as`, but we really want `aarch64-linux-gnu`,
so we adjust the target in the binutils build script.

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

--HG--
extra : moz-landing-system : lando
2019-04-02 13:50:54 +00:00
Mike Hommey b23835262f Followup for bug 1538060 - Unbust OSX ccov builds. r=me,a=CristianB
We rename the gcov_flush patch to force a rebuild of clang with the
updated patch.
2019-04-02 22:41:59 +09:00
Mike Hommey 9454edbe38 Bug 1538060 - Update non-Windows builds to clang 8. r=froydnj
Windows builds have been taken care of in bug 1535441.

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

--HG--
rename : build/build-clang/clang-7-android.json => build/build-clang/clang-8-android.json
rename : build/build-clang/clang-7-linux64.json => build/build-clang/clang-8-linux64.json
rename : build/build-clang/clang-7-macosx64.json => build/build-clang/clang-8-macosx64.json
rename : build/build-clang/clang-trunk-mingw.json => build/build-clang/clang-8-mingw.json
rename : taskcluster/scripts/misc/build-clang-7-android.sh => taskcluster/scripts/misc/build-clang-8-android.sh
rename : taskcluster/scripts/misc/build-clang-7-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-8-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-7-linux.sh => taskcluster/scripts/misc/build-clang-8-linux.sh
rename : taskcluster/scripts/misc/build-clang-trunk-mingw.sh => taskcluster/scripts/misc/build-clang-8-mingw.sh
extra : moz-landing-system : lando
2019-04-02 02:18:10 +00:00
Noemi Erli 395164bc36 Backed out changeset 9567622873d6 (bug 1325897) for causing Toolchains stackwalks bustages CLOSED TREE 2019-04-02 05:36:23 +03:00
Noemi Erli c479fa48df Backed out changeset 0d8cf467ed34 (bug 1538060) for Toolchains bustages CLOSED TREE
--HG--
rename : build/build-clang/clang-8-android.json => build/build-clang/clang-7-android.json
rename : build/build-clang/clang-8-linux64.json => build/build-clang/clang-7-linux64.json
rename : build/build-clang/clang-8-macosx64.json => build/build-clang/clang-7-macosx64.json
rename : build/build-clang/clang-8-mingw.json => build/build-clang/clang-trunk-mingw.json
rename : taskcluster/scripts/misc/build-clang-8-android.sh => taskcluster/scripts/misc/build-clang-7-android.sh
rename : taskcluster/scripts/misc/build-clang-8-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-7-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-8-linux.sh => taskcluster/scripts/misc/build-clang-7-linux.sh
rename : taskcluster/scripts/misc/build-clang-8-mingw.sh => taskcluster/scripts/misc/build-clang-trunk-mingw.sh
2019-04-02 04:54:34 +03:00
Mike Hommey 0b2041f465 Bug 1538060 - Update non-Windows builds to clang 8. r=froydnj
Windows builds have been taken care of in bug 1535441.

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

--HG--
rename : build/build-clang/clang-7-android.json => build/build-clang/clang-8-android.json
rename : build/build-clang/clang-7-linux64.json => build/build-clang/clang-8-linux64.json
rename : build/build-clang/clang-7-macosx64.json => build/build-clang/clang-8-macosx64.json
rename : build/build-clang/clang-trunk-mingw.json => build/build-clang/clang-8-mingw.json
rename : taskcluster/scripts/misc/build-clang-7-android.sh => taskcluster/scripts/misc/build-clang-8-android.sh
rename : taskcluster/scripts/misc/build-clang-7-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-8-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-7-linux.sh => taskcluster/scripts/misc/build-clang-8-linux.sh
rename : taskcluster/scripts/misc/build-clang-trunk-mingw.sh => taskcluster/scripts/misc/build-clang-8-mingw.sh
extra : moz-landing-system : lando
2019-04-01 12:23:13 +00:00
Sylvestre Ledru 04ccada040 Bug 1536790 - Also import clangTidyMPIModule when building the clang-plugin r=andi
Depends on D24175

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

--HG--
extra : moz-landing-system : lando
2019-04-01 12:24:37 +00:00
Andi-Bogdan Postelnicu c303df04c3 Bug 1539779 - clang-tidy 8 mixes stderr and stdout causing parsing issues. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D25255

--HG--
extra : moz-landing-system : lando
2019-04-01 12:18:44 +00:00
Sylvestre Ledru bf99cf9d2e Bug 1536790 - Upgrade to clang-{tidy,format} 8.0.0 (from 7.0.1) r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24175

--HG--
extra : moz-landing-system : lando
2019-04-01 12:24:35 +00:00
Masatoshi Kimura 1d361e352e Bug 1325897 - Unship some Universal CRT DLLs. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D23794

--HG--
extra : moz-landing-system : lando
2019-04-01 15:37:07 +00:00
Nick Alexander 0473ac6e86 Bug 1525968 - Post: Make $topobjdir/.lldbinit reference full build symbols on Android. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D19092

--HG--
extra : moz-landing-system : lando
2019-03-27 22:37:58 +00:00
Mike Hommey 920c719ba8 Bug 1540369 - Build GNU as for aarch64 target in binutils toolchain. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D25502

--HG--
extra : moz-landing-system : lando
2019-03-30 23:04:42 +00:00
Emilio Cobos Álvarez 1edac4dc48 Bug 1536582 - Update cbindgen. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D25520

--HG--
extra : moz-landing-system : lando
2019-03-30 19:55:23 +00:00
Ciure Andrei 8a67ec169a Backed out 3 changesets (bug 1538060, bug 1539779, bug 1536790) for causing clang-tidy bustages CLOSED TREE
Backed out changeset 7d058f3174e5 (bug 1538060)
Backed out changeset 8839622122ed (bug 1539779)
Backed out changeset 9eb7867c1dd4 (bug 1536790)

--HG--
rename : build/build-clang/clang-8-android.json => build/build-clang/clang-7-android.json
rename : build/build-clang/clang-8-linux64.json => build/build-clang/clang-7-linux64.json
rename : build/build-clang/clang-8-macosx64.json => build/build-clang/clang-7-macosx64.json
rename : build/build-clang/clang-8-mingw.json => build/build-clang/clang-trunk-mingw.json
rename : taskcluster/scripts/misc/build-clang-8-android.sh => taskcluster/scripts/misc/build-clang-7-android.sh
rename : taskcluster/scripts/misc/build-clang-8-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-7-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-8-linux.sh => taskcluster/scripts/misc/build-clang-7-linux.sh
rename : taskcluster/scripts/misc/build-clang-8-mingw.sh => taskcluster/scripts/misc/build-clang-trunk-mingw.sh
2019-03-30 01:52:37 +02:00
Andreea Pavel e9856466cd Bug 1538060 - Update non-Windows builds to clang 8.
Summary: Windows builds have been taken care of in bug 1535441.

Reviewers: froydnj

Reviewed By: froydnj

Subscribers: froydnj, sylvestre, rjl

Bug #: 1538060

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

--HG--
rename : build/build-clang/clang-7-android.json => build/build-clang/clang-8-android.json
rename : build/build-clang/clang-7-linux64.json => build/build-clang/clang-8-linux64.json
rename : build/build-clang/clang-7-macosx64.json => build/build-clang/clang-8-macosx64.json
rename : build/build-clang/clang-trunk-mingw.json => build/build-clang/clang-8-mingw.json
rename : taskcluster/scripts/misc/build-clang-7-android.sh => taskcluster/scripts/misc/build-clang-8-android.sh
rename : taskcluster/scripts/misc/build-clang-7-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-8-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-7-linux.sh => taskcluster/scripts/misc/build-clang-8-linux.sh
rename : taskcluster/scripts/misc/build-clang-trunk-mingw.sh => taskcluster/scripts/misc/build-clang-8-mingw.sh
extra : rebase_source : 4306240dd7bee404e83b6f0e651f4be0a1bfa165
extra : histedit_source : e569b2a5568d3aa2b9191b214947a8a11a3e06bf
2019-03-30 01:24:50 +02:00
Andi-Bogdan Postelnicu 5583c1c99a Bug 1539779 - clang-tidy 8 mixes stderr and stdout causing parsing issues. r=sylvestre
Reviewers: sylvestre

Reviewed By: sylvestre

Bug #: 1539779

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

--HG--
extra : rebase_source : 83da546c3121350a7560a6890ad2c5920c1df613
extra : histedit_source : 6f1f945e7cfda0cb87f26c679fa2cfe78bde1e5e
2019-03-30 01:24:05 +02:00
Sylvestre Ledru 878a6926e9 Bug 1536790 - Upgrade to clang-{tidy,format} 8.0.0 (from 7.0.1) r=andi
Reviewers: andi

Reviewed By: andi

Bug #: 1536790

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

--HG--
extra : rebase_source : 4916f93d375ba7415a000fd1a4c48f214b300f47
extra : histedit_source : d21ca90bd40c0fe2db99ea69b7d3c98eaf872f49
2019-03-30 01:23:21 +02:00
Ciure Andrei 9fa2ff7bbe Backed out changeset dc3b81670b01 (bug 1538060) for causing clang-tidy bustages CLOSED TREE
--HG--
rename : build/build-clang/clang-8-android.json => build/build-clang/clang-7-android.json
rename : build/build-clang/clang-8-linux64.json => build/build-clang/clang-7-linux64.json
rename : build/build-clang/clang-8-macosx64.json => build/build-clang/clang-7-macosx64.json
rename : build/build-clang/clang-8-mingw.json => build/build-clang/clang-trunk-mingw.json
rename : taskcluster/scripts/misc/build-clang-8-android.sh => taskcluster/scripts/misc/build-clang-7-android.sh
rename : taskcluster/scripts/misc/build-clang-8-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-7-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-8-linux.sh => taskcluster/scripts/misc/build-clang-7-linux.sh
rename : taskcluster/scripts/misc/build-clang-8-mingw.sh => taskcluster/scripts/misc/build-clang-trunk-mingw.sh
2019-03-30 00:36:40 +02:00
Oana Pop Rus dc9eba46cc Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-03-30 00:05:29 +02:00
Mike Hommey 632b7eac9a Bug 1538060 - Update non-Windows builds to clang 8. r=froydnj
Windows builds have been taken care of in bug 1535441.

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

--HG--
rename : build/build-clang/clang-7-android.json => build/build-clang/clang-8-android.json
rename : build/build-clang/clang-7-linux64.json => build/build-clang/clang-8-linux64.json
rename : build/build-clang/clang-7-macosx64.json => build/build-clang/clang-8-macosx64.json
rename : build/build-clang/clang-trunk-mingw.json => build/build-clang/clang-8-mingw.json
rename : taskcluster/scripts/misc/build-clang-7-android.sh => taskcluster/scripts/misc/build-clang-8-android.sh
rename : taskcluster/scripts/misc/build-clang-7-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-8-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-7-linux.sh => taskcluster/scripts/misc/build-clang-8-linux.sh
rename : taskcluster/scripts/misc/build-clang-trunk-mingw.sh => taskcluster/scripts/misc/build-clang-8-mingw.sh
extra : moz-landing-system : lando
2019-03-29 21:37:37 +00:00
Daniel Varga 0bc3e10232 Backed out 2 changesets (bug 1539779, bug 1536790) for toolchain failure. On a CLOSED TREE
Backed out changeset 5ecdbfab88b4 (bug 1539779)
Backed out changeset 20d5cdaa08e3 (bug 1536790)
2019-03-29 10:34:45 +02:00
Andi-Bogdan Postelnicu 2473b505db Bug 1539779 - clang-tidy 8 mixes stderr and stdout causing parsing issues. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D25255

--HG--
extra : moz-landing-system : lando
2019-03-29 08:08:31 +00:00
Andi-Bogdan Postelnicu 437397c847 Bug 1536790 - Upgrade to clang-{tidy,format} 8.0.0 (from 7.0.1) r=andi
Patch wrote by Sylvestre Ledru (sylvestre@mozilla.com)

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

--HG--
extra : moz-landing-system : lando
2019-03-28 17:49:41 +00:00
Mike Hommey 7c6d33d0a7 Bug 1510897 - Don't build clang with LLVM_ENABLE_LIBCXX=ON. r=froydnj
As of clang 8, llvm-config doesn't return all flags clang was built
with, and omits some flags that do impact the libclang ABI,
-stdlib=libc++ being one of them (it might well be the only one).

Building clang with LLVM_ENABLE_LIBCXX=ON does build it with
-stdlib=libc++, but is unrelated to whether or not libc++ is built and
shipped with clang, which still happens without it.

So while versions older than clang 8 are not really affected, it doesn't
hurt to build clang without -stdlib=libc++ (especially when it
currently only applies to the clang used to cross build android with
PGO, not even the other android cross builds), in preparation for
switching to clang 8.

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

--HG--
extra : moz-landing-system : lando
2019-03-28 23:07:21 +00:00
Mike Hommey 69a2e6fc69 Bug 1510897 - Add -stdlib=libstdc++ to the compiler flags on Android. r=froydnj
There is no concern that the Android NDK clang may not support it, as
the flag was added in clang 2.9. The flag is also not supported with
GCC, which is not ideal, but we already crossed that bridge at least
with -gcc-toolchain added in extra_toolchain_flags, which is not
supported by GCC either.

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

--HG--
extra : moz-landing-system : lando
2019-03-28 13:15:43 +00:00
Mike Hommey ee64e5bdec Bug 1510897 - Separate Android C++ flags from the other Android toolchain flags. r=nalexander
We shouldn't pass those flags when building C. It doesn't matter /too/
much currently, but will in a subsequent change, which will introduce
a C++-only flag in stlport_cppflags.

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

--HG--
extra : moz-landing-system : lando
2019-03-27 22:05:04 +00:00
Oana Pop Rus d9ec36d04f Backed out 3 changesets (bug 1458385) for windows partial bustages. a=backout
Backed out changeset 8036c03c3b51 (bug 1458385)
Backed out changeset 99fa5539c2bd (bug 1458385)
Backed out changeset 9a5f255979c2 (bug 1458385)
2019-03-28 15:13:13 +02:00
Chris Manchester 18f1db845b Bug 1526072 - Add build attributes to documentation. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D23748

--HG--
extra : moz-landing-system : lando
2019-03-27 22:48:24 +00:00
Chris Manchester 5c005e476e Bug 1526072 - Record cpu utilization and clobber/full builds in build telemetry. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D22630

--HG--
extra : moz-landing-system : lando
2019-03-27 22:42:48 +00:00
Chris Manchester c0b388efb1 Bug 1536529 - Re-factor variables for android runtimes in build-clang.py r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D24435

--HG--
extra : moz-landing-system : lando
2019-03-28 00:28:03 +00:00
Geoff Brown fe297ae528 Bug 1539603 - Remove obsolete references to MediaPipelineFactory logging; r=jmaher
Other than the MediaPipelineFactory references, nothing else is obsolete, so this is a
very minor cleanup, just to improve readability a bit.

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

--HG--
extra : moz-landing-system : lando
2019-03-28 00:13:48 +00:00
Tom Prince fbb8603385 Bug 1458385: Package mar and mbsdiff as a toolchain; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D24229

--HG--
extra : moz-landing-system : lando
2019-03-27 22:30:44 +00:00
Noemi Erli 6269026d4e Backed out 4 changesets (bug 1526072) for causing build bustages in test_clobber.py CLOSED TREE
Backed out changeset d3d56eca307f (bug 1526072)
Backed out changeset 37942b0f911b (bug 1526072)
Backed out changeset a0eb0f43c928 (bug 1526072)
Backed out changeset c1d1576431d7 (bug 1526072)
2019-03-27 22:51:22 +02:00
Chris Manchester db5bd105a0 Bug 1526072 - Add build attributes to documentation. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D23748

--HG--
extra : moz-landing-system : lando
2019-03-19 20:58:34 +00:00
Chris Manchester 68be120a7f Bug 1526072 - Record cpu utilization and clobber/full builds in build telemetry. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D22630

--HG--
extra : moz-landing-system : lando
2019-03-18 20:36:54 +00:00
Thomas Daede 017147c0f4 Bug 1520163 - Remove nasm debian package. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D20041

--HG--
extra : moz-landing-system : lando
2019-03-26 00:05:00 +00:00
Boris Zbarsky b49b18f7fb Bug 1539013. Teach MOZ_CAN_RUN_SCRIPT about taking pointers to live references. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24840

--HG--
extra : moz-landing-system : lando
2019-03-26 20:55:41 +00:00
Boris Zbarsky 89dea017ae Bug 1539016 part 2. Teach MOZ_CAN_RUN_SCRIPT analysis about conditional operators. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24839

--HG--
extra : moz-landing-system : lando
2019-03-26 20:56:36 +00:00
Boris Zbarsky 80a2c9c2db Bug 1539016 part 1. Refactor the MOZ_CAN_RUN_SCRIPT analysis a bit to make new live things easier to add. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24838

--HG--
extra : moz-landing-system : lando
2019-03-26 20:56:16 +00:00
Gurzau Raul a7315d7841 Merge autoland to mozilla-central. a=merge 2019-03-26 11:51:06 +02:00
Gurzau Raul d57d523481 Backed out changeset 70ce7207292e (bug 1490743) for increasing build times on Windows platforms. a=backout 2019-03-26 09:06:35 +02:00
Mike Hommey 25dbad7cb2 Bug 1536307 - Bump libstdc++ requirement to 4.7. r=froydnj
Last time we updated the requirements was in bug 1278456, after we
switched to GTK+3.

While it might be worth checking what would be a reasonable requirement,
the immediate problem is that updating ANGLE hits a snag with a
libstdc++ 4.7 symbol, and the only main distro release that bumping to
that version would make us not support anymore is Ubuntu 12.04 LTS,
EOLed 2 years ago (April 2017).

Bumping to some even newer version would need more consideration.
Desupporting Ubuntu 12.04 LTS at this point is almost a no-brainer.

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

--HG--
extra : moz-landing-system : lando
2019-03-25 12:40:25 +00:00
David Major ef4fa82ab2 Bug 1535441 - Update win64 clang-cl to 8.0.0final r=firefox-build-system-reviewers,chmanchester
This gets us back to using an official release.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 01:40:14 +00:00
Mike Hommey 851ab5ec78 Bug 1537707 - Don't use full build symbols artifacts when MOZ_DISABLE_FULL_SYMBOLS is set. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D24449
2019-03-23 09:29:25 +09:00
Mike Hommey 27c0bbcc88 Bug 1527463 - Get full artifact build symbols for aarch64 EME builds. r=mshal
We need to have full symbols uploaded for the upcoming EME-enabled
win64-aarch64 nightlies, and the tasks to do that are derived from the
nightly itself, which is going to be an artifact build. Bug 1527463 took
care of adding the option to enable that, and we turn it on for
EME-enabled builds.

MOZ_ARTIFACT_TASK_WIN32_OPT is not exactly the right thing, but we're
already using it to enable EME in
browser/config/mozconfigs/win64-aarch64/common-opt and is only set on
those builds.

Differential Revision: https://phabricator.services.mozilla.com/D23639
2019-03-23 09:29:24 +09:00
Coroiu Cristina a21690048b Merge mozilla-central to inbound a=merge 2019-03-29 11:50:07 +02:00
Makoto Kato f4da46152c Bug 1527796 - Part 2. Detect Java on Windows. r=nalexander,glandium
When installing JDK 1.8, it writes path to the following registry.

 HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.8\JavaHome

So we use this registry to detect JDK installation path on Windows if available.

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

--HG--
extra : rebase_source : d8a380d9839f4de749815f3c81665e8d00226862
2019-03-05 11:03:27 +09:00
Mike Hommey 49a0cbadc9 Bug 1524396 - Unify how target/host linker/flags are passed to rust. r=chmanchester
The current setup uses different ways for different platforms, with
different workarounds, even using extra configuration items for Windows.

Now that there can't be a difference between the host per the build
system and the host per rust, we can get rid of those configuration
items, and use a more common infrastructure.

We cannot, however, avoid using wrapper scripts, because per-target rust
link-arg flags don't work up great.

The downside is that multiplies the number of wrappers, as we now have
to have a different one for host and target, and then we have .bat files
and shell scripts for, respectively, Windows hosts, and other hosts.

Depends on D24321

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

--HG--
extra : moz-landing-system : lando
2019-03-22 11:05:18 +00:00
Mike Hommey 46318ccb91 Bug 1524396 - Replace RUST_TARGET_ENV_NAME with make substitutions. r=chmanchester
While the substitution pattern is kind of awful in make, it will allow
to more straightforwardly deal with the difference between target and
host.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 11:06:11 +00:00
Andreea Pavel 74a4769236 Merge mozilla-central to autoland 2019-03-22 12:37:25 +02:00
Andreea Pavel c1f948c75f Backed out 2 changesets (bug 1527463) for bustages a=backout
Backed out changeset 74b3bf36f5e8 (bug 1527463)
Backed out changeset 235af3330b73 (bug 1527463)
2019-03-22 12:09:57 +02:00
Noemi Erli 81350b76e9 Backed out 2 changesets (bug 1524396) for mass build bustages CLOSED TREE
Backed out changeset 3a444460cb6c (bug 1524396)
Backed out changeset 0480bca0d680 (bug 1524396)
2019-03-22 06:23:04 +02:00
Mike Hommey d58c9a5f85 Bug 1524396 - Unify how target/host linker/flags are passed to rust. r=chmanchester
The current setup uses different ways for different platforms, with
different workarounds, even using extra configuration items for Windows.

Now that there can't be a difference between the host per the build
system and the host per rust, we can get rid of those configuration
items, and use a more common infrastructure.

We cannot, however, avoid using wrapper scripts, because per-target rust
link-arg flags don't work up great.

The downside is that multiplies the number of wrappers, as we now have
to have a different one for host and target, and then we have .bat files
and shell scripts for, respectively, Windows hosts, and other hosts.

Depends on D24321

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

--HG--
extra : moz-landing-system : lando
2019-03-21 23:40:41 +00:00
Mike Hommey 27044ed480 Bug 1524396 - Replace RUST_TARGET_ENV_NAME with make substitutions. r=chmanchester
While the substitution pattern is kind of awful in make, it will allow
to more straightforwardly deal with the difference between target and
host.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 23:40:23 +00:00
Mike Hommey 632127ba32 Bug 1521734 - Use thumbv7neon rust targets when stars align. r=chmanchester
Newer versions of rust come with a specialized arm target that matches
more closely our armv7 targets (with neon and thumb2), so use that when
possible.

Depends on D24324

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

--HG--
extra : moz-landing-system : lando
2019-03-21 23:36:49 +00:00
Mike Hommey 99bdcc7cb2 Bug 1521734 - Print out the chosen rust host/target triplet during configure. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D24323

--HG--
extra : moz-landing-system : lando
2019-03-21 23:36:00 +00:00
Ciure Andrei fd25af25ef Backed out changeset bf46557c98cb (bug 1537707) for diff build bustage CLOSED TREE
--HG--
extra : rebase_source : 6cac044e30f76deb1909f98c702a580eb3e4088b
2019-03-22 11:57:54 +02:00
Boris Zbarsky 7d25b166ca Bug 1538030. Disable warning about dereferencing void* in can-run-script test. r=glandium
Some of our builds use --enable-warnings-as-errors and some don't, and I can't
figure out a way to write an expectation comment for that.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 03:25:51 +00:00
Ciure Andrei 24ea8124e6 Backed out changeset e0cacf5d936f (bug 1537751)for causing instrumented-build-android bustage CLOSED TREE 2019-03-22 10:51:32 +02:00
Ciure Andrei 2a9eb52a31 Backed out changeset 40832d187454 (bug 1537669) for causing ActivationContext.cpp asertion failures CLOSED TREE 2019-03-22 10:47:36 +02:00
Jesse Schwartzentruber 4954fa6da1 Bug 1537751 - Add x86_64 target to Android Clang build configuration. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D24349

--HG--
extra : moz-landing-system : lando
2019-03-21 22:17:07 +00:00
Jesse Schwartzentruber 21c1f1f7d6 Bug 1533560 - Enable sanitizer runtimes in Android clang. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D24346

--HG--
extra : moz-landing-system : lando
2019-03-21 22:13:05 +00:00
Mike Hommey 5581aa598a Bug 1537669 - Use llvm-mt.exe instead of mt.exe when available. r=dmajor
MT is part of the Windows SDK, not MSVC, but an alternative exists for
it: llvm-mt. The official LLVM distribution for Windows doesn't include
it[1], though, so we can't just switch to it.

1. https://bugs.llvm.org/show_bug.cgi?id=40152

While here, remove the .exe suffix from the check, to future-proof for
cross-windows builds.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 23:34:07 +00:00
Mike Hommey ae0f08c081 Bug 1537707 - Don't use full build symbols artifacts when MOZ_DISABLE_FULL_SYMBOLS is set. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D24449

--HG--
extra : moz-landing-system : lando
2019-03-21 22:58:56 +00:00
Nicholas Nethercote a955ca9592 Bug 1535226 - Remove uses of XP_WIN32 in Gecko. r=glandium
The definitions can't be entirely removed yet because NSS still needs them.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 01:28:50 +00:00
Boris Zbarsky ba49f4de45 Bug 1537537. Improve the MOZ_CAN_RUN_SCRIPT analysis reporting around invalid args. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24258

--HG--
extra : moz-landing-system : lando
2019-03-21 11:52:50 +00:00
Boris Zbarsky 1e54f805f8 Bug 1536736. Allow constexpr things in the MOZ_CAN_RUN_SCRIPT analysis. r=andi
Since these are compile-time constants, they can't exactly go away on us due to
running script, right?

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

--HG--
extra : moz-landing-system : lando
2019-03-21 11:52:33 +00:00
Boris Zbarsky 534495abc4 Bug 1536825. Fix the interaction of ignoreTrivials and typechecks in MOZ_CAN_RUN_SCRIPT analysis. r=andi
We need to typecheck the trivials too, not just the final thing after trivials
are stripped, because casts are trivials.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 11:50:55 +00:00
Boris Zbarsky b25b0dd1a9 Bug 1536724. Consider a smartptr temporary to be live for MOZ_CAN_RUN_SCRIPT analysis purposes. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24120

--HG--
extra : moz-landing-system : lando
2019-03-21 11:49:11 +00:00
Boris Zbarsky 081fa29a04 Bug 1536719. Fix handling of member method calls in the MOZ_CAN_RUN_SCRIPT analysis. r=andi
The old code for member method calls did the following:

 1) Find the member method calls.
 2) Look at their "this" expression.
 3) If the "this" is an operator call, check for any of the arguments of the
    operator call being invalid.
 4) Otherwise (if not an operator call) check for the "this" value being
    invalid.

This wasn't right, because the "is invalid" check checks the type and only
considers refcounted things.  So if the code looked something like
"foo[i]->call_method()", we would look at the types of "foo" and "i" and
determine that none of those are refcounted types so there is nothing invalid
here (since "foo" is some sort of array type and "i" is an integer).  The new
setup just checks whether the "this" value is invalid, which does the type
check on the "this" value itself; in the "foo[i]->call_method()" case on
"foo[i]".  We then adjust the exclusions in InvalidArg to consider operator->
on known-live things valid, to allow the thing that we were really trying to
accomplish with the "check for an operator call" bits:
"stackRefPtr->some_method()".

The test coverage being added for the made-up TArray type is meant to catch
things like the geolocation issue that was being hidden by the buggy behavior.
I'm not using nsTArray itself because some header included by nsTArray.h
tries to define operator new/delete bits inline and that triggers warnings that
then cause a clang-plugin test failure, because they're unexpected.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 11:48:33 +00:00
Boris Zbarsky 640cb8470a Bug 1536336. Change MOZ_CAN_RUN_SCRIPT analysis to allow const members of "this" in addition to stack refptrs. r=andi
"this" is guaranteed to stay alive as long as other MOZ_CAN_RUN_SCRIPT
conditions hold, and its const members can't change value and drop
their refs.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 11:47:22 +00:00
Csoregi Natalia 0fb5d156aa Merge autoland to mozilla-central. a=merge 2019-03-21 12:39:38 +02:00
shindli 987aa4b78c Merge autoland to mozilla-central. a=merge 2019-03-21 06:33:42 +02:00
Mike Hommey f371e198d1 Bug 1527463 - Get full artifact build symbols for aarch64 EME builds. r=mshal
We need to have full symbols uploaded for the upcoming EME-enabled
win64-aarch64 nightlies, and the tasks to do that are derived from the
nightly itself, which is going to be an artifact build. Bug 1527463 took
care of adding the option to enable that, and we turn it on for
EME-enabled builds.

MOZ_ARTIFACT_TASK_WIN32_OPT is not exactly the right thing, but we're
already using it to enable EME in
browser/config/mozconfigs/win64-aarch64/common-opt and is only set on
those builds.

Differential Revision: https://phabricator.services.mozilla.com/D23639
2019-03-21 08:57:14 +09:00
Brindusan Cristian 044c3936c7 Backed out 6 changesets (bug 1536736, bug 1536336, bug 1536719, bug 1536825, bug 1537537, bug 1536724) for build bustages at TestCanRunScript. CLOSED TREE
Backed out changeset f754116e738e (bug 1537537)
Backed out changeset f9df48cfea43 (bug 1536736)
Backed out changeset 7a9888e700cf (bug 1536825)
Backed out changeset e2551303c5cf (bug 1536724)
Backed out changeset f497ce3b7419 (bug 1536719)
Backed out changeset fd59264c47c1 (bug 1536336)
2019-03-21 07:33:33 +02:00
Boris Zbarsky e3785e6699 Bug 1537537. Improve the MOZ_CAN_RUN_SCRIPT analysis reporting around invalid args. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24258

--HG--
extra : moz-landing-system : lando
2019-03-20 20:04:13 +00:00
Boris Zbarsky 22b27ec802 Bug 1536736. Allow constexpr things in the MOZ_CAN_RUN_SCRIPT analysis. r=andi
Since these are compile-time constants, they can't exactly go away on us due to
running script, right?

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

--HG--
extra : moz-landing-system : lando
2019-03-20 20:04:11 +00:00
Boris Zbarsky 9679412967 Bug 1536825. Fix the interaction of ignoreTrivials and typechecks in MOZ_CAN_RUN_SCRIPT analysis. r=andi
We need to typecheck the trivials too, not just the final thing after trivials
are stripped, because casts are trivials.

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

--HG--
extra : moz-landing-system : lando
2019-03-20 15:25:55 +00:00
Boris Zbarsky 0d0978f826 Bug 1536724. Consider a smartptr temporary to be live for MOZ_CAN_RUN_SCRIPT analysis purposes. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24120

--HG--
extra : moz-landing-system : lando
2019-03-20 14:40:34 +00:00
Boris Zbarsky 14f6385d4b Bug 1536719. Fix handling of member method calls in the MOZ_CAN_RUN_SCRIPT analysis. r=andi
The old code for member method calls did the following:

 1) Find the member method calls.
 2) Look at their "this" expression.
 3) If the "this" is an operator call, check for any of the arguments of the
    operator call being invalid.
 4) Otherwise (if not an operator call) check for the "this" value being
    invalid.

This wasn't right, because the "is invalid" check checks the type and only
considers refcounted things.  So if the code looked something like
"foo[i]->call_method()", we would look at the types of "foo" and "i" and
determine that none of those are refcounted types so there is nothing invalid
here (since "foo" is some sort of array type and "i" is an integer).  The new
setup just checks whether the "this" value is invalid, which does the type
check on the "this" value itself; in the "foo[i]->call_method()" case on
"foo[i]".  We then adjust the exclusions in InvalidArg to consider operator->
on known-live things valid, to allow the thing that we were really trying to
accomplish with the "check for an operator call" bits:
"stackRefPtr->some_method()".

The test coverage being added for the made-up TArray type is meant to catch
things like the geolocation issue that was being hidden by the buggy behavior.
I'm not using nsTArray itself because some header included by nsTArray.h
tries to define operator new/delete bits inline and that triggers warnings that
then cause a clang-plugin test failure, because they're unexpected.

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

--HG--
extra : moz-landing-system : lando
2019-03-20 18:08:16 +00:00
Boris Zbarsky fd9223d7ac Bug 1536336. Change MOZ_CAN_RUN_SCRIPT analysis to allow const members of "this" in addition to stack refptrs. r=andi
"this" is guaranteed to stay alive as long as other MOZ_CAN_RUN_SCRIPT
conditions hold, and its const members can't change value and drop
their refs.

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

--HG--
extra : moz-landing-system : lando
2019-03-20 04:19:24 +00:00
Boris Zbarsky 5c13f9c06d Bug 1535124 part 1. Add a MOZ_KnownLive() around callback-typed arguments in bindings. r=qdot
This allows calling a C++ MOZ_CAN_RUN_SCRIPT method that takes a callback argument.

The changes to TestCanRunScript.cpp are there to catch an incorrect change I was
going to make to the analysis to make this work, until I figured out that
RootedCallback should be MOZ_IS_SMARTPTR_TO_REFCOUNTED.

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

--HG--
extra : moz-landing-system : lando
2019-03-19 12:59:53 +00:00
Andreea Pavel f7b09c8773 Backed out 2 changesets (bug 1524429) for build bustages at lint.py on a CLOSED TREE
Backed out changeset 7947b90f1580 (bug 1524429)
Backed out changeset 1a5a5aef01d5 (bug 1524429)
2019-03-20 02:16:41 +02:00
Mike Shal 5607f84fdf Bug 632954 - Add -Wno-error=backend-plugin to support Android PGO; r=glandium
Without this flag, Android PGO profile-use builds may fail with
"Function control flow change detected" errors.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 23:52:22 +00:00
Mike Hommey 80f7e86b2e Bug 1524429 - Move build/autoconf/arch.m4 to python configure. r=nalexander
The file is essentially limited to ARM flag tweaks, so we make the
corresponding python configure code ARM-only. In large parts, the
python code sets things up similarly, although in a few places we try to
be smarter about than the current autoconf-based code.

The resulting config.status have been verified to only have
insignificant differences on both arm and aarch64 android builds.

Depends on D24000

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

--HG--
extra : moz-landing-system : lando
2019-03-19 22:32:58 +00:00
Chris Manchester 02576069b4 Bug 1536259 - Add missing ANDROID define for clang runtime builds. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D23957

--HG--
extra : moz-landing-system : lando
2019-03-19 17:47:21 +00:00
Wes Kocher 9eefc4e997 no bug - fix spelling of 'mozila' tree-wide r=me 2019-03-18 15:55:18 -07:00
Mike Hommey 7e282558ea Bug 1524429 - Move build/autoconf/arch.m4 to python configure. r=nalexander
The file is essentially limited to ARM flag tweaks, so we make the
corresponding python configure code ARM-only. In large parts, the
python code sets things up similarly, although in a few places we try to
be smarter about than the current autoconf-based code.

The resulting config.status have been verified to only have
insignificant differences on both arm and aarch64 android builds.

Depends on D24000

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

--HG--
extra : moz-landing-system : lando
2019-03-20 16:17:57 +00:00
David Major ebab8a4fb6 Bug 1490743 - Work around missing type information in Windows debug symbols r=chmanchester
See https://bugs.llvm.org/show_bug.cgi?id=38944. clang thought it could safely leave out type information for some of our classes, but that information would have been helpful for debugging. The flag in this patch turns off the debug-info limiting.

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

--HG--
extra : moz-landing-system : lando
2019-03-20 15:04:41 +00:00
Mike Shal 5f5bbc2171 Bug 632954 - Add -Wno-error=backend-plugin to support Android PGO; r=glandium
Without this flag, Android PGO profile-use builds may fail with
"Function control flow change detected" errors.

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

--HG--
extra : source : 3dfc0e4f8e7c8cd48b911033222fb3c3edb9762b
2019-03-18 23:52:22 +00:00
Noemi Erli b61340c4b0 Backed out 12 changesets (bug 632954) for causing Android Bpgo(run) pending jobs CLOSED TREE
Backed out changeset 429c96e4de32 (bug 632954)
Backed out changeset de8beacc5eb4 (bug 632954)
Backed out changeset c151ebf303ca (bug 632954)
Backed out changeset b96dd954a456 (bug 632954)
Backed out changeset 26031d362333 (bug 632954)
Backed out changeset 097f141a499d (bug 632954)
Backed out changeset 6f5fc0d644dd (bug 632954)
Backed out changeset 53d3443e55d9 (bug 632954)
Backed out changeset 503bcac73583 (bug 632954)
Backed out changeset 142ae187478d (bug 632954)
Backed out changeset 0615c775a0cf (bug 632954)
Backed out changeset 3dfc0e4f8e7c (bug 632954)
2019-03-20 11:58:18 +02:00
Boris Zbarsky e348ad0b6c Improve the documentation around the MOZ_CAN_RUN_SCRIPT analysis. No bug. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23762

--HG--
extra : moz-landing-system : lando
2019-03-16 12:52:33 +00:00
Chris Manchester dd6a3ef16f Bug 1535771 - Append android compiler-rt flags in build-clang.py to avoid conflicts. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D23745

--HG--
extra : moz-landing-system : lando
2019-03-15 23:19:15 +00:00
Boris Zbarsky 135d0b832e Bug 1535651. Whitelist std::__pair_base as memmovable for static analysis purposes. r=emilio
In at least some libstdc++ versions, std::pair (which we want to be
memmovable) inherits from __pair_base.  We have a similar setup
already for __atomic_base.

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

--HG--
extra : moz-landing-system : lando
2019-03-15 16:17:52 +00:00
Gian-Carlo Pascutto e0391761b8 Bug 1533133 - Fix missing linker and JS engine options for SSP. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D22730

--HG--
extra : moz-landing-system : lando
2019-03-15 08:46:27 +00:00
Nathan Froyd c5ab838f7c Bug 1451104 - part 3 - inform stage2/3 clang about gcc binutils; r=glandium
We do this to encourage clang to find an new-enough linker instead of
the system one.

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

--HG--
extra : moz-landing-system : lando
2019-03-15 01:29:04 +00:00
Nathan Froyd ce83c42681 Bug 1451104 - part 2 - force clang to always pick up its local GCC headers and libraries; r=glandium
We want our clang bootstrap to use the GCC headers we're building with,
not whatever sysroot it happens to find on the server we're building on.

The -gcc-toolchain argument we specify when building clang will also be
picked up by llvm-config, so we need to strip it out when building the
plugin. Otherwise, we will get peculiar failures about not being able to
find C++ header files.

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

--HG--
extra : moz-landing-system : lando
2019-03-15 01:28:55 +00:00
Nathan Froyd 9ebe50fc6e Bug 1451104 - part 1 - be explicit about our GCC/binutils target and build machine; r=glandium
Explicit is better than implicit, and helps ensure that GCC is always
using the binutils we built it with, rather than the system binutils.

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

--HG--
extra : moz-landing-system : lando
2019-03-15 01:28:10 +00:00
Nathan Froyd 1d99a85b72 Bug 1535350 - remove win32-clang-tidy job; r=dmajor
Updating clang indicates that 32-bit compilation is substantially longer
than 64-bit compilation, perhaps due to swapping.  The compilation
process is hitting the timeout limit shortly before the compilation
process completes (~3681/3695 tasks according to ninja).

We could tweak our clang build process to accommodate this job.  But we
don't support building on 32-bit Windows anymore, and we don't produce a
32-bit Windows clang either.  So we shouldn't support a 32-bit Windows
clang-tidy job either.  Let's get rid of it.

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

--HG--
extra : moz-landing-system : lando
2019-03-14 20:28:48 +00:00
Carolina Jimenez Gomez 0f33068ca0 Bug 1483626 - Checks if subjectAltNames has elements that are not empty string, and if it has them, they will be remove, preventing incomplete r=johannh
messages to show to the user. r=johannh

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

--HG--
extra : moz-landing-system : lando
2019-03-14 15:45:55 +00:00
Gurzau Raul c3883e46f7 Backed out 6 changesets (bug 1451104) for toolchains bustage on a CLOSED TREE.
Backed out changeset 2f6199beeb71 (bug 1451104)
Backed out changeset 7c116f85ede6 (bug 1451104)
Backed out changeset 5179c8066914 (bug 1451104)
Backed out changeset 675f73d41eb4 (bug 1451104)
Backed out changeset c64bfaad8a2f (bug 1451104)
Backed out changeset 991777e081ff (bug 1451104)
2019-03-14 05:02:44 +02:00
Nathan Froyd 3ba781f992 Bug 1451104 - part 3 - inform stage2/3 clang about gcc binutils; r=glandium
We do this to encourage clang to find an new-enough linker instead of
the system one.

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

--HG--
extra : moz-landing-system : lando
2019-03-14 00:43:01 +00:00
Nathan Froyd 3ec62f66df Bug 1451104 - part 2 - force clang to always pick up its local GCC headers and libraries; r=glandium
We want our clang bootstrap to use the GCC headers we're building with,
not whatever sysroot it happens to find on the server we're building on.

The -gcc-toolchain argument we specify when building clang will also be
picked up by llvm-config, so we need to strip it out when building the
plugin. Otherwise, we will get peculiar failures about not being able to
find C++ header files.

Depends on D22879

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

--HG--
extra : moz-landing-system : lando
2019-03-12 00:21:20 +00:00
Nathan Froyd 502083172c Bug 1451104 - part 1 - be explicit about our GCC/binutils target and build machine; r=glandium
Explicit is better than implicit, and helps ensure that GCC is always
using the binutils we built it with, rather than the system binutils.

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

--HG--
extra : moz-landing-system : lando
2019-03-12 00:19:25 +00:00
Nathan Froyd 6d4137ff36 Bug 1534159 - remove exceptions for Android and Darwin from libstdcxx checks; r=glandium
The only place we'd need the compat libraries would be for host
binaries, and those shouldn't be a problem given that our system images
are new enough.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 22:24:20 +00:00
Nathan Froyd 5696142472 Bug 1535142 - add binutils toolchains to more builds; r=dmajor
A newer clang may require newer binutils than the system provides, so we
should ensure that we provide just such a binutils.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 21:37:27 +00:00
Boris Zbarsky f3173cde3f Bug 1534421. Fix the CAN_RUN_SCRIPT analysis to treat a deref of an arg as live if it would treat the arg as live. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D23071

--HG--
extra : moz-landing-system : lando
2019-03-13 12:13:08 +00:00
Boris Zbarsky b969a0f9f0 Bug 1534518. Change CanRunScriptChecker caller function note to point to the declaration, not the definition. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D23082

--HG--
extra : moz-landing-system : lando
2019-03-13 12:11:34 +00:00
Boris Zbarsky 4b76c0a954 Bug 1506439 part 1. Fix CanRunScript analysis handling of arguments that default to null. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D23064

--HG--
extra : moz-landing-system : lando
2019-03-13 02:33:57 +00:00
Boris Zbarsky 5bf2e408e6 Bug 1534608. MOZ_CAN_RUN_SCRIPT should disallow non-stack refptr arguments. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23217

--HG--
extra : moz-landing-system : lando
2019-03-13 00:30:11 +00:00
Mike Hommey 26938ca3a9 Bug 1534524 - Apply the changes from bug 1470502 to build-binutils.sh. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D23092

--HG--
extra : moz-landing-system : lando
2019-03-12 14:18:47 +00:00
Mike Hommey b0f3ca8044 Bug 1490573 - Use fetches for nsis and wine toolchain tasks. r=froydnj
These toolchain tasks are the last ones using the historical
download-tools script from build/unix/build-gcc, which invokes gpg to
validate the downloaded tarballs. The consequence is that gpg-agent is
spawned and stays running, preventing a cleanup script from doing its
job, making the tasks fail.

Fetches are the new way to download sources, and can also do gpg
validation without those caveats.

The download-tools.sh script can then be removed as it's not used
anymore.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 01:38:46 +00:00
Thomas Daede b63aba5124 Bug 1521186 - Download nasm toolchain on Windows and Linux. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D22798

--HG--
extra : moz-landing-system : lando
2019-03-11 18:00:13 +00:00
Boris Zbarsky cb94672630 Bug 1533617 part 5. Disallow virtual MOZ_CAN_RUN_SCRIPT methods overriding a non-MOZ_CAN_RUN_SCRIPT superclass method. r=andi
This way if a caller calls a method that has a MOZ_CAN_RUN_SCRIPT override, it
can detect that it's possibly calling a MOZ_CAN_RUN_SCRIPT thing without having
to know about the override.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 14:20:27 +00:00
Nathan Froyd 2f1020dc41 Bug 1533149 - add checking messages for libstdcxx_version; r=glandium
It's occasionally useful to know what versions are being discovered for
these variables.  It's also convenient for logs from automation to
contain all the relevant information, rather than setting up a loaner
and running all the commands yourself.

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

--HG--
extra : moz-landing-system : lando
2019-03-10 00:11:09 +00:00
Andreea Pavel c54a744cff Backed out changeset 5bc7479ef4a1 (bug 1532502) for very frequent win asan failures with exit code 1
--HG--
extra : rebase_source : 636c7036385ef42ec755c78d86eb34799d2e0bcb
extra : amend_source : ec830eafb0ef96dad8229f078ce27166ab9ef876
2019-03-09 22:34:50 +02:00
David Major cf077dc43d Bug 1532502 - Update ASan thread unpoisoning patch to latest upstream version r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D22325

--HG--
extra : moz-landing-system : lando
2019-03-07 16:04:17 +00:00
Chris Manchester 7b91864041 Bug 1528374 - Convert binary argument to absolute path in profileserver.py r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D20407

--HG--
extra : moz-landing-system : lando
2019-02-20 14:36:35 +00:00
Emilio Cobos Álvarez 9b1323a3ae Bug 1533142 - Update min cbindgen version. r=jrmuizel,kats
Differential Revision: https://phabricator.services.mozilla.com/D22381

--HG--
extra : moz-landing-system : lando
2019-03-06 22:31:57 +00:00
Mike Hommey 9961a0af3d Bug 1530908 - Don't use different mozconfigs for artifact builds. r=chmanchester
Artifact mozconfigs are not necessarily up-to-date wrt changes to the
nightly mozconfigs, and all in all, shouldn't be much different from
them.

It's just better to use the nightly mozconfigs (or beta on beta, etc.)
and make the mozconfigs themselves handle the few things that need to be
different when the USE_ARTIFACT environment is set (which is now
consistently set by taskcluster)

This does have the side effect of turning builds that actually don't
support artifact builds red when using --artifact on try, instead of
having them silently not be artifact builds as currently happens.

Depends on D21314

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

--HG--
extra : moz-landing-system : lando
2019-03-06 22:48:05 +00:00
Mike Hommey 50e4660cb8 Bug 1530908 - Move --enable-artifact-build-symbols to mozconfig.artifact. r=chmanchester
Depends on D21313

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

--HG--
extra : moz-landing-system : lando
2019-03-05 06:58:05 +00:00
Mike Hommey 03b94324a6 Bug 1530908 - Always set USE_ARTIFACT from taskcluster for artifact builds. r=chmanchester
The artifact builds that are automatically derived using the artifact
template set the USE_ARTIFACT environment variable from taskcluster.
After the previous change, --artifact builds from try syntax do that
too.
That leaves us with only the artifact-build build not doing it, so for
consistency, do it there. That makes it not necessary to set
USE_ARTIFACT from mozconfig.artifact.automation anymore.

Depends on D22056

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

--HG--
extra : moz-landing-system : lando
2019-03-06 22:48:30 +00:00
Mike Hommey d876d02d9a Bug 1530908 - Use an environment variable to enable LTO on automation. r=chmanchester
This allows to disable it more easily for artifact builds.

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

--HG--
extra : moz-landing-system : lando
2019-03-06 22:47:08 +00:00
Andi-Bogdan Postelnicu 891cf78a33 Bug 1529650 - For SprintfLiteral checker also disallow it in third party paths. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D21240

--HG--
extra : moz-landing-system : lando
2019-02-27 15:15:24 +00:00
Geoff Brown a908bb5504 Bug 1531611 - Check for ANR and tombstone files in all android tests; r=bc
The existing ANR and tombstone checks in remoteautomation are used
by mochitests and reftests but are awkward for other harnesses like cppunit
that do not use remoteautomation...and easily missed. This patch moves that
code to the mozharness AndroidMixin, treating ANRs and tombstones like the
logcat: Make sure any old logs are deleted when the mozharness script starts,
then move any logs found at the end of the run to the upload directory.
https://treeherder.mozilla.org/#/jobs?repo=try&tier=1%2C2%2C3&revision=f3de1e9836da2b0c9232f5d92c751b979459e19b
demonstrates tombstone artifacts for the Android 7.0 cppunit tests.

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

--HG--
extra : moz-landing-system : lando
2019-03-05 14:22:45 +00:00
Andreea Pavel be960187e1 Backed out 3 changesets (bug 1524992) for valgrind failures on a CLOSED TREE
Backed out changeset face9d1e8868 (bug 1524992)
Backed out changeset ae1e20a595c4 (bug 1524992)
Backed out changeset b0b9322c7a59 (bug 1524992)
2019-03-05 01:36:59 +02:00
James Willcox c963ad97d8 Bug 1524992 - Use Marionette for Linux profile runs r=mshal
Differential Revision: https://phabricator.services.mozilla.com/D21609

--HG--
extra : moz-landing-system : lando
2019-03-04 22:07:02 +00:00
David Major 4da87b55d6 Bug 1531388 - Update win64 clang to 8.0.0rc3 r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D21550

--HG--
extra : moz-landing-system : lando
2019-03-01 07:16:54 +00:00
Mike Hommey c7022eb656 Bug 1530587 - Don't optimize jars without preloading/reordering data. r=chmanchester
Optimizing jars without preloading/reordering data only moves the
jar central directory to the beginning of the file, which, without
preloading information, is not very useful. Let's just stop doing it if
there's not going to be preloading/reordering information at all.

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

--HG--
extra : moz-landing-system : lando
2019-02-27 01:26:46 +00:00
Chris Manchester c7f1151b94 Bug 1527553 - Update the mozilla-central workspace hack. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D20738

--HG--
extra : moz-landing-system : lando
2019-02-26 19:37:49 +00:00
Johann Hofmann cd3d3a8ab7 Bug 1456089 - Make a tutorial out of the genpgocerts.py README. r=jcj
Differential Revision: https://phabricator.services.mozilla.com/D20178

--HG--
extra : moz-landing-system : lando
2019-02-25 21:06:41 +00:00
Thomas Daede 2e3619211c Bug 1520163 - Add linux64-nasm toolchain. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D20037

--HG--
extra : moz-landing-system : lando
2019-02-25 21:10:41 +00:00
Ted Mielczarek 0539de896a bug 1481614 - detect icecream usage in build telemetry. r=chmanchester,glandium
This patch adds detection for when icecream is in use to build telemetry.
icecream is commonly enabled in two ways: by either setting CC/CXX to point
to icecream's cc/c++ symlinks, or by setting adding
mk_add_options 'export CCACHE_PREFIX=icecc' to a mozconfig when also using
ccache. For the former, this patch adds a simple configure check to see
if CXX is a symlink to a file named 'icecc'. For the latter this patch adds
CCACHE_PREFIX as a configure subst to capture the value.

We don't currently have a facility for writing telemetry tests that depend on
configure values. Local manual testing shows that it does work as expected.

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

--HG--
extra : moz-landing-system : lando
2019-02-25 19:06:27 +00:00
Ciure Andrei ea1096a1f5 Backed out changeset e9e880f7aee4 (bug 1520163) for failing nightly builds a=backout
--HG--
extra : amend_source : 49a3d640d1784faa6a017315a73b94c109c64aa5
2019-02-25 11:36:37 +02:00
Kartikaya Gupta 9f2f58c1f3 Bug 1500941 - Add a clang mangling crash workaround. r=dmajor
This is a workaround for https://bugs.llvm.org/show_bug.cgi?id=40747
where clang's mangler crashes when it tries to mangle a symbol from
the android NDK's <tuple> header.

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

--HG--
extra : moz-landing-system : lando
2019-02-23 04:14:20 +00:00
Thomas Daede 3484d62a4b Bug 1520163 - Add linux64-nasm toolchain. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D20037

--HG--
extra : moz-landing-system : lando
2019-02-22 21:52:41 +00:00
Ciure Andrei 0497e5f2f4 Backed out changeset e89b6e3d3de8 (bug 1520163) for profile-guided optimization builds bustage CLOSED TREE 2019-02-22 23:27:42 +02:00
Thomas Daede 4602595bb6 Bug 1520163 - Add linux64-nasm toolchain. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D20037

--HG--
extra : moz-landing-system : lando
2019-02-22 20:41:20 +00:00
Bogdan Tara 67efae6a76 Backed out changeset b8c7842e8b1a (bug 1512806) for Windows 2012 bustages complaning about gen_cflags CLOSED TREE 2019-02-22 05:10:46 +02:00
Mike Shal bb3ac7fa72 Bug 1512806 - Pass correct profile flags for Android PGO; r=firefox-build-system-reviewers,chmanchester
Android requires us to use -fprofile-generate / -fprofile-use instead of
-fprofile-instr-generate / -fprofile-instr-use. Additionally, we have
to pass in the path to write out the profile data as /data/local/tmp,
since the cwd from where the Fennec process is invoked is not writeable.

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

--HG--
extra : moz-landing-system : lando
2019-02-21 19:00:51 +00:00
Cosmin Sabou 9f8b29287b Merge mozilla-central to autoland. 2019-02-21 05:43:34 +02:00
Cosmin Sabou f3db52f4cf Merge mozilla-inbound to mozilla-central. a=merge 2019-02-21 05:42:03 +02:00
Masatoshi Kimura e59e3b3e20 Bug 1528651 - Fix some trivial warnings and re-enable warnings-as-errors on Windows in some directories. r=dmajor
--HG--
extra : source : 5ee9efeda9e67f6af0521be85266703763cc4c50
2019-02-19 20:42:11 +09:00
Chris Hartjes 6c7e3654d7 Bug 1507235 - Add capability to run telemetry-tests-client locally; r=raphael
Differential Revision: https://phabricator.services.mozilla.com/D20535

--HG--
extra : moz-landing-system : lando
2019-02-20 19:18:06 +00:00
Marco Castelluccio 19bbc158b4 Bug 1491004 - Exclude Visual Studio files from coverage instrumentation. r=chmanchester,calixte,glandium
Differential Revision: https://phabricator.services.mozilla.com/D18511

--HG--
extra : moz-landing-system : lando
2019-02-20 12:18:56 +00:00
Marco Castelluccio 2dffc6b8bf Bug 1491004 - Set CFLAGS and CXXFLAGS in toolchain.configure for coverage builds. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D18510

--HG--
extra : moz-landing-system : lando
2019-02-20 12:18:32 +00:00
Mike Hommey 079a4d2441 Bug 1528499 - Don't PGO the base-toolchain tasks on release branches. r=ted
Differential Revision: https://phabricator.services.mozilla.com/D20080
2019-02-20 07:46:31 +09:00
Mike Hommey b2f1a3fc7f Bug 1528194 - Run config.sub when split_target fails when not running it. r=mshal
In bug 1522354, we changed host and target detection to not invoke
config.sub, assuming the output from config.guess would satisfy our
needs in split_target.

It turns out that on some plaforms, that doesn't work out, so, while we
still skip config.sub, we now catch errors from split_target when doing
so, and try again after running config.sub when split_target fails.

Differential Revision: https://phabricator.services.mozilla.com/D19937
2019-02-20 07:46:17 +09:00
Masatoshi Kimura e25fbce870 Bug 1528651 - Re-enable warnings-as-errors on Windows in some directories. r=dmajor
--HG--
extra : source : ba86ea25070b37f4725834e1c2d9ec4c0783e119
2019-02-17 15:03:02 +09:00
Razvan Maries 2fb9019d41 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-02-15 11:59:08 +02:00
Mike Hommey c21df26d10 No bug - Unbust l10n tasks after bug 1511224. r=me,a=ccoroiu 2019-02-15 13:50:07 +09:00
Daniel Varga 30780abeeb Merge mozilla-inbound to mozilla-central. a=merge 2019-02-15 03:41:17 +02:00
Coroiu Cristina bf6382c227 Backed out 2 changesets (bug 1524688) for build bustages at build/src/obj-firefox/xpcom/components/StaticComponents.cpp on a CLOSED TREE
Backed out changeset 042a975d3971 (bug 1524688)
Backed out changeset abaf68fe399b (bug 1524688)
2019-02-15 01:00:33 +02:00
Mike Hommey ef3ad686ee Bug 1512504 - Remove support for MSVC. r=froydnj
Consequently, this removes:
- MOZ_LIBPRIO, which is now always enabled.
- non_msvc_compiler, which is now always true.
- The cl.py wrapper, since it's not used anymore.
- CL_INCLUDES_PREFIX, which was only used for the cl.py wrapper.
- NONASCII, which was only there to ensure CL_INCLUDES_PREFIX still
  worked in non-ASCII cases.

This however keeps a large part of detecting and configuring for MSVC,
because we still do need it for at least headers, libraries, and midl.

Depends on D19614

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

--HG--
extra : moz-landing-system : lando
2019-02-14 21:45:27 +00:00
Thomas Daede 3fcd2d85d2 Bug 1511224 - Add win64-nasm toolchain. r=ted,jya,glandium
Differential Revision: https://phabricator.services.mozilla.com/D13875

--HG--
extra : moz-landing-system : lando
2019-02-14 21:30:22 +00:00
Daniel Varga 1e9aa9e1fc Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE
--HG--
rename : browser/components/nsBrowserContentHandler.js => browser/components/BrowserContentHandler.jsm
2019-02-15 03:51:05 +02:00
Dorel Luca 72ca9e0f17 Backed out changeset fe264afc03aa (bug 1511224) for Fetch failures. CLOSED TREE 2019-02-14 20:44:38 +02:00
Thomas Daede ce727c14e7 Bug 1511224 - Add win64-nasm toolchain. r=ted,jya,glandium
Differential Revision: https://phabricator.services.mozilla.com/D13875

--HG--
extra : moz-landing-system : lando
2019-02-14 17:11:57 +00:00
Razvan Maries dcc3ecb682 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-02-13 07:23:59 +02:00
Nathan Froyd da91976685 Bug 1525630 - choose the correct frame pointer enablement options on aarch64 windows; r=dmajor
clang-cl doesn't currently support -Oy correctly, so we need to resort
to the GNU-ish based spelling.
2019-02-12 16:45:40 -05:00
Mike Hommey ef8dbb4116 Bug 1526201 - Fix objdir used by --enable-application=mobile/android builds. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D19474

--HG--
extra : moz-landing-system : lando
2019-02-12 22:36:57 +00:00
Mike Hommey 8b6c5293f7 Bug 1526497 - Always get clang information for bindgen. r=ted
When the build system compiler is clang, and bindgen autodetection
actually finds a different clang via llvm-config, or a different clang
was given with --with-clang-path, we do want the proper flags to be
used for that clang, so we always get the right flags for that clang
instead of trying to shortcut.

Bug 1526857 will take care of making things more proper, while this is a
quick fix to unbreak builds in some unfortunately common kind of local
setups.

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

--HG--
extra : moz-landing-system : lando
2019-02-11 22:04:06 +00:00
Chris Manchester 7b468805c5 Bug 1525733 - Require rust 1.32 to build. r=firefox-build-system-reviewers,ted
Differential Revision: https://phabricator.services.mozilla.com/D19244

--HG--
extra : moz-landing-system : lando
2019-02-11 19:43:18 +00:00
Emilio Cobos Álvarez 7e29cc1765 Bug 1523071 - Update cbindgen. r=glandium,jwatt
Gonna need it to use https://github.com/eqrion/cbindgen/pull/275.

Differential Revision: https://phabricator.services.mozilla.com/D17736
2019-02-10 04:09:54 +01:00
Emilio Cobos Álvarez da05bafa94 Bug 1394825 - Update minimum clang version to 4.0. r=glandium
libclang 3.9 has a bug that makes bindgen unable to distinguish some typedefs
from the underlying type, which matters for bug 1523071.

We have had quite a few workarounds for this bug and I don't really want to add
more, since in this case it is non-trivial. I think requiring libclang 4.0+ is
reasonable at this point.

Of the distros that can't build Firefox out of the box with clang, dropping support
for clang 3.9 would only break Ubuntu 14.04 LTS, which support ends April 2019,
right before we release 67.

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

--HG--
rename : build/build-clang/clang-3.9-linux64.json => build/build-clang/clang-4.0-linux64.json
rename : taskcluster/scripts/misc/build-clang-3.9-linux.sh => taskcluster/scripts/misc/build-clang-4.0-linux.sh
extra : moz-landing-system : lando
2019-02-10 02:56:13 +00:00
Mike Hommey ad8855ed35 Bug 1525760 - Add a clang-based base toolchains task. r=froydnj
These are copies of the corresponding gcc-based base toolchain tasks,
with FORCE_GCC and the gcc dependency removed.

We also tweak things a little for those builds to actually end up green.

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

--HG--
extra : moz-landing-system : lando
2019-02-09 09:41:03 +00:00
David Major 004144fdf9 Bug 1525957 - Bump clang-cl to 8.0.0rc2 r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D19003

--HG--
extra : moz-landing-system : lando
2019-02-08 09:03:30 +00:00
Mike Hommey 015ffd1905 Bug 1526062 - Add missing imports for Exception. r=nalexander
Depends on D19109

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

--HG--
extra : moz-landing-system : lando
2019-02-08 16:56:40 +00:00
Mike Hommey ef876da54d Bug 1526062 - Fix miscellaneous NameErrors lingering in the python configure code. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D19109

--HG--
extra : moz-landing-system : lando
2019-02-08 16:56:13 +00:00
Mike Hommey b82d5c7497 Bug 1526210 - Remove -Wl,--allow-shlib-undefined from LDFLAGS on Android. r=froydnj
This apparently was necessary back when Android support was added 8.5
years ago, but is not desirable as a flag set globally. But it turns out
everything builds just fine without it now.

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

--HG--
extra : moz-landing-system : lando
2019-02-08 14:56:50 +00:00
shindli a8e8126805 Backed out changeset 439db957d3e2 (bug 1525760) for linux64 toolchains bustages in toolkit/library/gtest/target CLOSED TREE 2019-02-09 07:19:32 +02:00
Mike Hommey 011c259380 Bug 1525760 - Add a clang-based base toolchains task. r=froydnj
These are copies of the corresponding gcc-based base toolchain tasks,
with FORCE_GCC and the gcc dependency removed.

We also tweak things a little for those builds to actually end up green.

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

--HG--
extra : moz-landing-system : lando
2019-02-08 14:40:22 +00:00
Mike Hommey 39bdbdd823 Bug 1525999 - Default to arm instead of armv7a for android builds. r=nalexander
That makes target.toolchain match what the NDK provides.

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

--HG--
extra : moz-landing-system : lando
2019-02-08 22:37:25 +00:00
arthur.iakab 27c92bb1ae Backed out changeset 51697f8232c5 (bug 1525999) for causing multiple Android failures on build/target.raptor.tests.tar.gz CLOSED TREES 2019-02-08 19:48:55 +02:00
Mike Hommey f36d444aa0 Bug 1525999 - Default to arm instead of armv7a for android builds. r=nalexander
That makes target.toolchain match what the NDK provides.

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

--HG--
extra : moz-landing-system : lando
2019-02-08 16:45:55 +00:00
Kris Maglione d3be4ca8de Bug 1524688: Part 1a - Support static registration JS components. r=mccr8
--HG--
extra : source : 68eb174a337b20e64583ae8afd45d479a3f54b61
2019-01-29 17:46:27 -08:00
Mike Hommey 76a0504add Bug 1527797 - Relax rust build dependency for --enable-project=tools/crashreporter. r=dmajor
The tools/crashreporter project only builds one crate, that rarely
changes, and currently builds with rustc 1.22.

Differential Revision: https://phabricator.services.mozilla.com/D19756
2019-02-15 06:53:08 +09:00
Csoregi Natalia ecd94d6986 Backed out 79 changesets (bug 1524687, bug 1524688) for crashes on mozilla::dom::ScreenOrientation::ScreenOrientation(nsPIDOMWindowInner *,nsScreen *). CLOSED TREE
Backed out changeset 68a001a42406 (bug 1524687)
Backed out changeset 328de611bcd3 (bug 1524688)
Backed out changeset 68cffca6927a (bug 1524687)
Backed out changeset 81dc12cc9257 (bug 1524688)
Backed out changeset c7c49f64048f (bug 1524688)
Backed out changeset fb23a0271da0 (bug 1524688)
Backed out changeset 0c1d1248e59e (bug 1524688)
Backed out changeset 9e9ec7de4160 (bug 1524688)
Backed out changeset de0b9993bd5d (bug 1524688)
Backed out changeset 92877cf4fe33 (bug 1524688)
Backed out changeset b4938f2ff8fd (bug 1524688)
Backed out changeset 230d2feaf941 (bug 1524688)
Backed out changeset 6c63bc240972 (bug 1524688)
Backed out changeset 0ad5465eace1 (bug 1524688)
Backed out changeset 1e75ce91029b (bug 1524688)
Backed out changeset 34a978503b1d (bug 1524688)
Backed out changeset 183602e8a30b (bug 1524688)
Backed out changeset 12a9135dc005 (bug 1524688)
Backed out changeset 978ef5dac9db (bug 1524688)
Backed out changeset 28105bf7bf6a (bug 1524688)
Backed out changeset a9fb74beaf2b (bug 1524688)
Backed out changeset fe106b369a72 (bug 1524688)
Backed out changeset e657e77d4271 (bug 1524688)
Backed out changeset 09f626870ad0 (bug 1524688)
Backed out changeset fe9b6695212e (bug 1524688)
Backed out changeset 995ea188bc31 (bug 1524688)
Backed out changeset 01c4d3edb1b0 (bug 1524688)
Backed out changeset 1bb7dfbb9f48 (bug 1524688)
Backed out changeset 56c61e0a1f45 (bug 1524688)
Backed out changeset c819943ff466 (bug 1524688)
Backed out changeset a1dd5cec066e (bug 1524688)
Backed out changeset 517838ee0c3c (bug 1524688)
Backed out changeset f509a5759fdf (bug 1524688)
Backed out changeset 56f5c8f0d708 (bug 1524688)
Backed out changeset 5746311ef859 (bug 1524688)
Backed out changeset df02f7d25212 (bug 1524688)
Backed out changeset c9846136d105 (bug 1524688)
Backed out changeset 2bd48db9cd0f (bug 1524688)
Backed out changeset ff120b4eeb79 (bug 1524688)
Backed out changeset fe583e7aae8d (bug 1524688)
Backed out changeset 18f156d6355a (bug 1524688)
Backed out changeset f4eaebbe2e0f (bug 1524688)
Backed out changeset bf6b18e23f69 (bug 1524688)
Backed out changeset dd89eb7e9b0d (bug 1524688)
Backed out changeset 4cbbb367ba0b (bug 1524688)
Backed out changeset 4ed0cf6be580 (bug 1524688)
Backed out changeset d8efb5ed62b1 (bug 1524688)
Backed out changeset ea347d57d73a (bug 1524688)
Backed out changeset 911689ef9f33 (bug 1524688)
Backed out changeset 28670fdc418d (bug 1524688)
Backed out changeset 38e1e42a0fb0 (bug 1524688)
Backed out changeset 35a5f031dd1e (bug 1524688)
Backed out changeset b586d55d76d5 (bug 1524688)
Backed out changeset 6dcacead1746 (bug 1524688)
Backed out changeset 9895239d8ac6 (bug 1524688)
Backed out changeset 25f982fd53bd (bug 1524688)
Backed out changeset 4fb0f0a59fe2 (bug 1524688)
Backed out changeset fdc6c4ed241a (bug 1524688)
Backed out changeset 5ce5986068f0 (bug 1524688)
Backed out changeset ab64ed7388ae (bug 1524688)
Backed out changeset 56607c5a301a (bug 1524688)
Backed out changeset 6b3684e7d8f9 (bug 1524688)
Backed out changeset ee28258a5724 (bug 1524688)
Backed out changeset 9201a7ea3c54 (bug 1524688)
Backed out changeset d5dca413e2da (bug 1524688)
Backed out changeset 68eb174a337b (bug 1524688)
Backed out changeset 625f71135038 (bug 1524687)
Backed out changeset 46e13c453538 (bug 1524687)
Backed out changeset 614be688767f (bug 1524687)
Backed out changeset 9c24919ac5c2 (bug 1524687)
Backed out changeset b9862758b98c (bug 1524687)
Backed out changeset 92d9e927deec (bug 1524687)
Backed out changeset f4ee175bc5bd (bug 1524687)
Backed out changeset 191afe83da2e (bug 1524687)
Backed out changeset c58caf41bb94 (bug 1524687)
Backed out changeset df95a56dae04 (bug 1524687)
Backed out changeset 10c69df4444d (bug 1524687)
Backed out changeset 219b84a58f50 (bug 1524687)
Backed out changeset e96e61bd282f (bug 1524687)

--HG--
rename : browser/components/migration/360seProfileMigrator.jsm => browser/components/migration/360seProfileMigrator.js
rename : browser/components/migration/ChromeProfileMigrator.jsm => browser/components/migration/ChromeProfileMigrator.js
rename : browser/components/migration/EdgeProfileMigrator.jsm => browser/components/migration/EdgeProfileMigrator.js
rename : browser/components/migration/FirefoxProfileMigrator.jsm => browser/components/migration/FirefoxProfileMigrator.js
rename : browser/components/migration/IEProfileMigrator.jsm => browser/components/migration/IEProfileMigrator.js
rename : browser/components/migration/ProfileMigrator.jsm => browser/components/migration/ProfileMigrator.js
rename : browser/components/migration/SafariProfileMigrator.jsm => browser/components/migration/SafariProfileMigrator.js
rename : browser/components/newtab/AboutNewTabService.jsm => browser/components/newtab/aboutNewTabService.js
rename : browser/components/BrowserContentHandler.jsm => browser/components/nsBrowserContentHandler.js
rename : browser/components/BrowserGlue.jsm => browser/components/nsBrowserGlue.js
rename : browser/components/payments/PaymentUIService.jsm => browser/components/payments/paymentUIService.js
rename : browser/components/protocolhandler/WebProtocolHandlerRegistrar.jsm => browser/components/protocolhandler/WebProtocolHandlerRegistrar.js
rename : devtools/startup/AboutDebuggingNewRegistration.jsm => devtools/startup/aboutdebugging-new-registration.js
rename : devtools/startup/AboutDebuggingRegistration.jsm => devtools/startup/aboutdebugging-registration.js
rename : devtools/startup/aboutdevtools/AboutDevToolsRegistration.jsm => devtools/startup/aboutdevtools/aboutdevtools-registration.js
rename : devtools/startup/AboutDevToolsToolboxRegistration.jsm => devtools/startup/aboutdevtoolstoolbox-registration.js
rename : devtools/startup/DevToolsStartup.jsm => devtools/startup/devtools-startup.js
rename : dom/base/ProcessSelector.jsm => dom/base/ProcessSelector.js
rename : dom/base/SlowScriptDebug.jsm => dom/base/SlowScriptDebug.js
rename : dom/base/ContentAreaDropListener.jsm => dom/base/contentAreaDropListener.js
rename : dom/browser-element/BrowserElementParent.jsm => dom/browser-element/BrowserElementParent.js
rename : dom/console/ConsoleAPIStorage.jsm => dom/console/ConsoleAPIStorage.js
rename : dom/html/HTMLMenuBuilder.jsm => dom/html/htmlMenuBuilder.js
rename : dom/media/PeerConnection.jsm => dom/media/PeerConnection.js
rename : dom/notification/NotificationStorage.jsm => dom/notification/NotificationStorage.js
rename : dom/presentation/PresentationDataChannelSessionTransport.jsm => dom/presentation/PresentationDataChannelSessionTransport.js
rename : dom/presentation/PresentationNetworkHelper.jsm => dom/presentation/PresentationNetworkHelper.js
rename : dom/presentation/provider/AndroidCastDeviceProvider.jsm => dom/presentation/provider/AndroidCastDeviceProvider.js
rename : dom/presentation/provider/PresentationControlService.jsm => dom/presentation/provider/PresentationControlService.js
rename : dom/push/Push.jsm => dom/push/Push.js
rename : dom/push/PushComponents.jsm => dom/push/PushComponents.js
rename : dom/system/NetworkGeolocationProvider.jsm => dom/system/NetworkGeolocationProvider.js
rename : layout/tools/recording/RecordingCmdLine.jsm => layout/tools/recording/recording-cmdline.js
rename : netwerk/dns/mdns/libmdns/DNSServiceDiscovery.jsm => netwerk/dns/mdns/libmdns/nsDNSServiceDiscovery.js
rename : netwerk/protocol/http/UAOverridesBootstrapper.jsm => netwerk/protocol/http/UAOverridesBootstrapper.js
rename : netwerk/protocol/http/WellKnownOpportunisticUtils.jsm => netwerk/protocol/http/WellKnownOpportunisticUtils.js
rename : services/fxaccounts/FxAccountsPush.jsm => services/fxaccounts/FxAccountsPush.js
rename : services/settings/RemoteSettingsComponents.jsm => services/settings/RemoteSettingsComponents.js
rename : services/sync/Weave.jsm => services/sync/Weave.js
rename : toolkit/components/asyncshutdown/nsAsyncShutdown.jsm => toolkit/components/asyncshutdown/nsAsyncShutdown.js
rename : toolkit/components/backgroundhangmonitor/BHRTelemetryService.jsm => toolkit/components/backgroundhangmonitor/BHRTelemetryService.js
rename : toolkit/components/captivedetect/CaptiveDetect.jsm => toolkit/components/captivedetect/captivedetect.js
rename : toolkit/components/cleardata/ClearDataService.jsm => toolkit/components/cleardata/ClearDataService.js
rename : toolkit/components/contentprefs/ContentPrefService2.jsm => toolkit/components/contentprefs/ContentPrefService2.js
rename : toolkit/components/crashes/CrashService.jsm => toolkit/components/crashes/CrashService.js
rename : toolkit/components/crashmonitor/nsCrashMonitor.jsm => toolkit/components/crashmonitor/nsCrashMonitor.js
rename : toolkit/components/downloads/DownloadLegacy.jsm => toolkit/components/downloads/DownloadLegacy.js
rename : toolkit/components/gfx/SanityTest.jsm => toolkit/components/gfx/SanityTest.js
rename : toolkit/components/mozintl/mozIntl.jsm => toolkit/components/mozintl/mozIntl.js
rename : toolkit/components/mozprotocol/MozProtocolHandler.jsm => toolkit/components/mozprotocol/mozProtocolHandler.js
rename : toolkit/components/normandy/ShieldContentProcess.jsm => toolkit/components/normandy/shield-content-process.js
rename : toolkit/components/DefaultCLH.jsm => toolkit/components/nsDefaultCLH.js
rename : toolkit/components/passwordmgr/LoginInfo.jsm => toolkit/components/passwordmgr/nsLoginInfo.js
rename : toolkit/components/passwordmgr/LoginManager.jsm => toolkit/components/passwordmgr/nsLoginManager.js
rename : toolkit/components/passwordmgr/LoginManagerPrompter.jsm => toolkit/components/passwordmgr/nsLoginManagerPrompter.js
rename : toolkit/components/places/ColorAnalyzer.jsm => toolkit/components/places/ColorAnalyzer.js
rename : toolkit/components/places/PageIconProtocolHandler.jsm => toolkit/components/places/PageIconProtocolHandler.js
rename : toolkit/components/places/PlacesCategoriesStarter.jsm => toolkit/components/places/PlacesCategoriesStarter.js
rename : toolkit/components/places/UnifiedComplete.jsm => toolkit/components/places/UnifiedComplete.js
rename : toolkit/components/places/PlacesExpiration.jsm => toolkit/components/places/nsPlacesExpiration.js
rename : toolkit/components/places/TaggingService.jsm => toolkit/components/places/nsTaggingService.js
rename : toolkit/components/processsingleton/ContentProcessSingleton.jsm => toolkit/components/processsingleton/ContentProcessSingleton.js
rename : toolkit/components/processsingleton/MainProcessSingleton.jsm => toolkit/components/processsingleton/MainProcessSingleton.js
rename : toolkit/components/prompts/src/Prompter.jsm => toolkit/components/prompts/src/nsPrompter.js
rename : toolkit/components/remotebrowserutils/RemoteWebNavigation.jsm => toolkit/components/remotebrowserutils/RemoteWebNavigation.js
rename : toolkit/components/satchel/FormHistoryStartup.jsm => toolkit/components/satchel/FormHistoryStartup.js
rename : toolkit/components/satchel/FormAutoComplete.jsm => toolkit/components/satchel/nsFormAutoComplete.js
rename : toolkit/components/satchel/InputListAutoComplete.jsm => toolkit/components/satchel/nsInputListAutoComplete.js
rename : toolkit/components/search/SearchService.jsm => toolkit/components/search/nsSearchService.js
rename : toolkit/components/search/SearchSuggestions.jsm => toolkit/components/search/nsSearchSuggestions.js
rename : toolkit/components/search/Sidebar.jsm => toolkit/components/search/nsSidebar.js
rename : toolkit/components/telemetry/TelemetryStartup.jsm => toolkit/components/telemetry/TelemetryStartup.js
rename : toolkit/components/terminator/TerminatorTelemetry.jsm => toolkit/components/terminator/nsTerminatorTelemetry.js
rename : toolkit/components/thumbnails/PageThumbsStorageService.jsm => toolkit/components/thumbnails/PageThumbsStorageService.js
rename : toolkit/components/timermanager/UpdateTimerManager.jsm => toolkit/components/timermanager/nsUpdateTimerManager.js
rename : toolkit/components/tooltiptext/TooltipTextProvider.jsm => toolkit/components/tooltiptext/TooltipTextProvider.js
rename : toolkit/components/url-classifier/UrlClassifierHashCompleter.jsm => toolkit/components/url-classifier/nsUrlClassifierHashCompleter.js
rename : toolkit/components/url-classifier/UrlClassifierLib.jsm => toolkit/components/url-classifier/nsUrlClassifierLib.js
rename : toolkit/components/url-classifier/UrlClassifierListManager.jsm => toolkit/components/url-classifier/nsUrlClassifierListManager.js
rename : toolkit/components/urlformatter/URLFormatter.jsm => toolkit/components/urlformatter/nsURLFormatter.js
rename : toolkit/components/utils/SimpleServices.jsm => toolkit/components/utils/simpleServices.js
rename : toolkit/components/xulstore/XULStore.jsm => toolkit/components/xulstore/XULStore.js
rename : toolkit/mozapps/downloads/HelperAppDlg.jsm => toolkit/mozapps/downloads/nsHelperAppDlg.js
rename : toolkit/mozapps/extensions/amContentHandler.jsm => toolkit/mozapps/extensions/amContentHandler.js
rename : toolkit/mozapps/extensions/amInstallTrigger.jsm => toolkit/mozapps/extensions/amInstallTrigger.js
rename : toolkit/mozapps/extensions/amWebAPI.jsm => toolkit/mozapps/extensions/amWebAPI.js
rename : toolkit/mozapps/handling/ContentDispatchChooser.jsm => toolkit/mozapps/handling/nsContentDispatchChooser.js
rename : toolkit/mozapps/update/UpdateService.jsm => toolkit/mozapps/update/nsUpdateService.js
rename : toolkit/mozapps/update/UpdateServiceStub.jsm => toolkit/mozapps/update/nsUpdateServiceStub.js
rename : uriloader/exthandler/WebHandlerApp.jsm => uriloader/exthandler/nsWebHandlerApp.js
2019-02-14 11:50:23 +02:00
Kris Maglione a34d453ee8 Bug 1524688: Part 1a - Support static registration JS components. r=mccr8
--HG--
extra : source : 68eb174a337b20e64583ae8afd45d479a3f54b61
2019-01-29 17:46:27 -08:00
Kris Maglione 447a46e33e Bug 1524688: Part 1a - Support static registration JS components. r=mccr8
--HG--
extra : rebase_source : b693f61d803dcebc625a697f88c9ec25f287d956
2019-01-29 17:46:27 -08:00
Mike Hommey c5bfd96206 Bug 1524467 - Fix and refactor basic_bindgen_cflags. r=froydnj
basic_bindgen_cflags's function is to set some flags for use with
rust-bindgen through clang/libclang for C++ code. Part of the flags it
sets are for the C++ standard, and the target.

Unfortunately, some of the logic wrt target-specific flags is currently
broken. It wants to apply per-compiler flags on Windows, but fails to do
so. First, because the condition test is wrong, and second, because it
only cares about msvc and not clang-cl.

OTOH, we already have those flags when the compiler is clang or
clang-cl. And we already have code to get the right flags for a given
compiler. So when the compiler is not clang or clang-cl, we can use that
to get the right flags for the clang we're going to use for bindgen.

Depends on D18316

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

--HG--
extra : moz-landing-system : lando
2019-02-05 00:27:33 +00:00
Mike Hommey 33a69b7eea Bug 1524467 - Use -m32/-m64 in more cases. r=froydnj
In upcoming changes, we're going to use the normal compiler flags for
bindgen instead of having a separate logic for essentially the same
flags (and there's not much reason not to use the same flags after all).

One hiccup, though is that for some reason, --target=i686-linux-gnu
doesn't work with bindgen while it works with clang in the same setup.
But -m32 does.

Considering -m32 and -m64 are standard flags and that we're using them
in many cases, it doesn't hurt to use them instead of --target with
clang.

While we're doing that, we might as well refactor a little to avoid the
multiple branches handling the use of -m32/-m64, and fix the theoretical
compile-x86_64-with-x86-clang-cl case, as well as the weird check for
aarch64.

And because only two cases actually require -Xclang, only one of which
requires a condition, and the control flow is not too complex to avoid
flag duplication, we just remove the append_flag function; it was too
confusing, with all the cases we skipped it when -Xclang was not wanted.

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

--HG--
extra : moz-landing-system : lando
2019-02-04 17:22:58 +00:00
Andrew Halberstadt 01ca807367 Bug 1515746 - [flake8] Unsupport subdir .flake8 files and use new 'per-file-ignores' config instead, r=egao
This removes all .flake8 files except for the one at the root of the repo.
Instead we use the new 'per-file-ignores' config introduced in 3.7. To ignore
specific errors in a subdirectory, add a line like this to the root .flake8:

[per-file-ignores]
    path/to/subdir/*: E100, F200, ...

The reasons for this change are:

1. Unblock flake8 blacklist (bug 1367092).
2. Simplify configuration and code.
3. Encourage more consistent styling.
4. Improve performance.
5. Greater editor consistency.

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

--HG--
extra : moz-landing-system : lando
2019-02-07 20:17:02 +00:00
Mike Hommey 247022a791 Bug 1525510 - Add a trampoline to call original_init when it's not possible directly. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D18807

--HG--
extra : moz-landing-system : lando
2019-02-07 16:23:49 +00:00
Mike Hommey 2cce1ce974 Bug 1525196 - Apply https://reviews.llvm.org/D57636 to clang r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D18886

--HG--
extra : moz-landing-system : lando
2019-02-07 13:58:43 +00:00
Razvan Maries e5944cdd0e Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-02-07 23:49:13 +02:00
Tom Ritter b06907665c Bug 1525588 - Do not enable CFG on ARM builds, as it causes undiagnosed failures. r=dmajor
--HG--
extra : rebase_source : c305609f0d5a08958e9901b2b02867ea7fa200c7
2019-02-06 11:42:24 -06:00
Johann Hofmann 731692a30b Bug 1522565 - Tests for cryptominers and fingerprinters sub-panels. r=nhnt11
Differential Revision: https://phabricator.services.mozilla.com/D18827

--HG--
extra : rebase_source : f1e874a43c204f807259cc5249d4e872e25fba26
2019-02-06 14:12:20 +01:00
Mike Hommey bdaa5d90e4 Bug 1522609 - Pass compilers and flags down to cargo on sanitizer/fuzzying/ccov builds. r=ted
Depends on D18280

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

--HG--
extra : moz-landing-system : lando
2019-02-06 03:05:52 +00:00
Cosmin Sabou 8bd3dcb455 Merge mozilla-inbound to mozilla-central. a=merge 2019-02-05 23:58:20 +02:00
Razvan Maries f86459d5dc Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-02-05 18:59:13 +02:00
Razvan Maries 3ad4eb8f48 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-02-05 12:27:07 +02:00
Wes Kocher c03a82f8b5 Bug 1525191 - Regenerate certs CLOSED TREE a=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D18632

--HG--
extra : amend_source : 028e3e34ede69bc05f9f8ea147bee02a4e9e2de5
2019-02-04 17:09:59 -08:00
David Major a01a1ced08 Bug 1525113: Disable two crashy Binscope checks. r=froydnj 2019-02-04 16:00:57 -05:00
Sylvestre Ledru e887b2193c Bug 1515356 - Do not fail the build in case of warning with -Wdeprecated-copy r=froydnj
New warning with gcc 9

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

--HG--
extra : moz-landing-system : lando
2019-02-04 14:32:13 +00:00
Makoto Kato b93b9a8c45 Bug 1515004 - Move --with-android-sdk to moz.configure. r=nalexander
Since ./mach bootstrap installs Android SDK into ~/.mozbuild, we should detect
this location as default SDK install path.

Also, --with-android-max-sdk and --with-android-min-sdk are still in android.m4
because confvars.sh sets MOZ_ANDROID_MIN_SDK_VERSION.

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

--HG--
extra : moz-landing-system : lando
2019-02-01 21:12:51 +00:00
Razvan Maries 2428b56054 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-02-05 12:24:54 +02:00
Andrew Halberstadt 83e75a8676 Bug 1483228 - [mozboot] Add ability to get a srcdir specific state dir r=nalexander
Sometimes we want to store state that only applies to a particular srcdir, but
there isn't a standard directory where this lives. Let's add an argument to
'get_state_dir()' to provide an "official" place.

The new API to get the local state dir is 'get_state_dir(srcdir=True)'. Like
the global state dir, this directory is not guaranteed to exist. A reference to
this value can also be obtained via 'self._mach_context.local_state_dir' from
within a mach command (in this case it will be created automatically if it
doesn't exist).

Note: we should probably just make sure both exist at mach startup, but it felt
outside the scope of this change.

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

--HG--
extra : moz-landing-system : lando
2019-02-04 21:07:25 +00:00
Andrew Halberstadt 8bc7850637 Bug 1483228 - [mozboot] Simplify get_state_dir()'s return value r=nalexander
mozboot.util.get_state_dir() returns a tuple of (<path>, <bool). The bool
denotes whether or not the state dir came from an environment variable.

But this value is only used in a single place, and is very easy to test for
anyway. It's not worth the added complexity it imposes on all other consumers
of this function. Let's just make this function return the path.

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

--HG--
extra : moz-landing-system : lando
2019-02-04 20:52:31 +00:00
Ted Mielczarek dacb17a7c0 bug 1506848 - remove some no-longer-necessary bits from mozconfig.cache. r=nalexander,glandium
Differential Revision: https://phabricator.services.mozilla.com/D18265

--HG--
extra : moz-landing-system : lando
2019-02-01 11:22:16 +00:00
Ted Mielczarek 8a4288a193 bug 1506848 - switch Windows debug flags from -Zi to -Z7. r=nalexander
We default to -Zi for Windows debug flags, which is for generating debug info
into a PDB file, but clang-cl doesn't actually implement that so -Zi is
an alias for -Z7 in clang-cl:
http://clang.llvm.org/docs/UsersManual.html#id9

sccache has special handling for -Zi because multiple compiles writing
to the same PDB file is not cacheable, so we've always overridden -Zi with -Z7
in CI when using sccache.

Given that everyone should be using clang-cl nowadays and MSVC will no longer
be supported soon, this patch changes the default and removes some PDB
file name flag setting from rules.mk, as well as the no-longer-necessary
overrides from mozconfig.cache.

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

--HG--
extra : moz-landing-system : lando
2019-02-01 11:12:06 +00:00
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
Mike Hommey 0936da9a4a Bug 1523851 - Make ac_cv_prog_*_works act as a cache. r=froydnj
Depends on D18057

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

--HG--
extra : moz-landing-system : lando
2019-01-31 02:11:50 +00:00
Mike Hommey 21c3b16892 Bug 1523851 - Remove AC_PROG_GCC_TRADITIONAL test. r=froydnj
While not related, it turns out this test was opted in by ourselves,
while it's practically useless. Recent autoconf documentation says it's
obsolescent, and even autoconf 2.13 documentation said with "recent
versions of the GNU C compiler", the issue it's detecting "is becoming
a less prevalent problem". Recent as of 20 years ago.

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

--HG--
extra : moz-landing-system : lando
2019-01-30 14:39:01 +00:00
Mike Hommey 80ff55b932 Bug 1524059 - Fix Windows artifact builds on try after bugs 1523145 and 1523201. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D18152

--HG--
extra : moz-landing-system : lando
2019-01-30 23:53:26 +00:00
Mike Hommey bf0e86a9dc Bug 1523540 - Remove WIN64_LIB and WIN64_LINK. r=ted
Now that everything is lined up nicely, we don't need those anymore.

We can fill cargo-linker.bat with HOST_LINKER and HOST_LINKER_LIBPATHS,
which, unfortunately, can't be used as is, so we add a variant for
substitution in .bat files.

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

--HG--
extra : moz-landing-system : lando
2019-01-30 21:46:39 +00:00
Gurzau Raul 7555c5cdea Merge inbound to mozilla-central. a=merge 2019-01-30 19:03:12 +02:00
Tom Ritter 55eb3434be Bug 1523003 - Remove the force-ms-compatibility for clang-cl r=glandium 2019-01-27 17:19:57 -06:00
Alex Chronopoulos 0c15094a05 Bug 1522035 - Set HAVE_ALIGNED_MALLOC as global macro and avoid redefining in libdav1d. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D17632

--HG--
extra : moz-landing-system : lando
2019-01-30 09:06:52 +00:00
shindli f7752f11b1 Merge inbound to mozilla-central. a=merge 2019-01-30 06:07:01 +02:00
shindli 011ea038cb Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-01-29 23:54:31 +02:00
shindli 8f92eb66a3 Merge autoland to mozilla-central. a=merge 2019-01-29 23:35:35 +02:00
Mike Hommey de5dfda48c Bug 1520232 - Preset some of the autoconf config.cache values from python configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D17914

--HG--
extra : moz-landing-system : lando
2019-01-29 14:17:29 +00:00
Mike Hommey 327319fd40 Bug 1523537 - Remove WIN_DIA_SDK_BIN_DIR as a thing that can be set manually. r=dmajor
Now that it's automatically derived and that in-tree mozconfigs are
setting DIA_SDK_PATH, we don't need to set WIN_DIA_SDK_BIN_DIR on
automation, or elsewhere, for that matter.

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

--HG--
extra : moz-landing-system : lando
2019-01-29 14:22:26 +00:00
Mark Banner 3a4a57f3fa Bug 1523593 - Pass arguments to check_cmd_output as simple arguments rather than a list. Bustage fix from bug 1523153. r=Gijs a=Aryx
Reviewers: Gijs

Reviewed By: Gijs

Subscribers: Gijs

Bug #: 1523593

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

--HG--
extra : rebase_source : 8e6098c9a53a2dbb8411c645b24cd045537ce42b
extra : amend_source : ef98541406c0bb72e920a1df6c28fe3272fcacb6
2019-01-29 15:42:05 +02:00
Cosmin Sabou 599a15d354 Merge mozilla-inbound to mozilla-central. a=merge 2019-01-29 12:01:56 +02:00
Sebastian Hengst b78e4e8667 Merge mozilla-central to mozilla-inbound
--HG--
rename : browser/components/urlbar/tests/legacy/browser_urlbar_search_no_speculative_connect_with_client_cert.js => browser/components/urlbar/tests/browser/browser_urlbar_speculative_connect_not_with_client_cert.js
2019-01-29 02:55:55 +02:00
Tom Prince 0b741aa881 Bug 1521584: [win64-aarch64] Add win64-aarch64 release mozconfigs; r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D17452

--HG--
extra : moz-landing-system : lando
2019-01-26 09:50:27 +00:00
Kartikaya Gupta 6969f0ccfb Bug 1523082 - Remove assertion and more robustly handle destructor decls. r=emilio
Clang 8 seems to generate destructor decls from different source
locations which breaks an assertion in the code. This patch updates the
code to remove the assertion and more robustly handle the new
declarations.

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

--HG--
extra : moz-landing-system : lando
2019-01-29 03:06:35 +00:00
Mike Hommey 38189d89a7 Bug 1523146 - Remove checks for MSVC < 2017. r=dmajor
We reject MSVC compilers < 2017 already, there's no point checking for
smaller versions after that.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 03:30:03 +00:00
Cosmin Sabou ee75c9f2c6 Backed out 6 changesets (bug 1516228) for causing bug 1523056. a=backout
Backed out changeset 24ebb52d21fa (bug 1516228)
Backed out changeset 53d93ee3ad84 (bug 1516228)
Backed out changeset 4f53ede33517 (bug 1516228)
Backed out changeset 2e6bec87c9f3 (bug 1516228)
Backed out changeset 09ee05a4cc30 (bug 1516228)
Backed out changeset 8456feb780f7 (bug 1516228)
2019-01-26 21:12:33 +02:00
Sebastian Hengst 9ece29fd9b Merge mozilla-central to autoland. CLOSED TREE 2019-01-29 12:59:48 +02:00
Mike Hommey 54831bbdf9 Bug 1523201 - Set VC_PATH and DIA_SDK_PATH in in-tree mozconfigs. r=froydnj
And remove all the variables that configure will figure out for us as a
consequence. This has the side effect of making the automation builds a
little more like local builds, in that they don't rely on preset PATH,
LIB, etc. for the build to work.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 22:41:57 +00:00
Mike Hommey 4913b1c2d2 Bug 1523204 - Streamline the DIA SDK setup. r=chmanchester
We currently rely on WIN_DIA_SDK_BIN_DIR being passed, but we can
actually derive it from the DIA SDK directory. So we now do that, except
when it's given explicitly.

While in the vicinity, move the dia2.h check to python configure.

With WIN_DIA_SDK_BIN_DIR being derived and not set when dia2.h is not
found, we don't really need MSVC_HAS_DIA_SDK anymore, so we just check
for WIN_DIA_SDK_BIN_DIR to determine whether to build dump_syms or not.

One exception to the above is when WIN_DIA_SDK_BIN_DIR is passed in,
which we only keep for the in-tree mozconfigs for now. We'll remove that
possibility after bug 1523201.

Depends on D17892

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

--HG--
extra : moz-landing-system : lando
2019-01-29 07:38:14 +00:00
David Major fffbdc0db1 Bug 1522771: Use -brepro to build clang-plugin.dll deterministically. r=mshal 2019-01-25 11:09:13 -05:00
Mike Hommey f33335cf10 Bug 1523145 - Remove mk_export_correct_style. r=froydnj
It turns out, we don't need to `mk_add_options export` the variables
from the in-tree mozconfigs. If anything, that causes problems when
trying to simplify the mozconfigs, because it makes the variables
exported from .mozconfig.mk, overriding what configure may change and
store in autoconf.mk.

All the variables are handled by configure in a way that makes them
available in autoconf.mk, so there's no loss there, and with the
python/shell-based mozconfig loader, it turns out we don't need to go
through extra normalization via cmd.

autospider.py, being its own pseudo-mozconfig parser, still does need
it, though, but it was hooking into it already, so just inline that.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 21:06:01 +00:00
Mike Hommey ba16bbdf4f Bug 1523200 - Use the x86 MSVC when the configure host is x86. r=froydnj
Previously, we hardcoded HostX64 because configure would autodetect a
x86 host on x64 machines, but the x86 MSVC compiler wouldn't be
suitable.

While the x86 MSVC compiler might still not be suitable, now that
configure detects x64 hosts properly, when the configure host is
detected as x86, we can't even execute the x64 compiler, so we can at
least try with the x86 one correctly.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 22:24:04 +00:00
Mike Hommey bf7c4521f8 Bug 1519010 - Make LINKER and HOST_LINKER js_options. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D17793

--HG--
extra : moz-landing-system : lando
2019-01-29 01:22:19 +00:00
Mike Hommey d62063e5c2 Bug 1523153 - Pass the altered PATH to old-configure. r=chmanchester
The combination of bug 1515579 and bug 1520394 made things harder for
old-configure, because it doesn't necessarily have a complete view of
the search PATH that has been used. This doesn't actually cause problems
on non-Windows builds because things work out fine, but on Windows,
some of the executions of clang-cl in old-configure insist on being able
to find a MSVC install. That, again, doesn't currently cause problems in
general on local builds because clang-cl finds it through the registry
(presumably), and on automation, because it's in the `mk_add_options
export`'ed PATH, but the latter is due to change.

Depends on D17772

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

--HG--
extra : moz-landing-system : lando
2019-01-29 01:17:57 +00:00
Mike Hommey 621fd58bd3 Bug 1523153 - Use find_program instead of which in llvm_config_paths. r=chmanchester
Also, while here, replace subprocess.check_output with check_cmd_output.

Depends on D17771

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

--HG--
extra : moz-landing-system : lando
2019-01-29 01:17:49 +00:00
Mike Hommey a7be46c489 Bug 1523153 - Don't rely on which.which's os.environ in python configure. r=chmanchester
Bug 1520394 changed things such that the configure sandbox is using a
copy of os.environ. So when mozconfig injects environment changes, they
only affect the sandbox. Which means when the which module uses
os.environ to get PATH, it gets the original unmodified environment.

So instead of relying on the which module getting PATH itself, we feed
it with it. It's worth noting that the which module adds `.` on Windows,
but we don't copy this behavior, because in the context of configure,
it's actually not important (`.` would be the topobjdir).

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

--HG--
extra : moz-landing-system : lando
2019-01-29 01:17:43 +00:00
Mike Hommey ac76b3270c Bug 1523143 - Reject builds where the rust compiler host does not match the build host. r=chmanchester
Depends on D17765

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

--HG--
extra : moz-landing-system : lando
2019-01-29 01:15:16 +00:00
Mike Hommey 12e0f305f3 Bug 1523198 - Make VC_PATH a normal configure input. r=froydnj
And use it as an alternative to vswhere, instead of the current late
check. This allows to use VC_PATH when using a MSVC archive that is not
installed through the VS installer, and not have to care about PATH.

Depends on D17786

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

--HG--
extra : moz-landing-system : lando
2019-01-28 20:44:26 +00:00
Mike Hommey 85670de72d Bug 1523198 - Refactor vc_compiler_path. r=froydnj
- Only expose it as well as --with-visual-studio-version when the host
  system is Windows.
- Don't run vswhere twice (once for host and once for target).

Depends on D17785

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

--HG--
extra : moz-landing-system : lando
2019-01-28 20:42:07 +00:00
Mike Hommey d04b0b4a1b Bug 1523198 - Make DIA_SDK_PATH a normal configure input. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D17785

--HG--
extra : moz-landing-system : lando
2019-01-28 20:37:04 +00:00
Mike Hommey 63d64c8a5d Bug 1523223 - Die with a useful error message when MSVC cannot be found on clang-cl builds. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D17794

--HG--
extra : moz-landing-system : lando
2019-01-28 22:33:04 +00:00
Mike Hommey 26df61d9d6 Bug 1522560 - Use system vswhere.exe. r=dmajor
And remove the in-tree one.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 21:54:56 +00:00
Mike Hommey 8f51010fc1 Bug 1522354 - Remove --host=x86_64-pc-mingw32 from mozconfigs now that it is detected correctly. r=nalexander
Depends on D17621

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

--HG--
extra : moz-landing-system : lando
2019-01-25 18:01:28 +00:00
Mike Hommey 5e7a18573c Bug 1522354 - Derive configure host from the environment when possible on Windows. r=nalexander
config.guess doesn't actually figure out the real host system on
Windows. All it does is end up finding the CPU for which the msys used
for the shell is built for. Which has the unfortunate effect that if you
build on a 64-bits host, configure pretends the host is 32-bits.

So instead, rely on some environment variables that should be set
mostly everywhere, and derive the corresponding triplet.

This has two effects:
- configure now knows that the host is 64-bits when it is.
- consequently, configure will build a 64-bits Firefox on 64-bits hosts
  by default (since by default, the target is derived from the host), and
  that's actually a desired side effect.

Depends on D17620

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

--HG--
extra : moz-landing-system : lando
2019-01-25 18:00:58 +00:00
Mike Hommey 3a0c4a4154 Bug 1522354 - Avoid running config.sub in cases we don't really need to. r=nalexander
- We assume the output from config.guess is sufficiently normalized for
  our needs.
- If we partially derive the target from the host (with only the cpu
  given for --target), we assume the derived value doesn't need
  canonicalization.

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

--HG--
extra : moz-landing-system : lando
2019-01-25 23:28:06 +00:00
Mike Hommey 5f875e708a Bug 1522788 - Harmonize config.guess handling between mach and configure. r=chmanchester
In fact, "simply" use whatever python configure does to find a shell to
execute config.guess and config.sub, and get both the mozconfig content
and the real, canonicalized target alias. This has the side effect of
making builds with --target=$cpu use a complete obj-$cpu-$os default
objdir instead of obj-$cpu. This will also allow to change the
host-guessing logic without having to duplicate code.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 22:14:23 +00:00
Ryan VanderMeulen 7515f6edf1 Bug 1522507 - Update Windows ARM64 builds to Visual Studio 2017 15.9.6. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D17728

--HG--
extra : moz-landing-system : lando
2019-01-28 19:29:56 +00:00
Jan Henning efeb6ace63 Bug 1503455 - Part 2: Remove compile SDK setting from configure. r=nalexander
Post bug 1498406, this seems to be unused and doesn't affect anything.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 18:31:57 +00:00
Mike Hommey fa58fc9bd9 Bug 1516228 - Use llvm-objdump instead of objdump in old-configure. r=firefox-build-system-reviewers,mshal
Depends on D17462

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

--HG--
extra : moz-landing-system : lando
2019-01-24 15:40:58 +00:00
Mike Hommey 96f7f533a2 Bug 1516228 - Add a configure check for llvm-objdump. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D17462

--HG--
extra : moz-landing-system : lando
2019-01-24 15:33:47 +00:00
David Major 820c1361b4 Bug 1512822 - Use clang-cl rather than MSVC for aarch64 builds r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D17021

--HG--
extra : moz-landing-system : lando
2019-01-24 15:08:50 +00:00