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

7630 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 1e9ffcebe9 Bug 1478813 - Auto-generate ServoStyleConsts. r=xidorn,ted
Differential Revision: https://phabricator.services.mozilla.com/D2447
2018-08-17 19:02:34 +02:00
Mike Hommey 8ae8b977cb Backout changeset 1e71e61d1623 (bug 1479800) to give time to toolchains to build without blocking other landings. 2018-08-17 07:11:45 +09:00
Mike Hommey 4e5403653b Bug 1479800 - Build 32-bits compiler-rt for 64-bits clang-cl. r=dmajor 2018-08-17 07:10:07 +09:00
Tiberius Oros 2010f3a375 Merge autoland to mozilla-central. a=merge 2018-08-17 00:31:31 +03:00
Dan Mosedale 1fc4333268 Bug 1483595 - turn on NodeJS by default in the builds, r=gps, a=RyanVM
MozReview-Commit-ID: AlKuz8BTKM3
2018-08-16 10:54:10 -07:00
Dorel Luca 6e90fcf6e3 Backed out changeset d602a2f69ff8 (bug 1475573) on request from truber. a=backout 2018-08-16 17:49:01 +03:00
Mike Hommey 49dd99e3a3 Bug 1480631 - Switch Linux builds to clang. r=froydnj
This change switches most CI builds to clang, with a few exceptions:
- valgrind builds, until bug 1481670 is figured out.
- PGO and nightly builds, until that's fully tested.
- coverage builds, per bug 1471339 comment 17.
- base toolchain builds, to keep some builds on GCC even when we're
  fully switched to clang.
- any build that doesn't use build/unix/mozconfig.linux (e.g. probably
  all those driven by autospider.py, maybe others).
2018-08-16 10:32:33 +09:00
Ted Mielczarek 233bc083f6 bug 1461992 - add a voluptuous schema for build system telemetry. r=gps
This change adds a voluptuous schema for build system telemetry, replacing
the existing json schema file. Using voluptuous will make it easier to work
with the schema from Python code in the build system. A future commit will
use a Python module to provide a mach command to convert the voluptuous
schema to json schema format for consumption by other systems.

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

--HG--
extra : rebase_source : 067995385334d1dbc123f2db4245ef4e69d076c3
2018-08-03 15:41:20 -04:00
Bogdan Tara bde699c0ed Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-08-15 20:58:28 +03:00
Narcis Beleuzu 7c87bec62e Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-08-15 12:57:18 +03:00
Narcis Beleuzu 23387914d5 Merge inbound to mozilla-central. a=merge 2018-08-15 12:48:57 +03:00
Mike Hommey 6e7a8d357e Bug 1483123 - Apply miscompilation fix from clang upstream. r=froydnj 2018-08-15 17:34:21 +09:00
Julian Seward 2a6490bec0 Bug 1479055 - Suppress Valgrind false positive in style::properties::longhands::clip_path::cascade_property. r=emilio.
--HG--
extra : rebase_source : 161c7fdcef4c242accb8d9894118d24318b9f39f
2018-08-15 07:19:20 +02:00
Tom Ritter 387aaf6096 Bug 1479878 Add a --skip-revert option to build-clang.py r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D2580

--HG--
extra : moz-landing-system : lando
2018-08-15 06:13:14 +00:00
Chris Manchester c346a68ae0 Bug 1474028 - Add a way to exclude libraries from the default build. r=ted
MozReview-Commit-ID: MVfplx9lN2

--HG--
extra : rebase_source : 10b4bd3dcc1386d782531206c84b66207297d00a
2018-08-10 12:07:29 -07:00
Mike Hommey 370eb66bdb Bug 1479055 - Upgrade valgrind to current git trunk. r=froydnj 2018-08-14 07:25:08 +09:00
Mike Hommey 6e62bce406 Bug 1481861 - Move the eh_frame sections when they are before the first executable section. r=froydnj
In some rare cases, it is possible for one of the eh_frame sections'
original address to be larger than the address of the injected code
section, which is added before the first executable section. Namely,
this happens in the rare case where that eh_frame section is smaller
than the injected code section, and is adjacent to the first executable
section. We obviously want to move the eh_frame sections in that case,
since one of them is in the way.
2018-08-14 07:25:07 +09:00
Dan Mosedale f1eec975a7 Bug 1482676 - configure should prefer .mozbuild copy of node
MozReview-Commit-ID: 91F4Z8GljkV
2018-08-13 09:24:56 -07:00
Narcis Beleuzu f4e5fb2d0f Backed out 2 changesets (bug 1474028) per chmanchester`s request. a=backout
Backed out changeset 52bd814d3589 (bug 1474028)
Backed out changeset 39a528147c34 (bug 1474028)
2018-08-12 21:22:45 +03:00
Dan Mosedale 228084f4e7 Bug 1481693 - Teach node.configure to prefer .mozbuild node to PATH, r=gps
MozReview-Commit-ID: 8PDuRECtC4M
2018-08-10 19:57:59 -07:00
Mike Hommey f4f54e5aeb Bug 1482330 - Upgrade to Android NDK r17b and API level 16 (JB). r=snorp
We're currently using NDK r15c, which is rather old, and happens to come
with a buggy gold linker. Let's use a more recent NDK, with a fixed
linker.

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

Another change in the newer NDK is that the target-name changed from
i386-linux-android to i686-linux-android, so adjust for that in the
android x86 mozconfigs.
2018-08-11 09:47:41 +09:00
Bogdan Tara 347da2ba78 Backed out changeset 003838e8d110 (bug 1482330) for Adnroid build bustages on mozalloc_abort.cpp CLOSED TREE 2018-08-11 03:22:58 +03:00
Bogdan Tara 2f2b719960 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-08-11 01:01:18 +03:00
Mike Hommey ba8192bdee Bug 1482335 - Update clang 7pre toolchains to 7rc1. r=dmajor 2018-08-11 06:50:27 +09:00
Mike Hommey ee95699e6b Bug 1482330 - Upgrade to Android NDK r17b and API level 16 (JB). r=snorp
We're currently using NDK r15c, which is rather old, and happens to come
with a buggy gold linker. Let's use a more recent NDK, with a fixed
linker.

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

Another change in the newer NDK is that the target-name changed from
i386-linux-android to i686-linux-android, so adjust for that in the
android x86 mozconfigs.
2018-08-11 06:50:21 +09:00
Narcis Beleuzu 96343e8f1f Backed out 3 changesets (bug 1484184, bug 1484190, bug 1484191) for bustages on test_toolchain_configure.py. CLOSED TREE
Backed out changeset dca5444170e0 (bug 1484190)
Backed out changeset 1ef81d07bc5b (bug 1484184)
Backed out changeset 2a42fd4df1bb (bug 1484191)
2018-08-20 19:49:37 +03:00
Masatoshi Kimura f985ebf143 Bug 1484190 - Unblock MSVC 2017 15.8. r=dmajor
--HG--
extra : rebase_source : b21ef13181d447cbbd822f073c80d982dd212dc4
extra : source : 5d24aab5c5a18b18edfd13cf786e94c545e36e94
2018-08-17 20:41:49 +09:00
Chris Manchester 2476269229 Bug 1474028 - Add a way to exclude libraries from the default build. r=ted
MozReview-Commit-ID: MVfplx9lN2

--HG--
extra : rebase_source : 3eb5352b5bc0d1b9be857c16efa5af0313afb6e7
2018-08-10 12:07:29 -07:00
Noemi Erli be6ab34c54 Merge mozilla-central to inbound. a=merge CLOSED TREE
--HG--
extra : rebase_source : 691b5b30b6c3b2ddece605c045ad913e466fdbab
2018-08-10 00:35:58 +03:00
Noemi Erli de9e45a850 Merge inbound to mozilla-central. a=merge 2018-08-10 00:31:09 +03:00
Chris Manchester 584157b2d3 Bug 1450078 - Require rust 1.28 in configure. r=ted,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D2889

--HG--
extra : moz-landing-system : lando
2018-08-09 18:31:35 +00:00
David Heiberg c9661e61a3 Bug 1476661 - Ensure H2 dependencies are packaged alongside wptserve where needed, r=jgraham
MozReview-Commit-ID: 5tbXeHsvNI5
2018-08-09 11:38:37 +01:00
Daniel Varga 14af3949fc Backed out 3 changesets (bug 1480631) for failure at /home/cltbld/workspace/build/tests/talos/talos/run_tests.py
Backed out changeset ed7dba433629 (bug 1480631)
Backed out changeset dd64a5e6d4df (bug 1480631)
Backed out changeset 910a805c960d (bug 1480631)
2018-08-09 01:46:40 +03:00
Daniel Varga 31ff8cd9c8 Merge mozilla-central to mozilla inbound. a=merge 2018-08-09 01:10:56 +03:00
Mike Hommey d99b52b6ed Fix up for bug 1481727, because operator priorities are fucked up in C/C++. r=bustage on a CLOSED TREE 2018-08-09 07:07:14 +09:00
Mike Hommey 7be4cc3526 Fix up clang-tidy after bug 1480631. r=bustage 2018-08-09 06:37:11 +09:00
Mike Hommey 6fe1432f2e Bug 1480631 - Switch Linux builds to clang. r=froydnj
This change switches most CI builds to clang, with a few exceptions:
- valgrind builds, until bug 1481670 is figured out.
- PGO and nightly builds, until that's fully tested.
- coverage builds, per bug 1471339 comment 17.
- base toolchain builds, to keep some builds on GCC even when we're
  fully switched to clang.
- any build that doesn't use build/unix/mozconfig.linux (e.g. probably
  all those driven by autospider.py, maybe others).
2018-08-09 06:08:19 +09:00
Mike Hommey 29e5f32cce Bug 1480631 - Copy 32-bits libraries from gcc to clang. r=froydnj
We already copy the 64-bits libraries, but don't copy the 32-bits
libraries, which prevents building for linux32 by default.

Incidentally, this also makes the clang build system build the 32-bits
compiler-rt libraries, allowing e.g. 32-bits PGO.
2018-08-09 06:08:12 +09:00
Mike Hommey 6d197a0707 Bug 1481719 - Disable profile-instr-out-of-date warnings explicitly rather than allowing all warnings where they appear. r=dmajor 2018-08-09 06:07:33 +09:00
Mike Hommey fe9dd50d7f Bug 1481727 - Fix an elfhack corner case after bug 1423822. r=froydnj
Bug 1423822 moved the injected code section before the .text section.
When linking with lld, the text section is usually page aligned, and
starting a PT_LOAD. We inject code at the beginning of the PT_LOAD,
which means the PT_LOAD is going to be extended at least a page
downwards. And it means the preceding PT_LOAD can't finish in that same
page, so the overhead of the injected code is needs to account for the
page alignment.
2018-08-09 06:04:30 +09:00
Jesse Schwartzentruber abc4b27cb4 Bug 1475573 - Create --enable-fuzzing debug build job for Android x86 firefox. r=nalexander,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D2428

--HG--
extra : moz-landing-system : lando
2018-08-07 17:53:57 +00:00
Brindusan Cristian 91ec49bade Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-08-08 00:57:25 +03:00
Mike Hommey 57cabd17f2 Bug 1480688 - Don't try to move .eh_frame in case it's not necessary. r=froydnj
If the .eh_frame_hdr and .eh_frame sections are not between the elfhack
relocation and elfhack code sections, it's not going to change anything
to try to move it, so don't even try.

While here, adjust the adjacency test to error out when the section name
doesn't match, and account for the fact that the eh_frame_hdr section
might appear after eh_frame.

--HG--
extra : rebase_source : 7d3525abe75b5a014b39ce0bd406e8f78592ec39
2018-08-03 16:39:50 +09:00
Mike Hommey 9eb572df9c Bug 1481378 - Simplify mozconfig.linux32. r=ted
All CI builds for linux32 have been running on 64-bits hosts for a long
while now, and there are no 32-bits hosts left. We can remove the
special-casing that makes the linux32 builds behave differently
depending on the bit-width of the host.

Furthermore, configure has been able to deal with adding -m32 on its
own, so we don't need to add it to $CC/$CXX manually anymore.
2018-08-07 19:40:52 +09:00
Geoff Brown 8b4653a7b7 Bug 1480546 - Enhance logging for Android automation app wait; r=bc 2018-08-07 10:05:37 -06:00
Mike Hommey 6d4eb0a92e Bug 1464170 - Support PGO in clang builds on Linux. r=dmajor
This uses the same code path as for clang-cl builds.
2018-08-10 05:54:11 +09:00
Mike Hommey 601f45564e Bug 1481989 - Copy 32-bits libraries from gcc to clang. r=froydnj
We already copy the 64-bits libraries, but don't copy the 32-bits
libraries, which prevents building for linux32 by default.

Incidentally, this also makes the clang build system build the 32-bits
compiler-rt libraries, allowing e.g. 32-bits PGO.
2018-08-10 05:54:07 +09:00
Mike Hommey a228cc9fbd Bug 1481989 - Don't try to enable libstdc++ compat on Android. r=froydnj
We only enable libstdc++ compat on Android for the host parts, and
in practice, the target part has it not enabled at the moment because
libstdc++ can't be found. But making the clang toolchain capable of
building for x86 changes the deal for Android x86.
2018-08-10 05:53:59 +09:00
Masatoshi Kimura 3b21b7868b Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj
--HG--
extra : rebase_source : c09366fb93e5b0f72abe1e99d3094e3d96a934fb
extra : intermediate-source : 5950c9d63c3b4fd63a25464a7b50944aaec7079f
extra : source : ca1b9a2bcc4381795f556fea2fb59066567c30f3
2018-07-31 22:10:07 +09:00
Margareta Eliza Balazs a42d1c158f Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-08-16 12:33:23 +03:00
Panos Astithas 6a01b19a19 Bug 1257478 - Turn mercurial-setup into vcs-setup and add git support. r=gps
MozReview-Commit-ID: AD6gLqFm8Nn

--HG--
extra : rebase_source : 0214cdc6f6acaaf0621e25f30cb0a2c81849063e
2018-07-04 21:48:42 +03:00
Andreea Pavel 8ac372b9b7 Backed out changeset 6bfba6f64e7b (bug 1480688) for android build bustages on a CLOSED TREE 2018-08-04 12:53:55 +03:00
Mike Hommey 51c6d96684 Bug 1480688 - Don't try to move .eh_frame in case it's not necessary. r=froydnj
If the .eh_frame_hdr and .eh_frame sections are not between the elfhack
relocation and elfhack code sections, it's not going to change anything
to try to move it, so don't even try.

While here, adjust the adjacency test to error out when the section name
doesn't match.

--HG--
extra : rebase_source : 4b31712576fd3472bb94a2b9ab9542253f04cba8
2018-08-03 16:39:50 +09:00
Mike Hommey 64ff5e5cb1 Bug 1480654 - Allow empty eh_frame entries. r=froydnj
Somehow, when building with LTO, clang can end up creating a eh_frame
section with only one, empty, entry (which just looks like a 4-bytes
long section full of 0x00).

--HG--
extra : rebase_source : 385c05c7e447fe1c4bc261b79c7d56138e268458
2018-08-03 11:33:49 +09:00
Bogdan Tara f2cb75b28c Merge inbound to mozilla-central. a=merge 2018-08-03 13:16:27 +03:00
Nathan Froyd 879bf0a2bd Bug 1480553 - part 3 - add mappings for aarch64 in Windows configure paths; r=glandium
We need to add mappings for target.cpu to MSVC's arm64 name for
determining various paths, and we need to add an extra case to
get_vc_paths so the compiler can find all the necessary DLLs.
2018-08-02 21:40:40 -04:00
Cosmin Sabou de8c2bd891 Backed out changeset 5950c9d63c3b (bug 1090497) for build bustages on several files. CLOSED TREE 2018-08-02 19:59:53 +03:00
Masatoshi Kimura feea19030c Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj
--HG--
extra : rebase_source : a62521fdc66def4e4d5d7bf52e68365a786b5c55
extra : source : ca1b9a2bcc4381795f556fea2fb59066567c30f3
2018-07-31 22:10:07 +09:00
Tudor-Gabriel Vîjială ae279dbf60 Bug 1473313 - Part 1: Set up geckoview build config for androidTest coverage runs. r=nalexander
This patch adds JaCoCo as a dependency for the geckoview androidTest configurations, as well as
the `mach android archive-geckoview-coverage-artifacts` command, and the `--enable-java-coverage`
mozconfig flag.

MozReview-Commit-ID: 36jNAzK44g3

--HG--
extra : rebase_source : 9edc37913a3929ad045270c601c77791d122e363
2018-07-24 11:44:24 +01:00
Mike Hommey 657b098b22 Bug 1480617 - Disable LTO when compiling dummy.c in elfhack. r=gps
For the same reason test-array.c and test-ctors.c need to be built
explicitly without LTO.

--HG--
extra : rebase_source : d037ef7cf1dd2d278c2918dbfee5b4f4c213e408
2018-08-03 07:45:55 +09:00
Narcis Beleuzu 31527185b4 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-08-03 01:34:26 +03:00
Mike Hommey baff96f6e4 Bug 1423822 - Stop disabling elfhack on lto builds. r=froydnj
--HG--
extra : rebase_source : fbe450139109173965de4ee5a8a7f71092aa34bc
2018-08-01 15:56:43 +09:00
Mike Hommey eb38bfa193 Bug 1423822 - Allow to relocate eh_frame. r=froydnj
--HG--
extra : rebase_source : 17991424686da13d763085985f222b2563d852ec
2018-08-01 09:29:09 +09:00
Mike Hommey 1e86b35688 Bug 1423822 - Set the address for the elfhack code section based on that of the section it is attached to. r=froydnj
When linking with ld.bfd or gold, this changes the PT_LOAD in which the
elfhack code section ends up, making it go in the same one as .init, .text,
etc. rather than .rel.*. When linking with lld, this completely
avoids doing a PT_LOAD split, because lld already splits .rel.* and
.text.

--HG--
extra : rebase_source : 1f69b8f4b48b055892ea24eaa6226859cc4ffd50
2018-08-01 07:21:36 +09:00
Mike Hommey 0824d18204 Bug 1423822 - Check segments overlapping later. r=froydnj
We treat segments overlapping as a fatal error, rather than a condition
to do nothing, because it happening is usually the result of some bad
assumptions on the input ELF, and we don't want to silently ignore
those.

However, there are cases where a setup /could/ lead to overlapping
segments, but would be skipped because elfhack wouldn't be a win
anyways. By checking segments overlap later, we allow those to not
hard fail.

--HG--
extra : rebase_source : deca2051722aeaa959c5e4dae06642908f6d843a
2018-08-01 11:17:07 +09:00
Mike Hommey 972c9b4694 Bug 1423822 - Handle more cases of pointer reuse in DT_INIT_ARRAY. r=froydnj
--HG--
extra : rebase_source : 4eeebad36a90c0a83e28fde9b42c760dde7cfa45
2018-07-31 16:13:35 +09:00
Mike Hommey 493e08eb94 Bug 1423822 - Change how elfhack determines it's not worth trying. r=froydnj
The current check makes assumption wrt what PT_LOAD the injected sections
end up in, and won't work with upcoming changes.

--HG--
extra : rebase_source : b7cfb65ea13c16f977fe523aaf9f39eafeb2cdce
2018-07-31 11:49:33 +09:00
Mike Hommey 9946b08441 Bug 1423822 - Make `elfhack -f` work in all cases where no gain would happen. r=froydnj
--HG--
extra : rebase_source : 6a916ad5075ce619ca16730b87ae6aa49f975151
2018-07-31 13:56:01 +09:00
David Major 45083c4934 Bug 1341525: Enable PGO in 64-bit clang-cl builds. r=froydnj 2018-08-01 17:59:23 -04:00
Nathan Froyd 29b9211e61 Bug 1478986 - convert rust.configure to use js_option; r=ted.mielczarek
This change is necessary for usefully including rust.configure from JS's
configure.
2018-08-02 08:27:11 -04:00
Noemi Erli 8f66a71e70 Merge inbound to mozilla-central. a=merge 2018-08-02 11:54:46 +03:00
Andreea Pavel 11f1c09ffe Backed out changeset 7a3882f27aa3 (bug 1341525) for failing win Sa builds on a CLOSED TREE
--HG--
extra : amend_source : dbf7c208749c67b6bb8674eb5ba55c6514f89a2d
2018-08-02 02:26:13 +03:00
David Major ebe3264f11 Bug 1341525: Enable PGO in 64-bit clang-cl builds. r=froydnj 2018-08-01 17:59:23 -04:00
Andreea Pavel 250fd9a027 Backed out changeset 2011dae40293 (bug 1341525) for failing win Sa builds 2018-08-02 01:33:30 +03:00
dvarga 956d57e7f2 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-08-02 01:26:29 +03:00
dvarga e487e6e564 Merge inbound to mozilla-central. a=merge 2018-08-02 01:09:38 +03:00
David Major 622dccd28f Bug 1341525: Enable PGO in 64-bit clang-cl builds. r=froydnj
--HG--
extra : rebase_source : 06038cb081f7b2b2789a8b867b03340bf103b05e
2018-08-01 17:59:23 -04:00
David Major da6edd24ed Bug 1479851: Update Windows clang to r338614 (8.0.0) r=froydnj
--HG--
extra : rebase_source : 3fd61e646401b52e5fd796d5c9d695fc23bcc56b
2018-08-01 17:58:35 -04:00
Nika Layzell b8f77dd95d Bug 1479484 - Part 2: Expose endianness from buildconfig, r=froydnj
Summary:
This information is already being detected, and it will allow us to avoid
byteorder swaps in XPT on big-endian systems. This patch allows buildconfig to
detect endianness.

It may make sense in the future to also expose this endianness as a define, so
we can avoid custom detection such as in /mfbt/EndianUtils.h:
https://searchfox.org/mozilla-central/rev/196560b95f191b48ff7cba7c2ba9237bba6b5b6a/mfbt/EndianUtils.h#85-148

Depends On D2614

Reviewers: froydnj!

Tags: #secure-revision

Bug #: 1479484

Differential Revision: https://phabricator.services.mozilla.com/D2615
2018-08-01 17:54:41 -04:00
Nika Layzell 7a9f60fafb Bug 1479484 - Part 1: Add make_dafsa.py to the virtualenv's python path, r=froydnj
Summary:
The plan is to also expose perfecthash.py from this module on the python path.
This also allows us to stop using explicit module loading to load make_dafsa.py.

make_dafsa.py was moved into tools/ to avoid any extra python files from
accidentally ending up on the python path.

Reviewers: froydnj!

Tags: #secure-revision

Bug #: 1479484

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


--HG--
rename : xpcom/ds/make_dafsa.py => xpcom/ds/tools/make_dafsa.py
2018-08-01 17:54:41 -04:00
Dorel Luca 57113ba2b4 Backed out 2 changesets (bug 1473648, bug 1476661) for mochitest failure on testing/mochitest/tests/python/test_basic_mochitest_plain.py
Backed out changeset dbb14978acf8 (bug 1473648)
Backed out changeset de933cb380f9 (bug 1476661)
2018-08-01 16:01:05 +03:00
Christian Holler 75e5225c77 Bug 1426176 - Add symbols file for Clang ASan runtime on Windows. r=ted
MozReview-Commit-ID: 4P3mwZNP8cY

--HG--
extra : histedit_source : ef086a01cdb2d228b93ee1be018033f7390fa055%2C1454c0f70d38a56f9c78e4d9b29107409c18726b
2018-07-26 11:16:50 +02:00
Dorel Luca a6587cb874 Merge mozilla-cental to mozilla-inbound
--HG--
rename : browser/components/payments/test/mochitest/test_labelled_checkbox.html => browser/components/payments/test/mochitest/test_completion_error_page.html
extra : rebase_source : 8549ae557dceba753101a71840a5076783bd1d36
2018-08-01 12:54:59 +03:00
David Heiberg 47775cc206 Bug 1476661 - Ensure H2 dependencies are packaged alongside wptserve where needed, r=jgraham 2018-08-01 10:52:11 +01:00
Mike Shal ee320f1dec Bug 1475071 - Bump tup version to v0.7.7; r=chmanchester
MozReview-Commit-ID: 55JOVxzWhm4

--HG--
extra : rebase_source : 77e88b33f3513713390c657f9b95d390d31fd0f1
2018-07-31 10:06:27 -04:00
Chris Manchester eec0d4f871 Bug 1479540 - Accept "triplet" strings with only two parts in moz.configure. r=froydnj
MozReview-Commit-ID: 7pFhoJgBMhQ

--HG--
extra : rebase_source : 99bac7d4780e5282f6f049963965d5f8ef00fe02
2018-07-31 11:58:08 -07:00
Devika Sugathan ae8a6c6dcc Bug 1472121 - Remove unused patches from build/build-clang/. r=marco 2018-07-31 00:35:36 +05:30
dvarga 09eac64963 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-08-02 01:19:44 +03:00
Mike Shal feb1c8e5b7 Bug 1478976 - document the Tup backend; r=chmanchester
MozReview-Commit-ID: 3P1d5l0xOyk

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

--HG--
extra : moz-landing-system : lando
2018-08-01 21:35:30 +00:00
Chris Manchester 137ac2c7e2 Bug 1478499 - Move symbol version script generation for js shared library to moz.build. r=mshal
MozReview-Commit-ID: 7H287jfbrVF

--HG--
rename : toolkit/library/gen_symverscript.py => build/gen_symverscript.py
extra : rebase_source : b2015cac12daccc4368e263008620532d67ec4ec
2018-08-01 13:25:38 -07:00
Dan Mosedale 9fc855eec6 Bug 1478995 - Add node toolchain path to automation mozconfigs, r=gps
MozReview-Commit-ID: 37gYPLYJD85

--HG--
extra : rebase_source : a0b1cb598eeb852b7df1912a94a085d31862c86f
2018-06-01 14:59:45 -07:00
Cosmin Sabou 91170e2db1 Backed out changeset df39b3369446 (bug 1426176) for causing toolchains clang bustages. CLOSED TREE
--HG--
extra : rebase_source : 99cc3e3b40d0ca7c0ae58d3c8553b0339f8c74b1
2018-07-31 00:48:47 +03:00
Christian Holler 04589bf67b Bug 1426176 - Add symbols file for Clang ASan runtime on Windows. r=ted
MozReview-Commit-ID: 4P3mwZNP8cY

--HG--
extra : rebase_source : a06221ad62a6c763224378d93aeea7d2477f5226
2018-07-26 11:16:50 +02:00
Ted Mielczarek ce290f24b1 bug 1409276 - disable warnings-as-errors for Rust libraries/programs. r=chmanchester
When compiling C/C++ sources via Rust build scripts there's no point in
enabling warnings-as-errors as all such code is third-party code.

MozReview-Commit-ID: 5pGH6w9ZE2I

--HG--
extra : rebase_source : ad36be6aed39d55055728f85b799adf5f0cf0f4b
2018-07-16 13:52:14 -04:00
Andreea Pavel d960e5a77a Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-07-30 19:40:38 +03:00
Robert Bartlensky 1891f8a1f7 Bug 1479401: Include lib directory into the infer tar, and change maintainer. r=andi
MozReview-Commit-ID: Ibyw9SCMVVB

--HG--
extra : rebase_source : 4266ed81d1647daa1eada83b66cb4ef6b5d1af3a
2018-07-30 12:45:02 +01:00
Kartikaya Gupta 7906d74d42 Bug 1478097 - Follow-up to address review comments. r=me 2018-07-28 04:20:14 -04:00
dvarga d8ac8507c9 Merge mozilla-inbound to mozilla-central. a=merge
--HG--
extra : amend_source : 25781a5ccee21a19f5c6ccacc2c96ab7eb4ed6b5
2018-07-28 01:32:38 +03:00
dvarga edd9f3a3d9 Merge mozilla-central to mozilla-inbound on a CLOSED TREE 2018-07-27 20:55:06 +03:00
Bob Clary 745c5ff6c2 Bug 1477807 - Distinguish ADBTimeoutErrors from other exceptions in Android remote tests, r=gbrown. 2018-07-27 08:27:16 -07:00
Mike Hommey a958acba8b Bug 1478927 - Upgrade clang 6 to 6.0.1 and apply some miscompilation patches. r=dmajor
https://github.com/rust-lang/rust/issues/52694 is a miscompilation I
found in rust when it uses system llvm 5 or 6, that was fixed 5 months
ago in the llvm rust bundles. This may or may not affect clang, but
considering it was also reported to upstream llvm independently of rust,
it's better to side with caution.

It doesn't affect 3.9, and bug 1478919 got rid of the last use of clang
5 (except for clang-tidy, but that's not used to compile).

The patches come from the llvm trunk from 5 months ago, so they're
already in our clang 7 snapshots.

Windows static analysis builds are still using an old trunk, but are
stuck on bug 1427808. They're "only" for static analysis, though.

--HG--
extra : rebase_source : f4fce69eb7c69b6245518a1bad37e04236c7075b
2018-07-27 15:53:02 +09:00
Mike Hommey b1ce4dcf63 Bug 1478923 - Remove LLVM_SYMBOLIZER from mozconfig.lto. r=froydnj
This was cargo-culted from the asan/tsan mozconfigs, but is not necessary
for builds without sanitizers.

--HG--
extra : rebase_source : 41bad4761f424410cb7a099ecaecce8a86becf59
2018-07-27 15:46:51 +09:00
Mike Hommey 789f4ba458 Bug 1478919 - Remove the now unused linux64-clang-5 toolchain. r=dmajor
--HG--
extra : rebase_source : 1de38fc2e484ec02bcbe1fb1b58b97f5aba55b43
2018-07-27 15:34:07 +09:00
Nathan Froyd 18ef37dc2c Bug 1476427 - part 3 - convert bindgen options into js_options; r=chmanchester 2018-07-26 17:37:56 -04:00
Nathan Froyd 85b06ba88f Bug 1476427 - part 2 - whitelist projects that require bindgen; r=chmanchester
JS, at least, doesn't need bindgen at this point.  If JS does start
requiring bindgen under certain build configurations, we'll have to
figure out what to do about the bindgen dependency at that point:
require bindgen always, or just require bindgen for the
configuration(s).
2018-07-26 17:37:56 -04:00
Nathan Froyd 08902bdd4d Bug 1476427 - part 1 - move bindgen configure bits to a separate file; r=chmanchester
This change makes the config variables determined for
bindgen (MOZ_CLANG_PATH et al) available to JS.
2018-07-26 17:37:56 -04:00
Kartikaya Gupta 7d34b79e90 Bug 1478097 - Update indexer to visit implicit code inside constructors. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D2461

--HG--
extra : moz-landing-system : lando
2018-07-27 16:05:26 +00:00
Dan Minor 66b7a2fb25 Bug 1478000 - nICEr and nrappkit should use the same warnings under clang-cl as with clang; r=dmajor
Summary:
This adds a clangcl flag to gyp.mozbuild and then uses that to set the same
warnings flags for clang-cl as for clang.

Reviewers: dmajor

Tags: #secure-revision

Bug #: 1478000

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

--HG--
extra : rebase_source : 6137d2f59e5504d448d4fb32a7e734756ff76afa
2018-07-25 14:02:02 -04:00
Jacek Caban 6e25c2945a Bug 1465798: Create a MinGW-Clang toolchain job r=froydnj
MozReview-Commit-ID: 9OLqKcYtMJi

--HG--
extra : histedit_source : d1e7da6531ffd8d9df869324da07440ce13899cc
2018-07-24 14:04:53 -05:00
Robert Bartlensky 1a56460275 Bug 1473951: Add infer to taskcluster and build. r=gps
MozReview-Commit-ID: BHi3E6J3nuH

--HG--
extra : rebase_source : a59180efe4fed56222d2847d60133739f38c8ca8
2018-07-06 17:37:16 +01:00
dvarga 3a01364273 Backed out changeset 15ae37e7cea3 (bug 1476661) for breaking l10n locale tests 2018-07-30 01:59:11 +03:00
David Heiberg 815ee7222f Bug 1476661 - Ensure H2 dependencies are packaged alongside wptserve where needed, r=jgraham 2018-07-29 18:58:51 +01:00
Nathan Froyd 695cb9d23b Bug 1477081 - remove TARGET_CPU use from moz.build files; r=ted.mielczarek
TARGET_CPU is not canonicalized, whereas CPU_ARCH is, so we should be
using CPU_ARCH to get consistent values everywhere.
2018-07-24 16:08:55 -04:00
Ivan Pozdeev 319f5fcf1d Bug 1323381 - Make 8dot3 error message useful for fixing; r=gps
--HG--
extra : amend_source : 72f43dbe21c9b0af738dccda80dff3b24da8e481
2018-07-23 18:09:15 -07:00
Bogdan Tara b6e2939995 Merge inbound to mozilla-central. a=merge 2018-07-20 00:49:06 +03:00
Marco Castelluccio d0c1497ebc Bug 1471339 - Rename LLVM's __gcov_flush function to __llvm_gcov_flush to avoid naming clashes with GCC profiling library. r=glandium
--HG--
extra : rebase_source : c107eef2c4a920799d8079a4c5f6443b112ba49e
2018-07-10 12:53:03 +02:00
Marco Castelluccio 73ba2e4524 Bug 1471339 - Introduce clang 7 toolchain build. r=glandium
--HG--
extra : rebase_source : 1609a57558151f11b9cdf3422c67ad4c3f695e12
2018-07-11 10:44:39 +02:00
Mike Hommey efde274619 Bug 1476875 - Change the node.js warning wording not to show up on treeherder as an error. r=froydnj
--HG--
extra : rebase_source : ba7ca29ba0d46094742f8867314f0f142c18b03f
2018-07-19 16:36:36 +09:00
David Major 6b830c8485 Bug 1475660: Make clang-cl PGO enable LTO (enables ThinLTO in official builds) r=froydnj,glandium
--HG--
extra : rebase_source : e4efb8d4bf7994ff51f20f51c6cd1eb45bd8339b
2018-07-16 17:59:49 -04:00
David Major 6043bb48c5 Bug 1448980: Make --enable-lto work with clang-cl. r=froydnj 2018-07-16 12:26:36 -04:00
David Major 1eb86751ab Bug 1448980 prequel: Rename LTO `flags` to `cflags`. r=froydnj 2018-07-16 12:25:40 -04:00
David Major 85279470b7 Bug 1448976: Pick up two LLVM fixes for ThinLTO undefined symbols on Windows. r=froydnj
https://bugs.llvm.org/show_bug.cgi?id=38105#c4
https://bugs.llvm.org/show_bug.cgi?id=38139#c5
2018-07-16 12:24:57 -04:00
David Major 2c005280e2 Bug 1475384: Use lld-link for official Windows builds. r=gps 2018-07-15 21:01:50 -04:00
Chris Manchester 1ba362234e Bug 1475390 - Fail configure if Tup is specified on a non-linux build. r=gps
MozReview-Commit-ID: FO6wCbI7YwJ

--HG--
extra : rebase_source : 564b7d22deadfcaa6357a7c9ec7514daf5978127
2018-07-13 15:53:27 -07:00
Gurzau Raul cf965b1f59 Merge inbound to mozilla-central. a=merge 2018-07-12 01:04:09 +03:00
Dan Minor be5d0a3066 Bug 1371485 - Remove OS X find_sdk.py check; r=chmanchester
Summary:
We're currently returning a fake value on all of our automation builds. Might
as well not run the script at all.

Tags: #secure-revision

Bug #: 1371485

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

--HG--
extra : rebase_source : 20717372c15547b35759ff69088aea1ca92b7198
2018-06-27 10:01:02 -04:00
Dan Minor a8d7d7ecf2 Bug 1371485 - Use updated version of gyp; r=chmanchester
Tags: #secure-revision

Bug #: 1371485

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

--HG--
extra : rebase_source : 87cd91fdc0cc873c7f78e128f545524f66947035
2018-06-21 14:39:34 -04:00
Jacek Caban 041db4695b Bug 1443471 - Use correct rust target for mingw clang. r=glandium
MozReview-Commit-ID: G40IanxGWXv

--HG--
extra : rebase_source : 6d8ba3af796848320cc7e3db05e9c83ba4fecb45
2018-06-25 19:57:43 +02:00
David Major e2cdb30639 Bug 1443590: Use clang-cl for official Windows builds. r=gps 2018-07-10 16:25:47 -04:00
Tiberius Oros 92ba19b150 Merge inbound to mozilla-central. a=merge 2018-07-10 12:45:13 +03:00
David Major 92ead96042 Bug 1458109: Update to LLVM r336407 on Windows. r=glandium
Fixes https://bugs.llvm.org/show_bug.cgi?id=37634 and also picks up https://reviews.llvm.org/D48538
2018-07-09 18:56:04 -04:00
Ciure Andrei 19611b7362 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-07-10 01:01:03 +03:00
Ms2ger edfa923af9 Bug 1333800 - Part b: Support running specific WPT tests in the JS shell; r=luke,bbouvier,jgraham 2018-07-05 14:44:41 +02:00
Chris Manchester 04c4288d0d Bug 1472857 - Require rustc 1.27 to build. r=glandium
MozReview-Commit-ID: 5WsP4EQxSil

--HG--
extra : rebase_source : e4506f9c4dfcccdf691fb944270e1a508edc02d5
2018-07-03 15:27:20 -07:00
Tom Ritter 4fc01f63a0 Bug 1467897 Allow local runs of build-clang by providing a --base-dir option r=glandium
MozReview-Commit-ID: Gd9W1DV5g1x

--HG--
extra : rebase_source : 6324b6f5126f5c11b2f534ecb046d7d7e70eba3c
2018-06-05 14:01:59 -05:00
Mike Hommey b2837054ff Bug 1469091 - Build the clang plugin as a host shared library. r=ted
This adds just enough host shared library support for this one use case,
but also takes shortcuts, because fully supporting host shared library
is a deep rabbit hole I'm not ready to take just to fix --enable-lto
--enable-clang-plugin on mac builds.

One downside is that one my machine the plugin now takes > 80s to build,
instead of 15s before, thanks to the lack of unified sources.

--HG--
extra : rebase_source : bf52a72a01d4e3eb77cf52b646b19734b9273075
2018-07-05 14:58:09 +09:00
Mike Hommey 1cf4ac0f2e Bug 1469088 - Relax the assumptions of --enable-lto, and make it work for macOS builds. r=ted
Currently, --enable-lto just implies --enable-linker=lld, which
essentially only works on Linux, and assumes one can't do lto with
anything other than lld. Which is not true. As a matter of fact, even
ld.bfd can do lto, as long as the gold plugin for llvm is available,
or when doing lto with GCC instead of clang.

Anyways, to allow more lto setups, we adapt the --enable-linker setup
to:
- work on macOS, which it currently doesn't, and add support for the mac
  linker (ld64), which, unfortunately, doesn't have a clean way to be
  detected, so work around that.
- default to lld if lto is enable, no linker was explicitly given, the
  compiler is clang *and* the build target is not macOS.

--HG--
extra : rebase_source : 1dab2ad6230d18e7f4285943e76352e23b987d4e
2018-07-05 11:35:31 +09:00
Mike Hommey c6c6db41d2 Bug 1473436 - Default to lld for local *nix builds when it is available. r=chmanchester
--HG--
extra : rebase_source : 0a1705241dcce807fb16f94218476ed184e551fa
2018-07-05 09:28:49 +09:00
Mike Hommey da38aeba7d Bug 1457168 - Make configure tests use LINKER_LDFLAGS. r=chmanchester
Because we have no linking configure test in python configure (yet), we
just make old-configure tests use LINKER_LDFLAGS, and make those flags
added to LDFLAGS by old-configure at the same time.

--HG--
extra : rebase_source : 80ab7c5021c7ddd1b53d58ef76cd4372a524d3cb
2018-07-04 16:18:48 +09:00
Gurzau Raul c275df0863 Merge autoland to mozilla-central. a=merge 2018-07-04 19:27:44 +03:00
Nathan Froyd 05c61df014 Bug 1473331 - fix environment issues when checking node version; r=me, a=bustage
MozReview-Commit-ID: SGkfho9nvV
2018-07-04 12:09:41 -04:00
Nathan Froyd 8d0bead1e6 Bug 1471028 - fix check for outdated node versions; r=bustage, a=bustage
MozReview-Commit-ID: 5OlPH2tUACP
2018-07-04 07:46:08 -04:00
Gregory Szorc 1843095b29 Bug 1471028 - Detect Node.js in configure; r=glandium
The intent is for the build system to soon require Node.js to build
Firefox. But we aren't ready to make Node.js a build requirement
just yet.

The goal of this commit is to implement configure detection for
Node.js so that we can a) work out detection bugs b) give people a
means to validate system compatibility *before* we throw the switch to
require Node.js.

This commit introduces configure logic for finding a Node.js
executable, resolving its version, and validating its suitability.

By default, if Node.js cannot be found or there is an error resolving
its version, we print some warning messages and move on.

If --enable-nodejs is used (not the default), errors are raised
if Node.js cannot be found or its version isn't suitable.

Once we require Node.js, the added code can likely be simplified.
When writing the code, I went out of my way to make failures as
non-fatal as possible. e.g. normally we'd say that failures to run
`node --version` would be fatal. I'm purposefully trying to not have
this configure check break anyone's environment, even if failure
occurs. Again, the goal is to introduce the configure checks first
in a non-fatal way such that we can debug failures so the flag day
transition is simpler.

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

--HG--
extra : moz-landing-system : lando
2018-07-03 21:24:58 +00:00
Simon Fraser 1c95120d44 Bug 1468394 mach python-safety command for checking requirements files r=mtabara,tomprince
Added `./mach python-safety`, distinct from python-test so it doesn't have
to be run on every CI job - its errors may not depend on the area the push has changed.

Added the python/safety directory to ensure a different Pipfile is used, avoiding
conflicts with python-test.

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

--HG--
extra : moz-landing-system : lando
2018-06-29 16:56:51 +00:00
Mike Hommey 993aa6d00f Bug 1447116 - Require rust 1.26. r=froydnj
We're well overdue for an upgrade of the rust compiler requirements.
Now that we're building with 1.28 (albeit a beta, due to be bumped when
it's released), we can bump the requirement away from 1.24 which is now
old. 1.27 is too new, though, so settle for the older 1.26.

--HG--
extra : rebase_source : a17aa496bf3d4af4d1349d69a637c686c6817d0f
2018-06-26 18:05:23 +09:00
Andreea Pavel 91a9c110e2 Merge mozilla-inbound to mozilla-central. a=merge 2018-06-30 12:49:32 +03:00
Dave Hunt a631fc714d Bug 1472201 - Vendor pytest 3.6.2 and dependencies; r=ahal
MozReview-Commit-ID: 5qfK6OygVMH

--HG--
rename : third_party/python/pytest/_pytest/vendored_packages/pluggy-0.4.0.dist-info/LICENSE.txt => third_party/python/pluggy/LICENSE
rename : third_party/python/pytest/doc/en/example/costlysetup/sub1/__init__.py => third_party/python/pytest/doc/en/example/costlysetup/sub_a/__init__.py
rename : third_party/python/pytest/doc/en/example/costlysetup/sub1/__init__.py => third_party/python/pytest/doc/en/example/costlysetup/sub_b/__init__.py
rename : third_party/python/pytest/_pytest/_code/__init__.py => third_party/python/pytest/src/_pytest/_code/__init__.py
extra : rebase_source : d80873f2b1899decefbddddfc2f69ae045925b81
2018-06-29 15:37:31 +01:00
Geoff Brown bea4bee944 Bug 1472032 - Increase Android browser time-out to 110 minutes; r=me,a=test-only
This time-out has traditionally been 90 minutes. It mustn't exceed the 120 minute
task time-out for android browser tests. Let's try 110 minutes.
2018-06-29 16:05:58 -06:00
Henri Sivonen 5885cf2259 Bug 1397807 - Allow rustc to emit NEON instructions when clang does on ARMv7 and use NEON in encoding_rs. r=glandium
MozReview-Commit-ID: LNd4jeIGIRg

--HG--
extra : rebase_source : e175f51ec3e8c1097d914d97c6b0d2644dbc4c18
2018-06-05 14:56:11 +03:00
Andrew Halberstadt 9435736ade Bug 1471620 - Skip python-tests locally that don't run with python 3 in CI r=davehunt
This will make sure that when running |mach python-test --python 3| locally,
we only run the tests that also run in CI with python 3 (and therefore pass
presumably).

MozReview-Commit-ID: 3OBr9yLSlSq

--HG--
extra : rebase_source : 456340d0ecdddf1078f2b5b4ebb1eddf3813b26a
2018-06-27 11:10:02 -04:00
Xidorn Quan 9d13707bca Bug 1471486 part 1 - Detect rustfmt like other rust executables. r=froydnj
MozReview-Commit-ID: 8LMdpdqbrFS

--HG--
extra : rebase_source : e23b7e467993963eb1a69637dacdabb7cbff3e90
2018-06-27 15:27:43 +10:00
Mike Hommey 75a6124d43 Bug 1469790 - Build for NEON by default when targetting Android arm. r=nalexander
The media/libpng/moz.build file overrides the C standard used via
-std=c89, per bug 1371266, which conflicts with the use of the
arm_neon.h header: compilation fails on the inline keyword, which didn't
exist in C89. We thus "bump" to the GNU89 standard, which is C89+GNU
extensions, including inline.

--HG--
extra : rebase_source : fe93a13e3bef8888e1874d2e94a6d8ef396aaf83
2018-06-27 08:07:27 +09:00
Mike Hommey 17bbe0155b Bug 1471491 - Add lld to the mac clang toolchain. r=froydnj
--HG--
extra : rebase_source : 3161081a464c1c7acae6dde6a010ed9f5a598bfa
2018-06-27 13:33:23 +09:00
Chris Manchester cf39792d69 Bug 1471425 - Require rustc 1.28 in configure when building with Tup. r=mshal
MozReview-Commit-ID: 9FCs5FPcchC

--HG--
extra : rebase_source : 7a4e7afa7825f3c73b5cc3571d1531f26cc964b1
2018-06-26 20:32:16 -07:00
Dorel Luca f51c4fa5d9 Merge mozilla-inbound to mozilla-central. a=merge 2018-06-27 13:26:49 +03:00
Bogdan Tara ee8db3bbe1 Backed out 2 changesets (bug 1447116) for debug reftests failures CLOSED TREE
Backed out changeset 0c8c7b025aee (bug 1447116)
Backed out changeset 82dc9159f28d (bug 1447116)
2018-06-27 05:17:03 +03:00
Nathan Froyd 920af449c0 Bug 1470502 - build arm/aarch64 support for ld in binutils; r=mshal
This change makes the ld that we build usable with the clang that we
build when we target arm.
2018-06-26 20:58:56 -04:00
Mike Hommey 72fd93fa0f Bug 1471096 - Choose OOM hooking version to use at build time rather than configure time. r=froydnj
When I originally implemented bug 1458161, this is how it was done, but
it was suggested to use a configure-time check. This turned out to not
be great, because the rust compiler changes regularly, and we don't run
the configure tests when the version changes. When people upgraded their
rust compiler to 1.27, the code subsequently failed to build because the
features were still set for the previous version they had installed.

--HG--
extra : rebase_source : 1b5f7a02ad8495d68cd29289f7beea59b8912183
2018-06-23 07:28:26 +09:00
Mike Hommey 310043662a Bug 1470701 - Use run-time page size when changing mapping permissions in elfhack injected code. r=froydnj
When a binary has a PT_GNU_RELRO segment, the elfhack injected code
uses mprotect to add the writable flag to relocated pages before
applying relocations, removing it afterwards. To do so, the elfhack
program uses the location and size of the PT_GNU_RELRO segment, and
adjusts it to be aligned according to the PT_LOAD alignment.

The problem here is that the PT_LOAD alignment doesn't necessarily match
the actual page alignment, and the resulting mprotect may end up not
covering the full extent of what the dynamic linker has protected
read-only according to the PT_GNU_RELRO segment. In turn, this can lead
to a crash on startup when trying to apply relocations to the still
read-only locations.

Practically speaking, this doesn't end up being a problem on x86, where
the PT_LOAD alignment is usually 4096, which happens to be the page
size, but on Debian armhf, it is 64k, while the run time page size can be
4k.

--HG--
extra : rebase_source : 5ac7356f685d87c1628727e6c84f7615409c57a5
2018-06-24 09:02:38 +09:00
Nathan Froyd 426a7a6439 Bug 1470449 - silence some warnings during clang bootstrap; r=chmanchester
This change makes interactive usage slightly nicer and logs somewhat shorter.
2018-06-26 12:02:36 -04:00
Mike Hommey 1ad0baf79f Bug 1447116 - Require rust 1.26. r=froydnj
We're well overdue for an upgrade of the rust compiler requirements.
Now that we're building with 1.28 (albeit a beta, due to be bumped when
it's released), we can bump the requirement away from 1.24 which is now
old. 1.27 is too new, though, so settle for the older 1.26.

--HG--
extra : rebase_source : c788ef4f7da9949b81df2f0577af6f6039ea63d8
2018-06-26 18:05:23 +09:00
Dave Hunt 0d9dbe14ab Bug 1466211 - Detect if we are running in a virtual environment; r=chmanchester
When we're running using pipenv, we have more than one virtual environment. This means the current check to see if python matches the initial virtual environment gives a false positive when we're in a secondary virtual environment. This patch changes the condition to check if the current python path exists within the virtual environments root directory.

MozReview-Commit-ID: AAONwLWsigL

--HG--
extra : rebase_source : c0ac94448ee4545417b5116e58b51c6187cdb175
2018-06-15 18:05:20 -07:00
Marco Castelluccio 7322ecf8fa Bug 1469804 - Disable Rust incremental compilation when code coverage is enabled. r=ted
--HG--
extra : rebase_source : 30d98009113554c266a46d4b74e7d3b7757114fe
2018-06-20 11:16:43 +01:00
Mike Hommey e22b35cf77 Bug 1470055 - Lift libstdc++ requirement relaxation when building clang-plugin. r=froydnj
--HG--
extra : rebase_source : 6c313ce673ff45fb1ca07530f801aef2f78be7e7
2018-06-21 11:45:30 +09:00
Kris Maglione 0506a56751 Bug 1468362: Remove ADDON_SINGING buildconfig setting. r=aswan
MozReview-Commit-ID: MeD4VQPVf6

--HG--
extra : rebase_source : c40ed5b7d194290332f0aa77deaf91812de48c42
extra : histedit_source : 34a69d708597fcdbfb9bffccd7dbf28c9d1a42a7
2018-06-12 13:56:58 -04:00
Mike Hommey abc300efbb Bug 1467039 - Default to gold on local builds. r=chmanchester
We used to do that before bug 1455767. Taking a step back, what we want
(and what this change implements) is to:
- allow to specify a linker to use explicitly
- check that using the corresponding linker flags makes us use that
  linker
- if no linker is specified, and developer options are enabled, we want
  to try to use gold if it's available, otherwise, we want to detect
  what kind of linker the default linker is
- if --disable-gold is explicitly given, we don't want to automatically
  use it.

--HG--
extra : rebase_source : 8d89c54bd5e555984d815beb8fdd3f5f75dae31e
2018-06-07 08:46:31 +09:00
Chris Manchester a2b572cc91 Bug 1466401 - Re-run configure in js/src based on dependencies generated by python configure. r=mshal
MozReview-Commit-ID: 3ueBBHiux3M

--HG--
extra : rebase_source : 78b42537f73a9688cc3d4befc9f7f7cd3b2db0c2
2018-06-07 15:50:06 -07:00
Johan Lorenzo 00b90ced7a Bug 1468751 - Add images in documentation sparse checkout r=gps
Add images in documentation sparse checkout

Differential Revision: https://phabricator.services.mozilla.com/D1663
2018-06-15 00:00:05 +00:00
Mike Hommey 75a0990a1d Bug 1467658 - Update the macosx clang toolchain (for bootstrap) to version 6. r=chmanchester
--HG--
extra : rebase_source : 104b34102202fe0598d73d351de7b7ce0689f5ac
2018-06-08 13:37:48 +09:00
Mike Hommey a7e6de776d Bug 1467658 - Use clang 6 for coverage builds. r=chmanchester,marco
Instead of clang 4, which they were the last to use, so remove the
clang 4 toolchain.

--HG--
extra : rebase_source : d03a083e9217aeb6c1d2c91decb978426f0e8d1a
2018-06-08 10:48:06 +09:00
Mike Hommey 67a5371f47 Bug 1467658 - Upgrade the default clang toolchain to clang 6. r=chmanchester
The linux64-clang toolchain alias is currently clang 5. Switch it to
clang 6, but keep the spidermonkey tsan builds on clang 5 because of
bug 1467673.

The LLVM headers that come with clang 6 contain a DEBUG define that
conflicts with our DEBUG define and breaks the clang-plugin build,
so force unset ours.

--HG--
extra : rebase_source : aae88f1166108f003b06c022f14d5f4c61fc1ed9
2018-06-08 10:36:07 +09:00
Mike Hommey 27988b7ff9 Bug 1467658 - Allow the mozsearch-plugin code to build against clang 6. r=kats
Also work around https://bugs.llvm.org/show_bug.cgi?id=37746 by
explicitly handling ObjC interface variables separately. This actually
allows the searchfox macosx build to go much further than it used to (it
now fails during make package with apparently no output for rust code)

--HG--
extra : rebase_source : 354981ca9deebed5c60d3684f5c3abc554422393
2018-06-08 13:18:53 +09:00
Dorel Luca 1719a7ad5a Backed out changeset 0c800e84c991 (bug 1467039) for Spidermonkey failure. CLOSED TREE 2018-06-12 08:29:01 +03:00
Dorel Luca f7a26a560f Backed out changeset 71ed3b0b1013 (bug 1467337) for build bustage. CLOSED TREE 2018-06-12 08:28:40 +03:00
Mike Hommey a75a0b49d5 Bug 1467337 - Don't allow --enable-stdcxx-compat when the linker is gold. r=nalexander
--HG--
extra : rebase_source : 74fcad2dc3bda3cf223de615b38bd06aa5a91224
2018-06-07 10:36:10 +09:00
Mike Hommey 3a65dbeef2 Bug 1467039 - Default to gold on local builds. r=chmanchester
We used to do that before bug 1455767. Taking a step back, what we want
(and what this change implements) is to:
- allow to specify a linker to use explicitly
- check that using the corresponding linker flags makes us use that
  linker
- if no linker is specified, and developer options are enabled, we want
  to try to use gold if it's available, otherwise, we want to detect
  what kind of linker the default linker is

--HG--
extra : rebase_source : 655089f29c6403f6c31a977dcf5c6fd1e9941121
2018-06-07 08:46:31 +09:00
Mike Hommey 03b4a0d6e0 Bug 1462498 - Update clang 6 pre to clang 6 final on linux and mac. r=gps 2018-06-08 09:25:49 +09:00
Mike Hommey e1e5972b07 Bug 1467327 - Use bootstrapped clang if no system clang is found. r=froydnj
--HG--
extra : rebase_source : 4e646c27321d19d2d44df9911e5ef6fdb060ac48
2018-06-07 09:57:36 +09:00
Gurzau Raul 30ff1c45fb Backed out changeset ba02d348e3fd (bug 1467327) for LinuxToolchainTest bustages on a CLOSED TREE 2018-06-07 05:22:40 +03:00
Mike Hommey b5dd8f7e9b Bug 1467327 - Use bootstrapped clang if no system clang is found. r=froydnj
--HG--
extra : rebase_source : fbb9e09e4211f6456391c8446899023520d2bbf9
2018-06-07 09:57:36 +09:00
Mike Hommey 65169421bc Bug 1467041 - Default to --enable-release when milestone is beta/release. r=froydnj
--enable-release not being passed means developer options are enabled,
which is generally speaking not desirable for builds meant to be
shipped. This is somewhat alleviated for Firefox by MOZILLA_OFFICIAL
implying --enable-release (as well as MOZ_AUTOMATION), but that doesn't
apply to e.g. standalone js builds (even some of the standalone js jobs
on our automation don't set MOZ_AUTOMATION for some reason).

A reasonable thing to do is just to default builds for release/beta
milestones to --enable-release, but still allow --disable-release
to enable the developer options.

--HG--
extra : rebase_source : 770d51b10a9cd17c63972435bb61eed10345ea71
2018-06-06 16:13:09 +09:00
Gregory Szorc 8922082362 Bug 1460777 - Taskgraph tasks for retrieving remote content; r=dustin, glandium
Currently, many tasks fetch content from the Internets. A problem with
that is fetching from the Internets is unreliable: servers may have
outages or be slow; content may disappear or change out from under us.

The unreliability of 3rd party services poses a risk to Firefox CI.
If services aren't available, we could potentially not run some CI tasks.
In the worst case, we might not be able to release Firefox. That would
be bad. In fact, as I write this, gmplib.org has been unavailable for
~24 hours and Firefox CI is unable to retrieve the GMP source code.
As a result, building GCC toolchains is failing.

A solution to this is to make tasks more hermetic by depending on
fewer network services (which by definition aren't reliable over time
and therefore introduce instability).

This commit attempts to mitigate some external service dependencies
by introducing the *fetch* task kind.

The primary goal of the *fetch* kind is to obtain remote content and
re-expose it as a task artifact. By making external content available
as a cached task artifact, we allow dependent tasks to consume this
content without touching the service originally providing that
content, thus eliminating a run-time dependency and making tasks more
hermetic and reproducible over time.

We introduce a single "fetch-url" "using" flavor to define tasks that
fetch single URLs and then re-expose that URL as an artifact. Powering
this is a new, minimal "fetch" Docker image that contains a
"fetch-content" Python script that does the work for us.

We have added tasks to fetch source archives used to build the GCC
toolchains.

Fetching remote content and re-exposing it as an artifact is not
very useful by itself: the value is in having tasks use those
artifacts.

We introduce a taskgraph transform that allows tasks to define an
array of "fetches." Each entry corresponds to the name of a "fetch"
task kind. When present, the corresponding "fetch" task is added as a
dependency. And the task ID and artifact path from that "fetch" task
is added to the MOZ_FETCHES environment variable of the task depending
on it. Our "fetch-content" script has a "task-artifacts"
sub-command that tasks can execute to perform retrieval of all
artifacts listed in MOZ_FETCHES.

To prove all of this works, the code for fetching dependencies when
building GCC toolchains has been updated to use `fetch-content`. The
now-unused legacy code has been deleted.

This commit improves the reliability and efficiency of GCC toolchain
tasks. Dependencies now all come from task artifacts and should always
be available in the common case. In addition, `fetch-content` downloads
and extracts files concurrently. This makes it faster than the serial
application which we were previously using.

There are some things I don't like about this commit.

First, a new Docker image and Python script for downloading URLs feels
a bit heavyweight. The Docker image is definitely overkill as things
stand. I can eventually justify it because I want to implement support
for fetching and repackaging VCS repositories and for caching Debian
packages. These will require more packages than what I'm comfortable
installing on the base Debian image, therefore justifying a dedicated
image.

The `fetch-content static-url` sub-command could definitely be
implemented as a shell script. But Python is readily available and
is more pleasant to maintain than shell, so I wrote it in Python.

`fetch-content task-artifacts` is more advanced and writing it in
Python is more justified, IMO. FWIW, the script is Python 3 only,
which conveniently gives us access to `concurrent.futures`, which
facilitates concurrent download.

`fetch-content` also duplicates functionality found elsewhere.
generic-worker's task payload supports a "mounts" feature which
facilitates downloading remote content, including from a task
artifact. However, this feature doesn't exist on docker-worker.
So we have to implement downloading inside the task rather than
at the worker level. I concede that if all workers had generic-worker's
"mounts" feature and supported concurrent download, `fetch-content`
wouldn't need to exist.

`fetch-content` also duplicates functionality of
`mach artifact toolchain`. I probably could have used
`mach artifact toolchain` instead of writing
`fetch-content task-artifacts`. However, I didn't want to introduce
the requirement of a VCS checkout. `mach artifact toolchain` has its
origins in providing a feature to the build system. And "fetching
artifacts from tasks" is a more generic feature than that. I think
it should be implemented as a generic feature and not something that is
"toolchain" specific.

I think the best place for a generic "fetch content" feature is in
the worker, where content can be defined in the task payload. But as
explained above, that feature isn't universally available. The next
best place is probably run-task. run-task already performs generic,
very-early task preparation steps, such as performing a VCS checkout.
I would like to fold `fetch-content` into run-task and make it all
driven by environment variables. But run-task is currently Python 2
and achieving concurrency would involve a bit of programming (or
adding package dependencies). I may very well port run-task to Python
3 and then fold fetch-content into it. Or maybe we leave
`fetch-content` as a standalone script.

MozReview-Commit-ID: AGuTcwNcNJR

--HG--
extra : source : 0b941cbdca76fb2fbb98dc5bbc1a0237c69954d0
extra : histedit_source : a3e43bdd8a9a58550bef02fec3be832ca304ea93
2018-06-06 14:37:49 -07:00
Gregory Szorc cf83defe06 Bug 1460777 - Extract GPG keys to standalone files; r=glandium
After this change, we consistently import GPG keys from files in
the GCC build scripts.

MozReview-Commit-ID: BcyvCQoGbMS

--HG--
extra : source : 5fce34a460b51e45ac280a9f0cb8bad896fbcff1
extra : histedit_source : 01621ea8111315c251a9493a11efca72c2ba3c7d
2018-05-11 10:38:35 -07:00
Gurzau Raul 53a10471cf Backed out 2 changesets (bug 1460777) for Toolchains failure on a CLOSED TREE
Backed out changeset 52ef9348401d (bug 1460777)
Backed out changeset 60ed097650b8 (bug 1460777)
2018-06-06 20:57:29 +03:00
Gregory Szorc 2f189264b9 Bug 1460777 - Taskgraph tasks for retrieving remote content; r=dustin,glandium
Currently, many tasks fetch content from the Internets. A problem with
that is fetching from the Internets is unreliable: servers may have
outages or be slow; content may disappear or change out from under us.

The unreliability of 3rd party services poses a risk to Firefox CI.
If services aren't available, we could potentially not run some CI tasks.
In the worst case, we might not be able to release Firefox. That would
be bad. In fact, as I write this, gmplib.org has been unavailable for
~24 hours and Firefox CI is unable to retrieve the GMP source code.
As a result, building GCC toolchains is failing.

A solution to this is to make tasks more hermetic by depending on
fewer network services (which by definition aren't reliable over time
and therefore introduce instability).

This commit attempts to mitigate some external service dependencies
by introducing the *fetch* task kind.

The primary goal of the *fetch* kind is to obtain remote content and
re-expose it as a task artifact. By making external content available
as a cached task artifact, we allow dependent tasks to consume this
content without touching the service originally providing that
content, thus eliminating a run-time dependency and making tasks more
hermetic and reproducible over time.

We introduce a single "fetch-url" "using" flavor to define tasks that
fetch single URLs and then re-expose that URL as an artifact. Powering
this is a new, minimal "fetch" Docker image that contains a
"fetch-content" Python script that does the work for us.

We have added tasks to fetch source archives used to build the GCC
toolchains.

Fetching remote content and re-exposing it as an artifact is not
very useful by itself: the value is in having tasks use those
artifacts.

We introduce a taskgraph transform that allows tasks to define an
array of "fetches." Each entry corresponds to the name of a "fetch"
task kind. When present, the corresponding "fetch" task is added as a
dependency. And the task ID and artifact path from that "fetch" task
is added to the MOZ_FETCHES environment variable of the task depending
on it. Our "fetch-content" script has a "task-artifacts"
sub-command that tasks can execute to perform retrieval of all
artifacts listed in MOZ_FETCHES.

To prove all of this works, the code for fetching dependencies when
building GCC toolchains has been updated to use `fetch-content`. The
now-unused legacy code has been deleted.

This commit improves the reliability and efficiency of GCC toolchain
tasks. Dependencies now all come from task artifacts and should always
be available in the common case. In addition, `fetch-content` downloads
and extracts files concurrently. This makes it faster than the serial
application which we were previously using.

There are some things I don't like about this commit.

First, a new Docker image and Python script for downloading URLs feels
a bit heavyweight. The Docker image is definitely overkill as things
stand. I can eventually justify it because I want to implement support
for fetching and repackaging VCS repositories and for caching Debian
packages. These will require more packages than what I'm comfortable
installing on the base Debian image, therefore justifying a dedicated
image.

The `fetch-content static-url` sub-command could definitely be
implemented as a shell script. But Python is readily available and
is more pleasant to maintain than shell, so I wrote it in Python.

`fetch-content task-artifacts` is more advanced and writing it in
Python is more justified, IMO. FWIW, the script is Python 3 only,
which conveniently gives us access to `concurrent.futures`, which
facilitates concurrent download.

`fetch-content` also duplicates functionality found elsewhere.
generic-worker's task payload supports a "mounts" feature which
facilitates downloading remote content, including from a task
artifact. However, this feature doesn't exist on docker-worker.
So we have to implement downloading inside the task rather than
at the worker level. I concede that if all workers had generic-worker's
"mounts" feature and supported concurrent download, `fetch-content`
wouldn't need to exist.

`fetch-content` also duplicates functionality of
`mach artifact toolchain`. I probably could have used
`mach artifact toolchain` instead of writing
`fetch-content task-artifacts`. However, I didn't want to introduce
the requirement of a VCS checkout. `mach artifact toolchain` has its
origins in providing a feature to the build system. And "fetching
artifacts from tasks" is a more generic feature than that. I think
it should be implemented as a generic feature and not something that is
"toolchain" specific.

I think the best place for a generic "fetch content" feature is in
the worker, where content can be defined in the task payload. But as
explained above, that feature isn't universally available. The next
best place is probably run-task. run-task already performs generic,
very-early task preparation steps, such as performing a VCS checkout.
I would like to fold `fetch-content` into run-task and make it all
driven by environment variables. But run-task is currently Python 2
and achieving concurrency would involve a bit of programming (or
adding package dependencies). I may very well port run-task to Python
3 and then fold fetch-content into it. Or maybe we leave
`fetch-content` as a standalone script.

MozReview-Commit-ID: AGuTcwNcNJR

--HG--
extra : rebase_source : 4918b8c3bac53d63665006802054038bfbca0314
2018-06-06 09:37:38 -07:00
Gregory Szorc 43e801ae60 Bug 1460777 - Extract GPG keys to standalone files; r=glandium
After this change, we consistently import GPG keys from files in
the GCC build scripts.

MozReview-Commit-ID: BcyvCQoGbMS

--HG--
extra : rebase_source : 657ccce8e242cabdfaff396fd0d6439754a3f364
2018-05-11 10:38:35 -07:00
Gregory Szorc fb21a1e517 Bug 1466746 - Debian packages for python-zstandard; r=glandium
python-zstandard's 0.9.1 source distribution contains a debian/
directory.

On Squeeze, producing a Debian package is straightforward.

On Wheezy, we need to hack up Build-Depends because Wheezy doesn't
have a package for the Hypothesis fuzzing library. This package is
only used for testing and our package building disables testing,
so we don't even need to further hack up the packaging to disable
tests.

MozReview-Commit-ID: 6raXjdzggCH

--HG--
extra : rebase_source : 672492a40d65df8430eb17ba033bcb1c0890b7df
2018-06-04 23:10:59 -07:00
Tom Ritter 2313bfe0d4 Bug 1457482 Add --enable-lto that turns on LTO r=glandium
MozReview-Commit-ID: DjICW7OKqzB

--HG--
extra : rebase_source : 92c766880845ec89305ef1e66ff13223421ac152
2018-04-13 15:55:39 -05:00
Tom Ritter 2eb926954e Bug 1457482 Add an LTO Build Target r=glandium
This build target doesn't have LTO enabled on it (yet)

MozReview-Commit-ID: 56tAHMyvH7o

--HG--
extra : rebase_source : 90039cd8e97332e2ef8aad7908b8a04b2869f4a5
2018-05-30 12:27:25 -05:00
Tom Ritter 539edded29 Bug 1457482 Correct elfhack's LTO detection to handle -flto=thin r=glandium
MozReview-Commit-ID: LnDLrDN0W9O

--HG--
extra : rebase_source : 3ba425fc9316d1b3df12a481c9ece1e3a65c8fe5
2018-06-01 10:10:16 -05:00
Tom Ritter 1f99a6a577 Bug 1457482 Add lld to the clang-6-pre-linux64 toolchain for use in the LTO build r=glandium
MozReview-Commit-ID: KYY0DqFxbDE

--HG--
extra : rebase_source : aafb326c82a2a871f356a7919efce6f3b0c9f58c
2018-04-13 15:22:57 -05:00
Miko Mynttinen 44b51ac0a2 Bug 1465060 - Part 2: Don't suppress pessimizing-move and self-move warnings r=froydnj
MozReview-Commit-ID: KtQ31q6uFqZ

--HG--
extra : rebase_source : 93b8550117410efb1839dc475d2bfec9ef4caf67
2018-06-01 14:09:30 +02:00
shindli 936dd8d764 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-06-04 01:07:15 +03:00
arthur.iakab 7e765f798b Backed out 2 changesets (bug 1465060) for build bustages on security/sandbox/linux/reporter/SandboxReporter.cpp
Backed out changeset 7c8905b6b226 (bug 1465060)
Backed out changeset 10446073eca8 (bug 1465060)
2018-06-03 19:25:41 +03:00
Miko Mynttinen 9a6bff4ea0 Bug 1465060 - Part 2: Don't suppress pessimizing-move and self-move warnings r=froydnj
MozReview-Commit-ID: KtQ31q6uFqZ

--HG--
extra : rebase_source : 017f965f0a861ee1eaa5bfae62ae164e48c309a5
2018-06-01 14:09:30 +02:00
Cosmin Sabou cff08774d6 Merge mozilla-central to autoland. a=merge 2018-06-03 13:10:57 +03:00
Cosmin Sabou 9994e67745 Backed out changeset cbf0895981cd (bug 1270217) for turning bug 1405083 into permafail. a=backout 2018-06-03 13:08:10 +03:00
Andreea Pavel 4ced6e8b2d Merge mozilla-central to autoland. a=merge 2018-06-03 07:27:01 +03:00
Jonathan Watt 5817084eb6 Bug 1270217 - Change the default MACOS_DEPLOYMENT_TARGET value to 10.9. r=froydnj 2018-05-10 10:41:13 +01:00
Jonathan Watt 67537a721b Bug 1270217 - Change the default MACOS_DEPLOYMENT_TARGET value to 10.9. r=froydnj
--HG--
extra : rebase_source : bb180a82c87bb49c688dbcb2f8da6756e6c54224
2018-05-10 10:41:13 +01:00
Chris AtLee 600b5b46ac Bug 1237182: get rid of oauth.txt r=mtabara
Differential Revision: https://phabricator.services.mozilla.com/D1444

--HG--
extra : rebase_source : dad4f2102dc1e74b681a765169eae691724f8b61
2018-05-25 17:43:15 -04:00
Chris AtLee 8e5587759f Bug 1237182: Get rid of buildprops.json r=tomprince,sfraser
Differential Revision: https://phabricator.services.mozilla.com/D1443

--HG--
extra : rebase_source : 1683b76377e27fdaa5292e1781573ddc4e61afa8
2018-05-25 17:35:43 -04:00
Emilio Cobos Álvarez 9855a4330e Bug 1465585: Don't error on pessimizing-move and self-move, for now. r=froydnj
MozReview-Commit-ID: FzoqidPSCaV
2018-06-01 10:43:31 +02:00
Andreea Pavel 38bcf897f1 Merge mozilla-inbound to mozilla-central. a=merge 2018-05-31 13:04:21 +03:00
arthur.iakab f1046ac67f Merge mozilla-central to inbound 2018-05-31 01:08:35 +03:00
arthur.iakab fb18cb09bd Merge mozilla inbound to central a=merge 2018-05-31 01:05:10 +03:00
David Major b6c41df5bb Bug 1465245 - Update clang-cl toolchain to r333414. r=froydnj
--HG--
extra : rebase_source : a0f174588c7fbf6f83709850b8b26448080b9a4d
2018-05-30 13:27:13 -04:00
Panos Astithas f041fb6e3c Bug 1461851 - Properly add the source URL in the profiler metadata. r=glandium
MozReview-Commit-ID: 53M4bGolmJk

--HG--
extra : rebase_source : f0da66755c92d2937f5fad1f5784f9a81829c951
2018-05-15 16:44:44 -07:00
Christian Holler 570031d38c Bug 1464202 - Improve and centralize libFuzzer flag management. r=froydnj
MozReview-Commit-ID: HFrQDAZWtpo

--HG--
extra : rebase_source : ab1da001d7e9280fbfb37858505f1d0d0caf7d54
2018-05-24 21:11:46 +02:00
Gurzau Raul bcd412f2a9 Backed out changeset 602bdd9d5a96 (bug 1461851) for linting failures on /checkouts/gecko/build/appini_header.py on a CLOSED TREE 2018-05-30 19:03:50 +03:00
Panos Astithas 9be1c58dd1 Bug 1461851 - Properly add the source URL in the profiler metadata. r=glandium
MozReview-Commit-ID: 53M4bGolmJk

--HG--
extra : rebase_source : 17c2f3922d04b1ee7e168837f4440bb1b0abc218
2018-05-15 16:44:44 -07:00
Mike Hommey 81cf850f82 Bug 1253064 - Prefer Clang to GCC in local developer builds. r=gps
For Android targets, we just ignore plain clang, it's unlikely to work.

--HG--
extra : rebase_source : 2ba19ea608921acc2739055115082291bb8996f4
2018-05-31 10:16:10 +09:00
Csoregi Natalia 83a923ef7a Merge inbound to mozilla-central. a=merge 2018-05-30 12:25:03 +03:00
Mike Hommey 8b091c97fd Bug 1464522 - Count static initializers from the crash reporter symbol files. r=froydnj
The crash reporter symbol files are the easiest cross-platform way to
find static initializers. While some types of static initializers (e.g.
__attribute__(constructor) functions) don't appear there in a notable
way, the static initializers we do care the most about for tracking do
(static initializers from C++ globals). As a matter of fact, there is
only a difference of 2 compared to the currently reported count of 125
on a linux64 build, so this is a good enough approximation. And allows
us to easily track the count on Android, OSX and Windows builds, which
we currently don't do.

The tricky part is that the symbol files are in
dist/crashreporter-symbols/$lib/$fileid/$lib.sym, and $fileid is hard to
figure out. There is a `fileid` tool in testing/tools, but it is a
target binary, meaning it's not available on cross builds (OSX,
Android).

So the simplest is just to gather the data while creating the symbol
files, which unfortunately requires to go through some hoops to make it
happen for just the files we care about.

--HG--
extra : rebase_source : 458fed1ffd6f9294eefef61f10ff7a284af0d986
2018-05-29 08:48:47 +09:00
Noemi Erli f353eab731 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-05-30 00:52:42 +03:00
Sylvestre Ledru 3f0e9bf7a3 Bug 1464809 - Disable -Werror on -Wclass-memaccess until the backlog is fixed r=froydnj
https://bugzilla.mozilla.org/show_bug.cgi?id=1411029#c2

MozReview-Commit-ID: 2CyoNWMUrw9

--HG--
extra : rebase_source : 758d2c9bc9e2dd3502def27a0d9bc6f9e0887e2d
2018-05-28 14:56:41 +02:00
David Major 49de728827 Bug 1464249 - Patch clang-win64.json to fix ASan on Windows 10 1803. r=froydnj
--HG--
extra : rebase_source : 194a25a217ddc10eb2782c127689c88d1df68e1f
2018-05-29 15:38:18 -04:00
David Major 2ca7d595a1 Bug 1464161 - unset LINKER in mozconfig.no-compile. r=nalexander
--HG--
extra : rebase_source : 75913c32de26e0aa4f7bbcf79f29ad5d7f5fcb32
2018-05-29 15:37:49 -04:00
Geoff Brown 4d05f461aa Bug 1464866 - Fix a typo in Android time-out message; r=me,a=test-only 2018-05-28 11:29:34 -06:00
Kris Maglione c4035f104c Bug 1463637: Remove mozilla-config.h hacks for Hunspell extra includes. r=ted
MozReview-Commit-ID: 2yBlykhQsyV

--HG--
extra : rebase_source : d51a663c5f7d4c9cce09c649003c5577fe5952d0
2018-05-22 20:36:39 -07:00
Chris Manchester dd6a725aca Bug 1463921 - Re-run js configure when js/src/old-configure changes. r=gps
MozReview-Commit-ID: 2Rw4he9ZRpz

--HG--
extra : rebase_source : 2801965e246d6424ee37bac277472b294e783309
2018-05-23 17:22:09 -07:00
Sylvestre Ledru dcfef841a7 bug 1463425 - Fix flake8/pep8 issue by hand in build/ r=gps
MozReview-Commit-ID: AZdcEWyVV6e

--HG--
extra : rebase_source : b1c45028c8d46be5ba590a27a2f9f20e248a26b1
2018-05-21 23:58:19 +02:00
Sylvestre Ledru 8cd16bb55b bug 1463425 - autopep8 on build/ r=gps
MozReview-Commit-ID: ETzx4HsjbEF

--HG--
extra : rebase_source : 7e27a4cfe2bb358d513a18a33c245bcc6d559c46
2018-05-21 23:56:34 +02:00
Justin Wood 5412b28495 Bug 1286092 - Make taskgraph sparse checkout pull the onchange files. r=aki
for L10n jobs should run per-push based on the corresponding builds

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

--HG--
extra : rebase_source : b7b7f34204bd06ba2baf92ae6d103f8c207214fb
2017-12-01 12:54:47 -05:00
Bogdan Tara 933c5069bd Backed out 16 changesets (bug 1286092) for L10n bustages CLOSED TREE
Backed out changeset ef828badfd93 (bug 1286092)
Backed out changeset 57a592e33f36 (bug 1286092)
Backed out changeset c9cf945aa4f9 (bug 1286092)
Backed out changeset d8c01d976acd (bug 1286092)
Backed out changeset 5d68dfd6325c (bug 1286092)
Backed out changeset 878e174255ff (bug 1286092)
Backed out changeset fa3e38422d49 (bug 1286092)
Backed out changeset fc6aebca89e3 (bug 1286092)
Backed out changeset f2271cd6af26 (bug 1286092)
Backed out changeset 7b828445f551 (bug 1286092)
Backed out changeset 5617053b1740 (bug 1286092)
Backed out changeset 556f54c5e209 (bug 1286092)
Backed out changeset db19ea492b02 (bug 1286092)
Backed out changeset 6eb40b38f9c9 (bug 1286092)
Backed out changeset 3eb4e39b9bcd (bug 1286092)
Backed out changeset b3c05f6e6a57 (bug 1286092)
2018-05-30 16:16:24 +03:00
Justin Wood ead8128876 Bug 1286092 - Make taskgraph sparse checkout pull the onchange files. r=aki
for L10n jobs should run per-push based on the corresponding builds

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

--HG--
extra : rebase_source : fc669df941b70b720a6eb4118ad36d6679a28d48
2017-12-01 12:54:47 -05:00
Mike Hommey 5c6ce84a4c Bug 1464084 - Don't export std:🧵:_M_start_thread symbols with --enable-stdcxx-compat. r=froydnj
This relies on the fact that providing multiple --version-script
combines them all, so we effectively create a new symbol version
that has no global symbol, but hides the std:🧵:_M_start_thread
symbols.

This version script trick happens to work with BFD ld, gold, and lld.

The downside is that when providing multiple --version-script's, ld
doesn't want any of them to have no version at all. So for the libraries
that do already have a version script (through SYMBOLS_FILE), we use a
version where there used to be none, using the library name as the
version. Practically speaking, this binds the libraries a little closer
than they used to be, kind of non-flat namespace on OSX (which is the
default there), meaning the dynamic linker will actively want to use
symbols from those libraries instead of a system library that might
happen to have the same symbol name.

--HG--
extra : rebase_source : a7f672c35609d993849385ddb874ba791b34f929
2018-06-01 08:10:25 +09:00
Gurzau Raul 7e4f5e7dc6 Backed out changeset 838c0ab9cbdb (bug 1464084) for Linux static bustage on a CLOSED TREE 2018-06-02 02:42:52 +03:00
Mike Hommey e680be2ec4 Bug 1466060 - Upgrade to binutils 2.28.1. r=nalexander
Version 2.25.1's libiberty can choke on some symbols. That was fixed in
2.27. As of writing, the last version is 2.30. Conservatively go with
2.28.1, which is the same major version (2.28) as what is currently in
Debian stable.

--HG--
extra : rebase_source : 9e5ba94421a1568f662cfd98af7168ea1c890934
2018-06-01 17:48:41 +09:00
Csoregi Natalia 2f779be8d9 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-06-02 01:03:45 +03:00
Sofia Carrillo 0c81030974 Bug 1463834 - vendored hglib, updated to python-hglib r=davehunt
--HG--
rename : third_party/python/hglib/LICENSE => third_party/python/python-hglib/LICENSE
rename : third_party/python/hglib/hglib/__init__.py => third_party/python/python-hglib/hglib/__init__.py
rename : third_party/python/hglib/hglib/client.py => third_party/python/python-hglib/hglib/client.py
rename : third_party/python/hglib/hglib/context.py => third_party/python/python-hglib/hglib/context.py
rename : third_party/python/hglib/hglib/error.py => third_party/python/python-hglib/hglib/error.py
rename : third_party/python/hglib/hglib/merge.py => third_party/python/python-hglib/hglib/merge.py
rename : third_party/python/hglib/hglib/templates.py => third_party/python/python-hglib/hglib/templates.py
rename : third_party/python/hglib/hglib/util.py => third_party/python/python-hglib/hglib/util.py
rename : third_party/python/hglib/setup.py => third_party/python/python-hglib/setup.py
extra : rebase_source : 552d93c9e90c04171c8b627c8f4f4fa5ec506cc3
2018-05-31 18:04:54 -07:00
Mike Hommey cc7ff037ab Bug 1464084 - Don't export libstdc++ symbols with --enable-stdcxx-compat. r=froydnj
This relies on the fact that providing multiple --version-script
combines them all, so we effectively create a new symbol version
that has no global symbol, but hides as much std::* stuff as possible.

The added symbol script could use `extern "C++"` syntax and demangled
symbols but there is no guarantee the demangled symbols won't change.
Plus, it's not possible to match demangled symbols that have a return
type: they contain a space, and the only way to match that is to use
double quotes, which doesn't allow globs at the same time.

This version script trick happens to work with BFD ld, gold, and lld.

The downside is that when providing multiple --version-script's, ld
doesn't want any of them to have no version at all. So for the libraries
that do already have a version script (through SYMBOLS_FILE), we use a
version where there used to be none, using the library name as the
version. Practically speaking, this binds the libraries a little closer
than they used to be, kind of non-flat namespace on OSX (which is the
default there), meaning the dynamic linker will actively want to use
symbols from those libraries instead of a system library that might
happen to have the same symbol name.

--HG--
extra : rebase_source : 78adb64b90e75ebad203b8a647b305c9d7198d16
2018-06-01 08:10:25 +09:00
Sylvestre Ledru 7bc7122170 Bug 1463465 - Remove procmem.py; now unused r=dmajor
MozReview-Commit-ID: I0ygHwVn1PA

--HG--
extra : rebase_source : f24bb459f90d501f81a85d5d427515ecdc935ef7
2018-05-22 08:29:38 -07:00
Tom Ritter dd8b0dc15f Bug 1457162 Include CFLAGS and CPPFLAGS during the EXPAND_LIBS_LIST_STYLE check r=froydnj,ted
MozReview-Commit-ID: Eu82jfRZTk4

--HG--
extra : rebase_source : f6740111fb0e33ba1a8047d38ec3a9689be3afb6
2018-04-26 14:44:00 +00:00
Mike Hommey 60d982d254 Bug 1463036 - Add -mfloat-abi=softfp to NEON_FLAGS when it makes sense. r=froydnj
This is similar to what is done for VPX_ASFLAGS (bug 1199974).

--HG--
extra : rebase_source : 1e2feb1c244aa46ddc5fb7abb44ce33c6bd63a0f
2018-05-21 12:14:06 +09:00
Masatoshi Kimura b3f94f70ab Bug 1462616 - Unblock Windows 10 April 2018 Update SDK with clang-cl. r=ted
MozReview-Commit-ID: 9KGu1KTmyRM

--HG--
extra : rebase_source : d70c5dbabd15f10d865db7f5a9c7a4e76dd94fe8
2018-05-18 21:20:23 +09:00
Andreea Pavel f489d7af8e Backed out changeset 4523372c4945 (bug 1462498) for Win build bustages on a CLOSED TREE
--HG--
rename : build/build-clang/clang-6-linux64.json => build/build-clang/clang-6-pre-linux64.json
rename : build/build-clang/clang-6-macosx64.json => build/build-clang/clang-6-pre-macosx64.json
rename : taskcluster/scripts/misc/build-clang-6-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-6-pre-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-6-linux.sh => taskcluster/scripts/misc/build-clang-6-pre-linux.sh
2018-05-19 02:19:22 +03:00
Mike Hommey 6b2218c550 Bug 1462498 - Update clang 6 pre to clang 6 final. r=gps
--HG--
rename : build/build-clang/clang-6-pre-linux64.json => build/build-clang/clang-6-linux64.json
rename : build/build-clang/clang-6-pre-macosx64.json => build/build-clang/clang-6-macosx64.json
rename : taskcluster/scripts/misc/build-clang-6-pre-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-6-linux-macosx-cross.sh
rename : taskcluster/scripts/misc/build-clang-6-pre-linux.sh => taskcluster/scripts/misc/build-clang-6-linux.sh
extra : rebase_source : ae02bc8f15fa2bab743a63d49ffc3e14eca6c157
2018-05-18 08:03:31 +09:00
Tom Ritter e8b341f8cd Bug 1420350 Enable jemalloc on MinGW r=glandium
MozReview-Commit-ID: 6YUeFAJocHj

--HG--
extra : rebase_source : 016803ba5e3d5eaf8c937ac2f41e712fc543ba51
2018-03-07 10:49:28 -06:00
Mike Hommey e4ed02a860 Bug 1462273 - Use more reliable mirrors for gcc dependencies. r=froydnj
In the span of one week, both gmplib.org and multiprecision.org,
respective home of gmp and mpc have gone down. The latter is still down.

It turns out that all versions of gmp and mpfr we need are mirrored on
ftp.gnu.org, so we can just use that instead. For mpc, versions > 1.0
are on ftp.gnu.org, but not earlier versions.

The one mpc version <= 1.0 we do need is 0.8.2, and a copy of the exact
same archive, as per its sha256, which we're already checking per the
gcc build scripts, can be found on snapshot.debian.org. We lose gpg
validation on the way, but since we're already checking the sha256,
that's a fine tradeoff.

At least this unblocks changes to toolchains until multiprecision.org
comes back online.

--HG--
extra : rebase_source : f2bc67f8757655d99bfd9735b80d7205f7bfe47b
2018-05-17 17:52:37 +09:00
Mike Hommey 49a407b2ec Bug 1462273 - Use https for ftp.gnu.org instead of ftp. r=froydnj
--HG--
extra : rebase_source : 8c2b6a74b720d602f87c6c9bc622eeae2c2b8b97
2018-05-17 17:52:15 +09:00
Tom Ritter d4957e5ab4 Bug 1460647 Move big-obj out of Developer_OPTIONS so local MinGW builds work r=mshal
MozReview-Commit-ID: KxfoVkO4pu8

--HG--
extra : rebase_source : 8eef47c28ff7493afd74c1e553277c427d2eeb75
2018-05-04 10:33:25 -05:00
Andreea Pavel 8aab5416b7 Backed out changeset b51c2e39a12a (bug 1457162) for build bustages e.g mozmake.EXE[5]: *** No rule to make target 'clearkey_dll.list', needed by 'clearkey.dll'. Stop. on a CLOSED TREE 2018-05-16 18:09:10 +03:00
Tom Ritter c2db6a79d9 Bug 1457162 Include CFLAGS and CPPFLAGS during the EXPAND_LIBS_LIST_STYLE check r=froydnj
MozReview-Commit-ID: Eu82jfRZTk4

--HG--
extra : rebase_source : cf5366f8bccf05df98567bd3b8a92b1cd51b7025
2018-04-26 14:44:00 +00:00
Sylvestre Ledru f4b02c2f37 Bug 1453990 - Disable -Werror on -Wreturn-std-move. We have a false positive with nsAutoCString r=froydnj
See: https://bugs.llvm.org/show_bug.cgi?id=37249
MozReview-Commit-ID: VFvj33eeOm

--HG--
extra : rebase_source : 75208b2cfd1d3302ec0da2af3b24ceb36a4bdd8b
2018-05-12 12:00:39 +02:00
Andi-Bogdan Postelnicu a8cc78dc5c Bug 1454667 - clear out CPPFLAGS before compiling test files for the clang plugin. r=froydnj
MozReview-Commit-ID: sxnMdImxf8

--HG--
extra : rebase_source : 2589f86723b972188de1f8318001a1fc7c8627c1
2018-05-11 12:23:30 +03:00
Brindusan Cristian 1df25b391a Merge inbound to mozilla-central. a=merge 2018-05-12 12:47:14 +03:00
Sylvestre Ledru 274ecb9460 Bug 1460402 - Update the CI to use codespell with pip instead of the apt packages (too old) r=ahal
MozReview-Commit-ID: 9QkTPyP7izS

--HG--
extra : rebase_source : 155b8b64b3aac06682f9b4191293974d7b9cd844
2018-05-09 21:57:36 +02:00
Dorel Luca a5bc0b3f70 Backed out 4 changesets (bug 1460402) for lint failure on intl/locales/en-US/hyphenation/hyph_en_US.dic. CLOSED TREE
Backed out changeset c2e8fbd72ca6 (bug 1460402)
Backed out changeset 3676e913dbff (bug 1460402)
Backed out changeset bb12ffd4b96e (bug 1460402)
Backed out changeset 3e50885329c4 (bug 1460402)
2018-05-11 00:47:34 +03:00
Sylvestre Ledru 4f1403c359 Bug 1460402 - Update the CI to use codespell with pip instead of the apt packages (too old) r=ahal
MozReview-Commit-ID: 9QkTPyP7izS

--HG--
extra : rebase_source : 4784a5af43e806f2ec017fe16d930b3845fe2dde
2018-05-09 21:57:36 +02:00
Dorel Luca 74bbb3c1eb Backed out 4 changesets (bug 1460402) for breaking taskcluster images. CLOSED TREE
Backed out changeset 5b40f3f18f42 (bug 1460402)
Backed out changeset 17526c61b995 (bug 1460402)
Backed out changeset e1caff997e5a (bug 1460402)
Backed out changeset 06ceda084d69 (bug 1460402)
2018-05-10 23:54:38 +03:00
Sylvestre Ledru a7f37d6509 Bug 1460402 - Update the CI to use codespell with pip instead of the apt packages (too old) r=ahal
MozReview-Commit-ID: 9QkTPyP7izS

--HG--
extra : rebase_source : 23d87e6b352378aa41e8c539ce8640da68fe604c
2018-05-09 21:57:36 +02:00
Csoregi Natalia f034c0ab5d Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-05-10 12:52:31 +03:00
Cosmin Sabou ea5feeedb6 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-05-10 01:16:27 +03:00
Sylvestre Ledru 3bed13c76e Bug 1453444 - Add support for versioned lld binaries r=glandium
Can be used:
ac_add_options --enable-linker=lld-7
or
ac_add_options --enable-linker=lld

MozReview-Commit-ID: GfDevGeooU4

--HG--
extra : rebase_source : ee2aad5f8f721a6fe5840affde6b29a3b940fb91
2018-05-09 13:53:16 +02:00
Gregory Szorc a339b799f8 Bug 1460451 - Add /usr/bin/python3 to Debian images; r=glandium
The python3-minimal package provides /usr/bin/python3 on Debian.

This commit installs this package so a `python3` executable is
provided.

This required backporting the package to wheezy. The final patch
is trivial. But I wasted a bit of time figuring out why `mk-build-deps`
wasn't working. It would no-op and exit 0 and then the build would
complain about missing dependencies!

glandium's theory is that the ":any" multiarch support on wheezy
isn't complete. Removing ":any" seems to make things "just work."

MozReview-Commit-ID: FBicpK4SmkQ

--HG--
extra : rebase_source : a28ce731024e8ed6a43fb30e2ed57da2abb50d0f
2018-05-09 19:54:21 -07:00
Rob Wood 6802d07a28 Bug 1455872 - Build support for the new raptor performance framework; r=gps
MozReview-Commit-ID: FBvXwkYfz0o

--HG--
extra : rebase_source : eb611d916d1bfda47321f6f424eeefa5598c1f83
2018-05-02 16:42:41 -04:00
Nathan Froyd 493330ae3f Bug 1460379 - remove --with-pthreads option; r=ted.mielczarek
This option does nothing if it's provided, and things will probably
break in some most peculiar manner if somebody uses --without-pthreads.
Given that neither outcome is useful, we should remove the option.
2018-05-09 17:26:31 -04:00
Nathan Froyd c21c323370 Bug 1460373 - move --enable-valgrind to moz.configure; r=ted.mielczarek 2018-05-09 17:26:31 -04:00
Nathan Froyd 375bdf507f Bug 1459993 - remove MSVC 2015 bits from toolchain.configure; r=ted.mielczarek
It's unsupported, so we might as well get rid of the bits for it.
2018-05-09 17:26:31 -04:00
Nathan Froyd 0de7ff8ffa Bug 1459988 - disallow MSVC 15.7+ from being used to build Firefox; r=ted.mielczarek 2018-05-09 17:26:32 -04:00
Sylvestre Ledru 0584c2911d Bug 1455767 - As we have gcc 6 as requirement, use -fuse-ld everywhere instead of the -B trick r=glandium
+ simplify the code

MozReview-Commit-ID: 1Qz5H8VkfpD

--HG--
extra : rebase_source : cf7ef2945a112c592ae02d68c3825205497e079a
2018-04-26 13:27:36 +02:00
shindli ede14ab8aa Backed out changeset 7c7118c12864 (bug 1455767) for failures in /python/mozbuild/mozbuild/test/configure/lint.py on a CLOSED TREE 2018-05-09 12:10:10 +03:00
Sylvestre Ledru 25b3284dcb Bug 1455767 - As we have gcc 6 as requirement, use -fuse-ld everywhere instead of the -B trick r=glandium
+ simplify the code

MozReview-Commit-ID: 1Qz5H8VkfpD

--HG--
extra : rebase_source : d20ca365969722e03b48aeb52424fcc1f7234f26
2018-04-26 13:27:36 +02:00
Jan Henning 47d4c1bcf7 Bug 1352015 - Part 1: Fix Android SDK configure checks. r=nalexander
It's the *compile*SdkVersion that needs to match the installed Android SDK plat-
form in order to be able to build an app, whereas the *target*SdkVersion is
merely a compatibility flag.

Since the received wisdom is that targetSdkVersion should be <= compileSdk-
Version and Android Studio is also showing a warning to that effect if you
modify the build.gradle of a small sample app accordingly, I've also added a
corresponding configure check of our own to enforce this.

MozReview-Commit-ID: F2RZemChFrm

--HG--
extra : rebase_source : cf4f6256baa4446d673b94d97f9497f93d7917ff
2018-05-06 20:39:11 +02:00
Andrew Halberstadt ac08b89a81 Bug 1459598 - Use profiles.json file to map test suites to the base profiles they use, r=jgraham
This serves two purposes:

1) It makes web-platform-tests pref downloading/handling a little more robust. When
run externally, it now downloads the entire testing/profiles directory. When loading
prefs it will look for both prefs_general.js (to support older versions of Firefox)
and profiles.json (for support moving forward).

This way we can add/remove/rename pref files under these directories without needing
to worry about breaking upstream wpt.

2) It provides developers an overview of which harnesses are using which base profiles.
Instead of hunting through test harness code to find this information, they can glance
at profiles.json.

MozReview-Commit-ID: AMzdnD8aGA2

--HG--
extra : rebase_source : 6fa0a802680417e49fcef99f3d03de7458a8fcba
2018-05-07 09:43:12 -04:00
Tom Ritter 613e18b048 Bug 1458897 Fix svn revert in build-clang so one can re-run it successfully r=glandium
svn revert requires a path, and does not take a revision.  This isn't an
issue on build machines because we do a fresh checkout every time.

But if you're trying to run build-clang locally, with existing checkouts,
it will:
1) successfully svn update
2) run svn revert, saying "Skipped <rev>"
      (except you don't see it because of -q)
3) svn revert returns a successfull eror code
4) patch fails because the file was never reverted and it attempts
   to re-apply the patch

Also I think the revert command needs to come first.

MozReview-Commit-ID: 4OfrJNZwJNU

--HG--
extra : rebase_source : b3474e8048b3110f3f5948c3351923c02735ca4d
2018-05-03 09:14:12 -05:00
arthur.iakab f2042a4c1f Merge inbound to mozilla-central a=merge 2018-05-08 15:42:06 +03:00
Aaron Klotz 3cfbbae4f0 Bug 1457999: Update Valgrind intentional leak whitelist to include undecorated SaveToEnv; r=bustage
--HG--
extra : rebase_source : f8282bdfb2c831cd086f0e5c61b80afaeb46e393
2018-05-07 17:07:52 -06:00
Aaron Klotz 92651e3581 Bug 1457999: Follow-up - update Valgrind intentional leak whitelist to reflect updated name of mozilla::SaveToEnv; r=bustage
--HG--
extra : amend_source : 437cd75dc2ea3d8b3b625b7f78dbe861c3f610c9
2018-05-07 16:17:24 -06:00
Csoregi Natalia d69aac5687 Merge inbound to mozilla-central. a=merge 2018-05-05 12:47:28 +03:00
Tom Prince 5658bb444e Bug 1458700: [python] Vendor attrs; r=dustin,ted
Differential Revision: https://phabricator.services.mozilla.com/D1124

--HG--
extra : source : 75ef3b64c1698ec53d1d289201ec9a3d51fea7b1
extra : histedit_source : 53d76ae733322098ca6b8f01fe4c2911c348ac3a
2018-05-02 19:39:38 -06:00
David Major 6e3e9549cf Bug 1459026: Make Windows ASan builds use lld-link. r=froydnj 2018-05-04 14:53:04 -04:00
Andrew Halberstadt c9bdbe0a32 Bug 1451159 - [testing/profiles] Use 'format' for interpolation instead of %s r=gbrown
MozReview-Commit-ID: EbDS1fYDe1X

--HG--
extra : rebase_source : e8e179f97fb3df492b2fcc690616157254e49fdd
extra : source : 03f43cb6ab42e55f475c6f6a99c7da547b0aa6f8
2018-04-20 11:03:38 -04:00
Andrew Halberstadt ee69aa133e Bug 1451159 - [testing/profiles] Store profile data in actual profile look alike folders r=gbrown
This moves testing/profiles/prefs_general.js to
testing/profiles/common/user.js. It also adds an 'extensions' folder to the
common profile. Dropping extension files here will get them installed in all
test harnesses (useful for testing on try).

The idea is that all test harnesses will eventually use this 'common' profile.
We'll also create some new per harness profiles, e.g testing/profiles/mochitest
and testing/profiles/reftest. This way there will be a single location
developers can go to set preferences, both for a specific harness, and across
all harnesses.

MozReview-Commit-ID: 8sqBqLiypgU

--HG--
rename : testing/profiles/prefs_general.js => testing/profiles/common/user.js
extra : rebase_source : 72a4a4b691e93c77479c7e70647b0ca373862c51
2018-04-19 16:12:26 -04:00
Dave Hunt d5d4c1b840 Bug 1455570 - Build and publish TPS add-on; r=dustin,ted
MozReview-Commit-ID: HOsTcmg1m7e

--HG--
extra : rebase_source : 57ee75482fe1204d741f851ed51f32a06146ae08
2018-04-23 14:32:05 +01:00
David Major 1e59fef758 Bug 1457523: Add msdia140.dll to the package on Windows ASan CI builds. r=ted 2018-05-03 15:53:53 -04:00
Xidorn Quan 8bf2d8e5a8 Bug 1457524 followup - Unset RUSTDOC for no-compile environment and add it to mozconfigs.
--HG--
extra : rebase_source : 811e48c193f593332ace7ed0108693373dafecaf
extra : amend_source : 4bb21acd6d3def08917dc00c2264f1ddb1b1ede8
2018-05-05 11:04:07 +10:00
Xidorn Quan 12ddb6a1e7 Bug 1457524 part 3 - Check rustdoc for rust tests. r=froydnj
MozReview-Commit-ID: 4qRccUcXq6O

--HG--
extra : rebase_source : 684fd08a18f55a1f620fa305b22b31e002077a0a
2018-05-02 20:02:04 +10:00
Xidorn Quan 1c8dc43017 Bug 1457524 part 1 - Use a list for rust tests. r=froydnj
MozReview-Commit-ID: 6A0hHClXDUE

--HG--
extra : rebase_source : 827bb569642aa2ad834b94f08af3f60b68552de4
2018-05-02 11:51:25 +10:00
Dave Hunt 4afca33e96 Bug 1437593 - Move initial virtual environment to _virtualenvs/init; r=ted
MozReview-Commit-ID: LP8NVz3tZZg

--HG--
extra : rebase_source : 990c0301a43a1870a69548a23aeddcf9fe3fe8a8
2018-03-28 12:55:04 +01:00
Mike Hommey ed54beeab0 Bug 1458161 - Hook rust OOM handler. r=froydnj
OOM rust crashes are currently not identified as such in crash reports
because rust libstd handles the OOMs and panics itself.

There are unstable ways to hook into this, which unfortunately are under
active changes in rust 1.27, but we're currently on 1.24 and 1.27 is not
released yet. The APIs didn't change between 1.24 and 1.26, so it's
fine-ish to use them as long as we limit their use to those versions.

As long as the Firefox versions we ship (as opposed to downstream) use
the "right" version of rust, we're good to go.

The APIs are in their phase of stabilization, so there shouldn't be too
many variants of the code to support.

--HG--
extra : rebase_source : 08a85aa102b24380b1f6764effffcc909ef3191b
2018-05-01 10:30:03 +09:00
Chris Manchester 22900f8fb9 Bug 1372381 - Generate automation.py with GENERATED_FILES rather than Makefile.in r=mshal
This commit also removes "DEFAULT_APP", which is unused.

MozReview-Commit-ID: 5YYaC5LJqUn

--HG--
extra : rebase_source : 45f0f8f11698890fae0dcca71174f88dbdb412c8
2018-04-30 11:08:59 -07:00
Tom Prince 386cd7a8bc Bug 1456182: [update-verify] Stop creating a virtualenv in update-verify-config-creator; r=nthomas
Since it is run with `mach python`, it uses the environment defined by
`build/virtualenv_packages.txt`. Thus, we don't need to create a separate
virtualenv.

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

--HG--
extra : rebase_source : 023095f82d7219a10dffb3579276c5285db37cfc
extra : source : a2999a5b9b7aa08a7c5c2ba6384724853d14b9c5
2018-04-22 18:51:38 -06:00
Dorel Luca 70e79e52cd Backed out 11 changesets (bug 1437593) for Doc linting failure. CLOSED TREE
Backed out changeset 0f3dbbd73ed4 (bug 1437593)
Backed out changeset 64c84cf90e8b (bug 1437593)
Backed out changeset 36c66615886f (bug 1437593)
Backed out changeset dfafbe7770ad (bug 1437593)
Backed out changeset 900f32450a74 (bug 1437593)
Backed out changeset d6fe456bb39c (bug 1437593)
Backed out changeset 4842e4b68d82 (bug 1437593)
Backed out changeset e024b3d775fd (bug 1437593)
Backed out changeset ce9e3951357a (bug 1437593)
Backed out changeset afaeac146ff8 (bug 1437593)
Backed out changeset 88954bcf6ca2 (bug 1437593)
2018-04-28 12:02:02 +03:00
Rob Wood 8b76a9ff3c Bug 1455107 - Integrate raptor into mach; r=gbrown
MozReview-Commit-ID: 84vIqU2NWkE

--HG--
extra : rebase_source : ac5454192271d19b4da448e6be2f97dbb3420828
2018-04-23 16:43:30 -04:00
Dave Hunt ab659de0d1 Bug 1437593 - Move initial virtual environment to _virtualenvs/init; r=ted
MozReview-Commit-ID: LP8NVz3tZZg

--HG--
extra : rebase_source : 0ddf9cd58d7258c17ffbed01b435fb58142df7c5
2018-03-28 12:55:04 +01:00
Gurzau Raul 677f146915 Backed out 11 changesets (bug 1437593) for SpiderMonkey failures on a CLOSED TREE
Backed out changeset e4b2357330b4 (bug 1437593)
Backed out changeset 8cb34c11ad45 (bug 1437593)
Backed out changeset ab27411c53c2 (bug 1437593)
Backed out changeset c90a0961f52a (bug 1437593)
Backed out changeset 60114a93b6b1 (bug 1437593)
Backed out changeset d12eec17c51c (bug 1437593)
Backed out changeset 2f83246cb0b1 (bug 1437593)
Backed out changeset 19b7273e375c (bug 1437593)
Backed out changeset cf026c071b73 (bug 1437593)
Backed out changeset c7fa833eff1d (bug 1437593)
Backed out changeset 828caab5032d (bug 1437593)
2018-04-27 02:20:39 +03:00
Dave Hunt 37e3c0c222 Bug 1437593 - Move initial virtual environment to _virtualenvs/init; r=ted
MozReview-Commit-ID: LP8NVz3tZZg

--HG--
extra : rebase_source : 7cc28c398da611f318bba5377d9ad1f18944e1e4
2018-03-28 12:55:04 +01:00
Ciure Andrei 33e644e1da Merge inbound to mozilla-central. a=merge 2018-04-24 04:14:21 +03:00
Gregory Szorc 8f5adf5328 Bug 1455708 - Find Python 3 in MozillaBuild, require Python 3 everywhere; r=mshal
We previously did not require Python 3.5+ everywhere because we failed
to detect Python 3.5 on Windows in CI. That's because CI isn't using
start-shell.bat and it hasn't yet updated PATH to include
%MOZILLABUILD%\python3.

We shouldn't need to teach CI to have PATH contain everything in
MozillaBuild. This commit teaches moz.configure to automatically use
MozillaBuild's Python 3 if we're running in MozillaBuild.

Since we can now detect Python 3 everywhere in CI, we make Python 3.5+
required on all build configurations.

MozReview-Commit-ID: BwgWGeYMyPM

--HG--
extra : rebase_source : b52f604b01c73b0493b142f3f71aa26c99a42b91
2018-04-20 12:44:05 -07:00
Justin Wood 9e151c936d Bug 1453274 - Add testing for python/mozrelease/versions.py r=rail
for: taskgraph: Make update tasks support esr60

MozReview-Commit-ID: GUmAq3sBXGB

--HG--
extra : rebase_source : 0eaeb17809fede07f6b9fc4ee5d856d0078f83be
2018-04-23 12:40:26 -04:00
Gregory Szorc 7efba3beae Bug 1451065 - Require Python 3.5+ to build; r=mshal
But only if we are:

a) not running in CI
b) running in CI on Linux

We will ideally make the requirement global. But Python 3.5 is not
yet available in CI on macOS. And we're not finding the MozillaBuild
copy in configure.

This was previously announced in November at
https://groups.google.com/d/msg/mozilla.dev.platform/rJrPh1QYXrQ/hqRrQsJ_BgAJ.

MozReview-Commit-ID: IyPCAcL3gop

--HG--
extra : rebase_source : f9e3db043a1ce9c1a903c943663f22245febf101
2018-04-03 11:00:00 -07:00
Gregory Szorc 5423976a8b Bug 1455143 - Refactor checksumming to occur after upload.py; r=ted
checksums.py is now run after upload.py, as part of the "upload" make
target.

As part of the refactor, checksums.py now takes as arguments a list of
directories containing files to checksum. It will recursively checksum
all files in listed directories.

This means we no longer have to pass an explicit list of files into
checksums.py. Instead, we can pass the artifact directory and
automatically checksum everything within. This will allow us to
generate files directly into the artifact directory instead of
having to run upload.py to copy files there.

MozReview-Commit-ID: 6ntnXU2Pp0E

--HG--
extra : rebase_source : 7e019b366f14b3692ec702ff331a1e0306dc3805
2018-04-18 16:24:03 -07:00
Gregory Szorc 137e7d1403 Bug 1455143 - Use .write() instead of print >>; r=ted
.write() is the preferred mechanism to write to a file object.

MozReview-Commit-ID: 1uhNeFayoxV

--HG--
extra : rebase_source : 5244e5548cefb8ebf98cb2415ab139e96e967433
2018-04-18 15:39:26 -07:00
Gregory Szorc 8faaa397e7 Bug 1455143 - Use a reasonable buffer size for reading files; r=ted
Reading in 1kb chunks in 2018 is insane.

MozReview-Commit-ID: 7wJv6fTAOh7

--HG--
extra : rebase_source : 9553fdd1b50c6da21fb2e15f63b0accc62bb01e8
2018-04-18 15:38:04 -07:00
Gregory Szorc ed4699f57b Bug 1455143 - Remove code for failing to obtain a hash; r=ted
digest_file() should always return something.

MozReview-Commit-ID: 6PpSUnxhCcL

--HG--
extra : rebase_source : 932a7e296a6bf32b03dc8b1ac5360d3287e44d38
2018-04-18 15:36:55 -07:00
Gregory Szorc 29eac5d14d Bug 1455143 - Handle directory inputs earlier; r=ted
This makes the logic in process_files() simpler.

MozReview-Commit-ID: KdphRJZLinx

--HG--
extra : rebase_source : 14a89fc9ba85d1dd4c2d2d18d0383552bb2d8e69
2018-04-18 15:35:57 -07:00
Gregory Szorc 10322471bc Bug 1455143 - Use a global logger instance; r=ted
MozReview-Commit-ID: 1RyLZBMx6mH

--HG--
extra : rebase_source : d83c756488c698680965badc953c9b3e3efb5403
2018-04-18 15:33:31 -07:00
Gregory Szorc fcd36e363c Bug 1455143 - Remove hash name validation; r=ted
Garbage in garbage out. Let's make this code simpler.

MozReview-Commit-ID: Gv0ZcMacyOX

--HG--
extra : rebase_source : 2e8131bc1926b6ad7f186d0778fe4b339c6ba834
2018-04-18 15:31:59 -07:00
Gregory Szorc 4f096bd777 Bug 1455143 - Make hashlib required; r=ted
A missing or unimportable hashlib is only possible on very old or very
busted Pythons. Remove code for conditionally handling a failure to
import it.

MozReview-Commit-ID: EXVlmttcwUa

--HG--
extra : rebase_source : 30177c86dc5e92dd3234177f383681f9aa70682e
2018-04-18 15:31:11 -07:00
Gregory Szorc 893a9ad99d Bug 1455127 - Remove --package from upload.py; r=ted
The argument is never used in the local file copying function. So let's
nuke the argument.

MozReview-Commit-ID: JeU4LaVvGD7

--HG--
extra : rebase_source : 0e305c5bff0e3871fd11a554d75e7f53ceea4bdd
2018-04-19 09:31:00 -07:00
Gregory Szorc 5de6850705 Bug 1455127 - Remove --properties-file from upload.py; r=ted
This was only used for the remote server case. That code was recently
deleted.

MozReview-Commit-ID: 7usqWZ7CuBR

--HG--
extra : rebase_source : f27b37391802a2980feffa5d88c92228d137824f
extra : source : 46b8a00288c8d7b88fd9b7aee20e88ddfd96d57b
2018-04-19 09:30:52 -07:00
Gregory Szorc fa49ba4a40 Bug 1455127 - Remove functionality for uploading to a server; r=ted
With the transition to Taskcluster, "uploads" are artifacts in a local
directory. So we don't need to support uploading to a remote server
using SCP.

This commit removes all the code to support uploading to a remote
server.

And since property files were only written out for the remote case, all
that code can be deleted as well.

Since UPLOAD_HOST no longer means anything, we no longer set it in
mozharness configs.

MozReview-Commit-ID: 66gkM8erkGk

--HG--
extra : rebase_source : ee85bb927cfb98e1ca383ab2591febfc1f0ce5cd
2018-04-19 09:30:31 -07:00
Ciure Andrei c8ca057944 Backed out 3 changesets (bug 1455127) for throughing exceptions and messing with windows 2012 builds on a CLOSED TREE, a=backout
Backed out changeset ac17015816ca (bug 1455127)
Backed out changeset 8527e727b92d (bug 1455127)
Backed out changeset 8c8fe0facf52 (bug 1455127)
2018-04-19 05:43:15 +03:00
Gregory Szorc 32bab4f00f Bug 1455120 - Prefix output from automation tiers; r=mshal
We add a minimal Python script to run a process and prefix all its
output with a string. We change the automation tiers to evaluate all
make targets using this script.

MozReview-Commit-ID: 79g5KUd5ked

--HG--
extra : rebase_source : 63388a71b51e5abc05ca8bd48e180af72bf799e6
2018-04-18 14:30:05 -07:00
Gregory Szorc 75aaa25f38 Bug 1455127 - Remove --package from upload.py; r=ted
The argument is never used in the local file copying function. So let's
nuke the argument.

MozReview-Commit-ID: JeU4LaVvGD7

--HG--
extra : rebase_source : a898814f4084288200928f062fbb06ffbbae60bd
2018-04-18 15:04:53 -07:00
Gregory Szorc 294b3c6072 Bug 1455127 - Remove --properties-file from upload.py; r=ted
This was only used for the remote server case. That code was recently
deleted.

MozReview-Commit-ID: 7usqWZ7CuBR

--HG--
extra : rebase_source : 39c33057aab6773f8f85b1294e4965965954d9e6
2018-04-18 15:03:46 -07:00
Gregory Szorc 2855ef727a Bug 1455127 - Remove functionality for uploading to a server; r=ted
With the transition to Taskcluster, "uploads" are artifacts in a local
directory. So we don't need to support uploading to a remote server
using SCP.

This commit removes all the code to support uploading to a remote
server.

And since property files were only written out for the remote case, all
that code can be deleted as well.

Since UPLOAD_HOST no longer means anything, we no longer set it in
mozharness configs.

MozReview-Commit-ID: 66gkM8erkGk

--HG--
extra : rebase_source : 15143a18598370eeaaa98f8f0ac8458d758db51f
2018-04-18 17:05:46 -07:00
Rob Wood 4af496d7f2 Bug 1454466 - Move raptor in-tree; r=ahal
MozReview-Commit-ID: AkqbROfvmbu

--HG--
extra : rebase_source : bf30030a333852d6d81c4278e91b1ac9fef237fe
2018-04-16 17:15:38 -04:00
Tom Prince 2fd9b9a48f Bug 1436662: Remove `installer` MOZ_AUTOMATION stage; r=mshal
The previous commit moved creating installers to be side effect of creating
packages. This makes the installer step not actually do anything. So remove the
step from automation.

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

--HG--
extra : rebase_source : 75b67a6e57031ae189dafe1d9854e4105aa22621
extra : source : fcb756834abbdbe0ae6e59a8cfdf39024f50a226
2018-04-05 19:12:10 -06:00
Brindusan Cristian 34b33a520a Backed out 2 changesets (bug 1436662) for build bustages on /installer/windows. CLOSED TREE
Backed out changeset fcb756834abb (bug 1436662)
Backed out changeset d6bf22099e21 (bug 1436662)
2018-04-17 19:08:21 +03:00
Tom Prince f125db5dfe Bug 1436662: Remove `installer` MOZ_AUTOMATION stage; r=mshal
The previous commit moved creating installers to be side effect of creating
packages. This makes the installer step not actually do anything. So remove the
step from automation.

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

--HG--
extra : rebase_source : 174a366890da295634ef8971d0608ea60979f110
extra : histedit_source : 06fdd0e2ccb93f061ba5a40c2a4137eed9898916
2018-04-05 19:12:10 -06:00
David Major 2038099969 Bug 1458325 followup bustage fix 2018-05-11 10:46:56 -04:00
David Major 69108e1f53 Bug 1458325: Merge ASan runtime patch to fix Win64 jit-tests. r=froydnj 2018-05-11 10:43:52 -04:00
J.C. Jones 6fad8e3ff1 Bug 1441338 - Change pgo certificates to use certspec/keyspec files r=keeler r=franziskus
(This also fixes Bug 879740 and Bug 1204543.)

build/pgo/certs contains an NSS database set that has a bunch of hand-generated
certificates, and many of these hand-generated certificates are specifically
depended upon for a variety of unit tests. This patch changes all of these to
use the "pycert.py" and "pykey.py" utilities that produce deterministic keys
and certificates.

The naming convention here is new, and defined in the README. It is based on
the mochitest runtest.py naming convention that imports .ca and .client
PEM-encoded certificates.

Unfortunately, the updates to build/pgo/genpgocert.py to generate these files
depends on OpenSSL in order to produce PKCS12 archives for pk11tool to import
into NSS. This could be done with pure-NSS tooling, but it'd require some new
command line functionality, which is out-of-scope for this change.

Note that build/pgo/genpgocert.py no longer takes arguments when run. It's not
run automatically anywhere that I can see, but could (reasonably) be, now.

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

--HG--
extra : amend_source : bc389b9b0a807a4889feb14db439daa28635dfe9
2018-04-23 11:14:17 +02:00
Bobby Holley 1da6139753 Bug 1454511 - Widen valgrind suppression for selector parsing. r=njn
The existing suppression tries to be specific about the callstack that
arrives at the function, but that breaks when we rejigger the machinery
up the callstack. In practice, the existing suppressions cover most of
the ways we would arrive at selector parsing, and so I think the
specificity here is more trouble than it's worth.

MozReview-Commit-ID: 2k52xq64SQX
2018-04-16 17:11:49 -07:00
Jan Beich 6a8b9ac6f9 Bug 1452509 - Move --enable-pulseaudio to moz.configure. r=froydnj
MozReview-Commit-ID: J1fJUukDJXh

--HG--
extra : rebase_source : c582a589b767d199413e77c7c237d4402599179f
2018-03-18 23:55:25 +00:00
Jan Beich efa1be2618 Bug 1452509 - Move --enable-alsa to moz.configure. r=froydnj
MozReview-Commit-ID: Cv0HnZPvkWe

--HG--
extra : rebase_source : 1108a3d58e14bef335334e160186dca8a0bfcaee
2018-03-18 23:46:16 +00:00
Ryan VanderMeulen 6af8d937a0 Bug 1453317 - Update VS2017 used in automation to version 15.6.6. r=froydnj
CLOSED TREE
2018-04-11 09:24:02 -04:00
Ciure Andrei 3f4a118829 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-04-11 12:00:35 +03:00
Jeff Walden cba0aa5d89 Bug 1452754 - Add tests to TestMustReturnFromCaller.cpp that verify that RAII destruction after a must-return-after expression is permitted. r=mystor
--HG--
extra : rebase_source : 6ca1082b766393fa90f3631fd09a399e01c9e6e6
2018-04-09 12:56:37 -07:00
Geoff Brown 3680684f70 Bug 1452694 - Use TestRunnerActivity for geckoview mochitest/reftest; r=bc
This makes the changes necessary to use TestRunnerActivity when geckoview
is installed and requested, but we do not yet attempt to run any such
test tasks in automation.
2018-04-10 13:26:11 -06:00
Mike Hommey be4f305f62 Bug 1445536 - Add a toolchain job for GCC 7. r=froydnj
And adapt the build-gcc.sh script for the changes to
contrib/download_prerequisites.

--HG--
rename : taskcluster/scripts/misc/build-gcc-6-linux.sh => taskcluster/scripts/misc/build-gcc-7-linux.sh
extra : rebase_source : b1d785777b8c141c0eb0f52a73734abd2db21b94
2018-03-14 09:37:27 +09:00
Benjamin Bouvier 7c38a97146 Bug 1451372: Force libatomic only on 32-bits Linux clang builds; r=froydnj
--HG--
extra : rebase_source : 3295ed15a5add83bd1aeff49b10a9a6d23a770c6
2018-04-06 16:27:01 +02:00
Kartikaya Gupta 904dd3f563 Bug 1449291 - Use the macro expansion location for all tokens. r=emilio
MozReview-Commit-ID: 8lbpGSt6z4p

--HG--
extra : rebase_source : 048e11795f755391eca15666651dfc883b5ad8d9
2018-04-04 08:53:16 -04:00
Benjamin Bouvier d8a712a705 Bug 1451038: Make clang compile the JS ARM32 simulator shell; r=froydnj
This forces the linker ot use libatomic with clang on x86 (not only Android)
and forwards the intent to use libatomic to the shell's moz.build.

--HG--
extra : rebase_source : 0c803a3e11efcad3f17a462c2d38e85ec6cb556a
2018-04-03 18:13:51 +02:00
Andrew McCreight e80864c94c Bug 1438688, part 3 - Remove XPT files from the packaging process. r=glandium
Now that XPT files are not loaded from files at runtime, code for
packaging XPT files can be removed.

This means that a couple of test XPIDL interfaces will get shipped in
builds to users that weren't before, but I don't think that matters
much.

This also puts XPT files into the local objdir for the XPIDL makefile,
instead of dist/bin, because they are no longer part of the
distribution.

MozReview-Commit-ID: 7gWj8KWUun3

--HG--
extra : rebase_source : 65bac47c2cd1a20b3c675a01b44a25a1d2d3ab7a
2018-03-05 14:27:29 -08:00
Dorel Luca baf0da3fea Merge mozilla-central to autoland 2018-04-03 07:22:33 +03:00
Gregory Szorc cbab55349e Bug 1449629 - Install Python 3.5 in Debian 7 base image; r=glandium
Debian 7 ships Python 3.2 by default. That's too old for our
upcoming build requirement of Python 3.5.

This commit adds a Python 3.5 package for wheezy that backports
the Python 3.5 from a much later Debian version.

The patch was inspired by the existing patch for Python 2.7.
However, it needed additional work. The changes and reasons
should all be documented in the changelog file as part of the
package diff we apply.

I'm a bit disappointed we had to disable PGO. But it was
reliably segfaulting during the build. I didn't feel like going
down that rabbit hole.

MozReview-Commit-ID: ABpHW1KYFQP

--HG--
extra : rebase_source : 02dbd13236fe741cb33f07c803218fda339c214e
2018-04-02 19:27:12 -07:00
Jeff Gilbert afd77f7fd5 Bug 1444274 - Require GCC 6.1+. - r=glandium
MozReview-Commit-ID: 7alNSIhhbLI
2018-04-02 17:05:43 -07:00
Dorel Luca f24505d99e Backed out 7 changesets (bug 1438688) for android xpcshell failures on builds/worker/workspace/build/tests/bin/components/test_necko.xpt
Backed out changeset 8786eabb61a4 (bug 1438688)
Backed out changeset e05ec1e08b46 (bug 1438688)
Backed out changeset 4c437ba9d984 (bug 1438688)
Backed out changeset 2f243bca1af3 (bug 1438688)
Backed out changeset 4da0e1839353 (bug 1438688)
Backed out changeset 186f916dcc7a (bug 1438688)
Backed out changeset 08b1a5f904e4 (bug 1438688)
2018-04-03 02:30:53 +03:00
Andrew McCreight fc09560f06 Bug 1438688, part 3 - Remove XPT files from the packaging process. r=glandium
Now that XPT files are not loaded from files at runtime, code for
packaging XPT files can be removed.

This means that a couple of test XPIDL interfaces will get shipped in
builds to users that weren't before, but I don't think that matters
much.

This also puts XPT files into the local objdir for the XPIDL makefile,
instead of dist/bin, because they are no longer part of the
distribution.

MozReview-Commit-ID: 7gWj8KWUun3

--HG--
extra : rebase_source : 6f7d4fd1d6cdea2c14866705a2dc972eb5f43382
2018-03-05 14:27:29 -08:00
David Major 2a5904b3d4 Bug 1448519: Pick up clang r328769 on Windows. r=mshal 2018-04-02 10:11:05 -04:00
David Major 32c30a3ca5 Bug 1450133 - Pick up LLD r320462 for the static analysis builders. r=froydnj
--HG--
extra : rebase_source : 96660883a950ef6c4d3382fdb02eab00f573cd47
2018-03-30 18:06:27 -04:00
Julian Seward 4f24ba0ebe Bug 1447137 - Valgrind errors building with rust 1.25: Conditional jump or move depends on uninitialised value in various parsing functions. r=njn
This patch adds suppressions as needed on automation, for Servo-in-Gecko as
compiled by rustc 1.25.  It appears there are only three false error sites

  fun:*style*values*specified*color*Color*style*parser*Parse*parse*
  fun:*selectors*parser*SelectorList*Impl*parse*
  fun:*style*properties*shorthands*

but there are a number of different paths leading to them, especially the
first, hence the use of 17 suppressions in total, so as to remain specific.

Following some investigation of the machine code involved, I think these are
all Valgrind/Memcheck false positives, unfortunately, and probably to do
with (legitimate) operand swapping in && or || expressions by rustc+LLVM.

MozReview-Commit-ID: EpDmb4PEyoy
2018-03-26 11:00:59 +02:00
Ciure Andrei c38c8d3b28 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-03-30 01:11:06 +03:00
David Major 347060a2cd Bug 1448306: Run Binscope on more files. r=froydnj 2018-03-29 15:11:42 -04:00
David Major 7e5935899c Bug 1448306: Newer Binscope no longer communicates status via return code. r=froydnj 2018-03-29 15:11:42 -04:00
David Major 194936ff52 Bug 1448306: Allow BinScope to run on clang-cl builds. r=froydnj 2018-03-29 15:11:41 -04:00
David Major 7175be67e3 Bug 1448306: Update checks for BinScope 2014. r=froydnj 2018-03-29 15:11:41 -04:00
Gurzau Raul 8d268c6ce7 Merge mozilla-central to inbound. a=merge CLOSED TREE
--HG--
rename : toolkit/components/extensions/ext-permissions.js => toolkit/components/extensions/parent/ext-permissions.js
2018-03-29 01:00:42 +03:00
Geoff Brown b4dddb3c35 Bug 1440719 - Set MOZ_CRASHREPORTER_SHUTDOWN during tests, other than browser-chrome and non-e10s; r=ted 2018-03-28 12:43:52 -06:00
Andi-Bogdan Postelnicu b030e9525d Bug 1447904 - for clang-tidy toolchains set default cxx dialect cxx14. r=froydnj
MozReview-Commit-ID: LrGETsz0W6q

--HG--
extra : rebase_source : 02a9e9bb50ef91fe5aa23fbfce9fe00e6042c005
2018-03-28 18:48:57 +03:00
Narcis Beleuzu f7d1771078 Backed out changeset 0c253578b791 (bug 1447904) for TL failures /toolchain-win32-clang-tidy TW32. CLOSED TREE 2018-03-28 18:43:54 +03:00
Andi-Bogdan Postelnicu 986651e3c5 Bug 1447904 - for clang-tidy toolchains set default cxx dialect cxx14. r=froydnj
MozReview-Commit-ID: LrGETsz0W6q

--HG--
extra : rebase_source : e419fd1d138ef17c00644c2bd91f7b6b9924a413
2018-03-28 15:02:09 +03:00
Carl Corcoran 69b43c9d12 Bug 1448380: Allow overriding DIA SDK and VC paths with VC_PATH and DIA_SDK_PATH environment variables; r=froydnj
MozReview-Commit-ID: MKUaRYCTmP

--HG--
extra : rebase_source : 2140683c7e8112dc50f51bf31d1f4fda6206235e
extra : source : 05e46cd4a2faaad1a8f84ed5abeb3fd54dc88df4
2018-03-27 14:37:49 +02:00
Jeff Walden 5ad04f03a4 Bug 1447475 - Rip out support code for setting MOZ_ICU_DATA_ARCHIVE and shipping ICU data in a file outside the binary. r=ted
--HG--
extra : rebase_source : 95ab9cd884297ed36b419d872110cee9be887bff
2018-03-20 18:30:16 -07:00
shindli 1e7274100e Backed out 2 changesets (bug 1449051, bug 1447475) for MnH and en-US failures on a CLOSED TREE
Backed out changeset d9a446d356da (bug 1449051)
Backed out changeset 851ed02cdac1 (bug 1447475)
2018-03-28 02:05:38 +03:00
Jeff Walden 051680cc8e Bug 1447475 - Rip out support code for setting MOZ_ICU_DATA_ARCHIVE and shipping ICU data in a file outside the binary. r=ted 2018-03-20 18:30:16 -07:00