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

780 Коммитов

Автор SHA1 Сообщение Дата
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
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
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
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
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
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
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
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 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
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
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
Dan Mosedale f1eec975a7 Bug 1482676 - configure should prefer .mozbuild copy of node
MozReview-Commit-ID: 91F4Z8GljkV
2018-08-13 09:24:56 -07: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
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
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
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
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 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
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
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
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
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
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
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
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
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
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
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
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