Commit Graph

7539 Commits

Author SHA1 Message Date
arthur.iakab
5527acb8d8 Merge inbound to mozilla-central a=merge 2018-08-25 01:08:22 +03:00
Andi-Bogdan Postelnicu
2238536677 Bug 1483953 - Add a FixIt hint for the ExplicitImplicitChecker analysis. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D4191

--HG--
extra : moz-landing-system : lando
2018-08-24 14:11:26 +00:00
Andi-Bogdan Postelnicu
34a6c4ff8f Bug 1466427 - Migrate clang-tidy package from 5.0.1 to 7.0.0-rc2. r=glandium,janx
Differential Revision: https://phabricator.services.mozilla.com/D3980

--HG--
rename : tools/clang-tidy/test/misc-bool-pointer-implicit-conversion.cpp => tools/clang-tidy/test/bugprone-bool-pointer-implicit-conversion.cpp
rename : tools/clang-tidy/test/misc-forward-declaration-namespace.cpp => tools/clang-tidy/test/bugprone-forward-declaration-namespace.cpp
rename : tools/clang-tidy/test/misc-macro-repeated-side-effects.cpp => tools/clang-tidy/test/bugprone-macro-repeated-side-effects.cpp
rename : tools/clang-tidy/test/misc-string-constructor.cpp => tools/clang-tidy/test/bugprone-string-constructor.cpp
rename : tools/clang-tidy/test/misc-string-integer-assignment.cpp => tools/clang-tidy/test/bugprone-string-integer-assignment.cpp
rename : tools/clang-tidy/test/misc-suspicious-missing-comma.cpp => tools/clang-tidy/test/bugprone-suspicious-missing-comma.cpp
rename : tools/clang-tidy/test/misc-swapped-arguments.cpp => tools/clang-tidy/test/bugprone-swapped-arguments.cpp
rename : tools/clang-tidy/test/misc-unused-raii.cpp => tools/clang-tidy/test/bugprone-unused-raii.cpp
extra : moz-landing-system : lando
2018-08-24 12:39:58 +00:00
Andi-Bogdan Postelnicu
d25759d92e Bug 1485949 - fix busted build of clang-plugin on MacOS native build. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D4204

--HG--
extra : moz-landing-system : lando
2018-08-24 11:44:38 +00:00
Mike Hommey
a6d35e4199 Bug 1481670 - Add a non-mangled version of the valgrind suppression for SaveWordToEnv. r=njn
This is similar to what was done with SaveToEnv in bug 1457999.
2018-08-24 21:44:12 +09:00
Mike Hommey
95f25c8a5d Bug 1485610 - Avoid copy relocations in binaries we build. r=froydnj
See bug 1485562 for an example of bad things that can happen with such
relocations, and see also
c90379ddfe/ELF/Relocations.cpp (L496-L537)
2018-08-24 08:57:04 +09:00
Mike Hommey
32f6c1b795 Bug 1485545 - Upgrade clang 7 toolchains to rc2. r=dmajor
It fixes a crash on LTO (https://bugs.llvm.org/show_bug.cgi?id=38597) and
contains a backport of r339636.
2018-08-24 08:39:30 +09:00
Mike Hommey
1894266228 Backout changesets 59c38e3958fe (bug 1485545) and 4017bcbb799d (bug 1485503) to give time to toolchains to build without blocking other landings. 2018-08-24 07:39:04 +09:00
Mike Hommey
a4d874c7b8 Bug 1485545 - Upgrade clang 7 toolchains to rc2. r=dmajor
It fixes a crash on LTO (https://bugs.llvm.org/show_bug.cgi?id=38597) and
contains a backport of r339636.
2018-08-24 07:33:38 +09:00
Nathan Froyd
c1c5987ee2 Bug 1485716 - part 1 - always use frame pointers on aarch64 windows; r=dmajor
This support is not necessary, but the ABI conventions
page (https://docs.microsoft.com/en-us/cpp/build/arm64-windows-abi-conventions)
encourages people to use frame pointers for fast stack walking, and
using frame pointers means we're compatible with ETW, which is a Good
Thing.
2018-08-23 16:48:53 -04:00
Nathan Froyd
e02e0b391b Bug 1397263 - move --enable-accessibility to moz.configure; r=mshal 2018-10-03 20:29:29 -04:00
Nathan Froyd
e2773ad4fd Bug 1397263 - move ASOUTOPTION to moz.configure; r=mshal 2018-10-03 20:29:29 -04:00
Ted Mielczarek
5beac189a8 Bug 1397263 - move GNU_AS checks to toolchain.configure; r=glandium
The GNU_AS check in old-configure depended on running with the value
of $AS before it gets reset to just be the C compiler, which breaks when
we move setting AS into moz.configure.

This patch moves the GNU_AS check to toolchain.configure and changes it
so that it works when the assembler is the C compiler.  We do have to
fix things slightly for clang, because the previous check was
succeeding, but not because of clang: it was detecting the presence of
"GNU" in the output for GNU ld/gold and a message about the GNU GPL.
2018-10-03 20:29:29 -04:00
Nathan Froyd
9a1e9149b8 Bug 1397263 - move AS checks to toolchain.configure; r=glandium
This is a fairly straightforward port of the AS tool checks from old-configure
to toolchain.configure. AS is a little quirky in that we currently do a
normal-looking check for it, but then override that value to be the C compiler
for non-Windows builds, and ml[64]/armasm64 for Windows builds.

After migrating those checks, the only things left in the MOZ_DEFAULT_COMPILER
macro in compiler-opts.m4 were some unused bits, so I removed them:
* Setting of CPP/CXXCPP, which are set in toolchain.configure now
* Setting HOST_LDFLAGS to empty, which doesn't seem particularly useful.

There was also a quirky old test that the assembler was ml[64] when js-ctypes
is enabled that I removed, I don't think it provides any value since this
patch will ensure that we're using the right assembler for Windows builds.
2018-10-03 20:29:29 -04:00
Nathan Froyd
684e72b2ab Bug 1486905 - add a HOST_LINKER variable for cross windows builds; r=dmajor
This setup seems to work well enough to enable me to link
HOST_SIMPLE_PROGRAMS with an AArch64-cross setup.  Necessary library
paths are passed to the linker via -LIBPATH and HOST_LDFLAGS rather than
letting MSVC fish them out of the environment.  The change to
HOST_SIMPLE_PROGRAMS to pass HOST_LDFLAGS was necessary for this to
work, in addition to the HOST_LINKER changes.
2018-08-30 10:28:15 -04:00
Sebastian Hengst
ceebee3842 Backed out 4 changesets (bug 1417646) for Webdriver missing geckodriver binary, at least on Linux x64 asan
Backed out changeset 1c7e3f8af2e3 (bug 1417646)
Backed out changeset 42ea09d91d7e (bug 1417646)
Backed out changeset 1a3c37471045 (bug 1417646)
Backed out changeset 7179a078b7b4 (bug 1417646)
2018-08-30 12:54:45 +03:00
Hiroyuki Ikezoe
84dbd47154 Bug 1417646 - Remove explicit ac_add_options --enable-geckodriver for linux32 build. r=me 2018-08-30 18:08:45 +09:00
Hiroyuki Ikezoe
fde587cfd6 Bug 1417646 - Create a symlink named dsymutil to llvm-dsymutil. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D4041
2018-08-23 13:07:36 +09:00
Chris Peterson
1f8394cea3 Bug 1483761 - Enable clang's -Wtautological-overlap-compare warning. r=glandium
-Wtautological-overlap-compare is an opt-in warning added in clang 3.5. It warns about overlapping comparisons that are always true or false, such as:

if (x > 4 || x < 10) {} // warning! always true
int b = x < 2 && x > 5; // warning! always false
return x > 4 || x < 10; // warning! always true

https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-overlap-compare

There are currently no -Wtautological-overlap-compare warnings in mozilla-central.

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

--HG--
extra : rebase_source : e6aa211a338633e5fb7507b3a8f341709d72d6c9
2018-08-14 22:39:03 -07:00
Chris Peterson
8cddf640b9 Bug 1483761 - Enable clang's -Wshadow-field-in-constructor warnings. r=glandium
This opt-in warning catches bugs where a constructor modifies a constructor parameter that shadows member variable name. The code probably intended to change the member variable value, not the paramter. There are currently no -Wshadow-field-in-constructor warnings in mozilla-central.

https://clang.llvm.org/docs/DiagnosticsReference.html#wshadow-field-in-constructor-modified

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

--HG--
extra : rebase_source : 604ff90e036d536955db41351ee9ee97e8424d92
extra : intermediate-source : 712f538afc160f4efae2383130727edbd1dd70f6
extra : source : 300fff9a58515c7cac0647afc9ccc0e69bc8c5cb
2018-08-20 10:10:57 -07:00
Chris Peterson
874e8bf033 Bug 1483761 - Enable clang's -Wfloat-(overflow|zero)-conversion warnings. r=glandium
-Wfloat-overflow-conversion detects when a constant floating point value is converted to an integer type and will overflow the target type.

https://clang.llvm.org/docs/DiagnosticsReference.html#wfloat-overflow-conversion

-Wfloat-zero-conversion detects when a non-zero floating point value is converted to a zero integer value.

https://clang.llvm.org/docs/DiagnosticsReference.html#wfloat-zero-conversion

There are currently no -Wfloat-overlap-conversion warnings in mozilla-central. There is one -Wfloat-zero-conversion warning in a webrtc test. It doesn't block enabling this check because the webrtc tests are not compiled with warnings-as-errors.

media/webrtc/trunk/webrtc/modules/audio_coding/audio_network_adaptor/frame_length_controller_unittest.cc:255:54 [-Wfloat-zero-conversion] implicit conversion from 'const float' to 'int' changes non-zero value from 0.045000002 to 0

We can't enable all -Wfloat-conversion warnings (for any implicit conversion of a floating-point number into an integer) because there are currently over 1400 warnings. I spot checked a few of these -Wfloat-conversion warnings. I didn't find any obvious bugs, but there is some suspicious code, such as implicit conversions of floats to bools.

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

--HG--
extra : rebase_source : 589be9e593749c7000b1f89ca155e4f95a487f8f
2018-08-14 23:03:52 -07:00
Chris Peterson
863d823722 Bug 1483761 - Enable clang's -Wc++2a-compat warnings. r=glandium
Warn about C++ constructs whose meaning change in C++2a.

https://clang.llvm.org/docs/DiagnosticsReference.html#wc-2a-compat

So far the only -Wc++2a-compat check that I know of is for valid pre-C++2a code that inadvertently parses as C++2a's new <=> "spaceship" comparison operator. `f<&A::operator<=>();` is an example of a warning reported for a real project on GitHub. That code can be rewritten as `f< &operator<= >();`.

There are currently no -Wc++2a-compat warnings in mozilla-central.

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

--HG--
extra : rebase_source : 4ec8147ad3fe2d1ef7c543d100c660a000385786
2018-08-15 10:02:07 -07:00
Chris Manchester
b8b943575b Bug 1481604 - Require nightly Cargo in addition to a particular rustc when building with tup. r=mshal
Our version check is removed as well, as the current required rustc version for
Firefox includes all features required to build with tup.

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

--HG--
extra : moz-landing-system : lando
2018-08-22 20:39:33 +00:00
svoisen
d9fce4a9d0 Bug 1466722 - Remove remaining references to nsCSSRuleProcessor since it has been removed. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D3928

--HG--
extra : moz-landing-system : lando
2018-08-22 01:29:39 +00:00
Mike Hommey
89dfab93fc Bug 1485210 - Add --sym-offsets=yes to valgrind command line. r=njn
When valgrind prints out backtraces, it prints raw addresses and symbol
names, but that doesn't help find the exact code that caused the errors,
because we don't know where the libraries are loaded.

With --sym-offsets=yes, it adds the offset from the symbol, which allows
to find the relevant code in the binary.
2018-08-22 13:44:38 +09:00
Andreea Pavel
c8dfc19d97 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-08-22 06:38:49 +03:00
Andreea Pavel
883da574e8 Merge mozilla-inbound to mozilla-central. a=merge 2018-08-22 06:35:14 +03:00
Mike Hommey
9c245b8d05 Bug 1484888 - Apply upstream patch that fixes a clang crash with stack overflow on PGO + LTO on Linux. r=froydnj
For some reason, clang 6 crashes with a stack overflow on PGO + LTO on
Linux 64 bits. Clang 7 doesn't, but has other problems.

After some bisecting, I found the following:
- r322684 is the first revision that is broken on the release_60 branch.
- that revision is a cherry pick of r322313 from trunk, which is
  similarly broken.
- trunk was fixed by r322325, which, funnily enough, predates when
  r322313 was cherry-picked.

While the change from r322325 is relatively large, mixing multiple
different changes in a single commit, there also haven't been
significant changes to the same file on trunk since (one macro name
change, one documentation change, and a change related to debug info),
which would tend to indicate the change is not going to break anything,
or at least not more than upgrading to clang 7 would.

The exact part that fixes the issue could probably be found in this
large commit, but I didn't feel like digging into it further considering
the above.
2018-08-22 09:52:17 +09:00
Boris Chiou
d56d102ae0 Bug 1485197 - Bump cbindgen to 0.6.2. r=heycam
In order to support operator==() for tagged enum, we have to bump the version to
0.6.2.

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

--HG--
extra : moz-landing-system : lando
2018-08-21 23:40:51 +00:00
Jan Beich
e459b11dc1 Bug 1484535 - Allow C++ files to check MOZ_SYSTEM_ICU. r=froydnj 2018-08-21 16:02:00 +03:00
David Major
e57877cd63 Bug 1483835: Default to clang-cl and lld-link in local Windows builds. r=glandium 2018-08-21 11:30:16 -04:00
Nathan Froyd
93ba371b66 Bug 1480558 - part 4 - add icudata support for aarch64 windows; r=mshal
yasm doesn't support aarch64, and trying to use GNU as with an MSVC
build seems like sadness waiting to happen.  Instead, we'll generate our
own assembly file that armasm64 will accept.
2018-08-21 11:00:34 -04:00
Nathan Froyd
ad9e5941dc Bug 1480558 - part 1 - set AS appropriately on aarch64 windows; r=mshal 2018-08-21 11:00:35 -04:00
Margareta Eliza Balazs
751b15f741 Backed out changeset 1b533762e9cb (bug 1483835) for causing build bustage in /python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py on a CLOSED TREE 2018-08-21 17:03:40 +03:00
David Major
e14b59ea94 Bug 1483835: Default to clang-cl and lld-link in local Windows builds. r=glandium
--HG--
extra : rebase_source : 4abacd94c31ca33d8388f5e0da22010320c561a8
2018-08-21 09:34:33 -04:00
Mike Hommey
6df1b75554 Fix Android bustage from bug 1484872. r=me on a CLOSED TREE 2018-08-21 09:14:28 +09:00
Mike Hommey
d1714fc61d Bug 1484872 - Move LTO flags to python configure. r=froydnj 2018-08-21 08:40:26 +09:00
Mike Hommey
1b5bd092ec Bug 1484872 - Don't look for llvm-symbolizer for LTO builds. r=froydnj
Similar to bug 1478923.
2018-08-21 08:40:10 +09:00
Mike Hommey
7b448e6258 Bug 1484872 - Remove --enable-llvm-hacks. r=froydnj
It calls for cargo-culting its use when using clang, when it's specific
to skipping one linker flags for sanitizers.
2018-08-21 08:40:00 +09:00
Mike Hommey
6f1f972c02 Bug 1484872 - Remove MOZ_CFLAGS_NSS. r=froydnj
It hasn't been used since bug 1295937.
2018-08-21 08:39:49 +09:00
Mike Hommey
4debc3c875 Bug 1341222 - Avoid m4 breaking the sed expressions that set NSPR_INCLUDE_DIR and NSPR_LIB_DIR. r=froydnj 2018-08-21 07:25:00 +09:00
Masatoshi Kimura
20bf6de031 Bug 1484190 - Unblock MSVC 2017 15.8. r=dmajor
--HG--
extra : rebase_source : 9d43a9cec951deabcb224efcc6bea2be0e772394
extra : source : 36e41ebefc3512f840f646be3fc14f0f3b5b538d
2018-08-17 20:41:49 +09:00
Csoregi Natalia
0b0d5bd64a Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-08-21 01:04:16 +03:00
Mike Hommey
dc4c9b7cd4 Bug 1483937 - Still use GCC on MOZ_PGO builds that don't have FORCE_GCC. r=froydnj
Yay for inconsistencies in jobs between beta and central.
2018-08-21 06:50:30 +09:00
Emilio Cobos Álvarez
bb604b0dee Bug 1484473 - Add a cbindgen version check. r=firefox-build-system-reviewers,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D3718

--HG--
extra : moz-landing-system : lando
2018-08-20 15:20:42 +00:00
Mike Hommey
9fb5fdb841 Bug 1484100 - No-op change to clang-win64.json to retrigger a clang-cl build from a decision task to make CoT happy again. r=me 2018-08-20 06:47:26 +09:00
Bob Clary
129bad1f48 Bug 1482887 - Remote automation should kill already running instances rather than dying, r=gbrown. 2018-08-18 10:47:12 -07:00
Bob Clary
fbd6d3dfca Bug 1482878 - Use screencap to capture on physical android device screenshots, r=gbrown. 2018-08-18 10:47:12 -07:00
Bob Clary
be2ccf78f3 Bug 1482874 - Handle Android 8.1 change for anr stack directory to contain individual files for traces, r=gbrown. 2018-08-18 10:47:12 -07:00
Dan Mosedale
a39cf8c127 Bug 1484282 - Fix typo in mach bootstrap command recommendation, r=gps
MozReview-Commit-ID: 4qbrbuCfSVr
2018-08-17 19:35:02 -07:00
Daniel Varga
36e523e699 Merge mozilla-central to mozilla-inbound 2018-08-18 01:05:36 +03:00
Gabriele Svelto
b48b3e4db0 Bug 1473821 - The MOZ_PGO_INSTRUMENTED environment variable is not used anymore so remove all remaining mentions of it r=gps
Differential Revision: https://phabricator.services.mozilla.com/D3219

--HG--
extra : moz-landing-system : lando
2018-08-17 16:40:10 +00:00
Mike Hommey
f50e1c662a Bug 1483779 - Enable PGO on clang-cl 32-bits builds. r=dmajor
--HG--
extra : source : 5fcbe08fb321a5076f56c380b554c63068efbb00
2018-08-16 16:44:36 +09:00
Mike Hommey
41475291f5 Bug 1479800 - Build 32-bits compiler-rt for 64-bits clang-cl. r=dmajor
--HG--
extra : source : dccd5299c5ad9e4258eb7b08201f2f39164a2a54
2018-08-16 10:31:03 +09:00
arthur.iakab
07aa46fd13 Backed out 2 changesets (bug 1479800, bug 1483779)for frequent cgx and arm64 failures
Backed out changeset 5fcbe08fb321 (bug 1483779)
Backed out changeset dccd5299c5ad (bug 1479800)
2018-08-17 09:50:30 +03:00
Mike Hommey
152366b300 Bug 1483779 - Enable PGO on clang-cl 32-bits builds. r=dmajor 2018-08-17 10:19:52 +09:00
Mike Hommey
403fedb91f Bug 1479800 - Build 32-bits compiler-rt for 64-bits clang-cl. r=dmajor 2018-08-17 10:19:51 +09:00
Emilio Cobos Álvarez
583727a597 Bug 1478813 - Auto-generate ServoStyleConsts. r=xidorn,ted
Differential Revision: https://phabricator.services.mozilla.com/D2447
2018-08-17 19:48:23 +02:00
Cosmin Sabou
a1dcf34f94 Backed out changeset 4b9dcf8f2e6c (bug 1478813) for build bustages because cbindgen is missing. CLOSED TREE 2018-08-17 20:24:06 +03:00
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