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

151 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey ef3ad686ee Bug 1512504 - Remove support for MSVC. r=froydnj
Consequently, this removes:
- MOZ_LIBPRIO, which is now always enabled.
- non_msvc_compiler, which is now always true.
- The cl.py wrapper, since it's not used anymore.
- CL_INCLUDES_PREFIX, which was only used for the cl.py wrapper.
- NONASCII, which was only there to ensure CL_INCLUDES_PREFIX still
  worked in non-ASCII cases.

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

Depends on D19614

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

--HG--
extra : moz-landing-system : lando
2019-02-14 21:45:27 +00:00
Razvan Maries f86459d5dc Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-02-05 18:59:13 +02:00
Nathan Froyd 1f2d8ad919 Bug 1525111 - don't check for watchman on unsupported hosts; r=dmajor
This avoids issues with building on aarch64 windows, for instance.
2019-02-04 16:20:48 -05:00
Mike Hommey 2c474c9560 Bug 1524079 - Try both host and target clang to find llvm-objdump. r=froydnj
When doing android cross builds, the target compiler might be clang,
but it might be the one from the NDK, which doesn't come with all the
tools. So `clang --print-prog-name=llvm-objdump` might not return
anything, when the system has a suffixed llvm-objdump, e.g.
llvm-objdump-6.0.

So it's better to check with the host compiler, which is likely clang
too. We still check with the target compiler, in the odd case where the
host and target compiler would be of different kinds (Windows
cross-builds).

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

--HG--
extra : moz-landing-system : lando
2019-02-04 18:10:10 +00:00
Mike Hommey 8d3c4ddd9c Bug 1516228 - Use llvm-objdump instead of objdump in old-configure. r=mshal
Depends on D17462

Differential Revision: https://phabricator.services.mozilla.com/D17463
2019-01-29 08:37:39 +09:00
Mike Hommey 1ddf551764 Bug 1516228 - Add a configure check for llvm-objdump. r=mshal
Differential Revision: https://phabricator.services.mozilla.com/D17462
2019-01-29 08:37:31 +09:00
Cosmin Sabou ee75c9f2c6 Backed out 6 changesets (bug 1516228) for causing bug 1523056. a=backout
Backed out changeset 24ebb52d21fa (bug 1516228)
Backed out changeset 53d93ee3ad84 (bug 1516228)
Backed out changeset 4f53ede33517 (bug 1516228)
Backed out changeset 2e6bec87c9f3 (bug 1516228)
Backed out changeset 09ee05a4cc30 (bug 1516228)
Backed out changeset 8456feb780f7 (bug 1516228)
2019-01-26 21:12:33 +02:00
Mike Hommey fa58fc9bd9 Bug 1516228 - Use llvm-objdump instead of objdump in old-configure. r=firefox-build-system-reviewers,mshal
Depends on D17462

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

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

--HG--
extra : moz-landing-system : lando
2019-01-24 15:33:47 +00:00
Mike Hommey b5e5928355 Bug 1520340 - Move subconfigure invocation from old-configure to python configure. r=froydnj
This happens to remove the last use of perl from configure.

Depends on D16621

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

--HG--
extra : moz-landing-system : lando
2019-01-16 23:12:20 +00:00
Mike Hommey 482de8b58a Bug 1519308 - Try toolchain-prefixed pkg-config. r=froydnj
When doing cross-compiles for Desktop, system pkg-config is going to be
looking for .pc files for the host, but systems setup for cross-compiles
come with a toolchain-prefixed pkg-config, which we should be looking
for.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 23:56:19 +00:00
Dorel Luca 075a44c23b Backed out changeset 24243f13c895 (bug 1519308) for build bustage in mozbuild/mozbuild/test/configure/test_checks_configure.py. CLOSED TREE 2019-01-12 01:28:30 +02:00
Mike Hommey fe50d1eef4 Bug 1519308 - Try toolchain-prefixed pkg-config. r=froydnj
When doing cross-compiles for Desktop, system pkg-config is going to be
looking for .pc files for the host, but systems setup for cross-compiles
come with a toolchain-prefixed pkg-config, which we should be looking
for.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 15:54:51 +00:00
Mike Hommey 367db61b4a Bug 1519319 - Move bindgen.configure include to js/moz.configure. r=froydnj
Bindgen is only used when building js or toolkit, so we only need to
include the configure part in js/moz.configure, which is included in
both cases.

Depends on D16293

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

--HG--
extra : moz-landing-system : lando
2019-01-11 22:17:54 +00:00
Mike Hommey 65e1e6bb41 Bug 1519040 - Remove some unused old-configure assignments. r=mshal
Differential Revision: https://phabricator.services.mozilla.com/D16159

--HG--
extra : moz-landing-system : lando
2019-01-10 22:02:04 +00:00
Mike Hommey 8153f29959 Bug 1519012 - Move most PGO-related configure flags back to toolchain.configure. r=froydnj
LLVM_PROFDATA needs the toolchain search dir, per bug 1515579.

Also, most of the options actually don't do anything useful with
artifact builds. In fact, the only one that artifact builds would need
is MOZ_PGO. So we move to options back to toolchain.configure, somewhere
late enough ; except MOZ_PGO, that we move to the top-level
moz.configure (because we don't need a separate file for one option).

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

--HG--
extra : moz-landing-system : lando
2019-01-10 14:25:12 +00:00
Chris Manchester b101c5a8f3 Bug 1517532 - Extend artifact builds to find and download artifacts from pgo builds when MOZ_PGO is set. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D15988

--HG--
extra : moz-landing-system : lando
2019-01-08 23:03:27 +00:00
Mike Hommey 7e51528881 Bug 1502457 - Move MOZILLA_OFFICIAL to init.configure. r=nalexander
Depends on D11985

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

--HG--
extra : source : 2bc4c0bfa299a08006f17afda472705a52d7ec6d
2018-11-16 01:16:31 +00:00
shindli 4756350be2 Backed out 6 changesets (bug 1502457) for causing Mn mozprocess automation failures in '/Users/cltbld/tasks/task_1542517470/build/venv/bin/python
Backed out changeset 9174dadf38b0 (bug 1502457)
Backed out changeset 2bc4c0bfa299 (bug 1502457)
Backed out changeset 1442604ea266 (bug 1502457)
Backed out changeset 1cf7694c8aa2 (bug 1502457)
Backed out changeset a73cfbabdd47 (bug 1502457)
Backed out changeset 2c2b09264a82 (bug 1502457)
2018-11-18 10:24:11 +02:00
Mike Hommey a9d88a2903 Bug 1502457 - Move MOZILLA_OFFICIAL to init.configure. r=nalexander
Depends on D11985

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

--HG--
extra : moz-landing-system : lando
2018-11-16 01:16:31 +00:00
Narcis Beleuzu df50f67e20 Backed out 6 changesets (bug 1502457) for build bustages. CLOSED TREE
Backed out changeset febdb867785a (bug 1502457)
Backed out changeset 7ea52c602445 (bug 1502457)
Backed out changeset 73bb6a74cad0 (bug 1502457)
Backed out changeset b172bda6e983 (bug 1502457)
Backed out changeset 0e283ddc6c3b (bug 1502457)
Backed out changeset 638fa0251123 (bug 1502457)
2018-11-16 02:13:57 +02:00
Mike Hommey 92923efcf1 Bug 1502457 - Move MOZILLA_OFFICIAL to init.configure. r=nalexander
Depends on D11985

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

--HG--
extra : moz-landing-system : lando
2018-11-15 23:21:48 +00:00
Tooru Fujisawa cd326f0e81 Bug 1492716 - Part 2: Add formatting rule to help text for --{enable,disable,with,without}. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D8834
2018-10-16 20:28:12 +09: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
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
Chris Manchester 55dced2da0 Bug 1497359 - Detect and reject re-use of objdirs between Make and Tup in configure. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D8289

--HG--
extra : moz-landing-system : lando
2018-10-11 19:16:49 +00:00
Mike Hommey 7264558d5d Bug 1496198 - Simplify --enable-rust-debug handling r=froydnj
making its value propagate properly to js/src subconfigure.

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

--HG--
extra : moz-landing-system : lando
2018-10-04 13:39:24 +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
Robert Bartlensky af9de513f7 Bug 1479503: Check infer in ./mach static-analysis autotest. r=nalexander
Adds infer to ./mach static-analysis autotest.

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

--HG--
rename : taskcluster/docker/infer-build/Dockerfile => taskcluster/docker/static-analysis-build/Dockerfile
extra : moz-landing-system : lando
2018-09-13 20:58:03 +00:00
Csoregi Natalia 7ed619163e Backed out changeset 081d8311be59 (bug 1479503) for build bustage - java not found. CLOSED TREE
--HG--
rename : taskcluster/docker/static-analysis-build/Dockerfile => taskcluster/docker/infer-build/Dockerfile
2018-09-12 13:16:06 +03:00
Robert Bartlensky b4ebd25931 Bug 1479503: Check infer in ./mach static-analysis autotest. r=nalexander
Adds infer to ./mach static-analysis autotest.

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

--HG--
rename : taskcluster/docker/infer-build/Dockerfile => taskcluster/docker/static-analysis-build/Dockerfile
extra : moz-landing-system : lando
2018-09-12 09:34:30 +00:00
Ted Mielczarek d59bc31677 Bug 1399877 - globally define MOZ_DLL_PREFIX/MOZ_DLL_SUFFIX; r=gps
Several source files use DLL_PREFIX/DLL_SUFFIX defines, and they all set
them in moz.build using `DEFINES`.  This is problematic for the WSL
build because the quoting gets lost somewhere between bash and cl.exe.
We cannot simply set them globally in moz.configure because their
stringified definitions would conflict with the `set_config` of
DLL_PREFIX/DLL_SUFFIX.  Therefore, we globally define
MOZ_DLL_PREFIX/MOZ_DLL_SUFFIX and change all define-related uses of
DLL_PREFIX/DLL_SUFFIX to use their MOZ-equivalents instead.
2018-09-11 13:31:20 -04:00
Chris Manchester 87891e399b Bug 1481340 - Don't generate combinations of make and tup backends in configure. r=gps,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D2911

--HG--
extra : moz-landing-system : lando
2018-08-10 22:30:35 +00:00
Chris Manchester 5ae0e08589 Bug 1480771 - Take CLOBBER into account when deciding whether to re-run configure. r=gps,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D2802

--HG--
extra : moz-landing-system : lando
2018-08-06 21:38:43 +00:00
Nathan Froyd 3dc6481a30 Bug 1444141 - part 4 - make the JS engine depend on Rust; r=chmanchester,glandium,jorendorff
The Rust dependency in Firefox has been limited to Firefox builds by
virtue of having the Rust check in a Firefox-specific location,
toolkit/moz.configure.  For JS to start depending on Rust, we need to
move that check to a location where a standalone JS engine build will
pick up the Rust check.
2018-08-02 11:00:21 -05: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
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
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
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
Sofia Carillo 61c1056c0e Bug 1464235 - option to upload tup db r=mshal
MozReview-Commit-ID: JkzWTu0g41X

--HG--
extra : rebase_source : 1bd8c2dc9f99879ca05dade9c9471cec167f319a
2018-06-06 14:04:47 -07:00
Mike Shal d4e15d3100 Bug 1462493 - Add a check to warn about sccache usage with tup; r=chmanchester
Unfortunately we don't support sccache in the tup backend yet. When we
do, this check can be removed.

MozReview-Commit-ID: GonsvGv3g5k

--HG--
extra : rebase_source : 8c2edde9a6374f851b7e411b66d46bef4dc8f288
2018-05-24 15:10:17 -04:00
Mike Shal 54edb01d0c Bug 1377524 - Add a version check for tup; r=chmanchester
We have two checks here - first, to make sure that tup is a recent
enough version, and second to make sure that we're using the ldpreload
dependency checker. The FUSE dependency checker requires user namespaces
to track dependencies when a subprocess uses full paths, and not all
Linux distributions have user namespaces enabled by default.
Additionally, the FUSE filesystem adds significant overhead for I/O
intensive processes (such as linking libxul), which results in a bad
user experience.

MozReview-Commit-ID: H8l96dV7Qjx

--HG--
extra : rebase_source : fb6fcbc542b5757bb6c982f9e5dd51cd0f268f47
2018-05-24 14:54:04 -04:00
Kris Maglione f8506d46d0 Bug 1460600: Remove unsupported --enable-system-hunspell flag. r=glandium
Our bundled Hunspell now significantly differs from upstream Hunspell. Most
importantly, it supports loading dictionaries from jar: URIs, which is now a
requirement for loading bundled and extension dictionaries. This means that
system Hunspell libraries are no longer compatible with our spell checker
code. We should remove the option to use them so that users don't fall into
the trap of trying to use them.

MozReview-Commit-ID: 2ihJe6YOnGf

--HG--
extra : rebase_source : ceb091b9475a2b101156405a02a60015fc36da17
2018-05-10 10:36:53 -07:00
Chris Manchester 636b4fc4c0 Bug 1461836 - Write out complete configure dependencies from configure for consumption by make and non-make backends. r=mshal
MozReview-Commit-ID: 792seCZ2rs1

--HG--
extra : rebase_source : e6450cd2947e2fd55085a2af469535421bc07bfb
2018-05-21 14:01:50 -07:00
Nathan Froyd c21c323370 Bug 1460373 - move --enable-valgrind to moz.configure; r=ted.mielczarek 2018-05-09 17:26:31 -04:00
Nick Alexander 9d65a9cea8 Bug 1435424 - Remove doxygen support from the build system. r=gps
This is ancient and the team that used it (gfx) is no longer using it.

MozReview-Commit-ID: HrDgmAU9QeW

--HG--
extra : rebase_source : c4a64965c4ae1a50888893e881a6e8a9688a58b6
2018-02-02 14:24:18 -08:00
Nathan Froyd de9853b2ff Bug 1425035 - move --enable-ui-locale to moz.configure; r=gps
We need MOZ_UI_LOCALE even when building the JS shell so
config/config.mk variable assignments don't run into issues.  But it
doesn't make any sense to configure a UI locale for the JS shell.  So
make --enable-ui-locale a normal `option`, but give it a `default`,
which is the value shell-only builds will always see.

--HG--
extra : amend_source : 047759dd6ec446d9d6f8f5992ed9cf6628ce859e
2017-12-18 14:21:26 -08:00
Nathan Froyd f51359bd19 Bug 1325632 - part 5 - ensure that we compile with -fno-sized-deallocation when possible; r=chmanchester
We currently turn off the C++14 sized-deallocation facility on MSVC, and
we'd like to ensure we do the same thing for clang and gcc.  To do so,
we add new functionality to moz.configure for checking and adding
compilation flags, similar to the facility for checking and adding
warning flags.  The newly added facility is then used to add
-fno-sized-deallocation to the compilation flags, when the option is
supported.

Once we do this, we can't define the sized deallocation functions in
mozalloc.h; the compiler will complain that we are using
-fno-sized-deallocation, yet defining these special functions that we'll
never use.  These functions were added for MinGW, where we needed to
compile with C++14 ahead of other platforms to be compatible with MSVC
headers.  But they're no longer necessary, though they would be if we
removed -fno-sized-deallocation; the compiler will complain if we do
that and we'll add them back at that point.
2017-11-15 14:53:16 -04:00
Mike Hommey afcd9e5c5b Bug 1415686 - Ensure both configure and old-configure agree on what MOZ_DEBUG means. r=chmanchester
--HG--
extra : rebase_source : e85bb916016ed767e2c1e6960b32d0224c6f092e
2017-11-09 07:41:21 +09:00
Chris Manchester 7e47dd1ebb Bug 1403346 - Define flags loading the clang plugin in configure rather than the make backend. r=glandium
MozReview-Commit-ID: EubsjJl1LBS
2017-10-25 15:12:10 -07:00