Commit Graph

849 Commits

Author SHA1 Message Date
Emilio Cobos Álvarez
b85791110f Bug 1503401 - Update cbindgen due to breaking change. r=boris
https://github.com/eqrion/cbindgen/pull/233 changed the way one of the options
we use work.

I think the new behavior is better, but we should do this sooner rather than
later, and fix broken builds.

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

--HG--
extra : moz-landing-system : lando
2018-10-30 21:25:17 +00:00
Boris Chiou
0612c5aa88 Bug 1496619 - Part 5: Bump cbindgen to 0.6.6 r=emilio
So we can generate generic enum by cbindgen (for TimingFunction).

Depends on D9845

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

--HG--
extra : moz-landing-system : lando
2018-10-26 18:03:33 +00:00
David Major
18aa17e2f6 Bug 1502095 - Set the right target when building aarch64-windows with clang-cl r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D9804

--HG--
extra : moz-landing-system : lando
2018-10-25 16:52:44 +00:00
Margareta Eliza Balazs
c56977420d Merge inbound to mozilla-central. a=merge 2018-10-18 13:20:43 +03:00
Nick Alexander
d56eb2a314 Bug 1489443 - Set GCC_USE_GNU_LD based on linker kind. r=froydnj
The desired outcome of this change is that we'll set
-Wl,--version-script based on linker kind and not on the output of
$LINKER -v.

This is a cheap way to address a simple problem that has a complicated
ideal solution. The underlying issue is that in some situations, when
targeting Android, a macOS system ld is interrogated to determine if
a cross-compiling linker "is GNU ld" and a particular linker feature
is set in that situation. The macOS system ld doesn't pass the "is
GNU ld" test, and the linker feature isn't set; that causes link
failures, even though the actual linker has nothing to do with the
system ld.

The ideal solution is to test for linker capabilities dynamically. We
do a lot of that in old-configure.in, and we don't do any of that in
toolchain.configure. Rather than start testing in
toolchain.configure, we hard-code: a cheap solution to the immediate
problem.

MinGW suffers somewhat from the opposite problem: the linker "is GNU
ld" (compatible), but the linker checks don't happen at all. We hard-code
for MinGW based on the C compiler instead.

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

--HG--
extra : moz-landing-system : lando
2018-10-17 19:46:03 +00:00
Chris Peterson
2c5197071f Bug 1498958 - Enable clang warnings: -Wtautological-unsigned-zero-compare, -Wtautological-unsigned-enum-zero-compare. r=glandium
-Wtautological-unsigned-zero-compare: result of comparison of unsigned expression is always true/false

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

-Wtautological-unsigned-enum-zero-compare: result of comparison of unsigned enum expression is always true/false

https://clang.llvm.org/docs/DiagnosticsReference.html#wtautological-unsigned-enum-zero-compare

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

--HG--
extra : moz-landing-system : lando
2018-10-16 05:49:15 +00:00
Tom Ritter
15dd23bc5d Bug 1475562 Produce pdbs for the mingw-clang build job r=ted
This patch also changes how pdbs for the ASAN job are copied:
we relax restrictions so that pdbs if present) are always copied out
and add an environment variable MOZ_COPY_PDBS to indicate when we
want to produce pdbs for copying.
2018-10-17 09:38:52 -05:00
Benjamin Bouvier
db0cd81fb4 Bug 1495669: Share bindgen flags globally; r=emilio, r=froydnj
--HG--
extra : rebase_source : 83bfa2a61e523048d0e618ed5920c4aa143a2582
extra : histedit_source : cfc8de67959c5a2dffc5fea3ee5be172bfc370e1%2C53a6b4c0de444b4a7ee04cdd015568069bca893a
2018-10-09 15:01:52 +02:00
Cosmin Sabou
9b6a537ec7 Backed out changeset 91300d29898b (bug 1489443) for MinGW build bustages. CLOSED TREE 2018-10-13 02:17:15 +03:00
Nick Alexander
3c83541616 Bug 1489443 - Set GCC_USE_GNU_LD based on linker kind. r=froydnj
The desired outcome of this change is that we'll set
`-Wl,--version-script` based on linker kind and not on the output of
`$LINKER -v`.

This is a cheap way to address a simple problem that has a complicated
ideal solution.  The underlying issue is that in some situations, when
targeting Android, a macOS system `ld` is interrogated to determine if
a cross-compiling linker "is GNU ld" and a particular linker feature
is set in that situation.  The macOS system `ld` doesn't pass the "is
GNU ld" test, and the linker feature isn't set; that causes link
failures, even though the actual linker has nothing to do with the
system `ld`.

The ideal solution is to test for linker capabilities dynamically.  We
do a lot of that in old-configure.in, and we don't do any of that in
toolchain.configure.  Rather than start testing in
toolchain.configure, we hard-code: a cheap solution to the immediate
problem.

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

--HG--
extra : moz-landing-system : lando
2018-10-12 22:38:44 +00:00
Mike Hommey
148c9de331 Bug 1498450 - Avoid the footgun from @depends-function comparison r=froydnj
While we do have some uses of @depends-function comparison in some
templaces, related to host/target, we ought to be using `is` comparisons
rather than `==` anyways, so we switch those, and prevent other kinds of
comparisons being used at all.

This unveils the one noted in
https://phabricator.services.mozilla.com/D7713?id=21357#inline-30414
(and surprisingly only that one), that we remove entirely since it was
doing nothing in practice. Bug 1492305 will have to add it back in a
proper form.

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

--HG--
extra : moz-landing-system : lando
2018-10-12 13:44:08 +00:00
Kris Maglione
f07a2d0fb0 Bug 1497976: Pass close_fds when running commands for configure. r=glandium
Running rustc with an open fd 4 sometimes causes it to fail with an obscure
error when it tries to connect to a job server on that fd. Closing the fd
solves the problem.

close_fds does what we need, and is the default value in Python 3, but not
in Python 2.

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

--HG--
extra : rebase_source : d94447019e3e698d7cf2c293b0a9b99769cf316a
2018-10-09 16:15:13 -07:00
Emilio Cobos Álvarez
9f4495526d Bug 1496486 - Bump cbindgen. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D7756
2018-10-09 19:07:46 +02:00
Narcis Beleuzu
e7a8994c37 Backed out 5 changesets (bug 1496486) for valgrind bustages. CLOSED TREE
Backed out changeset d2f1e35ee4b7 (bug 1496486)
Backed out changeset 7f843f4ee162 (bug 1496486)
Backed out changeset 2f629a60f12c (bug 1496486)
Backed out changeset 4dd15fa31474 (bug 1496486)
Backed out changeset e8d8e2f3f00b (bug 1496486)
2018-10-09 19:44:51 +03:00
Emilio Cobos Álvarez
3168cd9c74 Bug 1496486 - Bump cbindgen. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D7756
2018-10-09 17:33:28 +02:00
Brindusan Cristian
3b4ca07db8 Backed out 5 changesets (bug 1496486) for build bustages on gfxUserFontSet.h. CLOSED TREE
Backed out changeset 6b740afea403 (bug 1496486)
Backed out changeset 5cf44e254ac3 (bug 1496486)
Backed out changeset 8e465202c355 (bug 1496486)
Backed out changeset 86382b2249f6 (bug 1496486)
Backed out changeset ab92ed3e0a23 (bug 1496486)
2018-10-09 16:58:38 +03:00
Emilio Cobos Álvarez
791ac47786 Bug 1496486 - Bump cbindgen. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D7756
2018-10-09 15:33:06 +02:00
Mike Hommey
0580b59e77 Bug 1496327 - Remove --without-x r=froydnj
Bug 1282866 removed the only configuration where it did something.
Since then, using it only leads to a configure error.

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

--HG--
extra : moz-landing-system : lando
2018-10-04 13:54:18 +00: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
Narcis Beleuzu
84bc818ed3 Backed out changeset 11df51f97f13 (bug 1495293) for artifact build bustage 2018-10-02 05:36:29 +03:00
Kartikaya Gupta
4e68a766db Bug 1495293 - Make enable-rust-simd a JS option so JS crates get built with the RUSTC_BOOTSTRAP=1 flag in automation. r=froydnj 2018-10-01 21:15:27 -04:00
Nathan Froyd
d8685e6b76 Bug 1491419 - move --enable-reflow-perf to moz.configure; r=nalexander 2018-10-01 14:51:27 -04:00
Nathan Froyd
b0effdaae3 Bug 1491419 - move --enable-tasktracer to moz.configure; r=nalexander 2018-10-01 14:51:27 -04:00
Nathan Froyd
cf4c48d851 Bug 1491419 - move --enable-hardware-aec-ns to moz.configure; r=nalexander 2018-10-01 14:51:27 -04:00
Nathan Froyd
2048436656 Bug 1491419 - move --enable-raw to moz.configure; r=nalexander 2018-10-01 14:51:27 -04:00
Nathan Froyd
b318e37e44 Bug 1491419 - move MOZ_{SCTP,SRTP} to moz.configure; r=nalexander
These settings are just dependent on WebRTC being enabled.
2018-10-01 14:51:27 -04:00
Nathan Froyd
5ab704b3a9 Bug 1491419 - remove --enable-gamepad from old_configure_options; r=nalexander
Apparently we made gamepad support mandatory and ditched the option.
2018-10-01 14:51:27 -04:00
Nathan Froyd
4ab0b4cf0b Bug 1491419 - move --enable-verify-mar to moz.configure; r=nalexander 2018-10-01 14:51:28 -04:00
Nathan Froyd
dc14f73882 Bug 1491419 - move --enable-bundled-fonts to moz.configure; r=nalexander 2018-10-01 14:51:28 -04:00
Nathan Froyd
a259110dc9 Bug 1491419 - move --enable-maintenance-service to moz.configure; r=nalexander 2018-10-01 14:51:28 -04:00
Ciure Andrei
a8953550a3 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-09-28 11:58:15 +03:00
Mike Shal
a4782418de Bug 1494833 - Bump tup version to v0.7.8; r=chmanchester
This incorporates some fixes for ccache, icecream, and a better display
output (decreasing count instead of an increasing count). It may also
let us experiment with incremental rust support, though I think that
feature still needs some more work.

MozReview-Commit-ID: 7zPGiL9Ob6N

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

--HG--
extra : moz-landing-system : lando
2018-09-28 02:33:53 +00:00
Chris Manchester
9b4e589152 Bug 1490147 - Require rustc 1.29. r=ted,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D6998

--HG--
extra : moz-landing-system : lando
2018-09-26 22:18:25 +00:00
Mark Banner
3043f2a053 Bug 1482435 - Separate out nodejs finding logic from configure and use it for ESLint. r=firefox-build-system-reviewers,gps
This extracts the current logic for finding nodejs into its own module in mozbuild. Configure and ESLint then use it.

For ESLint, this will change the first location it looks for nodejs to be the .mozbuild directory.

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

--HG--
extra : moz-landing-system : lando
2018-09-25 18:15:51 +00:00
Thomas P.
fde56b2dde Bug 1483780: enable sanitizer-less libfuzzer builds r=froydnj 2018-09-20 21:21:38 +00:00
Andreea Pavel
a6ba34f2ad Backed out 2 changesets (bug 1483780) for build bustages on a CLOSED TREE
Backed out changeset 2b0a42c589c5 (bug 1483780)
Backed out changeset 48d133cbafd3 (bug 1483780)
2018-09-21 05:43:03 +03:00
Thomas P.
c047fdb3fb Bug 1483780: enable sanitizer-less libfuzzer builds r=froydnj
--HG--
extra : histedit_source : b7caa42560c3d8e7ba1dbf61fcacfe0698790801
2018-09-20 21:21:38 +00:00
Thomas P.
dae33d978b Bug 1483780: enable sanitizer-less libfuzzer builds r=froydnj superreview=decoder
--HG--
extra : histedit_source : 6fd1a37c3fb5d8997be11f7846b2976fc7b8a647
2018-09-11 03:49:37 +00:00
Mike Hommey
e4d11fe477 Bug 1481338 - Disable -Werror for -Watomic-alignment r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D6347

--HG--
extra : moz-landing-system : lando
2018-09-20 02:05:24 +00:00
Benjamin Bouvier
2ab4b1419f Bug 1490948: Add support for extra bindgen flags when compiling Cranelift; r=froydnj
Some build flags are being passed by the build system: they're passed in a text
file called extra-bindgen-flags.in that's filled at configure time.

Other flags have to be inferred from the current target/host combination, in
Cranelift's build script directly. This is mostly cargo-culted from the
ServoBindings.toml file, and should probably be merged in the build system at
some point.

Some Windows-specific adjustments were needed to provide access to libclang for
bindgen support, by adding clang-cl to the plain Spidermonkey Windows builds.

--HG--
extra : rebase_source : 0bda40b1d1eb38c2657593f094c951013711d00a
extra : histedit_source : aad930a5f9099e299d385ae4de2deb81aed9b6d5
2018-09-25 15:31:22 +02:00
Nathan Froyd
90c91d64dc Bug 1491901 - move MK*SHLIB to moz.configure; r=ted.mielczarek
It's nicer to have all that logic in one place, and to be able to common
up the Unix-y flags setting.  The Makefile constructs in string values
is gross, but it's no worse than we had before.
2018-09-19 10:03:42 -04:00
Masatoshi Kimura
480bad1d12 Bug 1490654 - Drop support for MSVC 2017 Update 6. r=froydnj 2018-09-16 22:22:31 +09:00
Dorel Luca
7a91966c10 Merge mozilla-inbound to mozilla-central. a=merge 2018-09-15 12:46:59 +03:00
Mike Hommey
61e6bceefa Bug 1490549 - Fix some comments r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D5916

--HG--
extra : moz-landing-system : lando
2018-09-15 01:14:29 +00:00
Mike Hommey
410b4939d9 Bug 1490549 - Make configure choose clang by default on all platforms r=froydnj
Now that we ship builds using clang on all platforms, pick it during
configure. It is still possible to opt-in to building other compilers by
setting CC/CXX (or even only CC) to the desired compiler.

Depends on D5829

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

--HG--
extra : moz-landing-system : lando
2018-09-14 18:01:23 +00:00
Mike Hommey
1beed8c891 Bug 1490549 - Change how host compilers are found r=froydnj
Before this change, we'd derive a host compiler and handle things as if
HOST_CC/HOST_CXX had been passed. With this change, we change the list
of compilers that are tested with check_prog instead.

Depends on D5828

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

--HG--
extra : moz-landing-system : lando
2018-09-14 17:40:52 +00:00
shindli
0c0c6fddd8 Backed out changeset aae4f349fa58 (bug 1479503) per developer's request on IRC a=backout
--HG--
rename : taskcluster/docker/static-analysis-build/Dockerfile => taskcluster/docker/infer-build/Dockerfile
2018-09-14 16:35:23 +03:00