Bug 1511224 - Add win64-nasm toolchain. r=ted,jya,glandium

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

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Thomas Daede 2019-02-14 21:30:22 +00:00
parent 349d4a5381
commit 3fcd2d85d2
9 changed files with 99 additions and 2 deletions

View File

@ -19,6 +19,7 @@ MOZ_REQUIRE_SIGNING=${MOZ_REQUIRE_SIGNING-0}
ac_add_options --enable-js-shell
. "$topsrcdir/build/mozconfig.nasm"
. "$topsrcdir/build/mozconfig.node"
. "$topsrcdir/build/mozconfig.automation"
. "$topsrcdir/build/mozconfig.rust"

11
build/mozconfig.nasm Normal file
View File

@ -0,0 +1,11 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
case "$(uname -s)" in
MINGW*)
export NASM=$topsrcdir/nasm/nasm.exe
;;
*)
;;
esac

View File

@ -54,7 +54,7 @@
%define HAVE_SSE42 1
%define HAVE_SSSE3 1
%define HAVE_XOP 1
%define HAVE_CPUNOP 1
%define HAVE_CPUNOP 0
%define HAVE_I686 1
%define HAVE_MIPSFPU 0
%define HAVE_MIPS32R2 0

View File

@ -34,6 +34,7 @@ win32/debug:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32/opt:
@ -67,6 +68,7 @@ win32/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32/pgo:
@ -100,6 +102,7 @@ win32/pgo:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64/debug:
@ -133,6 +136,7 @@ win64/debug:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-fuzzing/debug:
@ -168,6 +172,7 @@ win64-fuzzing/debug:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-plain/debug:
@ -201,6 +206,7 @@ win64-plain/debug:
- win64-clang-cl
- win64-rust
- win64-node
- win64-nasm
- win64-cbindgen
win64/opt:
@ -234,6 +240,7 @@ win64/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-plain/opt:
@ -267,6 +274,7 @@ win64-plain/opt:
toolchains:
- win64-clang-cl
- win64-rust
- win64-nasm
- win64-node
- win64-cbindgen
@ -314,6 +322,7 @@ win32-nightly/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-nightly/opt:
@ -353,6 +362,7 @@ win64-nightly/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64/pgo:
@ -386,6 +396,7 @@ win64/pgo:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32-add-on-devel/opt:
@ -419,6 +430,7 @@ win32-add-on-devel/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-add-on-devel/opt:
@ -452,6 +464,7 @@ win64-add-on-devel/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-noopt/debug:
@ -484,6 +497,7 @@ win64-noopt/debug:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32-noopt/debug:
@ -516,6 +530,7 @@ win32-noopt/debug:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32-rusttests/opt:
@ -553,6 +568,7 @@ win32-rusttests/opt:
- win64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32-rusttests/debug:
@ -590,6 +606,7 @@ win32-rusttests/debug:
- win64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-rusttests/opt:
@ -622,6 +639,7 @@ win64-rusttests/opt:
- win64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-rusttests/debug:
@ -654,6 +672,7 @@ win64-rusttests/debug:
- win64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-ccov/debug:
@ -690,6 +709,7 @@ win64-ccov/debug:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
fetches:
toolchain:
@ -726,6 +746,7 @@ win64-asan/debug:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-asan/opt:
@ -760,6 +781,7 @@ win64-asan/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-asan-reporter-nightly/opt:
@ -802,6 +824,7 @@ win64-asan-reporter-nightly/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-asan-fuzzing/opt:
@ -835,6 +858,7 @@ win64-asan-fuzzing/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32-devedition-nightly/opt:
@ -882,6 +906,7 @@ win32-devedition-nightly/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-devedition-nightly/opt:
@ -922,6 +947,7 @@ win64-devedition-nightly/opt:
- win64-rust-size
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32-msvc/debug:
@ -953,6 +979,7 @@ win32-msvc/debug:
- win64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32-msvc/opt:
@ -985,6 +1012,7 @@ win32-msvc/opt:
- win64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-msvc/debug:
@ -1016,6 +1044,7 @@ win64-msvc/debug:
- win64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-msvc/opt:
@ -1048,6 +1077,7 @@ win64-msvc/opt:
- win64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-aarch64/debug:
@ -1083,6 +1113,7 @@ win64-aarch64/debug:
- win64-aarch64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-aarch64/opt:
@ -1118,6 +1149,7 @@ win64-aarch64/opt:
- win64-aarch64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win64-aarch64-nightly/opt:
@ -1157,6 +1189,7 @@ win64-aarch64-nightly/opt:
- win64-aarch64-rust
- win64-cbindgen
- win64-sccache
- win64-nasm
- win64-node
win32-mingwclang/opt:

View File

@ -173,6 +173,14 @@ mpfr-3.1.5:
sig-url: "{url}.asc"
key-path: build/unix/build-gcc/07F3DBBECC1A39605078094D980C197698C3739D.key
nasm-2.14.02:
description: nasm 2.14.02 source code
fetch:
type: static-url
url: https://ftp.halifax.rwth-aachen.de/gentoo/distfiles/nasm-2.14.02.tar.xz
sha256: e24ade3e928f7253aa8c14aa44726d1edf3f98643f87c9d72ec1df44b26be8f5
size: 827620
wix-3.1.1:
description: wix 3.1.1 binary release
# WIX doesn't use a wrapping toplevel DIR, so we should really repackage it when

View File

@ -60,7 +60,7 @@ linux64-clang-trunk-mingw-x64:
description: "MinGW-Clang Trunk x64 toolchain build"
treeherder:
symbol: TMW(clang-x64)
tier: 2
tier: 1
run:
script: build-clang-trunk-mingw.sh
arguments: [

View File

@ -35,6 +35,7 @@ jobs-from:
- mingw.yml
- minidump_stackwalk.yml
- misc.yml
- nasm.yml
- node.yml
- rust.yml
- rust-size.yml

View File

@ -0,0 +1,18 @@
win64-nasm:
description: "nasm win64 build"
treeherder:
symbol: TW64(nasm)
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: mingw32-build}
max-run-time: 1800
run:
script: build-nasm.sh
resources:
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/nasm.tar.bz2
toolchains:
- linux64-clang-trunk-mingw-x64
fetches:
fetch:
- nasm-2.14.02

View File

@ -0,0 +1,25 @@
#!/bin/bash
set -x -e -v
case "$(uname -s)" in
Linux)
WORKSPACE=$HOME/workspace
UPLOAD_DIR=$HOME/artifacts
COMPRESS_EXT=bz2
;;
esac
cd $WORKSPACE/build/src
. taskcluster/scripts/misc/tooltool-download.sh
export PATH="$WORKSPACE/build/src/clang/bin:$PATH"
cd $WORKSPACE/build/nasm-2.14.02
./configure CC=x86_64-w64-mingw32-clang AR=llvm-ar RANLIB=llvm-ranlib --host=x86_64-w64-mingw32
make -j$(nproc)
mkdir nasm
mv nasm.exe nasm/
tar -acf nasm.tar.$COMPRESS_EXT nasm
mkdir -p "$UPLOAD_DIR"
cp nasm.tar.$COMPRESS_EXT "$UPLOAD_DIR"