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

8459 Коммитов

Автор SHA1 Сообщение Дата
Mike Shal ec7a8745f1 Bug 1580497 - Fix topobjdir in 1-tier PGO builds; r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D45707

--HG--
extra : moz-landing-system : lando
2019-09-12 19:30:17 +00:00
Nathan Froyd 020191bdfa Bug 1580931 - remove libc++ gcc 4.9 workarounds from toolchain.configure; r=nalexander
Getting rid of unneeded code and having fewer global defines are both
worthy things.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 20:01:18 +00:00
Razvan Maries 98fb942aa9 Backed out changeset 70e72871917e (bug 1576659) for Linux x64 debug build bustages. CLOSED TREE 2019-09-12 15:51:31 +03:00
Andi-Bogdan Postelnicu bc7bd7de68 Bug 1576659 - Update infer to 0.17.0. r=bastien
Differential Revision: https://phabricator.services.mozilla.com/D43471

--HG--
extra : moz-landing-system : lando
2019-09-12 12:17:50 +00:00
Nathan Froyd 2ffed65f8f Bug 1577272 - annotate some refcounted lambda tests with expected errors for C++17; r=andi
clang produces these errors itself, but only in C++17 mode.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 06:40:49 +00:00
Emilio Cobos Álvarez 0140a5576c Bug 1577439 - Shutdown Servo's thread-pool in leak-checking builds, leak the atom table elsewhere. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D44217

--HG--
extra : moz-landing-system : lando
2019-09-09 22:39:46 +00:00
Nathan Froyd a66584728f Bug 1579523 - fix visibility definition for future NDKs on Android; r=nalexander
A previous patch defined `_LIBCPP_HIDE_FROM_ABI` to the empty string.
This definition worked for normal (opt/debug) builds, but
PGO-instrumented builds fell over with some linker errors.  A closer
look at the definition of `_LIBCPP_HIDE_FROM_ABI`:

```
#ifndef _LIBCPP_HIDE_FROM_ABI_PER_TU
#  ifndef _LIBCPP_HIDE_FROM_ABI_PER_TU_BY_DEFAULT
#    define _LIBCPP_HIDE_FROM_ABI_PER_TU 0
#  else
#    define _LIBCPP_HIDE_FROM_ABI_PER_TU 1
#  endif
#endif

#ifndef _LIBCPP_HIDE_FROM_ABI
#  if _LIBCPP_HIDE_FROM_ABI_PER_TU
#    define _LIBCPP_HIDE_FROM_ABI _LIBCPP_HIDDEN _LIBCPP_INTERNAL_LINKAGE
#  else
#    define _LIBCPP_HIDE_FROM_ABI _LIBCPP_HIDDEN _LIBCPP_EXCLUDE_FROM_EXPLICIT_INSTANTIATION
#  endif
#endif
```

says that there are two macros involved there: one to set hidden visibility
(which we don't want), and another to exclude the function definition
from explicit instantiation.  The semantics of this are not obvious (the
clang documentation only documents this attribute in terms of C++
templates; the particular case we're interested in sets the attribute on
normal function definitions).  But roughly, what this does is that it
forces the compiler to see that an equivalent function definition is
provided external to the compilation unit, so it doesn't have to keep
the annotated function definition around.

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

--HG--
extra : moz-landing-system : lando
2019-09-11 15:13:36 +00:00
Mike Shal 3b8df1c395 Bug 1580028 - Always merge PGO profile data in the run task; r=firefox-build-system-reviewers,chmanchester
If the run task generates bad profile data, the merge step in the
profile-use task will fail. However, retrying the profile-use task
doesn't fix the problem, and there isn't a straightforward way to retry
the run task in this situation. Instead we can add a clang toolchain to
all the run tasks, and perform the merge there.

This means the output from the run task will always be a successfully
merged file called 'merged.profdata', and we no longer need to perform
the merge as part of the profile-use build as a GENERATED_FILES step.

Depends on D45262

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

--HG--
extra : moz-landing-system : lando
2019-09-10 21:56:15 +00:00
Mike Shal 93f80b9e53 Bug 1580028 - Move pgo_flags to later in lto-pgo.configure; r=firefox-build-system-reviewers,chmanchester
This is needed in the following patch, but the diff is more clear with
this split out.

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

--HG--
extra : moz-landing-system : lando
2019-09-10 02:41:06 +00:00
Chris Manchester 4991e899e4 Bug 1578493 - Mention scheduler url in server setup section and bump suggested version in sccache-dist docs. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D45282

--HG--
extra : moz-landing-system : lando
2019-09-10 16:03:04 +00:00
Nathan Froyd 62a5c58f09 Bug 1579430 - mark some elfhack methods as `override`; r=glandium
This change silences a couple of clang warnings.

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

--HG--
extra : moz-landing-system : lando
2019-09-09 23:54:34 +00:00
Wander Lairson Costa 1e4f81ec22 Bug 1572236: Support sccache in Google Storage r=chmanchester,dustin
With the migration from AWS to GCP, we also need to migrate sccache
buckets from S3 to Google Storage.

The problem is how we deal with regions, since there isn't an exact
correspondence on the region names between the two cloud providers.

To make the transition smoother, docker-worker (and soon generic-worker)
provides a new environment variable called TASKCLUSTER_WORKER_LOCATION,
with information about the cloud provider the task is running on. Using
this new variable, we configure sccache to use the corresponding storage
service of the cloud provider where the task runs.

The bucket names in Google Storage are shorter because GCS imposes a
limit of 30 characteres for the names.

Ref: https://github.com/taskcluster/taskcluster-rfcs/pull/148/files

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

--HG--
extra : moz-landing-system : lando
2019-09-09 16:51:42 +00:00
Andi-Bogdan Postelnicu 5fbdc1ea98 Bug 1579351 - Add constant complexity for MemMoveAnnotation when looking for specific `std::atomic`. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D45027

--HG--
extra : moz-landing-system : lando
2019-09-09 13:30:16 +00:00
Andi-Bogdan Postelnicu ef2739a418 Bug 1569350 - Added more primitives to our static-analysis from MSVC 2019. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D44827

--HG--
extra : moz-landing-system : lando
2019-09-05 12:57:18 +00:00
Sylvestre Ledru 20b343675a Bug 1577726 - Move generated directories into a dedicated file (Generated.txt) from ThirdPartyPaths.txt r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D44147

--HG--
extra : moz-landing-system : lando
2019-09-05 14:24:21 +00:00
Nathan Froyd 18e78c6b0d Bug 1578825 - add a strict version check for the NDK version; r=nalexander
One less thing for configurations to vary is a good thing.  This change
also means that when we do NDK bumps that introduce some kind of weird
incompatible change, configuration with a newly-pulled tree and an old
NDK halts at configure, rather than giving weird build errors.

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

--HG--
extra : moz-landing-system : lando
2019-09-04 19:20:39 +00:00
Sylvestre Ledru 931b1e9554 Bug 1579054 - Improve the --enable-clang-plugin description r=andi
Differential Revision: https://phabricator.services.mozilla.com/D44820

--HG--
extra : moz-landing-system : lando
2019-09-05 12:21:38 +00:00
Andrew Sutherland dbbe7fbf1f Bug 1511025 - Correct searchfox template traversal. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D44755

--HG--
extra : moz-landing-system : lando
2019-09-05 07:17:57 +00:00
Bogdan Tara 2c0a60b5b0 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-09-05 06:51:36 +03:00
Chris Manchester 0bb09fc35d Bug 1578596 - Require rustc 1.37. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D44699

--HG--
extra : moz-landing-system : lando
2019-09-04 19:08:28 +00:00
David Major a6ecd0d619 Bug 1578775: Remove LIBCXX_LIBCPPABI_VERSION from build-clang.py r=glandium
This build workaround was made unnecessary (and in fact harmful) by 2d0b4d6bb3 (diff-140d2deaecabaad987b883a1de1c2aa4) which landed in LLVM 9.

It seems that we don't need this anyway even on our current LLVM 8 builds, so landing this separately in preparation for bug 1573211.

Reviewed as part of a larger patch in https://phabricator.services.mozilla.com/D44160#1342283

MANUAL PUSH: This may cause a toolchain rebuild.
2019-09-04 12:01:59 -04:00
Nathan Froyd ebeb43d427 Bug 1578478 - update disabling visibility on Android for newer libc++; r=nalexander
We define some libc++-internal macros to avoid conflicts between the way
we do symbol visibility and the way libc++ expects visibility to work.
Newer NDK versions use a newer libc++ which changes the way the macro we
were using works. To enable building with newer libc++ versions, let's
also define macros appropriate to those versions as well.

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

--HG--
extra : moz-landing-system : lando
2019-09-04 17:56:49 +00:00
Chris Manchester 5ac1f64990 Bug 1578493 - Suggest using an sccache-dist binary from automation in our docs. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D44577

--HG--
extra : moz-landing-system : lando
2019-09-03 23:12:51 +00:00
Chris Manchester 358a3fb5f1 Bug 1578493 - Fix sccache-dist docs to mention port for builders and remove unused email. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D44530

--HG--
extra : moz-landing-system : lando
2019-09-03 20:49:44 +00:00
Nathan Froyd f29b892aa0 Bug 1578471 - consolidate NDK version detection; r=nalexander
We have an `ndk_version_major` and an `ndk_version_minor` that have a
lot of duplicated code in them.  We could factor them into a single
function, but it seems better to just pull their logic into `ndk_version`
directly, rearranging that function to be IMHO more understandable.

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

--HG--
extra : moz-landing-system : lando
2019-09-03 17:17:31 +00:00
Razvan Maries 9415ecf29b Backed out 2 changesets (bug 1569728) for causig Linux shippable opt build bustages.
Backed out changeset 2f873da4b36e (bug 1569728)
Backed out changeset aaae16f5f29d (bug 1569728)
2019-09-01 03:42:38 +03:00
Nathan Froyd 1bc5f4c3fe Bug 1569728 - manually instantiate some basic_string members for libstdc++ compat; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D41370

--HG--
extra : moz-landing-system : lando
2019-08-25 19:27:47 +00:00
Andrew Halberstadt f43a6e3051 Bug 1570772 - [lint.license] Fix or exclude errors under /build r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D41820

--HG--
extra : moz-landing-system : lando
2019-08-30 15:44:08 +00:00
Emilio Cobos Álvarez b33e5051d2 Bug 1577749 - Fix check_sccache_version when using RUSTC_WRAPPER. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D44139

--HG--
extra : moz-landing-system : lando
2019-08-30 12:22:12 +00:00
Chris Manchester 3712f28127 Bug 1577351 - Require a recent version of sccache when it is in use. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D43861

--HG--
extra : moz-landing-system : lando
2019-08-29 17:45:23 +00:00
Chris Manchester 37a0bb26bb Bug 1576737 - Add sccache-dist in offices docs to the tree. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D43531

--HG--
extra : moz-landing-system : lando
2019-08-27 22:10:54 +00:00
Andrew Halberstadt 333ffc4bcf Bug 1473498 - [mach] Support running mach commands with python 3 r=glandium,mars
Credit: mars for making the shell POSIX compliant

This embeds a blacklist of every mach command that needs to run with Python 2
directly in the mach driver itself. Initially this is every mach command. We
then use a bit of shell to determine whether the command being run needs Python
2 or 3.

While this approach may seem a bit hacky, it has several benefits:

1. No need to add complex machinery in mach's registration code.
2. No need to spawn two separate Python interpreters in the event a different
   Python from the original interpreter is needed.
3. Perf impact is negligible.
4. New commands are Python 3 by default.

It is also only a temporary hack. Once all commands are running with Python 3,
we can revert back to the original mach driver.

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

--HG--
extra : moz-landing-system : lando
2019-08-27 03:08:08 +00:00
Andrew Halberstadt 80160f742f Bug 1473498 - [configure] Fix ImportError in util.configure under Python 3, r=glandium
This import is actually unused as of bug 844509.

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

--HG--
extra : moz-landing-system : lando
2019-08-27 02:55:18 +00:00
Makoto Kato 8c25d0bb78 Bug 1575436 - Don't use absolute path for echo command. r=glandium
common.gypi uses hard-coded absolute path for echo command, but this path
is invalid on Windows.

But this lines are unused, so we should remove it.

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

--HG--
extra : moz-landing-system : lando
2019-08-27 03:25:37 +00:00
Emilio Cobos Álvarez c17fdaaa27 Bug 1576703 - Update cbindgen. r=boris
This cleans up the pattern of "Use a private dtor so that the helper functions
do the right thing" by enabling it everywhere using:

  https://github.com/eqrion/cbindgen/pull/377

It also caught some uninitialized value issues.

I think they're mostly harmless since we zero-initialize our structs:

https://searchfox.org/mozilla-central/rev/325c1a707819602feff736f129cb36055ba6d94f/servo/components/style/properties/gecko.mako.rs#632

And since we override the clip rect, which is the other bit of code that was
failing to build with this change.

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

--HG--
extra : moz-landing-system : lando
2019-08-26 23:18:46 +00:00
Mihai Alexandru Michis ac5564a095 Merge mozilla-central to autoland. 2019-08-27 02:02:26 +03:00
Mike Hommey 46c7dfffb5 Bug 1575804 - Don't decode the result from get_cmd_output. r=chmanchester
Also don't pass universal_newlines to check_cmd_output. That was added
to make python 3 happier when check_cmd_output still returned bytes, to
hint subprocess to return a unicode string, but now that
check_cmd_output does the decoding, that's not needed anymore.

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

--HG--
extra : moz-landing-system : lando
2019-08-26 22:05:51 +00:00
Tom Ritter 9dfb78cd80 Bug 1576710 - Perform the correct comparison with OS Arch r=nalexander
This removes an unrecognized parameter warning.

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

--HG--
extra : moz-landing-system : lando
2019-08-26 18:58:51 +00:00
Sylvestre Ledru 65d8b0025e Bug 1564252 - Move to clang 8.0.1 r=glandium
Differential Revision: https://phabricator.services.mozilla.com//D42325

--HG--
extra : amend_source : 129ff97f6edc41ad7a2f54520141158416e75b8d
2019-08-20 21:06:24 +02:00
Nicholas Nethercote adb9edf389 Bug 1574388 - Implement PHC on Mac. r=gsvelto,glandium
But it is not yet enabled; bug 1576515 will do that.

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

--HG--
extra : moz-landing-system : lando
2019-08-25 23:16:05 +00:00
Razvan Maries 74868f6da5 Backed out 2 changesets (bug 1569728) for Android 4.0 API16+ GeckoView multi-arch fat AAR opt build bustages.
Backed out changeset a420714ee262 (bug 1569728)
Backed out changeset d24ed38c76cd (bug 1569728)
2019-08-24 19:09:21 +03:00
Nathan Froyd faaa483c34 Bug 1569728 - manually instantiate some basic_string members for libstdc++ compat; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D41370

--HG--
extra : moz-landing-system : lando
2019-08-24 13:51:32 +00:00
Mike Hommey d9320a4077 Bug 1576003 - Update workspace hack to avoid multiple builds of cranelift. r=nalexander
The discrepancy of features used for syn between jsrust and gkrust
triggered syn and its reverse dependencies up to cranelift to be
built once for jsrust and once for gkrust, while they are time consuming
to build.

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

--HG--
extra : moz-landing-system : lando
2019-08-23 17:01:40 +00:00
Nathan Froyd 1c00fec375 Bug 1573820 - default to bfd ld for x86-64 Android; r=nalexander
This change looks a lot more complicated than it actually is.

The motivating issue is that on x86-64 android, the NDK uses gold as its
default linker, and on this platform gold has some bugs in how it handles
`.note.*` sections that lead to `strip` and `objcopy` produce invalid
binaries...or at least invalid binaries according to `elfhack`.  When
`elfhack` complains, the build stops, which is suboptimal.  Instead, let's
use bfd `ld`, which doesn't have these problems.

Except that when we make the change to provide `--enable-linker` with a
platform-specific default, the lint configure tests complain that the
provided help string is not using the proper format.  So we tack on the
sekret `{|}` string to satisfy the linter.

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

--HG--
extra : moz-landing-system : lando
2019-08-23 19:26:22 +00:00
Dustin J. Mitchell 23d547abce Bug 1562686 - revert remaining unnecessary bit of bug 1187245; r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D42644

--HG--
extra : moz-landing-system : lando
2019-08-23 12:32:02 +00:00
Dustin J. Mitchell af8483e1ae Bug 1562686 - use AWS_IAM_CREDENTIALS_URL for all S3 sccache invocations r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D41454

--HG--
extra : moz-landing-system : lando
2019-08-23 12:39:25 +00:00
Bogdan Tara b5b30d8b87 Backed out changeset cace4ffbecb2 (bug 1576030) requested by glandium 2019-08-23 11:36:03 +03:00
Mike Hommey a1ebadbc30 Bug 1576030 - Allow to forcefully enable cargo incremental. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D43189

--HG--
extra : moz-landing-system : lando
2019-08-23 03:11:35 +00:00
Mike Hommey 3e303cdeb9 Bug 1576030 - Disable cargo incremental when using sccache. r=nalexander
For some reason, cargo incremental doesn't work as well as it should,
and doesn't perform as well as sccache does. So when building with
sccache, disable cargo incremental. This brought a no-change clobber
build with 100% cache from 3:50 to 2:05 on a beefy AWS instance I was
testing this with.

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

--HG--
extra : moz-landing-system : lando
2019-08-23 04:50:55 +00:00
Mike Hommey 32044bbc45 Bug 1575804 - Don't decode the result from check_cmd_output. r=froydnj
Bug 1575135 changed check_cmd_output to return unicode strings, but a
couple places were already trying to do their own decoding, which now
can fail. Remove those.

Interesting the decoding was previously broken on Windows, this
actually fixes it (the output of hg config is not actually utf-8 on
Windows).

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

--HG--
extra : moz-landing-system : lando
2019-08-22 17:02:39 +00:00