Commit Graph

163 Commits

Author SHA1 Message Date
Nathan Froyd
d3c42fc403 Backout 3c0bda5f0564:58e5f6f08c54 (bug 1451104) for inadvertently stressing tooltool and busting this CLOSED TREE 2018-06-28 10:28:29 -04:00
Nathan Froyd
a235cd501a Bug 1451104 - part 1 - ensure compatible binutils for GCC; r=glandium
GCC will pick up whatever `as` is first in PATH when trying to assemble
files.  It expects this `as` to have at least as many features as the
`as` detected at configure time when GCC was originally built.  We
should ensure that GCC is always picking up an appropriate `as` by
adding its base directory to the search path; otherwise, we get peculiar
assembler errors.
2018-06-28 09:04:41 -04:00
Eric Rahm
a8c4159e3a Bug 1464501 - Part 1: Add rust-size toolchain. r=glandium 2018-06-07 16:47:58 -07:00
Mike Hommey
b988c0a1d2 Bug 1467658 - Update the macosx clang toolchain (for bootstrap) to version 6. r=chmanchester 2018-06-08 13:37:48 +09:00
Mike Hommey
09a1f070e8 Bug 1467658 - Use clang 6 for coverage builds. r=chmanchester,marco
Instead of clang 4, which they were the last to use, so remove the
clang 4 toolchain.
2018-06-08 10:48:06 +09:00
Mike Hommey
9b8a51ab15 Bug 1462498 - Update clang 6 pre to clang 6 final on linux and mac. r=gps 2018-06-08 09:25:49 +09:00
Gregory Szorc
3697053827 Bug 1460777 - Taskgraph tasks for retrieving remote content; r=dustin, glandium
Currently, many tasks fetch content from the Internets. A problem with
that is fetching from the Internets is unreliable: servers may have
outages or be slow; content may disappear or change out from under us.

The unreliability of 3rd party services poses a risk to Firefox CI.
If services aren't available, we could potentially not run some CI tasks.
In the worst case, we might not be able to release Firefox. That would
be bad. In fact, as I write this, gmplib.org has been unavailable for
~24 hours and Firefox CI is unable to retrieve the GMP source code.
As a result, building GCC toolchains is failing.

A solution to this is to make tasks more hermetic by depending on
fewer network services (which by definition aren't reliable over time
and therefore introduce instability).

This commit attempts to mitigate some external service dependencies
by introducing the *fetch* task kind.

The primary goal of the *fetch* kind is to obtain remote content and
re-expose it as a task artifact. By making external content available
as a cached task artifact, we allow dependent tasks to consume this
content without touching the service originally providing that
content, thus eliminating a run-time dependency and making tasks more
hermetic and reproducible over time.

We introduce a single "fetch-url" "using" flavor to define tasks that
fetch single URLs and then re-expose that URL as an artifact. Powering
this is a new, minimal "fetch" Docker image that contains a
"fetch-content" Python script that does the work for us.

We have added tasks to fetch source archives used to build the GCC
toolchains.

Fetching remote content and re-exposing it as an artifact is not
very useful by itself: the value is in having tasks use those
artifacts.

We introduce a taskgraph transform that allows tasks to define an
array of "fetches." Each entry corresponds to the name of a "fetch"
task kind. When present, the corresponding "fetch" task is added as a
dependency. And the task ID and artifact path from that "fetch" task
is added to the MOZ_FETCHES environment variable of the task depending
on it. Our "fetch-content" script has a "task-artifacts"
sub-command that tasks can execute to perform retrieval of all
artifacts listed in MOZ_FETCHES.

To prove all of this works, the code for fetching dependencies when
building GCC toolchains has been updated to use `fetch-content`. The
now-unused legacy code has been deleted.

This commit improves the reliability and efficiency of GCC toolchain
tasks. Dependencies now all come from task artifacts and should always
be available in the common case. In addition, `fetch-content` downloads
and extracts files concurrently. This makes it faster than the serial
application which we were previously using.

There are some things I don't like about this commit.

First, a new Docker image and Python script for downloading URLs feels
a bit heavyweight. The Docker image is definitely overkill as things
stand. I can eventually justify it because I want to implement support
for fetching and repackaging VCS repositories and for caching Debian
packages. These will require more packages than what I'm comfortable
installing on the base Debian image, therefore justifying a dedicated
image.

The `fetch-content static-url` sub-command could definitely be
implemented as a shell script. But Python is readily available and
is more pleasant to maintain than shell, so I wrote it in Python.

`fetch-content task-artifacts` is more advanced and writing it in
Python is more justified, IMO. FWIW, the script is Python 3 only,
which conveniently gives us access to `concurrent.futures`, which
facilitates concurrent download.

`fetch-content` also duplicates functionality found elsewhere.
generic-worker's task payload supports a "mounts" feature which
facilitates downloading remote content, including from a task
artifact. However, this feature doesn't exist on docker-worker.
So we have to implement downloading inside the task rather than
at the worker level. I concede that if all workers had generic-worker's
"mounts" feature and supported concurrent download, `fetch-content`
wouldn't need to exist.

`fetch-content` also duplicates functionality of
`mach artifact toolchain`. I probably could have used
`mach artifact toolchain` instead of writing
`fetch-content task-artifacts`. However, I didn't want to introduce
the requirement of a VCS checkout. `mach artifact toolchain` has its
origins in providing a feature to the build system. And "fetching
artifacts from tasks" is a more generic feature than that. I think
it should be implemented as a generic feature and not something that is
"toolchain" specific.

I think the best place for a generic "fetch content" feature is in
the worker, where content can be defined in the task payload. But as
explained above, that feature isn't universally available. The next
best place is probably run-task. run-task already performs generic,
very-early task preparation steps, such as performing a VCS checkout.
I would like to fold `fetch-content` into run-task and make it all
driven by environment variables. But run-task is currently Python 2
and achieving concurrency would involve a bit of programming (or
adding package dependencies). I may very well port run-task to Python
3 and then fold fetch-content into it. Or maybe we leave
`fetch-content` as a standalone script.

MozReview-Commit-ID: AGuTcwNcNJR
2018-06-06 14:37:49 -07:00
Gregory Szorc
86cf3b1096 Bug 1460777 - Extract GPG keys to standalone files; r=glandium
After this change, we consistently import GPG keys from files in
the GCC build scripts.

MozReview-Commit-ID: BcyvCQoGbMS
2018-05-11 10:38:35 -07:00
Gurzau Raul
e787324b17 Backed out 2 changesets (bug 1460777) for Toolchains failure on a CLOSED TREE
Backed out changeset 52ef9348401d (bug 1460777)
Backed out changeset 60ed097650b8 (bug 1460777)
2018-06-06 20:57:29 +03:00
Gregory Szorc
c9ef9aa239 Bug 1460777 - Taskgraph tasks for retrieving remote content; r=dustin,glandium
Currently, many tasks fetch content from the Internets. A problem with
that is fetching from the Internets is unreliable: servers may have
outages or be slow; content may disappear or change out from under us.

The unreliability of 3rd party services poses a risk to Firefox CI.
If services aren't available, we could potentially not run some CI tasks.
In the worst case, we might not be able to release Firefox. That would
be bad. In fact, as I write this, gmplib.org has been unavailable for
~24 hours and Firefox CI is unable to retrieve the GMP source code.
As a result, building GCC toolchains is failing.

A solution to this is to make tasks more hermetic by depending on
fewer network services (which by definition aren't reliable over time
and therefore introduce instability).

This commit attempts to mitigate some external service dependencies
by introducing the *fetch* task kind.

The primary goal of the *fetch* kind is to obtain remote content and
re-expose it as a task artifact. By making external content available
as a cached task artifact, we allow dependent tasks to consume this
content without touching the service originally providing that
content, thus eliminating a run-time dependency and making tasks more
hermetic and reproducible over time.

We introduce a single "fetch-url" "using" flavor to define tasks that
fetch single URLs and then re-expose that URL as an artifact. Powering
this is a new, minimal "fetch" Docker image that contains a
"fetch-content" Python script that does the work for us.

We have added tasks to fetch source archives used to build the GCC
toolchains.

Fetching remote content and re-exposing it as an artifact is not
very useful by itself: the value is in having tasks use those
artifacts.

We introduce a taskgraph transform that allows tasks to define an
array of "fetches." Each entry corresponds to the name of a "fetch"
task kind. When present, the corresponding "fetch" task is added as a
dependency. And the task ID and artifact path from that "fetch" task
is added to the MOZ_FETCHES environment variable of the task depending
on it. Our "fetch-content" script has a "task-artifacts"
sub-command that tasks can execute to perform retrieval of all
artifacts listed in MOZ_FETCHES.

To prove all of this works, the code for fetching dependencies when
building GCC toolchains has been updated to use `fetch-content`. The
now-unused legacy code has been deleted.

This commit improves the reliability and efficiency of GCC toolchain
tasks. Dependencies now all come from task artifacts and should always
be available in the common case. In addition, `fetch-content` downloads
and extracts files concurrently. This makes it faster than the serial
application which we were previously using.

There are some things I don't like about this commit.

First, a new Docker image and Python script for downloading URLs feels
a bit heavyweight. The Docker image is definitely overkill as things
stand. I can eventually justify it because I want to implement support
for fetching and repackaging VCS repositories and for caching Debian
packages. These will require more packages than what I'm comfortable
installing on the base Debian image, therefore justifying a dedicated
image.

The `fetch-content static-url` sub-command could definitely be
implemented as a shell script. But Python is readily available and
is more pleasant to maintain than shell, so I wrote it in Python.

`fetch-content task-artifacts` is more advanced and writing it in
Python is more justified, IMO. FWIW, the script is Python 3 only,
which conveniently gives us access to `concurrent.futures`, which
facilitates concurrent download.

`fetch-content` also duplicates functionality found elsewhere.
generic-worker's task payload supports a "mounts" feature which
facilitates downloading remote content, including from a task
artifact. However, this feature doesn't exist on docker-worker.
So we have to implement downloading inside the task rather than
at the worker level. I concede that if all workers had generic-worker's
"mounts" feature and supported concurrent download, `fetch-content`
wouldn't need to exist.

`fetch-content` also duplicates functionality of
`mach artifact toolchain`. I probably could have used
`mach artifact toolchain` instead of writing
`fetch-content task-artifacts`. However, I didn't want to introduce
the requirement of a VCS checkout. `mach artifact toolchain` has its
origins in providing a feature to the build system. And "fetching
artifacts from tasks" is a more generic feature than that. I think
it should be implemented as a generic feature and not something that is
"toolchain" specific.

I think the best place for a generic "fetch content" feature is in
the worker, where content can be defined in the task payload. But as
explained above, that feature isn't universally available. The next
best place is probably run-task. run-task already performs generic,
very-early task preparation steps, such as performing a VCS checkout.
I would like to fold `fetch-content` into run-task and make it all
driven by environment variables. But run-task is currently Python 2
and achieving concurrency would involve a bit of programming (or
adding package dependencies). I may very well port run-task to Python
3 and then fold fetch-content into it. Or maybe we leave
`fetch-content` as a standalone script.

MozReview-Commit-ID: AGuTcwNcNJR
2018-06-06 09:37:38 -07:00
Gregory Szorc
ebe0063194 Bug 1460777 - Extract GPG keys to standalone files; r=glandium
After this change, we consistently import GPG keys from files in
the GCC build scripts.

MozReview-Commit-ID: BcyvCQoGbMS
2018-05-11 10:38:35 -07:00
Mike Hommey
805c295040 Bug 1466060 - Upgrade to binutils 2.28.1. r=nalexander
Version 2.25.1's libiberty can choke on some symbols. That was fixed in
2.27. As of writing, the last version is 2.30. Conservatively go with
2.28.1, which is the same major version (2.28) as what is currently in
Debian stable.
2018-06-01 17:48:41 +09:00
Mike Shal
d2e89ca5cc Bug 1377524 - Update tup toolchain to v0.7.6; r=chmanchester
MozReview-Commit-ID: cdVkPSToXs
2018-05-24 14:53:15 -04:00
Andreea Pavel
f494f9ac4f Backed out changeset 4523372c4945 (bug 1462498) for Win build bustages on a CLOSED TREE 2018-05-19 02:19:22 +03:00
Mike Hommey
b60108834c Bug 1462498 - Update clang 6 pre to clang 6 final. r=gps 2018-05-18 08:03:31 +09:00
Tom Ritter
2177c4fb31 Bug 1460668 Bump MinGW to capture the CD3D11_BLEND_DESC fix r=froydnj
MozReview-Commit-ID: 83igqfjKm6O
2018-05-16 13:43:29 -05:00
Mike Hommey
d9d4ecef53 Bug 1445536 - Add a toolchain job for GCC 7. r=froydnj
And adapt the build-gcc.sh script for the changes to
contrib/download_prerequisites.
2018-03-14 09:37:27 +09:00
Gregory Szorc
437974c485 Bug 1449629 - Use -L when downloading OpenSSL; r=glandium
The URL is now being redirected to
https://www.openssl.org/source/old/1.1.0/openssl-1.1.0g.tar.gz. Let's
add a -L so we follow redirects automatically.

MozReview-Commit-ID: AuZ98jGidzl
2018-04-02 19:22:07 -07:00
Steve Fink
998d28de0a Update sixgill to ab06fc42cf0f for bug 1450379, r=bhackett 2018-03-30 15:33:15 -07:00
Steve Fink
2dd8afab27 Bug 1449066 - Switch hazard builds to GCC 6, r=froydnj 2018-03-28 18:15:51 -07:00
Mike Shal
9d3ce63bdd Bug 1387098 - Tup toolchain task; r=froydnj
Build the latest tup master branch with the LD_PRELOAD dependency
checker.

MozReview-Commit-ID: ALfnnmOZrky
2018-02-20 11:12:08 -05:00
Ted Mielczarek
98ae944f41 bug 1446665 - update sccache to pick up a fix for a PGO build failure. r=froydnj
MozReview-Commit-ID: 5uCjHMZc7JJ
2018-03-23 11:37:47 -04:00
Ted Mielczarek
02a8609a09 bug 1445631 - update sccache to pick up a fix in the jobserver crate. r=chmanchester
MozReview-Commit-ID: JtHea27GTTq
2018-03-16 13:41:52 -04:00
Steve Fink
a4790d37a6 Bug 1444543 - toolchain: build sixgill for gcc 6.4.0, r=glandium 2018-03-06 10:15:29 -08:00
Steve Fink
340842b98a Bug 1443233 - Update sixgill to use same qualification settings for all type printing, r=bhackett 2018-03-06 08:37:02 -08:00
Ted Mielczarek
1f27a1b61c bug 1445218 - update sccache to 0.2.6. r=froydnj
MozReview-Commit-ID: FxFmXcAHC5A
2018-03-13 08:31:06 -04:00
David Major
16ea81de55 Bug 1443827: Move clang-cl static analysis builds to their own toolchain task. r=froydnj
Note that static analysis was the only remaining user of the 32-bit toolchain, so I've removed win32-clang-cl (or rather, renamed it to win32-clang-cl-st-an).
2018-03-08 17:25:52 -05:00
Ralph Giles
b30d2e8b33 Bug 1428197 - Reject generic channels in rust repack jobs. r=glandium
Ensure better determinism when creating rust toolchain packages
by rejecting generic channels like 'stable' or 'nightly'. Instead,
insist on a specific version or date.

The current valid dates for beta and nightly can be obtained with:

curl -s https://static.rust-lang.org/dist/channel-rust-beta.toml | grep ^date
curl -s https://static.rust-lang.org/dist/channel-rust-nightly.toml | grep ^date

MozReview-Commit-ID: I0DXw1KJGZz
2018-02-26 16:54:36 -08:00
Nick Alexander
439431d5b2 Bug 1440428 - Remove Proguard JAR entirely. r=jchen
The Proguard dependency is now managed by Gradle.

MozReview-Commit-ID: EOvKSE5z28P
2018-02-26 11:37:41 -08:00
Jesse Schwartzentruber
855f59b761 Bug 1425406 - Add a linux64 clang 6 (pre) toolchain with the macosx64 native sanitizer dylibs. r=froydnj
MozReview-Commit-ID: Ig9xpBDcjNu
2018-02-08 16:58:12 -05:00
Mike Hommey
a2fe5b52ff Bug 1436208 - Avoid infinite loops in llvm-dsymutil when rust produces broken self-referencing DIEs. r=nalexander
See some details on https://bugs.llvm.org/show_bug.cgi?id=36257.
2018-02-07 08:23:10 +09:00
Nathan Froyd
c94eb25db7 Bug 1412006 - part 3 - add an Android NDK repackaging task; r=dustin,nalexander; f=glandium
We'd like to install the NDK through the Android SDK manager.  But we
can't pin versions of the NDK with the SDK manager, and so Google
can silently upgrade the NDK on us.  Since that is undesirable, this is
the next best thing.

With the toolchain task in hand, we can make all the relevant tasks
depend on the toolchain task and remove the download of the NDK from
tooltool as well.
2018-02-01 09:59:23 -05:00
Nick Alexander
41e5de9048 Bug 1411654 - Part 1: Upgrade to Android-Gradle 3.0+ and build-tools;26.0.2. r=maliu
New Android-Gradle plugins pin the build-tools version, and we want to
be consistent between Gradle and moz.build.

MozReview-Commit-ID: ApWS4rHzPuH
2017-10-26 11:00:36 -07:00
Nick Alexander
32c21da823 Bug 1411654 - Pre: Don't block Google's maven repository. r=maliu
Turns out Google's maven repository doesn't publish checksums.  I
can't imagine why not, but there it is.  We have to think more about
whether to trust the artifacts downloaded from maven.google.com.

MozReview-Commit-ID: CdWijorq1IV
2017-10-27 14:50:27 -07:00
Tom Ritter
1d6d42232b Bug 1432319 Bump MinGW version to incorporate Process Mitigation structs needed by the sandbox r=froydnj
MozReview-Commit-ID: HnYuQa8DflY
2018-01-27 19:44:45 -06:00
Emilio Cobos Álvarez
5f137ba3ee Bug 1432563: Fetch rustfmt when repackaging rust. r=rillian
I tested this on automation and the build went on, though I couldn't test
the bindgen output because the build right now is busted on one dependent crate
with rust beta, which is the first toolchain that has this package, and will go
to release shortly.

This should work though! If I need more changes I'll adjust them in bug 1432153.

You can test the repackage manually with repack_rust.py --toolchain beta, for
example.

MozReview-Commit-ID: GI2f6vGVqTe
2018-01-27 02:02:17 +01:00
Mike Hommey
7f4d0bdb8b Bug 1432397 - Switch mingw builds to a Debian stretch-based docker image. r=dustin
Don't build ucl when building upx, Debian stretch has a recent enough
version. In fact, the last upstream version doesn't build with GCC in
Debian stretch (http://bugs.debian.org/811707)
2018-01-26 14:39:07 +09:00
Tom Ritter
7436b1c413 Bug 1431809 Bump MinGW version for new Product Constants r=froydnj
MozReview-Commit-ID: CmxZTdyHP3X
2018-01-23 17:57:08 -06:00
Tom Ritter
9b5528cb52 Bug 1432009 Fix MinGW build failure with d_write3.h r=jfkthame
Bump mingw version to get the newest commit and do not include the
un-needed dw-extras.h on MinGW (thanks Jacek!)

MozReview-Commit-ID: OjO93XHCxs
2018-01-22 15:01:49 -06:00
Mike Hommey
2171ce05f1 Bug 1429056 - Add llvm-symbolizer to the llvm-dsymutil toolchain. r=ted
llvm-symbolizer is necessary to get symbols in llvm-dsymutil crash
dumps. While we could use the one from clang during the build, it's
better if the llvm-dsymutil toolchain is standalone for local testing.
2018-01-19 19:00:06 +09:00
Mike Hommey
edc694c351 Bug 1429056 - Don't strip llvm-dsymutil. r=ted
When I originally wrote the llvm-dsymutil build script in bug 1430315,
I wasn't setting CMAKE_BUILD_TYPE to Release, and was ending up with
a very large binary (> 300MB), so I stripped it.

When I later set CMAKE_BUILD_TYPE to Release, I left the manual
stripping on, but that removes symbols that are useful for stacktraces
when dsymutil crashes (the Release type still leaves out debug info).
2018-01-19 10:16:11 +09:00
Gregory Szorc
4042ed08ac Bug 1430908 - Use --progress=dot:mega with wget; r=glandium
By default, wget prints dots every 1k bytes. This can render a
lot of output for large files. We switch to the "mega" style, which
makes each dot represent 64k, thus reducing output by up to 64x.

We also force the use of dot display. By default, it uses "bar"
which attempts to use terminal formatting if possible. Since most
of this code executes in CI and terminal control characters can
interfere with logged output, we force the use of "dot." (Although
wget appears to automatically switch to dot in TC today. But
consistency is good.)

MozReview-Commit-ID: IpTWJdcauTV
2018-01-16 14:24:31 -08:00
Ryan VanderMeulen
f1e69cacb1 Backed out 20 changesets (bug 1411654) for incorrect android:debuggable. r=nalexander, a=RyanVM
Backed out changeset cfad693be918 (bug 1411654)
Backed out changeset 55776829a744 (bug 1411654)
Backed out changeset c5bf85d56fed (bug 1411654)
Backed out changeset c270f97bb0da (bug 1411654)
Backed out changeset fde9bf9c14c3 (bug 1411654)
Backed out changeset 01836fd98c63 (bug 1411654)
Backed out changeset 730a70767743 (bug 1411654)
Backed out changeset 690e265c684c (bug 1411654)
Backed out changeset f918500d9cf5 (bug 1411654)
Backed out changeset cec2b8828cc8 (bug 1411654)
Backed out changeset 76085ddd5ac7 (bug 1411654)
Backed out changeset 2b37201606f5 (bug 1411654)
Backed out changeset d0d513d1c379 (bug 1411654)
Backed out changeset e7b0cc801cf1 (bug 1411654)
Backed out changeset 901b304603d9 (bug 1411654)
Backed out changeset 373c9a71d945 (bug 1411654)
Backed out changeset 3dc3beab95f8 (bug 1411654)
Backed out changeset 22a861db1573 (bug 1411654)
Backed out changeset 0850b319efd4 (bug 1411654)
Backed out changeset d276d3deba05 (bug 1411654)
2018-01-17 15:55:38 -05:00
Mike Hommey
2b206df67f Bug 1430315 - Add a toolchain job to build llvm-dsymutil independently. r=rillian
We've had problems with crashes in llvm-dsymutil for a while, and while
they are, in essence, due to the fact that rustc produces bad debug
info, they are a hurdle to our builds. The tool comes along clang, and
updating clang is not necessarily easy (witness bug 1409265), so, so
far, we've relied on backporting fixes, which can be time confusing
(witness bug 1410148).

OTOH, llvm-dsymutil is a rather specific tool, that doesn't strictly
need to be tied to clang. It's only tied to it because it uses the llvm
code to do some of the things it does, and it's part of the llvm source
tree. But it could just as well be a separate tool, like it was(is?) on
OSX.

So, we add a toolchain job to build it from the llvm source,
independently from clang, so that we can update it separately, if we
hit new crashes that happen to already be fixed on llvm trunk. It will
also allow to more easily update after upstream fixes crashes after we
report them.
2018-01-16 16:23:33 +09:00
Nick Alexander
7dcdfdb7b9 Bug 1411654 - Part 1: Upgrade to Android-Gradle 3.0+ and build-tools;26.0.2. r=maliu
New Android-Gradle plugins pin the build-tools version, and we want to
be consistent between Gradle and moz.build.

MozReview-Commit-ID: ApWS4rHzPuH
2017-10-26 11:00:36 -07:00
Nick Alexander
80b1710d7e Bug 1411654 - Pre: Don't block Google's maven repository. r=maliu
Turns out Google's maven repository doesn't publish checksums.  I
can't imagine why not, but there it is.  We have to think more about
whether to trust the artifacts downloaded from maven.google.com.

MozReview-Commit-ID: CdWijorq1IV
2017-10-27 14:50:27 -07:00
Dorel Luca
338957886c Backed out 19 changesets (bug 1411654) for Android nightly bustages a=backout
Backed out changeset 649e7aa405ca (bug 1411654)
Backed out changeset c2e51b70519f (bug 1411654)
Backed out changeset a371f3ef4312 (bug 1411654)
Backed out changeset db978e230556 (bug 1411654)
Backed out changeset 56538ed998cf (bug 1411654)
Backed out changeset 6ff0cdf46a3d (bug 1411654)
Backed out changeset 0e493bacc5e3 (bug 1411654)
Backed out changeset 23cbcf427745 (bug 1411654)
Backed out changeset eda74143389f (bug 1411654)
Backed out changeset 359fadf9b3e9 (bug 1411654)
Backed out changeset 5c64eda20f1e (bug 1411654)
Backed out changeset bffb6a5b78d1 (bug 1411654)
Backed out changeset 43787f4089c3 (bug 1411654)
Backed out changeset 9141bbdfd13b (bug 1411654)
Backed out changeset 108674372ef7 (bug 1411654)
Backed out changeset fb15e1f54987 (bug 1411654)
Backed out changeset 264476c77210 (bug 1411654)
Backed out changeset d23f467218da (bug 1411654)
Backed out changeset 78576ff98660 (bug 1411654)
2018-01-13 15:17:49 +02:00
Coroiu Cristina
ed8aa474e7 Merge inbound to mozilla-central r=merge a=merge 2018-01-13 11:55:23 +02:00
Csoregi Natalia
7c97c4e28c Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2018-01-13 00:02:18 +02:00
Mike Hommey
390c702537 Bug 1430030 - Enable parallelism when building wine, upx and fxc2. r=ted 2018-01-12 21:25:59 +09:00