gecko-dev/build/moz.configure
Gregory Szorc c310ba24a6 Bug 1377216 - Discover version control info in configure; r=glandium
For reasons unknown to me, Windows CI is periodically failing to find
the Mercurial binary.

In addition, we've also reimplemented various VCS logic throughout
the build system. There is room to cut down on code complexity by
e.g. recording VCS info in configure instead of determining it
at run-time.

Also, for forensic purposes it is sometimes desirable to know which
VCS tool is in use by a build and which version of that tool is being
used.

This commit adds VCS type detection, binary searching, and version
resolution to configure.

substs now contains VCS_CHECKOUT_TYPE, HG, and GIT, which can be
consulted by downstream consumers.

If the Mercurial or Git versions could not be resolved, all variables
are not set. Otherwise, VCS_CHECKOUT_TYPE and one of HG or GIT is set.

If MOZ_AUTOMATION is set, we require that the VCS info be resolved.
This helps prevents weirdness in automation due to unexpected
environment configuration.

MozReview-Commit-ID: AMLy0Hfx5rD

--HG--
extra : rebase_source : edef9165d32dc47308a14b0fbabce3c1d3d28176
2017-07-18 18:07:29 -07:00
..
android-ndk.configure Bug 1360291 - Detect NDK version number; r=nalexander 2017-05-04 19:19:31 -04:00
checks.configure Bug 1316956 - Add a when argument to check_prog. r=chmanchester 2017-05-13 07:12:56 +09:00
compile-checks.configure Bug 1363585 - Forbid boolean operations on @depends functions. r=chmanchester 2017-05-10 11:35:22 +09:00
compilers-util.configure Bug 1335666 - Remove @depends_when. r=chmanchester 2017-02-01 16:25:29 +09:00
headers.configure Bug 1335666 - Remove @depends_when. r=chmanchester 2017-02-01 16:25:29 +09:00
init.configure Bug 1377216 - Discover version control info in configure; r=glandium 2017-07-18 18:07:29 -07:00
java.configure Bug 1286877 - do not set c-basic-offset for python-mode; r=gps 2016-07-14 10:16:42 -06:00
keyfiles.configure Bug 1365089 - Pre: Support setting default keyfile locations in moz.configure. r=nalexander 2017-05-19 11:30:26 -07:00
memory.configure Bug 1363992 - Remove support for making jemalloc4 the default. r=njn 2017-05-11 13:16:00 +09:00
old.configure Bug 1379190: P2. Remove OMX related config. r=glandium 2017-07-13 13:00:23 +02:00
pkg.configure Bug 1335666 - Remove @depends_when. r=chmanchester 2017-02-01 16:25:29 +09:00
rust.configure bug 1275424 - hardcode Rust source paths in symbolstore.py. r=gps 2017-06-23 16:19:49 -04:00
toolchain.configure Bug 1368083 - Pass -isysroot to bindgen. r=gps 2017-07-06 11:34:03 -07:00
util.configure Bug 1377216 - Accept environment variables to check_cmd_output; r=glandium 2017-07-18 18:06:03 -07:00
warnings.configure Bug 1368649 - Default to -O2 when building on Linux without PGO. r=gps 2017-05-31 06:19:38 +09:00
windows.configure Bug 1356493: Add the SDK version number to the bin path for Windows 10 SDK v10.0.15063.0 and above. r=glandium 2017-07-18 14:21:32 +01:00