Commit Graph

6492 Commits

Author SHA1 Message Date
Mike Hommey
4d379e455b Bug 1403366 - Remove the --with-default-mozilla-five-home configure flag. r=froydnj
--HG--
extra : rebase_source : 354efac644a7fdeea507c0e87cf44183d773413d
2017-09-28 11:02:45 +09:00
Mike Hommey
37d01456dc Bug 1403366 - Don't set MOZILLA_FIVE_HOME from multiple scripts. r=froydnj
It was seldom used before previous commit and now does nothing.

--HG--
extra : rebase_source : e0b1dcdabe798af478e054cde0df65facf25ea21
2017-09-28 11:00:09 +09:00
Sebastian Hengst
2e58d81866 Backed out changeset ff0705eda4bd (bug 1403366) 2017-10-04 01:26:56 +02:00
Sebastian Hengst
15179c0abe Backed out changeset aa58d5c8fe1a (bug 1403366) 2017-10-04 01:26:45 +02:00
Mike Hommey
d9378b1e26 Bug 1403366 - Remove the --with-default-mozilla-five-home configure flag. r=froydnj
--HG--
extra : rebase_source : 354efac644a7fdeea507c0e87cf44183d773413d
2017-09-28 11:02:45 +09:00
Mike Hommey
5f2f5b4e64 Bug 1403366 - Don't set MOZILLA_FIVE_HOME from multiple scripts. r=froydnj
It was seldom used before previous commit and now does nothing.

--HG--
extra : rebase_source : e0b1dcdabe798af478e054cde0df65facf25ea21
2017-09-28 11:00:09 +09:00
Wes Kocher
382a7d90d6 Merge inbound to central, a=merge
MozReview-Commit-ID: CvJ9hmTQBcR
2017-10-02 16:22:37 -07:00
Nathan Froyd
f0fcd23367 Bug 1373878 - part 2 - build system support for Rust tests; r=rillian 2017-10-02 09:21:22 -04:00
Nathan Froyd
2d3d2c4950 Bug 1373878 - part 1 - add --enable-rust-tests configure option; r=rillian
Because Rust tests require panic=unwind crates and therefore recompiling
all crates we normally use (since most of our crates use panic=abort),
we've elected to enable Rust tests only if the user asks for it.  Hence,
this configure option.

The configure option also enables build-time execution of the crates,
since it's not straightforward to determine at configure time the name
of the test binary Cargo will produce (Cargo produces test binaries of
the form ${NAME}-${HEX_FINGERPRINT}, but there's no way to determine
what ${HEX_FINGERPRINT} is without actually compiling the test binary).
2017-10-02 09:21:22 -04:00
Aki Sasaki
26844dcf4a bug 1345619 - point at browser/locales/l10n-changesets.json. r=Callek
At this point, we could tear out the `ignore-locales` attribute, since
l10n-bumper supplies that information. However, we may want to use flatfiles
for something; `ignore-locales` allows for that.

MozReview-Commit-ID: 8mD4iav3bKx

--HG--
extra : rebase_source : abe2075503838223a2c150676b9c72a1aa74df59
2017-09-25 10:17:20 -07:00
Wes Kocher
eb9a2ed0f2 Merge inbound to central, a=merge
MozReview-Commit-ID: IqwKWn7ceHC
2017-09-29 14:47:25 -07:00
Marco Castelluccio
587fb629ee Bug 1401230 - Apply compiler-rt patch to avoid crashes on shutdown when unloading shared libraries. r=glandium
--HG--
extra : rebase_source : f0f45488881d10c0c00bebe4f5dd2d3d36d0b25e
2017-09-20 22:52:15 +02:00
Tom Prince
518a10833d Bug 1403982: Pass --disable-xcode-checks to js/src's configure; r=gps
MozReview-Commit-ID: I9rSz26D1nR

--HG--
extra : rebase_source : 4c9c0c57863310714ddf61a635300dc1846f5d9d
2017-09-28 09:46:30 -06:00
Mike Shal
9e6798ac00 Bug 1402012 - Update buildconfig.py to use PartialConfigEnvironment; r=glandium
By using the PartialConfigEnvironment, the clients of buildconfig will
depend on config.statusd/ files instead of config.status directly.
Clients can access substs and defines using buildconfig.substs['FOO'] or
buildconfig.defines['BAR'], and then collect file-level dependencies for
make using buildconfig.get_dependencies(). All GENERATED_FILES rules
already make use of this because file_generate.py automatically includes
these dependencies (along with all python modules loaded).

As a result of this commit, re-running configure will no longer cause
the world to be rebuilt. Although config.status is updated, no build
steps use config.status directly and instead depend on values in
config.statusd/, which are written with FileAvoidWrite. Since those
files are not official targets according to the make backend, make won't
try to continually rebuild the backend when those files are out of date.
And since they are FileAvoidWrite, make will only re-run dependent steps
if the actual configure value has changed.

As a result of using JSON to load data from the config.statusd
directory, substs can be unicode (instead of a bare string type).
generate_certdata.py converts the subst manually to a string so the
value can be exported to the environment without issue on Windows.

Additionally, patching the buildconfig.substs dict no longer works, so
the unit-symbolstore.py test was modified to patch the underlying
buildconfig.substs._dict instead.

The other files that needed to be modified make use of all the defines
for the preprocessor. Those that are used during 'mach build' now use
buildconfig.defines['ALLDEFINES'], which maps to a special
FileAvoidWrite file generated for the PartialConfigEnvironment.

MozReview-Commit-ID: 2pJ4s3TVeS8

--HG--
extra : rebase_source : d6bb0208483f9f043e7be1b36907ca13243985f8
2017-08-24 22:52:01 -04:00
Sebastian Hengst
6a0c7a5682 Backed out changeset 28b00bdf83a3 (bug 1403366) 2017-09-29 17:19:35 +02:00
Sebastian Hengst
863d9030ca Backed out changeset 48a74b8750b4 (bug 1403366) 2017-09-29 17:19:22 +02:00
Mike Hommey
4c9ac7836e Bug 1403366 - Remove the --with-default-mozilla-five-home configure flag. r=froydnj
--HG--
extra : rebase_source : e2723771fb76392269ea27de00c590e2e2bc6d9b
2017-09-28 11:02:45 +09:00
Mike Hommey
8142d74974 Bug 1403366 - Don't set MOZILLA_FIVE_HOME from multiple scripts. r=froydnj
It was seldom used before previous commit and now does nothing.

--HG--
extra : rebase_source : 59ba89dbd8de9c0b9361872f3f45504a46f454a2
2017-09-28 11:00:09 +09:00
Gregory Szorc
5c1ab3be87 Bug 1395907 - Require Visual Studio 2017 15.3+; r=glandium
There is a known compilation bug that is fixed in Visual Studio 2017
15.3.

This commit establishes minimum version requirements for Visual
Studio 2017 to ensure modern and more supported toolchains are used.

We previously only had a minimum version requirement for Visual
Studio 2015.

MozReview-Commit-ID: WRrry8J5Yf

--HG--
extra : rebase_source : 1e60bb4277ae1ec679cfa103b0a730a7260b52c2
2017-09-27 11:28:37 +02:00
Gregory Szorc
a1b0fe8ef7 Bug 1366564 - Validate Xcode installation state in configure; r=rillian
MozReview-Commit-ID: 9dNuGqaqZyU

--HG--
extra : rebase_source : a4ab1dfe3f98edf3503a6c9b4f675c457e7149a4
2017-09-26 19:56:38 +02:00
Tom Ritter
095b4bfda8 Bug 1330608 Add the MinGW32 toolchain build to Taskcluster r=glandium
MozReview-Commit-ID: JHS6y8kqr4T

--HG--
extra : rebase_source : e04692af64312db7028d4123075e02d8b9127ef2
2017-09-22 00:24:58 -05:00
Tom Ritter
83f834aede Bug 1392643 Turn on c++14 for MinGW globally r=bagder,froydnj
Technically this turns on gnu++14. I encountered a few errors when using c++14:
1) _USE_MATH_DEFINES needed to be defined for MinGW
2) MinGW did not define _finite under c++14
3) MinGW's float.h did not define Microsoft specific float functions under c++14

All of these were because c++14 defines _STRICT_ANSI_ which MinGW obeys and
avoids defining certain functions. The first two could be patched around, but
the third was a blocker, so we switched to gnu++14

MozReview-Commit-ID: 6Y7gEQgApYp

--HG--
extra : rebase_source : dabbd40c049c36e780b585e0bef0a8e25887d089
2017-09-22 12:26:42 -05:00
Chris Manchester
68ede80645 Bug 1401654 - Move MOZ_WEBRTC and some related defines to moz.configure. r=mshal
MozReview-Commit-ID: Kp7lCLqJ6FH

--HG--
extra : rebase_source : f2f9d3fb85e1c22df6c0c7cee3072e54a8b8b3e0
2017-09-20 16:29:39 -07:00
Wes Kocher
6e84ca9226 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 7rJ9fpLBazL
2017-09-22 15:06:12 -07:00
Gregory Szorc
82072f534d Bug 1402233 - Add web platform tools files to taskgraph sparse profile r=mshal
This is needed so we can import the WPT manifest parser.

Like for the reftest parser, this should only be temporary until we no
longer parse test manifests as part of Files() evaluation.

MozReview-Commit-ID: 2dmUfP8tLd2

--HG--
extra : rebase_source : 36624618f96fc89bae88172947b21108740d841d
2017-09-22 11:12:56 -07:00
Geoff Brown
3c8e31bdb7 Bug 1402347 - Be more exact in Android tests when checking run time; r=jmaher 2017-09-22 11:32:38 -06:00
Phil Ringnalda
9728bc3636 Merge m-c to m-i
MozReview-Commit-ID: LQmIsTRxble
2017-09-21 20:49:43 -07:00
Gregory Szorc
136001aa15 Bug 1402142 - Expand taskgraph sparse checkout to support moz.build evaluation; r=glandium
Some moz.build files need to import in-tree Python modules in order to
parse test manifests. While bug 1402010 details a better solution
to remove this requirement, the easy fix is to expand the sparse
checkout to include the missing files.

MozReview-Commit-ID: FSx6u6r2XfE

--HG--
extra : rebase_source : 6e406dd76b4f78521cbbdc40110d0610c75e2b08
extra : amend_source : f68341a14f50c8ff6e7b62214fa455b75eabe908
2017-09-21 15:37:52 -07:00
Wes Kocher
640a5d3c46 Merge m-c to inbound, a=merge
MozReview-Commit-ID: IsEMW5gXG3W
2017-09-21 17:04:36 -07:00
Axel Hecht
3dc36a71a4 bug 1382005, update compare-locales to 2.1, r=glandium
Vendor new dependency for compare-locales, python-fluent.
This is the 0.4.2 release of python-fluent.

Also, make mach command a bare minimum wrapper.

The compare-locales mach command used to own a couple of defaults
and opinions.
Now that those opinions and defaults are in the Makefiles, this
command can be much simpler. As a side effect, this should
make the thunderbird port easier, where none of the mach defaults
worked.

Update l10n.mk for compare-locales 2.x:

The command line interface is different now, with positional arguments.
Also, the l10n config file isn't a default anymore (that never worked
for thunderbird).
And the merge dir is now the parent of the locale dir, much like
we already anticipated in the code.

MozReview-Commit-ID: DxVVKyVSt5y

--HG--
extra : rebase_source : 7c591fea8c7d9ecef615fb56f9359d4f1bd4b340
2017-09-18 18:31:24 +02:00
Gregory Szorc
ff3d54d6f6 Bug 1401725 - Use sparse checkouts for toolchain tasks; r=glandium
Strictly speaking we don't need all files in the directories listed
in the profile. But the checkout is still small enough and it is far
less effort than cherry-picking every file needed by every toolchain
task.

This brings the checkout down to ~3700 files, which only takes 1-2s.

MozReview-Commit-ID: 2BpKdZ2Pvx9

--HG--
extra : rebase_source : e9589b29f7e1b60ac7ee4e8050689dc3d5a8f418
extra : source : 2c0d6e566cc719823515ec2403e1d6b2ace955aa
2017-09-21 07:30:49 -07:00
Nathan Froyd
acc7776ea7 Bug 1325632 - part 1 - modify re-checking the compiler with flags; r=glandium
toolchain.configure checks for information about the compilers we're
using and accumulates additional flags that we might need to
pass (e.g. switches for C/C++ versions, proper compiler targets, etc.),
and then rechecks the compilers with those additional flags to verify
that those flags are sufficient to configure the compiler properly.
Only after we've checked for the proper flags do we move on to verifying
the compiler versions are sufficient.

It's possible, however, that the flags we try to add might not be
supported by the compiler being tested, in which case we'd get an
unfriendly error about an "unknown compiler", rather than something like
"version X of Y not supported".  In this case, we'd rather use the
information we gathered from the first run to provide information
messages.  So we modify the second check to ignore any thrown exceptions
during the check itself.

This change results in another problem: the check for whether we had any
extraneous flags is done prior to version checks for the compilers we
support, which is also unhelpful.  We choose to move this check after
the version checks themselves.
2017-09-21 12:40:02 -05:00
Makoto Kato
08e9866266 Bug 1350822 - Remove --with-android-gnu-compiler-version. r=glandium
gcc 4.9 is the last version in Android NDK and our minimum requirement of gcc is 4.9+.  --with-android-gnu-compiler-version is unnecessary option because gcc version of Android is always 4.9.

MozReview-Commit-ID: 1sutqlvbQU5

--HG--
extra : rebase_source : 77e42aba81da5276bcddd945ea41895ce2461afa
2017-09-20 20:34:18 +09:00
Dustin J. Mitchell
7bddde4cb2 Bug 1383880: add support for optimizing tasks based on SCHEDULES; r=ahal
This adds some new optimization strategies.  For tests, we use Either(SETA,
SkipUnlessSchedules), thereby giving both mechanisms a chance to skip tasks. On
try, SETA is omitted.

MozReview-Commit-ID: GL4tlwyeBa6

--HG--
extra : rebase_source : f208e4960cf76a9dfe77634b87f0058f676e9fa9
extra : source : 046d705929f7a41e977eec19c8503afccdec7592
2017-08-23 16:21:06 +00:00
Mike Hommey
6be61a27e7 Bug 1401005 - Handle the case where the relocation addend is not found at the relocation location. r=froydnj
--HG--
extra : rebase_source : 58c6dfbe9fc584bbbbce2b9739a374a465823b32
2017-09-21 11:37:30 +09:00
Gregory Szorc
67018b4be3 Backed out changeset af6c2544903e (bug 1401725) for uncovering a taskgraph bug 2017-09-21 07:43:49 -07:00
Gregory Szorc
9296e16c08 Bug 1401725 - Use sparse checkouts for toolchain tasks; r=glandium
Strictly speaking we don't need all files in the directories listed
in the profile. But the checkout is still small enough and it is far
less effort than cherry-picking every file needed by every toolchain
task.

This brings the checkout down to ~3700 files, which only takes 1-2s.

MozReview-Commit-ID: 2BpKdZ2Pvx9

--HG--
extra : rebase_source : 916c6722c6d495cdccea0076c673d75e4ee48f28
extra : source : 2c0d6e566cc719823515ec2403e1d6b2ace955aa
2017-09-21 07:30:49 -07:00
Phil Ringnalda
aad01e0dc2 Backed out 12 changesets (bug 1383880) for decision task bustage
CLOSED TREE

Backed out changeset fd3615e7e0a3 (bug 1383880)
Backed out changeset 8cceb6a82bfb (bug 1383880)
Backed out changeset 571a6c9054a5 (bug 1383880)
Backed out changeset ec2b8ba5a949 (bug 1383880)
Backed out changeset 8e5847d9acda (bug 1383880)
Backed out changeset b354fdf6e233 (bug 1383880)
Backed out changeset ebdd6ccbcfca (bug 1383880)
Backed out changeset ebcc9d20981a (bug 1383880)
Backed out changeset 97eedc84d6e8 (bug 1383880)
Backed out changeset a3116da52b4e (bug 1383880)
Backed out changeset b3eb0c939720 (bug 1383880)
Backed out changeset 7c07cb798530 (bug 1383880)

MozReview-Commit-ID: EPDuQHr7w2y
2017-09-20 19:57:39 -07:00
Dustin J. Mitchell
0ad6fa01b1 Bug 1383880: add support for optimizing tasks based on SCHEDULES; r=ahal
This adds some new optimization strategies.  For tests, we use Either(SETA,
SkipUnlessSchedules), thereby giving both mechanisms a chance to skip tasks. On
try, SETA is omitted.

MozReview-Commit-ID: GL4tlwyeBa6

--HG--
extra : rebase_source : 4cf3efc9c57bb14d2f44147c8881d0a0a18703d6
extra : source : 046d705929f7a41e977eec19c8503afccdec7592
2017-08-23 16:21:06 +00:00
Makoto Kato
44d3f0277d Bug 1401448 - Remove libstdc++ support from Android buildconfig. r=froydnj
libstdc++ support is broken after moving to moz.configure.  No one uses this option and NDK will remove GCC, so we should remove this and --with-android-cxx-stl option.

MozReview-Commit-ID: 3mqyHoRCE00

--HG--
extra : rebase_source : 35aa911a69e159e67f624ab5ab9aea8af4c5342f
2017-09-20 16:38:48 +09:00
Wes Kocher
1ea82f66aa Merge m-c to autoland, a=merge
MozReview-Commit-ID: AHxJvcR2Tpa
2017-09-20 17:47:16 -07:00
Ralph Giles
a7c4cd8963 Bug 1394696 - stylo: Suppress valgrind warning. r=jseward
LLVM can optimize code to a form `if B && A` when A is
always false but B is undefined. This triggers a valgrind
memcheck warning since the conditional depends on undefined
data but in practice it can never have side-effects.

Rust 1.20.0 seems to trigger this in the Option code. Since
we believe the transform is correct in these cases and
valgrind is incorrect to warn, we surpress the error.

Thanks to Julian Seward for the analysis and help
writing the suppression entries.

MozReview-Commit-ID: pF1Bmy5PRY
2017-09-20 09:19:18 -07:00
Mike Hommey
4a2740def4 Bug 1401453 - Don't keep libmemory.a separate anymore. r=gps
This was done in bug 736564 for the xulrunner SDK, which later became
the firefox SDK, which is now gone. So we don't actually need to keep it
separate anymore (except for logalloc/replay, which still needs to link
it directly, so we keep the library definition intact so it can be
referenced ; we just don't DIST_INSTALL it anymore, and always make it
linked into mozglue)

--HG--
extra : rebase_source : e4d0627ec907fe0139df5c0b2b9f7d04b43c7c78
2017-09-20 14:23:57 +09:00
Chris Manchester
73a827ed43 Bug 1398897 - Move includes associated with CPP_UNIT_TESTS to the CppUnitTests template. r=glandium
MozReview-Commit-ID: DhjnzhAjoyy

--HG--
extra : rebase_source : 75faf6212f3a9913d75ecb223f29ce7e9ac46a1c
2017-09-20 12:43:24 -07:00
Nick Alexander
a59961df22 Bug 1396098 - part 0b - rename android-gradle-build to android-build; r=glandium,dustin
The name `android-gradle-build` is an accident of history; let's rename it
before we attempt major surgery on it.

--HG--
rename : taskcluster/docker/android-gradle-build/Dockerfile => taskcluster/docker/android-build/Dockerfile
rename : taskcluster/docker/android-gradle-build/README.md => taskcluster/docker/android-build/README.md
rename : taskcluster/docker/android-gradle-build/REGISTRY => taskcluster/docker/android-build/REGISTRY
rename : taskcluster/docker/android-gradle-build/VERSION => taskcluster/docker/android-build/VERSION
rename : taskcluster/docker/android-gradle-build/buildprops.json => taskcluster/docker/android-build/buildprops.json
rename : taskcluster/docker/android-gradle-build/dot-config/pip/pip.conf => taskcluster/docker/android-build/dot-config/pip/pip.conf
rename : taskcluster/docker/android-gradle-build/oauth.txt => taskcluster/docker/android-build/oauth.txt
2017-09-18 15:38:22 -04:00
Makoto Kato
209f37db12 Bug 1400128 - Link thumb library of libc++ when using MOZ_THUMB=1 and NDK r11c. r=froydnj
cpu_arch_dir isn't absolute path, we cannot always detect thumb library for c++ library.  Our build tool still uses NDK r11c, so we should check thumb library correctly.

MozReview-Commit-ID: 912ZDNeUcKc

--HG--
extra : rebase_source : 8b69348ef3280f32b7a228d66462070413a25e73
2017-09-15 13:40:43 +09:00
Sebastian Hengst
006a58c35d merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 2iVDKexRjxu
2017-09-13 23:58:43 +02:00
Botond Ballo
c080667b4c Bug 1398966 - Suggest checking JAVA_HOME if javac is out of date. r=nalexander
MozReview-Commit-ID: FJDrLsTxwIr

--HG--
extra : rebase_source : 758b365905202ece86154e52bf88e6096a11b817
2017-09-11 19:06:26 -04:00
Bob Owen
d64bab3c76 Bug 1380609: Make Windows Universal CRT SDK version 10.0.10586.0 the minimum. r=glandium 2017-09-13 11:19:40 +01:00
Nathan Froyd
397f70843c Bug 1396882 - pass extra_toolchain_flags to linker detection invocation; r=glandium
The linker detection essentitally invokes `$CC -Wl,--version` to
determine which linker will be used.  This invocation works OK for GCC
from the Android NDK, which can find the linker in the same directory;
it doesn't work so well for clang from the NDK, which needs additional
command-line options to point at the directory containing the linker.

We already have extra_toolchain_flags for communicating such options to
other compiler invocations for the target; we should be using
extra_toolchain_flags here as well.
2017-09-12 09:52:13 -04:00