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

220 Коммитов

Автор SHA1 Сообщение Дата
Andreea Pavel 3dfe514f42 Backed out changeset 84184c894e33 (bug 1609881) for multiple failures e.g assertion failure StaticPrefList_layers.h on a CLOSED TREE 2020-02-12 21:05:21 +02:00
Thinker Li 8753b31c60 Bug 1609881 - Part 2: build the fork server for Linux & FreeBSD. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D61255

--HG--
extra : moz-landing-system : lando
2020-02-12 16:57:20 +00:00
Greg V 90233062e1 Bug 1607103 - Allow forkserver on FreeBSD r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D58729

--HG--
extra : moz-landing-system : lando
2020-01-16 11:26:45 +00:00
Thinker Li 7cfdf6a788 Bug 1470591 - Part 6: Create a fork server process. r=gsvelto
This patch make changes of Gecko infrastrutures to run a fork server
process.

 - ForkServerLauncher is a component, which creates a fork server
   process at XPCOM startup.

 - nsBrowserApp.cpp and related files have been chagned to start a
   fork server in a process.

 - Logging and nsTraceRefcnt were changed to make it work with the
   fork server.

Depends on D46883

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

--HG--
extra : moz-landing-system : lando
2019-12-05 00:02:40 +00:00
Bogdan Tara 3732e1f17c Backed out 6 changesets (bug 1470591) for test_punycodeURIs & test_nsIProcess* crashes CLOSED TREE
Backed out changeset 3ca19f8f388e (bug 1470591)
Backed out changeset f80db6e63169 (bug 1470591)
Backed out changeset cbac2d7dfe42 (bug 1470591)
Backed out changeset daad4d736ec0 (bug 1470591)
Backed out changeset ca1b804d404a (bug 1470591)
Backed out changeset a10772f780f7 (bug 1470591)
2019-12-04 00:53:14 +02:00
Thinker Li 035717ac2d Bug 1470591 - Part 6: Create a fork server process. r=gsvelto
This patch make changes of Gecko infrastrutures to run a fork server
process.

 - ForkServerLauncher is a component, which creates a fork server
   process at XPCOM startup.

 - nsBrowserApp.cpp and related files have been chagned to start a
   fork server in a process.

 - Logging and nsTraceRefcnt were changed to make it work with the
   fork server.

Depends on D46883

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

--HG--
extra : moz-landing-system : lando
2019-12-03 19:08:10 +00:00
Ricky Stewart d5eb7d0ea5 Bug 1594867 - Add moz.build/backend bits to specify files that should be built as a sandboxed wasm library r=firefox-build-system-reviewers,mshal
Add backend stuff to build sandboxed wasm libraries. (Don't actually update any moz.build files to consume this yet.)

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

--HG--
extra : moz-landing-system : lando
2019-11-27 20:11:59 +00:00
Narcis Beleuzu e54b007827 Backed out changeset ed90ca2fb5a8 (bug 1585370) for toolchain bustages. CLOSED TREE 2019-10-12 06:29:06 +03:00
Tom Ritter 02ce94ed09 Bug 1585370 - Make NSIS a required component for builds r=dmajor
This reverts Bug 1355584 which made it optional for MinGW. We now use
it in MinGW so let's make it required again.

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

--HG--
extra : moz-landing-system : lando
2019-10-12 02:51:45 +00:00
Makoto Kato d9a0f2a761 Bug 1580670 - Disable Visual Studio backend when building GeckoView on Windows. r=froydnj
It is unnecessary to generate backend file for Visual Studio when building
GeckoView on Windows hsot since it has already generated Android Studio backend.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 13:47:50 +00:00
Rob Lemley 1cb6343d9b Bug 1543220 - Enable building gtest xul for Thunderbird. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D45462

--HG--
extra : moz-landing-system : lando
2019-09-10 23:18:27 +00:00
Mike Hommey 1440a9cd78 Bug 1560340 - Only add confvars.sh as a dependency to config.status when it exists. r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D35447

--HG--
extra : moz-landing-system : lando
2019-06-20 18:43:25 +00:00
Geoff Brown 895b4a76e6 Bug 1543323 - On Android, only build gtest tests archive on x86_64 builds; r=glandium
We only plan to run Android gtest in continuous integration on x86_64.
Given the impact on build times, I think it best to limit the gtest archive
builds to the variants where we will use it.

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

--HG--
extra : moz-landing-system : lando
2019-04-12 00:17:45 +00:00
Geoff Brown 59465ef1a7 Bug 1532695 - Include target.gtest.tests.tar.gz in android builds; r=bc
Differential Revision: https://phabricator.services.mozilla.com/D26587

--HG--
extra : moz-landing-system : lando
2019-04-08 22:02:45 +00:00
Ciure Andrei 69999ad1dd Backed out changeset b1571c522183 (bug 1532695) for causing gtest/TestMozURL.cpp build busatges CLOSED TREE 2019-04-08 23:48:22 +03:00
Geoff Brown 535b871eab Bug 1532695 - Include target.gtest.tests.tar.gz in android builds; r=bc
Differential Revision: https://phabricator.services.mozilla.com/D26587

--HG--
extra : moz-landing-system : lando
2019-04-08 20:16:43 +00:00
Nick Alexander fbb2df205f Bug 1525968 - Make local development artifact builds on Android download full build symbols. r=froydnj
We produce two types of build symbol archives in automation:

- "crashreporter-symbols.zip" contains Breakpad-format .sym files
- "crashreporter-symbols-full.zip" contains Breakpad-format .sym files
  and compressed ELF debug symbol .dbg.gz files

Right now, `--enable-artifact-build-symbols` from Bug 1305502
downloads only "crashreporter-symbols.zip".

The Android Studio version of lldb, currently 7.0.0, doesn't support
Breakpad-format .sym files. It does support (uncompressed) ELF debug
symbols.  (Note that gdb isn't supported on Android and hasn't been for
some time.)

This makes ` --enable-artifact-build-symbols` download the full
symbols for Android builds that aren't in automation, to be useful for
debugging Android builds with lldb locally.

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

--HG--
extra : moz-landing-system : lando
2019-03-27 22:37:40 +00:00
Mike Hommey c7e738d69d Bug 1535501 - Allow to get full crashreporter symbols on artifact builds. r=mshal
Differential Revision: https://phabricator.services.mozilla.com/D23605

--HG--
extra : moz-landing-system : lando
2019-03-15 21:56:14 +00:00
Rob Wu 13ae2321c8 Bug 1526249 - Look for llvm-objdump in toolchain path r=mshal
Differential Revision: https://phabricator.services.mozilla.com/D19140

--HG--
extra : moz-landing-system : lando
2019-03-11 15:16:53 +00:00
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
Mike Hommey bf5c85e4ef Bug 1411156 - Set MOZ_DEBUG globally as both a CONFIG and a #define. r=mshal
Bug 1365460 introduced code paths behind MOZ_DEBUG #ifdefs, but
MOZ_DEBUG is never defined, while it is available in CONFIG in
moz.builds. This is kind of a confusing situation, but the fact that
we've been able to avoid those problems for so long would tend to
put the blame on mozjemalloc, and fixes should go there.

Except that bug 1261161 explains that the only existing alternative
(the DEBUG #define), as used in MFBT, is not working for spidermonkey,
so it actually makes sense to converge to MOZ_DEBUG rather than DEBUG.

So start defining MOZ_DEBUG globally, fixing the mozjemalloc issues of
not having the debug code enabled. Bug 1261161 can then take care of
changing the DEBUG #ifdefs.

--HG--
extra : rebase_source : 37e3d03ac8350c62c8059d4ca01d1ecfdf5f421a
2017-10-24 14:07:37 +09:00
Felipe Gomes 9aac34576c Bug 1407351 - Remove E10S_TESTING_ONLY defines. r=glandium
MozReview-Commit-ID: D4LP6DhpslV

--HG--
extra : rebase_source : 47d3a011850fb1d53467d63b881a1681ca19d364
2017-10-17 13:40:02 -02:00
Ryan VanderMeulen e8cd5f653b Backed out 5 changesets (bug 1407351) for causing bug 1409395 and breaking nightlies.
Backed out changeset e6ee25ad6a9f (bug 1407351)
Backed out changeset 8e04412824b5 (bug 1407351)
Backed out changeset effeee94316e (bug 1407351)
Backed out changeset a53f34a45f9b (bug 1407351)
Backed out changeset 86a360e12b8a (bug 1407351)
2017-10-17 10:07:55 -04:00
Felipe Gomes 5ec199817e Bug 1407351 - Remove E10S_TESTING_ONLY defines. r=glandium
MozReview-Commit-ID: Kp5DH075X2f

--HG--
extra : rebase_source : 135a54f2a42fc636db8308e4d70d47d43a8dffdd
2017-10-16 14:00:50 -02:00
Tom Ritter e548003a7e Bug 1393803 Parameterize 7z and look for it in moz.configure r=glandium
MozReview-Commit-ID: GmUOf2ueM5x

--HG--
extra : rebase_source : a6a87d63f5c9d9708e069fac7df608c96fc61552
2017-08-31 15:03:48 -05:00
Mike Hommey 0c7f6fdc17 Bug 1396730 - Log "checking watchman" before checking for watchman. r=chmanchester
When discussing bug 1395079 before it was filed, config.log didn't show
"checking watchman" while it should have. We fix this here. This also
makes it printed out in the configure output (obviously), but mach
buffers that, so when configure runs through mach, it doesn't actually
show up until the result is printed out, or, if the user interrupts
configure with CTRL+C (which is better than not showing up at all in the
latter case).

--HG--
extra : rebase_source : 11a2b5c497d7b9db3ac29cb34ff0ea2a90c179c9
2017-08-30 17:25:30 +09:00
Gregory Szorc ef09f83bf5 Bug 1395079 - Query version of watchman without using daemon; r=mshal
See inline comment for why.

We may want a follow-up configure check for whether watchman is
usable (whether we can communicate with the daemon). This can be
deferred to another bug.

MozReview-Commit-ID: IHfyn7v7vm8

--HG--
extra : rebase_source : 90094fa60b028f06de433596f48d5a021155e2ad
2017-08-30 10:02:36 -07:00
Tom Ritter 1d5f96b303 Bug 1393454 Do not compile rust gtest crate if --disable-tests is set r=ted
MozReview-Commit-ID: 1HgK0D1kGNu

--HG--
extra : rebase_source : 068c0fa81aa6c28e0999e98ce6b5300605a87acc
2017-08-28 13:12:24 -05:00
Gregory Szorc 2860540d5f Bug 1385380 - Detect watchman more resiliently; r=glandium
Before, a non-runnable watchman would result in configure
error.

A trivial refactor to ignore `watchman version` errors would still
result in setting WATCHMAN and exposing its presence to downstream
consumers.

Since we want WATCHMAN tied to a working watchman install, we
refactor the code so that binary location and its version test
are in the same function. They are either both defined or none
of them are.

MozReview-Commit-ID: 7wvBvYuOlmJ

--HG--
extra : rebase_source : d9cc648cdb8253bf8e413ec0fa5e969aa68f75b9
2017-07-28 16:11:22 -07:00
Gregory Szorc 3eae4bab54 Bug 1384396 - Detect Watchman Mercurial integration in configure; r=nalexander
Configure now detects VCS info. Configure now detects Watchman.
We can combine the two so configure can detect if Mercurial
is configured with Watchman enabled.

This commit does two things:

1) collects the Mercurial config so it is available to downstream checks
2) examines the config for presence and state of the fsmonitor
   extension

We don't yet do anything with the fsmonitor state. But it should be
useful soon. Also, the return value is kinda wonky. This will almost
certainly be improved as soon as there is an actual consumer.

MozReview-Commit-ID: HyHZ2X8VI0h

--HG--
extra : rebase_source : e53928127470340275f0c0f07db72b536bba885b
extra : source : a8373914cbfd9b8595fc24f36c876cab0a26c02a
2017-07-27 14:12:35 -07:00
Gregory Szorc df019d6a91 Bug 1384396 - Detect Watchman in configure; r=nalexander
It is an optional build dependency. While we detect the version, we
don't do any minimum version checking because nothing uses it... yet.

MozReview-Commit-ID: 1tPo9AnD4fV

--HG--
extra : rebase_source : ab72057bdbcf2475902ee6b024dfa220666273f8
extra : source : 2a1b1485ffc702fb546d4c73686b5fba3e2e56dc
2017-07-25 22:04:53 -07:00
Sebastian Hengst 72d39fa25b Backed out changeset 2a1b1485ffc7 (bug 1384396)
MozReview-Commit-ID: 8pvtaY2B1ib
2017-07-27 14:53:46 +02:00
Sebastian Hengst 359a334524 Backed out changeset a8373914cbfd (bug 1384396)
MozReview-Commit-ID: I8IOrpGH89l
2017-07-27 14:53:41 +02:00
Gregory Szorc 4d26cc09b2 Bug 1384396 - Detect Watchman Mercurial integration in configure; r=nalexander
Configure now detects VCS info. Configure now detects Watchman.
We can combine the two so configure can detect if Mercurial
is configured with Watchman enabled.

This commit does two things:

1) collects the Mercurial config so it is available to downstream checks
2) examines the config for presence and state of the fsmonitor
   extension

We don't yet do anything with the fsmonitor state. But it should be
useful soon. Also, the return value is kinda wonky. This will almost
certainly be improved as soon as there is an actual consumer.

MozReview-Commit-ID: HyHZ2X8VI0h

--HG--
extra : rebase_source : d245d316cc8a27b2827b7824204549b91465bd34
2017-07-25 22:05:23 -07:00
Gregory Szorc 876dadde77 Bug 1384396 - Detect Watchman in configure; r=nalexander
It is an optional build dependency. While we detect the version, we
don't do any minimum version checking because nothing uses it... yet.

MozReview-Commit-ID: 1tPo9AnD4fV

--HG--
extra : rebase_source : 7f547422902858671028ccd54b94dbda49b239db
2017-07-25 22:04:53 -07:00
Andrew Osmond 491f63197d Bug 1370209 - Allow setting --disable-rust-debug when --enable-debug is used. r=froydnj 2017-07-10 10:46:31 -04:00
Carsten "Tomcat" Book fe3f254925 Backed out changeset 018e683b25cd (bug 1370007) for breaking tier 2 nightly builds on windows 2017-07-07 15:23:54 +02:00
Tom Ritter b1341f974a Bug 1370007 Generate Shaders on a MinGW Cross Compile on Linux r=dvander,ted
Bug 1365859 introduced a dependency on the Visual Studio binary 'fxc'
to generate Shader bytecode. This was unavailable when compiling for
Windows on Linux as part of a MinGW build.

This commit adds a configure check for fxc, and also searches for
fxc2, which was written (https://github.com/tomrittervg/fxc2) to be
a tiny application that wraps D3DCompileFromFile and can produce
similar (but not exactly the same) output as fxc.

fxc2 is compiled using MinGW for Windows, and runs under wine, so
we need to check for wine also.

Finally, fxc outputs some include information fxc2 doesn't, so
we will just change that assert to not take effect.

MozReview-Commit-ID: 8LVxuODi6cV

--HG--
extra : rebase_source : 39acca112f4cd9e6c39f7e47e7c55b13e7606824
2017-07-06 15:35:49 -05:00
Mike Hommey 0bc3c0dfde Bug 1375798 - Figure out host library/object prefix/suffixes and use them for libclang. r=mshal
The libclang test wants to find a libclang library for use for rust bindgen.
But that's a host process, that needs a host libclang. However, we
currently only have the target library/object prefix/suffixes. This
works fine... except when cross-compiling.

So we need to figure out the proper ones for the host, and use those
instead. For that, we templatize library_name_info in order to get a
separate set of library/object prefix/suffixes for the host and the
target.

And we use the host set for the libclang check.

Ideally, the build system would also use the host set for host tools
builds, but we'll leave that to a followup.

--HG--
extra : rebase_source : 1970791d6d5f9b3f79fbe34b7e3d05dd4b5c3f7b
2017-06-23 15:12:04 +09:00
Mike Hommey a5b9313db8 Bug 1375798 - Avoid using target_is_windows and target_is_darwin in library_name_info. r=mshal
We eventually want to templatize the library_name_info function, in
order to have one for host and one for target. So we don't want 3
different dependencies for the target.

--HG--
extra : rebase_source : cc980a5da9a35e71856ef970a58b2edcd05615c6
2017-06-23 15:07:54 +09:00
Mike Hommey 2b86683647 Bug 1375798 - Reorganize the library_name_info function. r=mshal
The function as it currently is matches how things were done in
old-configure.in. However, that's just confusing and hard to follow. In
fact, the unit test failing numerous times while writing this patch
pretty much highlights the problem.

So instead of a confusing set of overrides to the prefixes and suffixes,
spell out the whole set for each set of platforms. This also happens to
make the function shorter. Win/win.

At the same time, we normalize the function output as a nested
namespace, where we get, for each of dll, lib, import_lib, etc. a
prefix/suffix pair. Further down the road, we can imagine changing those
to class instances with a method allowing to format file names based on
those prefix/suffixes.

--HG--
extra : rebase_source : c18520d4df54feeea0a7f9588bc3cf8346793aaf
2017-06-23 15:05:06 +09:00
Mike Hommey 393d819a1c Bug 1375798 - Limit the SO_VERSION option to openbsd builds. r=mshal
SO_VERSION has only an impact on those builds. Also set the default at
the option level, instead of doing that in the library_name_info
function.

--HG--
extra : rebase_source : 29aa61beeaede7d43daec599866094b91f2e7a82
2017-06-23 14:58:05 +09:00
Mike Hommey dc8c929ed9 Bug 1375798 - Add a unit test for library/object prefix/suffixes. r=mshal
This happen to uncover the fact that mingw clang was not handled
properly after bug 1372987. This will allow us to substantially modify
the function that handles them and avoid regressions.

--HG--
extra : rebase_source : 007257caecf7917480ef6b0a834c304768f77591
2017-06-23 14:41:45 +09:00
Mike Hommey cc62c377cd Bug 1354581 - Move MOZILLA_OFFICIAL to python configure. r=cmanchester+432261
--HG--
extra : rebase_source : 085f29d9a3d46e9cff77444da594f6149c10f63d
2017-06-21 10:20:31 +09:00
Nathan Froyd 2fc0cc265c Bug 1372987 - move library/object prefix/suffix configuration to moz.configure; r=mshal
For parts of configuring Stylo, we need information about the library
extensions on all of our platforms, and this change is a reasonable way
to get at that information without duplicating it in two places.  Plus
moving more things to moz.configure is more better.
2017-06-19 14:20:29 -04:00
Tom Ritter 64833e8aa1 Bug 1367847 Support makensis on MinGW Linux for Windows builds r=glandium
This involves a few changes:
- Remove the .exe from the makensis binaries. which.which will
  auto-add it so Windows will keep working - and with it
  present we were finding makensis.exe on Linux and trying to
  run it, which isn't going to work
- Doesn't bother checking if nsis is 32bit if we're running on
  Linux
- Add the -nocd option to nsis (on Linux) because it takes the
  current working directory from the target of a symlink rather
  than the symlink itself. See
  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=704828

MozReview-Commit-ID: CVT8LwS1t8w

--HG--
extra : rebase_source : 2a62327326ba80dfd728048d19f0ff1c90100838
2017-06-07 20:56:21 -05:00
Mike Hommey f10295dbae Bug 1363811 - Replace all uses of delayed_getattr(a, 'b') with a.b. r=cmanchester+432261
And remove delayed_getattr.
2017-05-19 07:03:40 +09:00
Tom Ritter abdd83c00f Bug 1355584 Make NSIS an optional requirement for MINGW builds r=glandium
MozReview-Commit-ID: JCrLbEeApxy

--HG--
extra : rebase_source : 47a75c2323900854e962ca6baaa25bc0a5a3e62d
2017-04-12 11:21:13 -05:00
Nathan Froyd 2989feb7d7 Bug 1353810 - add a --enable-rust-debug option; r=chmanchester
For people working on Rust code, compiling in debug mode (Cargo's "dev"
profile) is convenient: debug assertions are turned on, optimization is
turned off, and parallel compilation inside of rustc itself can be
used.  These things make the build faster and the debugging experience
more pleasant.

To obtain that currently, one needs to --enable-debug at the Gecko
toplevel, which turns on debug assertions for the entire browser, which
makes things run unreasonably slowly.  So it would be desirable to be
able to turn *off* debug mode for the entirety of the browser, but turn
on debug mode for the Rust code only.

Hence this added switch, --enable-rust-debug, which does what it
suggests and defaults to the value of --enable-debug.  For our own
sanity and because we judge it a non-existent use case, we do not
support --enable-debug --disable-rust-debug.
2017-04-12 21:49:25 -04:00
Ryan VanderMeulen 374ef3dd48 Bug 1347191 - Add support for NSIS 3.01 to moz.configure. r=mhowell
--HG--
extra : rebase_source : 97cc913ab2486be63cafc2c54230363f232526d8
2017-03-28 10:53:17 -04:00
Chris Manchester e2e1a84cae Bug 1339673 - Add an option to disable building the gtest xul and set it for valgrind builds in automation. r=ted
MozReview-Commit-ID: 1doicRjGhfY

--HG--
extra : rebase_source : 9f9cbf5c7a9f4e29e806a02c27106fbc1519fc86
2017-02-16 10:47:55 -08:00