Commit Graph

316 Commits

Author SHA1 Message Date
Mike Hommey
b7f54b9288 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.

--HG--
extra : rebase_source : b814353b4b4632e46646a24b8f54c5300618ff49
2018-01-16 16:23:33 +09:00
Nick Alexander
47c107e74f 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

--HG--
extra : rebase_source : 38a9781c472d858f3300cbbcbdc6d2311c465713
2017-10-26 11:00:36 -07:00
Nick Alexander
e6080c2ce7 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

--HG--
extra : rebase_source : a884971e51ce7b1ff993754b130f462c476646ab
2017-10-27 14:50:27 -07:00
Dorel Luca
ab63c465d9 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)

--HG--
rename : mobile/android/app/src/main/res/values-v17/themes.xml => mobile/android/base/resources/values-v17/themes.xml
2018-01-13 15:17:49 +02:00
Coroiu Cristina
c6a942e1bf Merge inbound to mozilla-central r=merge a=merge 2018-01-13 11:55:23 +02:00
Mike Hommey
68e591a606 Bug 1430270 - Disable ccache in hazard builds. r=nalexander
I don't intend to install ccache in the Debian build images. Hazard
builds are the only builds running on the desktop-build image still
using ccache somehow, and that gains them nothing, since the ccache
directory is not set to a cached directory on taskcluster, meaning
the build always starts with an empty cache. If anything, this currently
makes the build slower.

Eventually, those builds should be able to use sccache, once the
necessary setup moves out of mozconfig.cache.

--HG--
extra : rebase_source : fba6dab78b25ea61892cbe6127ead36da395b0e0
2018-01-13 06:33:12 +09:00
Csoregi Natalia
bed10b400c Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2018-01-13 00:02:18 +02:00
Mike Hommey
eb3cf6d41b Bug 1430030 - Enable parallelism when building wine, upx and fxc2. r=ted 2018-01-12 21:25:59 +09:00
Mike Hommey
a6d328e83e Bug 1430087 - Build sccache with system GCC/binutils. r=nfroyd
It was failing to build with the GCC/binutils on the CentOS-based docker
image, but it doesn't with the Debian-based one, so we can remove the
dependency on the gcc toolchain task. This allows sccache to remain
untouched when we change the gcc build scripts, and more importantly,
this allows it to depend on no toolchain that requires building things.

This makes it now possible to use sccache as a dependency for all other
toolchains jobs that compile, if that's beneficial (which might not be
the case, given the current sccache retention time, but at least it's a
viable option, now)
2018-01-13 05:57:57 +09:00
Nick Alexander
e820c8ca18 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

--HG--
extra : rebase_source : 5a5730b4b9ce84af40a7c73c4f1abba017103f02
2017-10-26 11:00:36 -07:00
Nick Alexander
a0865e7202 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

--HG--
extra : rebase_source : e4373273e7aea7df79d70b5fbc233233a84d2360
2017-10-27 14:50:27 -07:00
Mike Hommey
714ba3c60d Bug 1428967 - Allow to build cctools-port on Debian. r=ted
There is no /lib64 on Debian. OTOH, one doesn't need to give the full
path to a system library in LDFLAGS, so just use -l syntax instead.

--HG--
extra : rebase_source : b795f97ab209499824afa5ef1aee9da52657ceb9
2017-12-30 12:57:51 +09:00
Mike Hommey
d0497c863b Bug 1427266 - Statically link libdmg-hfsplus against OpenSSL. r=gps
libcrypto, part of OpenSSL, and that dmg links against, has a varying
ABI, and something built against libcrypto on Centos won't run on Debian
and vice versa. It might not even work between versions of the same OS
(e.g. Debian 7 vs. Debian 9).

Because of that, it is desirable to statically link it.

This incorporates https://github.com/mozilla/libdmg-hfsplus/pull/1
and sets OPENSSL_USE_STATIC_LIBS when building libdmg-hfsplus.

--HG--
extra : source : 78f2064b3811db58b364c32ce9b58a3f2dcaf8f8
2017-12-28 18:19:31 +09:00
Ted Mielczarek
d9f364de3f bug 1401647 - Fix spidermonkey mozjs / rust-bindings builds. r=nalexander
The spidermonkey mozjs and rust-bindings builds run sed on
$topsrcdir/.cargo/config.in to generate the cargo config they use, but
they previously only replaced the @top_srcdir@ substitution. This patch
makes them replace any other substitutions with an empty value to add
a bit of future-proofing.

MozReview-Commit-ID: 1DzP9vXxHMD

--HG--
extra : rebase_source : e8c0268a2a6e91ca2000b340beee2dcff0636591
2018-01-03 14:51:52 -05:00
Mike Hommey
ebcec7e922 Followup for bug 1421100: deterministically download rustc 1.23.0-beta.2. r=me, a=bustage on a CLOSED TREE 2018-01-04 14:52:20 +09:00
Mike Hommey
de81c42aa0 Bug 1426785 - Allow more mach artifact toolchain calls to not use a tooltool manifest. r=gps
We're about to remove some tooltool manifests, so we need those calls to
work properly when TOOLTOOL_MANIFEST is not set.

--HG--
extra : rebase_source : 89d41021a87915dc9133e61543352e3bda1dace4
2017-12-22 07:48:14 +09:00
Coroiu Cristina
dbb27acb6d Backed out 5 changesets (bug 1426785) for failing repackage the nightly build on Linux a=backout.
Backed out changeset 08b5850633de (bug 1426785)
Backed out changeset 61453b6473f1 (bug 1426785)
Backed out changeset 851ce8944b41 (bug 1426785)
Backed out changeset 386cd0532519 (bug 1426785)
Backed out changeset 2a52bf9e0898 (bug 1426785)
2017-12-24 14:03:02 +02:00
Mike Hommey
399ebca32e Bug 1426785 - Allow more mach artifact toolchain calls to not use a tooltool manifest. r=gps
We're about to remove some tooltool manifests, so we need those calls to
work properly when TOOLTOOL_MANIFEST is not set.

--HG--
extra : rebase_source : 38ca0e3b894097ed3667901b05af79062a6c82c2
2017-12-22 07:48:14 +09:00
Mike Hommey
40aecc07ad Bug 1426553 - Autoconf-related changes to spidermonkey jobs. r=nalexander
On Debian, the autoconf binary is autoconf2.13 while it is autoconf-2.13
on Centos.

In make-source-package.sh, we need to run autoconf to generate the
old-configure to include in the package, so try both.

In hazard-analysis.sh, we actually don't need autoconf itself, so just
copy configure.in to configure.

--HG--
extra : rebase_source : d21075394c69cd7cd6738da645173eb29f4a1259
2017-12-21 09:41:19 +09:00
Mike Hommey
fbaf337e4b Bug 1426322 - Separate gcc and mingw32-gcc. r=gps
The "contract" for toolchains is that extracting foo.tar.xz creates a
directory named foo/. That is however not true for mingw32.tar.xz, which
extracts into gcc/, possibly overwriting files from the gcc.tar.xz
archive (which is also used for mingw builds, for the host part).

This is also not true for nsis.tar.xz, but it reportedly has problems
when it's not in the same directory as mingw32.

But mingw32 doesn't actually need to be mixed with gcc, so it's better
to separate them as they are supposed to be.

--HG--
extra : rebase_source : 30d90af64459bbb31bc076e48f3c661fa9cd4a79
2017-12-20 13:46:53 +09:00
Mike Hommey
a588499893 Bug 1426321 - Explicitly enable tar wildcard support when repacking proguard. r=nalexander
While on Centos --wildcards is the default, it is not on Debian.

--HG--
extra : rebase_source : cff03dfb587d295c4e8f8893948a9775d6e5e8b5
2017-12-20 16:01:51 +09:00
Tom Prince
df534f30a9 Bug 1426209: Allow passing `--extra-config-path in L10N tasks; r=jlund
MozReview-Commit-ID: FCG2K9L5Z3T

--HG--
extra : rebase_source : 9536c96f8aa7445149a7075b34310870d768f219
2017-11-27 13:47:29 -07:00
Steve Fink
6c225d1905 Bug 1351559 - Make fuzzing builds match firefox more closely, r=jonco
--HG--
extra : rebase_source : af836bee8642447855b50913ebbe1e345ecaed15
2017-12-15 10:13:12 -08:00
Ting-Yu Chou
0bc952653b Bug 1360650 part 2 - Export VSINSTALLDIR so LLVM_ENABLE_DIA_SDK will be set. r=ehsan 2017-12-18 11:28:20 -05:00
Ted Mielczarek
8b7140ce04 bug 1424323 - remove MOZ_AUTOMATION_UPLOAD_SYMBOLS from in-tree mozconfigs. r=rillian
With all of our builds in Taskcluster now, we should never be uploading
symbols from build tasks. Unfortunately Windows builds were still doing so.
This patch removes MOZ_AUTOMATION_UPLOAD_SYMBOLS from all the in-tree
mozconfigs and a few other places so that it should always default off
(per moz-automation.mk). The rest of the uploadsymbols bits will be
removed once Thunderbird fixes their automation.

This patch was mostly autogenerated by running:
rg --files-with-matches UPLOAD_SYMBOLS browser/config/mozconfigs/ mobile/android/config/mozconfigs/ | xargs sed -ri '/.*UPLOAD_SYMBOLS.*/d'
sed -ri '/.*UPLOAD_SYMBOLS.*/d' build/unix/mozconfig.linux build/mozconfig.win-common build/macosx/local-mozconfig.common build/mozconfig.automation

Then mobile/android/config/mozconfigs/common and
taskcluster/scripts/builder/build-linux.sh were hand-edited.

MozReview-Commit-ID: Cy8kSEodSg4

--HG--
extra : rebase_source : 01caf1651b4eb428313e1f371aa585f8f34c4151
2017-12-08 13:50:17 -05:00
Christian Holler
107b880d6a Bug 1415689 - Add Clang 6 (pre) and use it for ASan builds. r=froydnj
MozReview-Commit-ID: 34rcG7gEswz
2017-11-10 10:14:26 +01:00
Tom Prince
3062e80d46 Bug 1415618: Add support to taskcluster to specifying extra paths to mozharness. r=jlund
MozReview-Commit-ID: 7CGQgSUUg0n

--HG--
extra : rebase_source : 2a184e66c3413e9e206b999b1340a6ecb52bd234
extra : source : 71510fd07ef52f8539ed37968e2ec7ea9c1a5fdd
2017-11-14 15:16:22 -07:00
Brindusan Cristian
ef3b43fb44 Backed out 4 changesets (bug 1415618) for build bustage failures. r=backout on a CLOSED TREE
Backed out changeset 71510fd07ef5 (bug 1415618)
Backed out changeset 780f67a36d6d (bug 1415618)
Backed out changeset 5ecdc55db739 (bug 1415618)
Backed out changeset be3173822987 (bug 1415618)
2017-11-16 05:53:38 +02:00
Tom Prince
eea866d632 Bug 1415618: Add support to taskcluster to specifying extra paths to mozharness. r=jlund
MozReview-Commit-ID: 7CGQgSUUg0n

--HG--
extra : rebase_source : e31e1f70d0f54b4c1d6535d004f49267ea3071b5
2017-11-14 15:16:22 -07:00
Marco Castelluccio
14a1047ffd Bug 1415568 - Support applying patches to Windows clang. r=froydnj
--HG--
extra : rebase_source : ed53f564166f6c26ed4f7fc0dabcc4582116ddbf
2017-11-08 17:23:12 +01:00
Nick Alexander
b4332702f0 Bug 1414678 - Pass through MOZ_SCM_LEVEL, so that secret fetching works. r=Callek
MozReview-Commit-ID: IqtMzMsjxOZ

--HG--
extra : rebase_source : eefc31daa43894a08c9bc9eb1da40faeb466c2a5
extra : source : a5a189a375dcc63af11dec3afa2d6491e52ddc4e
2017-11-06 11:32:40 -08:00
Sebastian Hengst
f5e52adeea merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-11-07 12:43:06 +02:00
David Major
375f8abff8 Bug 1414304 - Use VS2017 for the sccache toolchain build. r=cmanchester 2017-11-06 17:15:13 -05:00
David Major
422a57aa5b Bug 1414306 - Use VS2017 for the gn toolchain task. r=cmanchester 2017-11-06 17:14:45 -05:00
Ralph Giles
1999c8d8f8 Bug 1414906 - Build sccache with openssl 1.1.0g. r=froydnj
Fixes bn_sqrx8x_internal carry bug on x86_64 (CVE-2017-3736)

MozReview-Commit-ID: 5qF9NfCi3XX

--HG--
extra : rebase_source : 287dfb7198b2c7cce065010e5c603a4bb2fe986f
2017-11-06 10:16:07 -08:00
Gregory Szorc
29dc336611 Bug 1413687 - Move hazard build scripts out of mozharness; r=sfink
These scripts are included by hazard-analysis.sh. That's their only
reference in repo.

We could probably inline these scripts. But let's start by moving them
out of mozharness since no active mozharness based task is using them.

MozReview-Commit-ID: 13oen42Txmh

--HG--
rename : testing/mozharness/scripts/spidermonkey/build.browser => taskcluster/scripts/builder/hazard-browser.sh
rename : testing/mozharness/scripts/spidermonkey/build.shell => taskcluster/scripts/builder/hazard-shell.sh
extra : rebase_source : 782f7b3f3537cfefb51b0e5f1b459c8ad0daca5b
2017-11-06 11:02:24 -08:00
David Major
2d71b41c6f Bug 1412952 - Build clang-cl itself with VS2017. r=froydnj 2017-11-03 12:29:58 -04:00
Nathan Froyd
c32f61a4c3 Bug 1412888 - bump the sccache revision to include argument parsing fixes; r=ted.mielczarek 2017-10-30 12:31:07 -04:00
David Major
e247435916 Bug 1408789 - Switch Windows builders to VS2017 15.4.1 with SDK 10.0.16299.0. r=gps 2017-10-27 11:15:58 -04:00
Ted Mielczarek
05e4287341 bug 1408836 - update sccache to 0.2.2 to fix a Rust caching regression from Rust 1.20. r=glandium
MozReview-Commit-ID: K7dAk6wLGl7

--HG--
extra : rebase_source : e4637944c211c6ea4bc7bbe6035d1345f3057aaf
2017-10-25 21:18:27 -04:00
Tom Ritter
211636b4b8 Bug 1409915 Bump MinGW version to fix a broken IDWriteFontFace1 declaration r=froydnj
MozReview-Commit-ID: 6An97afawC5

--HG--
extra : rebase_source : 2b2c4a098e7b9ea0d6065d254b81547bd6165109
2017-10-18 19:23:33 -05:00
Nick Alexander
af26e68984 Bug 1366644 - Part 3a: Update Android build-tools (25.0.3), Gradle (3.4.1), Android-Gradle (2.3.3). r=maliu
The goal is to use a newer Android-Gradle build plugin version (2.3.3
is latest stable).  That requires a modern Gradle (anything 3.3+, but
3.4.1 is the default from my Android Studio), and also a newer
build-tools (25.0.3 is latest stable).

The locations of lint output changed, and we want to use the standard
output location because it's difficult to accommodate variant details
in custom names.  We change the location of findbugs output to follow
suit.

This requires either:

- fixing lint errors
- adding to the lint whitelist
- using the new lint baseline

It's best to use the new lint baseline, which will happen in the next commit.

MozReview-Commit-ID: D19FzIDCJrE

--HG--
extra : rebase_source : 12d132c0c3e0dbe2b8873b31360ea96d612de44c
2017-10-16 15:09:15 -07:00
Nick Alexander
01b0f892eb Bug 1366644 - Pre: Print Android sdkmanager package listing. r=maliu
This is simply diagnostic; it's nice to see what the versions of the
Android packages installed are, like:

Installed packages:
  Path                              | Version      | Description                       | Location
  -------                           | -------      | -------                           | -------
<snip>
  platforms;android-23              | 3            | Android SDK Platform 23           | platforms/android-23/
  tools                             | 26.0.1       | Android SDK Tools 26.0.1          | tools/

This is really useful because it's not possible to pin most packages
to specific versions; that is, we can only install latest "tools", not
"tools;26.0.1".

MozReview-Commit-ID: HgZLGCAObEs

--HG--
extra : rebase_source : 33e5c9f81d05551c9e167eac62009f1de023b410
2017-10-16 13:24:47 -07:00
Mike Hommey
b8008f9d30 Bug 1409260 - Remove comments about tc-vcs. r=dustin,gps
--HG--
extra : rebase_source : 6dd6331f137e7ad8b10acc55e25881877855258b
2017-10-17 15:12:41 +09:00
Sebastian Hengst
32f7c8fec3 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 1h3kZyrtqSt
2017-10-17 11:45:16 +02:00
David Major
fe61232e43 Bug 1409044 - Pass the tooltool authentication file in Spidermonkey builds. r=Callek 2017-10-16 11:43:34 -04:00
Tom Ritter
302cef9ace Bug 1407359 Set up a framework for patching the MinGW toolchain r=glandium
MozReview-Commit-ID: 8HtjLXAIXTP

--HG--
extra : rebase_source : b32cb4ac931c9dc599572bc5e726e4d68982c8a4
2017-10-16 20:52:47 -05:00
Nick Alexander
e83bd0bc4e Bug 1405413 - Migrate Gradle dependency fetching to toolchain dependencies. r=dustin
MozReview-Commit-ID: 6OOD4mhICG1

--HG--
rename : taskcluster/scripts/builder/build-android-dependencies.sh => taskcluster/scripts/misc/android-gradle-dependencies.sh
rename : taskcluster/scripts/builder/build-android-dependencies/after.sh => taskcluster/scripts/misc/android-gradle-dependencies/after.sh
rename : taskcluster/scripts/builder/build-android-dependencies/before.sh => taskcluster/scripts/misc/android-gradle-dependencies/before.sh
rename : taskcluster/scripts/builder/build-android-dependencies/nexus.xml => taskcluster/scripts/misc/android-gradle-dependencies/nexus.xml
extra : rebase_source : 8c476377ded6b7177b3ba45f648431a08468948d
2017-10-13 12:59:04 -07:00
Sebastian Hengst
87626a0ece merge mozilla-central to autoland. r=merge a=merge 2017-10-14 00:02:17 +02:00
Sebastian Hengst
373bdd8602 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 9adaYBJ4tlo
2017-10-13 23:37:41 +02:00
Steve Fink
2a91809c78 Bug 1339989 - Create a sixgill compilation toolchain job, r=glandium
--HG--
extra : rebase_source : ccd11f3522b6c87a59bb9837a6a1d338cfbb8608
2017-10-09 17:49:29 -07:00
Nick Alexander
fb7ea6fbab Bug 1405412 - Post: Remove JDK repackaging script. r=dustin
I don't think (the output of) this script is used anywhere.

MozReview-Commit-ID: DwMFtpozjNL

--HG--
extra : rebase_source : 005086039f520ba116534ab47ee49616c6958e85
2017-10-05 16:57:40 -07:00
Nick Alexander
daf88e8cc6 Bug 1405412 - Migrate Android SDK to android-sdk-linux toolchain task. r=dustin
The only tricky piece here is that the resulting toolchain archive is
private, and uses a newly allocated Task Cluster scope
(queue:get-artifact:project/gecko/android-sdk/*) to restrict access to
the archive.  All SCM levels (1, 2, 3) have been given the new scope:
see https://tools.taskcluster.net/auth/roles/moz-tree:level:1 and
friends.

MozReview-Commit-ID: CcDqDOHODpe

--HG--
extra : rebase_source : 81dbb065f2a3c4e7733e964be66adb1733db52c6
2017-10-03 11:45:27 -07:00
Mike Hommey
cfff009a09 Bug 1408277 - Add a toolchain job for clang 5.0. r=froydnj
--HG--
extra : rebase_source : 6a5a3e1db7b8a754181468914712a38f162d0f0d
2017-10-13 13:22:41 +09:00
Nick Alexander
5e900e07f6 Bug 1352599 - Part 1: Add a Proguard toolchain task for Android builds. r=froydnj
MozReview-Commit-ID: 5lyHGLkzyg

--HG--
extra : rebase_source : 63824f309d216eab06ea34a6db244eb299139f58
2017-10-02 13:27:51 -07:00
Tom Ritter
ea7e05e401 Bug 1407289 Bump MinGW commit r=froydnj
MozReview-Commit-ID: KkG5ODa5WWl

--HG--
extra : rebase_source : ae9f21f489b218982e8d46134c1511ac709e8274
2017-10-10 20:42:00 -05:00
Sebastian Hengst
758e7bad02 Backed out changeset 52a05ad77fa5 (bug 1352599) for failing build at python/mozbuild/mozbuild/test/configure/lint.py::Lint::test_mobile_android. r=backout on a CLOSED TREE 2017-10-12 23:43:02 +02:00
Sebastian Hengst
4b5ec86ca9 Backed out changeset 5f4ff0de7242 (bug 1405412) 2017-10-12 23:41:30 +02:00
Sebastian Hengst
71825d3c20 Backed out changeset 44f885bc7c22 (bug 1405412) 2017-10-12 23:41:25 +02:00
Nick Alexander
44b6375075 Bug 1405412 - Post: Remove JDK repackaging script. r=dustin
I don't think (the output of) this script is used anywhere.

MozReview-Commit-ID: DwMFtpozjNL

--HG--
extra : rebase_source : 36b3cbe1a6a9e5cd163782c1c13653be8558a03a
2017-10-05 16:57:40 -07:00
Nick Alexander
962b96fa44 Bug 1405412 - Migrate Android SDK to android-sdk-linux toolchain task. r=dustin
The only tricky piece here is that the resulting toolchain archive is
private, and uses a newly allocated Task Cluster scope
(queue:get-artifact:project/gecko/android-sdk/*) to restrict access to
the archive.  All SCM levels (1, 2, 3) have been given the new scope:
see https://tools.taskcluster.net/auth/roles/moz-tree:level:1 and
friends.

MozReview-Commit-ID: CcDqDOHODpe

--HG--
extra : rebase_source : 062bca8c65556f0f46e9c9cc6cd81eb04cf2b522
2017-10-03 11:45:27 -07:00
Nick Alexander
f5c43c8ddc Bug 1352599 - Part 1: Add a Proguard toolchain task for Android builds. r=froydnj
MozReview-Commit-ID: 5lyHGLkzyg

--HG--
extra : rebase_source : dc75874944d9559a69f495cbca5f492bf464c9d4
2017-10-02 13:27:51 -07:00
Mike Hommey
f813868d70 Bug 1408284 - Build sccache with gcc instead of clang. r=ted
When adding sccache toolchain jobs in bug 1381772, building with gcc
failed, and building with clang worked, so I just went with the path of
least resistance. That's however a suboptimal position in the dependency
graph, so it's still preferable to use gcc if possible.

Looking exactly how it fails, it turns out it's because without CC being
set, ring wants to build with "cc", which ends up being the system gcc
instead of ours (our gcc archive doesn't provide "cc", only "gcc"), and
it is too old to support the compiler flags ring uses.

So setting CC does the trick.

--HG--
extra : rebase_source : 4c657664957dff1f7aebe470e0440a52c9e280e5
2017-10-13 14:27:13 +09:00
Tom Ritter
14ad913e94 Bug 1403058 Add the MinGW32 browser build to Taskcluster r=glandium
MozReview-Commit-ID: EGWX1EfqBNJ

--HG--
extra : rebase_source : 4cbe0340bad06d4421cd0b106d1dc7a4ab2ec013
2017-10-05 11:46:32 -05:00
Ralph Giles
0c8e4be1c2 Bug 1391427 - Port the repack_rust script to taskcluster. r=glandium
Copy the repack_rust.py from the rust-build docker container
so it can be used more generally by other taskcluster jobs.

Add --host, --target, and --suffix switches, allowing control
of the packaged toolchain and standard library builds from
the command line.

This drops the previous default behaviour of packaging all
supported platforms and targets.

Add a hard-coded copy of the Rust release signing key to
the script and add it to the running user's gpg config
so we can validate downloaded artifacts from the project
in automation.

Remove the keybase artifact validation since it requires
out-of-project network services and doesn't provide much
advantage in automation.

Calculate the SHA-2 checksum during download and remove
the dependency on shasum/sha256sum command-line tools.

Use more python for filesystem an process interaction
in general.

Create a generic rustc.tar.* package to correctly match
the unversioned unpack dirctory name.

Add support for copying the package to an output directory
if the UPLOAD_DIR environment variable is set. This lets
us hook up the script to taskcluster toolchain jobs without
an external wrapper.

MozReview-Commit-ID: 68LmY3QVU8V

--HG--
extra : rebase_source : f6329056d518ad2cd25faa5c71b22130cbc65c8f
2017-09-12 16:17:00 -07: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
Nick Alexander
d017b0874e Bug 1396098 - part 1 - base android-build on Debian instead of CentOS; r=glandium,dustin
CentOS 6 is pinned to glibc 2.12, but newer Android build-tools (like
aapt) require glibc 2.14.  It's not possible to safely upgrade CentOS
6 distributions to glibc 2.14.

CentOS 7 is pinned to glibc 2.17, which is new enough for newer
Android build-tools. However, I had great difficulty bringing forward
our existing centos:6 Docker image to centos:7.  In particular,
installing recent enough Mercurial, git, Python, and pip versions was
difficult enough that I elected to not pursue this approach.

Instead, I've elected to follow glandium's suggestion from
https://bugzilla.mozilla.org/show_bug.cgi?id=1370119#c5: base on
Debian with snapshots.debian.org for reproducibility.

The most significant changes here:

- using Debian's snapshots repository
- using Python and related tools provided by Debian and baked into the
  build image
- using the JDK and JRE provided by Debian and baked into the build
  image, rather than versions from tooltool (or eventually a toolchain
  build)

Moving the builds over to use this image will follow in the patches
ahead.
2017-09-18 15:38:22 -04:00
Steve Fink
7997149dd2 Bug 1400442 - Trim down whitelists to only what is required, and mark all known issues with bug numbers, r=jonco
I also snuck in some last-minute assertions and minor fixes into this patch:

- don't stop reporting for a callee if we've seen it already (or rather, make the reachable set local to a root rather than global to all roots). This slows down runs with hundreds of hazards, but results in every problematic root being reported, for a more accurate count.

- annotate away some thread assertions

- special-case annotation for bug 1400435 since it's a whole family of hazards

--HG--
extra : rebase_source : ac7335d45e3e0772d34cb42cc6a3f628564fd3d1
2017-09-15 17:18:13 -07:00
Gregory Szorc
972bb63fcc Backed out changesets ef813898b5d3, ce228388aaf6, and c798f482b2c5 (bug 1396098) for violating TC cache constraints
CLOSED TREE

--HG--
extra : amend_source : 84120d6bacb5d72a9fbe41e4c3b405d63825da7c
extra : histedit_source : 8320c2193761b745f10850055ee74a3c9ac73615%2Cfbc2a28d8c5004a53305ef858ca5aea4245691e0
2017-09-18 13:30:43 -07:00
Nick Alexander
c800d7d1f7 Bug 1396098 - part 1 - base android-build on Debian instead of CentOS; r=glandium,dustin
CentOS 6 is pinned to glibc 2.12, but newer Android build-tools (like
aapt) require glibc 2.14.  It's not possible to safely upgrade CentOS
6 distributions to glibc 2.14.

CentOS 7 is pinned to glibc 2.17, which is new enough for newer
Android build-tools. However, I had great difficulty bringing forward
our existing centos:6 Docker image to centos:7.  In particular,
installing recent enough Mercurial, git, Python, and pip versions was
difficult enough that I elected to not pursue this approach.

Instead, I've elected to follow glandium's suggestion from
https://bugzilla.mozilla.org/show_bug.cgi?id=1370119#c5: base on
Debian with snapshots.debian.org for reproducibility.

The most significant changes here:

- using Debian's snapshots repository
- using Python and related tools provided by Debian and baked into the
  build image
- using the JDK and JRE provided by Debian and baked into the build
  image, rather than versions from tooltool (or eventually a toolchain
  build)

Moving the builds over to use this image will follow in the patches
ahead.
2017-09-18 15:38:22 -04:00
Nick Alexander
371e2f7240 Bug 1396098 - part 0a - only source xvfb.sh if we need xvfb; r=glandium
No sense doing unnecessary work.
2017-09-15 14:52:24 -04:00
Stephen A Pohl
ba9097540f Bug 1324892: Update toolchain paths to point to the macOS 10.11 SDK. r=ted 2017-09-08 15:49:29 -04:00
Nick Fitzgerald
dbf3ca4b81 Bug 1277338 - Part 10: Add the SM-tc(rust) taskcluster task; r=sfink
This adds a new SpiderMonkey taskcluster test task that builds and tests the
js/rust crate.
2017-09-05 09:26:21 -07:00
Nathan Froyd
24e95d7e5e Bug 1395722 - link openssl statically when building sccache; r=ted.mielczarek
Our current sccache build links in openssl's libraries dynamically.  The
sonames of the dynamic libraries linked in are specific to the
CentOS/Fedora-ish systems that we build on; attempting to run the
generated sccache binaries on different systems (e.g. Debian-ish) will
result in failure.  All of our current automation images are
CentOS-based, but for various reasons, Debian-based images may be used
in the future, and it would be great to have an sccache binary to run on
such systems as well.  (It might also be interesting to distribute the
sccache binary we use to local developers as well, but that's a bit
further off.)

Therefore, this patch alters the sccache build on Linux to use static
linking for openssl.  We cannot use the system openssl we build on
because the system openssl links to libkrb5, and the distribution we use
for the system images does not provide static libraries of libkrb5.
Building openssl ourself enables us to eliminate the libkrb5 dependency.

An sccache binary from builds with this patch depends on the following
libraries:

froydnj@hawkeye:~$ ldd sccache2/sccache
	linux-vdso.so.1 =>  (0x00007ffe02b39000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ff0e7403000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007ff0e71fb000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ff0e6fdd000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007ff0e6dc6000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff0e69fc000)
	/lib64/ld-linux-x86-64.so.2 (0x0000557c8540b000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007ff0e66f2000)

which are standard on any Linux distribution.
2017-09-05 11:37:51 -04:00
Chris Manchester
696a8e5320 Bug 1386782 - Add toolchain tasks to build gn in automation. r=ted
MozReview-Commit-ID: 7dDwsQJnzRL

--HG--
extra : rebase_source : be14a5af5648ae0cc0e571ca098307a4d84a7c14
2017-07-25 15:33:44 -07:00
Wander Lairson Costa
6332ed5b0a Bug 1338651 part 1: Change docker image home dir to /build. r=dustin,mshal
Using /home/worker is the build directory has a 30% talos performance
loss, because test machines has a /home mount directory.

MozReview-Commit-ID: 554IPMRWgzK

--HG--
extra : rebase_source : 00827d3f6bd705419bc801eb05b543af1ddc274f
2017-08-28 08:44:51 -03:00
Gregory Szorc
3f5ebbd098 Bug 1391476 - Don't install nexus.xml in a Docker volume; r=mshal
We're about to ban files in Docker volumes so they behave almost
identically to caches (which start empty).

We move the install of nexus.xml from Docker image time to
task time. This also means that changes to nexus.xml don't result
in having to rebuild the Docker image.

MozReview-Commit-ID: JIjeJN4mt2

--HG--
rename : taskcluster/docker/android-gradle-build/nexus.xml => taskcluster/scripts/builder/build-android-dependencies/nexus.xml
extra : rebase_source : 53848f06820bda7979b2ae15456e07f8aed2363d
2017-08-23 10:34:14 -07:00
Rok Garbas
f3a3affcf2 Bug 1284475 - migrate ToolTool blueprint to new codebase of relengapi r=KWierso
UPGRADE_NSS_RELEASE a=kaie
MozReview-Commit-ID: 7CB1VYb8OJP

--HG--
extra : rebase_source : 04751620add813cd1780898d109d9f7fa89d7b2d
2017-08-08 10:55:52 +02:00
Mike Hommey
4931d14f9b Bug 1391533 - Update sccache to 0.2.1. r=ted
--HG--
extra : rebase_source : 29ad12d985b9861146b4d29c621eaf49e9d238ed
2017-08-19 06:48:01 +09:00
Ted Mielczarek
6e49037ae3 bug 1385386 - update sccache to revision 210bc791513ed8362b17a492a1f35a621cca64ff. r=glandium
This picks up a fix we need to update the OS X SDK we build with.

MozReview-Commit-ID: 8dvq4JV1o7q

--HG--
extra : rebase_source : a07f13992f30a29ede29a2167e7f1da8d533fd09
2017-08-16 11:19:35 -07:00
Gregory Szorc
d9f61d15da Bug 1389715 - Remove legacy Ubuntu 12.04 desktop-test image; r=jmaher
AFAICT there are no more in-tree references to this image. That
should mean we can nuke it. So do that.

MozReview-Commit-ID: 9LUGjt46ZCi

--HG--
extra : rebase_source : caa9e8f3e355710542794efb7f6f92c2ef43ef0a
2017-08-14 16:04:18 -07:00
Nick Alexander
0100ff2b4a Bug 1383973 - Introduce single build script for run: using: mozharness. r=dustin
The old process ran "before" and "after" steps as root.  The
mozharness script doesn't run as root, which required some small
changes to not run Sonatype Nexus as root.  Everything else is a
straight-forward move of the scripts out of the `android-gradle-build`
image and into `taskcluster/scripts`.

MozReview-Commit-ID: CqnNI33OKmb

--HG--
rename : taskcluster/docker/android-gradle-build/bin/after.sh => taskcluster/scripts/builder/build-android-dependencies/after.sh
rename : taskcluster/docker/android-gradle-build/bin/before.sh => taskcluster/scripts/builder/build-android-dependencies/before.sh
rename : taskcluster/docker/android-gradle-build/bin/repackage-jdk-centos.sh => taskcluster/scripts/builder/build-android-dependencies/repackage-jdk-centos.sh
extra : rebase_source : f94e6b9b780f96038c60d3825039a0f94add0404
2017-08-02 16:41:15 -07:00
Mike Hommey
3507cf061a Backout changeset 25420b520b68 (part of bug 1386588) for asan bustage. a=bustage. 2017-08-03 12:11:40 +09:00
Mike Hommey
cf23b5a7fa Bug 1386588 - Add a toolchain job for Clang 4. r=gps 2017-08-03 08:13:07 +09:00
Mike Hommey
1e86c54102 Bug 1386588 - Add a toolchain job for GCC 6. r=gps 2017-08-03 08:13:02 +09:00
Mike Hommey
40d5896697 Bug 1386588 - Add a toolchain job for GCC 4.8, and build clang against it. r=gps
While this looks like going backwards, it is desirable to build clang
against GCC 4.8, such that it contains its libgcc. This, in turn, will
solve problems using clang 3.9 with static-analysis builds (details in
bug 1356926). Another way to fix those problems would be to build clang
3.8 but that too would require GCC 4.8. Upgrading those builds to clang
3.9 will also allow to enable stylo on them.
2017-08-03 08:12:52 +09:00
Mike Hommey
614312f061 Bug 1386588 - Change the GCC build script to be future-proof. r=gps
It becomes a library of some sort, so that multiple scripts can benefit
from it to build different versions of GCC.

The GPG key associated with GCC is also refreshed from keys.gnupg.net,
adding a new subkey, used to sign newer versions of GCC (and
postprocessed with pgpstrip to make it smaller).
2017-08-03 08:12:47 +09:00
Mike Hommey
c15ef2edff Bug 1386588 - Rename the linux64-clang and linux64-gcc jobs to include a version number. r=gps
We're soon going to build multiple versions of clang and gcc for linux,
and we need to differentiate them. Furthermore, there is a need for the
base-toolchains builds to use a fixed version of clang and gcc. So
rename the clang and gcc toolchain jobs to include their version, add
aliases to satisfy all existing jobs, and adjust the base-toolchains
jobs to use the explicit version.


--HG--
rename : build/build-clang/clang-linux64.json => build/build-clang/clang-3.9-linux64.json
rename : taskcluster/scripts/misc/build-gcc-linux.sh => taskcluster/scripts/misc/build-gcc-4.9-linux.sh
2017-08-03 08:12:43 +09:00
Mike Hommey
ee6de1e835 Bug 1386588 - Rename the clang build manifests. r=gps
The clang toolchains have not been static-analysis-specific for a while.


--HG--
rename : build/build-clang/clang-static-analysis-linux64.json => build/build-clang/clang-linux64.json
rename : build/build-clang/clang-static-analysis-macosx64.json => build/build-clang/clang-macosx64.json
rename : build/build-clang/clang-static-analysis-win32.json => build/build-clang/clang-win32.json
rename : build/build-clang/clang-static-analysis-win64.json => build/build-clang/clang-win64.json
2017-08-03 08:12:29 +09:00
Nick Alexander
6e4a13fad8 Bug 1376306 - Bootstrap and upload java_home.tar.xz; bump Java to 1.8. r=dustin,sebastian
MozReview-Commit-ID: 3EOsrOp924f

--HG--
rename : taskcluster/scripts/misc/repackage-jdk-centos.sh => taskcluster/docker/android-gradle-build/bin/repackage-jdk-centos.sh
extra : rebase_source : 308d03828a78036076f6cdb68587be6694ac49ae
2017-07-25 20:43:14 -07:00
Ralph Giles
ca59d812e5 Bug 1384258 - Ease the hazard tolerance for stylo. r=xidorn
Allow an extra heap write hazard introduced by enabling stylo
in default builds until it can be addressed. See bug 1384625.

MozReview-Commit-ID: 2N3z6FVHa0G

--HG--
extra : rebase_source : d4c9c18c34ab829b59b9e16ec3cd8e736c418fd3
2017-07-26 13:04:57 -07:00
Mike Hommey
0bf47537e7 Bug 1384744 - Allow toolchain tasks not to have a tooltool manifest at all. r=gps
With the support added in bug 1382564, toolchains can be downloaded
without a tooltool manifest at all, and it's desirable to get rid of
tooltool manifests on jobs that don't need one.

--HG--
extra : rebase_source : 340d935034133f4f6d8aec3d15154736092859fa
2017-07-27 07:56:14 +09:00
Mike Hommey
07053af0c3 Bug 1384436 - Update sccache to version 0.2.0. r=ted
--HG--
extra : rebase_source : 4ced57d5d65a421dbdf181e6607412bc2b745547
2017-07-26 15:56:56 +09:00
Mike Hommey
4b7a4dc4ce Bug 1381772 - Add taskcluster jobs to build sccache for automation. r=ted
The MinGit tooltool package used for Windows builds comes straight from
https://github.com/git-for-windows/git/releases/

This builds the version currently used on automation.

--HG--
extra : rebase_source : dbc2a36b07611e673d6661032ad53123a688d422
2017-07-14 11:07:40 +09:00
Mike Hommey
b4449d7604 Bug 1383996 - Make most calls to mach artifact toolchain output a manifest. r=gps
And upload it as artifact.

--HG--
extra : rebase_source : b29cf6fa4527608b45050ad91b4e3248654f1657
2017-07-20 17:56:22 +09:00
Cameron McCormack
b210f3946b Bug 1382964 - Part 5: Restore allowed heap write hazards to 3. r=xidorn
MozReview-Commit-ID: LEJh0Gi2ltf

--HG--
extra : rebase_source : c16e689f9824338ff3b1a233b1bfda10849649b8
2017-07-21 16:44:23 +08:00
Mike Hommey
3236fcc629 Bug 1382860 - Use docker_worker_add_public_artifacts for toolchain docker-worker jobs. r=dustin
This affects the location of the artifacts directory, so adjust the
scripts and artifact definitions as a consequence.

--HG--
extra : rebase_source : 008b8cf33957eabfcacee61de8a260b5df146ab4
2017-07-21 07:30:14 +09:00
Mike Hommey
09db7d4793 Bug 1382564 - Use the information from bug 1374940 with mach artifact toolchain. r=gps
Bug 1374940 adds a MOZ_TOOLCHAINS environment variable with a list of
path@task-id strings, where task-id is corresponding to the (possibly
optimized) toolchain job, and path corresponding to the
toolchain-artifact defined for that toolchain job.

We want to use that to pull artifacts instead of tooltool packages.

--HG--
extra : rebase_source : 277daa2c83d6d197975cb4ef36ee131176afa992
2017-06-21 15:18:33 +09:00
Jeremy Chen
a9f3953446 Bug 1382956 - ease the hazard tolerance number for Bug 1380133. r=jeremychen
This is a quick work around for not blocking the progress of Bug 1380133.
We should definely investigate the real root cause sooner than later.

MozReview-Commit-ID: 8X1FH6f2GyN

--HG--
extra : rebase_source : 9edaec6a50f7251e3c05d9fbc252e1385d82a1bb
2017-07-21 16:04:30 +08:00
Sebastian Hengst
67cbdbd702 Backed out changeset 498c1859cee1 (bug 1382956) for containing unrelated changes. r=backout on request from jeremychen 2017-07-21 10:16:49 +02:00