Merge inbound to mozilla-central. a=merge

This commit is contained in:
Bogdan Tara 2019-08-03 12:47:05 +03:00
commit 0ffa9e372d
70 changed files with 381 additions and 666 deletions

View File

@ -160,10 +160,10 @@ endif
ifdef MOZ_ANDROID_FAT_AAR_ARCHITECTURES
recurse_android-fat-aar-artifact:
$(call py_action,fat_aar,\
$(if $(MOZ_ANDROID_FAT_AAR_ARMEABI_V7A),--armeabi-v7a $(MOZ_ANDROID_FAT_AAR_ARMEABI_V7A)) \
$(if $(MOZ_ANDROID_FAT_AAR_ARM64_V8A),--arm64-v8a $(MOZ_ANDROID_FAT_AAR_ARM64_V8A)) \
$(if $(MOZ_ANDROID_FAT_AAR_X86),--x86 $(MOZ_ANDROID_FAT_AAR_X86)) \
$(if $(MOZ_ANDROID_FAT_AAR_X86_64),--x86-64 $(MOZ_ANDROID_FAT_AAR_X86_64)) \
$(addprefix --armeabi-v7a $(MOZ_FETCHES_DIR)/,$(MOZ_ANDROID_FAT_AAR_ARMEABI_V7A)) \
$(addprefix --arm64-v8a $(MOZ_FETCHES_DIR)/,$(MOZ_ANDROID_FAT_AAR_ARM64_V8A)) \
$(addprefix --x86 $(MOZ_FETCHES_DIR)/,$(MOZ_ANDROID_FAT_AAR_X86)) \
$(addprefix --x86-64 $(MOZ_FETCHES_DIR)/,$(MOZ_ANDROID_FAT_AAR_X86_64)) \
--distdir $(abspath $(DIST)/fat-aar))
endif

View File

@ -14,13 +14,5 @@
"algorithm": "sha512",
"filename": "ninja171.zip",
"unpack": true
},
{
"version": "MinGit-2.13.3-64-bit",
"size": 21482885,
"digest": "929bb3c07be8487ee519422a312bdbfeec8f4db4b62c49d02f9aad9fd2a66c0ee5fad63d2b06c8744c336dc9d50446fa4457897333ad17ffd783ecabd1e2ddbb",
"algorithm": "sha512",
"filename": "git.zip",
"unpack": true
}
]

View File

@ -6,13 +6,5 @@
"algorithm": "sha512",
"filename": "vs2017_15.8.4.zip",
"unpack": true
},
{
"version": "MinGit-2.13.3-64-bit",
"size": 21482885,
"digest": "929bb3c07be8487ee519422a312bdbfeec8f4db4b62c49d02f9aad9fd2a66c0ee5fad63d2b06c8744c336dc9d50446fa4457897333ad17ffd783ecabd1e2ddbb",
"algorithm": "sha512",
"filename": "git.zip",
"unpack": true
}
]

View File

@ -620,6 +620,7 @@ if __name__ == "__main__":
cc_name = "clang-cl"
cxx_name = "clang-cl"
config_dir = os.path.dirname(args.config.name)
config = json.load(args.config)
llvm_revision = config["llvm_revision"]
@ -706,7 +707,7 @@ if __name__ == "__main__":
git_clone(base_dir, URL_REPO, source_dir, llvm_revision)
for p in config.get("patches", []):
patch(p, source_dir)
patch(os.path.join(config_dir, p), source_dir)
compiler_rt_source_link = llvm_source_dir + "/projects/compiler-rt"

View File

@ -291,3 +291,75 @@ tup:
type: git
repo: https://github.com/gittup/tup
revision: 4371a41ba4ece660bf060b598b9eee4c2eb347d8
rust-size:
description: rust-size source code
fetch:
type: git
repo: https://github.com/luser/rust-size
revision: ab659d93b1faba95307df952aefe3fbed3583669
gn:
description: GN source code
fetch:
type: git
repo: https://gn.googlesource.com/gn
revision: d69a9c3765dee2e650bcccebbadf72c5d42d92b1
grcov:
description: grcov source code
fetch:
type: git
repo: https://github.com/marco-c/grcov
revision: 9214a916805838265764f9c69eaed657ea3db021
sccache:
description: sccache source code
fetch:
type: git
repo: https://github.com/mozilla/sccache
# 0.2.9 + some change
revision: 93475f3458f7776c37b08201ae0d83ecac4b8fa2
openssl-1.1.0g:
description: openssl 1.1.0g source code
fetch:
type: static-url
url: https://www.openssl.org/source/openssl-1.1.0g.tar.gz
sha256: de4d501267da39310905cb6dc8c6121f7a2cad45a7707f76df828fe1b85073af
size: 5404748
fxc2:
description: fxc2 source code
fetch:
type: git
repo: https://github.com/mozilla/fxc2
revision: 63ad74b7faa7033f2c1be9cc1cd0225241a1a9a5
mingw-w64:
description: mingw-w64 source code
fetch:
type: git
repo: git://git.code.sf.net/p/mingw-w64/mingw-w64
revision: 8db8dd5aa1885e7807424a06bd14eebc9c0effd4
libunwind:
description: libunwind source code
fetch:
type: git
repo: https://github.com/llvm-mirror/libunwind
revision: 6ee92fcc97350ae32db3172a269e9afcc2bab686
llvm-mingw:
description: llvm-mingw source code
fetch:
type: git
repo: https://github.com/mstorsjo/llvm-mingw
revision: c3a16814bd26aa6702e1e5b482a3d9044bb0f725
android-rs-glue:
description: android-rs-glue source code
fetch:
type: git
repo: https://github.com/staktrace/android-rs-glue
revision: 486491e81819c3346d364a93fc1f3c0206d3ece0

View File

@ -12,6 +12,11 @@ job-defaults:
resources:
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/cbindgen.tar.xz
fetches:
fetch:
# If you update this, make sure to update the minimum version in
# build/moz.configure/bindgen.configure as well.
- cbindgen-0.9.0
linux64-cbindgen:
treeherder:

View File

@ -29,7 +29,9 @@ linux64-clang-tidy:
treeherder:
symbol: TL(clang-tidy)
run:
script: build-clang-tidy-linux.sh
script: build-clang.sh
arguments:
- 'build/build-clang/clang-tidy-linux64.json'
resources:
- 'build/build-clang/clang-tidy-linux64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
@ -47,8 +49,10 @@ macosx64-clang-tidy:
TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/macosx64/cross-clang.manifest"
run:
using: toolchain-script
script: build-clang-tidy-macosx.sh
script: build-clang.sh
tooltool-downloads: internal
arguments:
- 'build/build-clang/clang-tidy-macosx64.json'
resources:
- 'build/build-clang/clang-tidy-macosx64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
@ -71,8 +75,9 @@ win64-clang-tidy:
env:
TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/build-clang-cl.manifest"
run:
script: build-clang-tidy64-windows.sh
script: build-clang.sh
arguments:
- 'build/build-clang/clang-tidy-win64.json'
resources:
- 'build/build-clang/clang-tidy-win64.json'
- 'taskcluster/scripts/misc/build-clang-windows-helper64.sh'
toolchain-artifact: public/build/clang-tidy.tar.bz2

View File

@ -16,7 +16,9 @@ linux64-clang-4.0:
symbol: TL(clang4.0)
worker-type: b-linux-large
run:
script: build-clang-4.0-linux.sh
script: build-clang.sh
arguments:
- 'build/build-clang/clang-4.0-linux64.json'
resources:
- 'build/build-clang/clang-4.0-linux64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
@ -30,9 +32,10 @@ linux64-clang-7:
symbol: TL(clang7)
run:
using: toolchain-script
script: build-clang-7-linux.sh
script: build-clang.sh
arguments:
- 'build/build-clang/clang-7-linux64.json'
resources:
- 'build/build-clang/build-clang.py'
- 'build/build-clang/clang-7-linux64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/clang.tar.xz
@ -45,9 +48,10 @@ linux64-clang-8:
symbol: TL(clang8)
run:
using: toolchain-script
script: build-clang-8-linux.sh
script: build-clang.sh
arguments:
- 'build/build-clang/clang-8-linux64.json'
resources:
- 'build/build-clang/build-clang.py'
- 'build/build-clang/clang-8-linux64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-alias: linux64-clang
@ -61,16 +65,24 @@ linux64-clang-8-mingw-x86:
symbol: TMW(clang-x86)
run:
script: build-clang-8-mingw.sh
arguments: [
'x86'
]
arguments:
- 'x86'
- 'build/build-clang/clang-8-mingw.json'
resources:
- 'build/build-clang/clang-8-mingw.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-alias: linux64-clang-mingw-x86
toolchain-artifact: public/build/clangmingw.tar.xz
worker:
env:
MOZ_FETCHES_DIR: "/builds/worker/workspace/moz-toolchain"
toolchains:
- linux64-gcc-6
fetches:
fetch:
- mingw-w64
- libunwind
- llvm-mingw
linux64-clang-8-mingw-x64:
description: "MinGW-Clang Trunk x64 toolchain build"
@ -79,16 +91,24 @@ linux64-clang-8-mingw-x64:
tier: 1
run:
script: build-clang-8-mingw.sh
arguments: [
'x64'
]
arguments:
- 'x64'
- 'build/build-clang/clang-8-mingw.json'
resources:
- 'build/build-clang/clang-8-mingw.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-alias: linux64-clang-mingw-x64
toolchain-artifact: public/build/clangmingw.tar.xz
worker:
env:
MOZ_FETCHES_DIR: "/builds/worker/workspace/moz-toolchain"
toolchains:
- linux64-gcc-6
fetches:
fetch:
- mingw-w64
- libunwind
- llvm-mingw
linux64-clang-8-android-cross:
description: "Clang 8 toolchain build"
@ -96,7 +116,9 @@ linux64-clang-8-android-cross:
symbol: TL(clang8-android)
run:
using: toolchain-script
script: build-clang-8-android.sh
script: build-clang.sh
arguments:
- 'build/build-clang/clang-8-android.json'
resources:
- 'build/build-clang/clang-8-android.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
@ -116,7 +138,9 @@ linux64-clang-8-aarch64-cross:
docker-image: {in-tree: toolchain-arm64-build}
run:
using: toolchain-script
script: build-clang-8-linux-aarch64-cross.sh
script: build-clang.sh
arguments:
- 'build/build-clang/clang-8-linux64-aarch64-cross.json'
resources:
- 'build/build-clang/clang-8-linux64-aarch64-cross.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
@ -137,6 +161,8 @@ linux64-clang-8-macosx-cross:
TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/macosx64/cross-clang.manifest"
run:
script: build-clang-8-linux-macosx-cross.sh
arguments:
- 'build/build-clang/clang-8-macosx64.json'
resources:
- 'build/build-clang/clang-8-macosx64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
@ -161,8 +187,10 @@ macosx64-clang:
- trunk
- try
run:
script: build-clang-macosx.sh
script: build-clang.sh
tooltool-downloads: internal
arguments:
- 'build/build-clang/clang-8-macosx64.json'
resources:
- 'build/build-clang/clang-8-macosx64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
@ -182,8 +210,9 @@ win64-clang-cl:
env:
TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/build-clang-cl.manifest"
run:
script: build-clang64-windows.sh
script: build-clang.sh
arguments:
- 'build/build-clang/clang-win64.json'
resources:
- 'build/build-clang/clang-win64.json'
- 'taskcluster/scripts/misc/build-clang-windows-helper64.sh'
toolchain-artifact: public/build/clang.tar.bz2

View File

@ -16,6 +16,9 @@ job-defaults:
- 'taskcluster/scripts/misc/tooltool-download.sh'
- 'taskcluster/scripts/misc/build-gn-common.sh'
toolchain-artifact: public/build/gn.tar.xz
fetches:
fetch:
- gn
linux64-gn:
treeherder:
@ -41,7 +44,7 @@ macosx64-gn:
win32-gn:
treeherder:
symbol: TW32(gn)
symbol: TW64(gn)
worker-type: b-win2012
worker:
max-run-time: 3600

View File

@ -12,6 +12,9 @@ job-defaults:
resources:
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/grcov.tar.xz
fetches:
fetch:
- grcov
linux64-grcov:
treeherder:

View File

@ -72,3 +72,6 @@ linux64-mingw-fxc2-x86:
toolchain-artifact: public/build/fxc2.tar.xz
toolchains:
- linux64-clang-8-mingw-x86
fetches:
fetch:
- fxc2

View File

@ -177,3 +177,6 @@ wrench-deps:
toolchain-artifact: public/build/wrench-deps.tar.bz2
toolchains:
- linux64-rust-1.36 # whatever m-c is built with
fetches:
fetch:
- android-rs-glue

View File

@ -10,6 +10,9 @@ job-defaults:
script: build-rust-size.sh
resources:
- 'taskcluster/scripts/misc/tooltool-download.sh'
fetches:
fetch:
- rust-size
linux64-rust-size:
treeherder:

View File

@ -11,6 +11,9 @@ job-defaults:
script: build-sccache.sh
resources:
- 'taskcluster/scripts/misc/tooltool-download.sh'
fetches:
fetch:
- sccache
linux64-sccache:
treeherder:
@ -23,6 +26,9 @@ linux64-sccache:
toolchains:
- linux64-rust-1.34
- linux64-binutils
fetches:
fetch:
- openssl-1.1.0g
macosx64-sccache:
treeherder:

View File

@ -24,8 +24,8 @@ If you want to run this task locally, you need to specify these environment vari
- MOZ_ANDROID_FAT_AAR_ARCHITECTURES: must be a comma-separated list of architecture.
Eg: "armeabi-v7a,arm64-v8a,x86,x86_64".
- each of MOZ_ANDROID_FAT_AAR_ARM64_V8A, MOZ_ANDROID_FAT_AAR_ARMEABI_V7A,
MOZ_ANDROID_FAT_AAR_X86, MOZ_ANDROID_FAT_AAR_X86_64 must be an absolute path to the
architecture-specific AAR.
MOZ_ANDROID_FAT_AAR_X86, MOZ_ANDROID_FAT_AAR_X86_64 must be a path relative to
MOZ_FETCHES_DIR.
build-signing
-------------

View File

@ -4,11 +4,9 @@ set -x -e
echo "running as" $(id)
: WORKSPACE ${WORKSPACE:=/builds/worker/workspace}
set -v
cd $WORKSPACE/build/src
cd $GECKO_PATH
# Download toolchain artifacts.
. taskcluster/scripts/misc/tooltool-download.sh

View File

@ -4,11 +4,9 @@ set -x -e
echo "running as" $(id)
: WORKSPACE ${WORKSPACE:=/builds/worker/workspace}
set -v
cd $WORKSPACE/build/src
cd $GECKO_PATH
# Download toolchain artifacts.
. taskcluster/scripts/misc/tooltool-download.sh

View File

@ -3,13 +3,10 @@ set -x -e -v
# This script is for building binutils for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $GECKO_PATH
cd $HOME_DIR/src
build/unix/build-binutils/build-binutils.sh $HOME_DIR
build/unix/build-binutils/build-binutils.sh $MOZ_FETCHES_DIR
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp $HOME_DIR/binutils.tar.* $UPLOAD_DIR
cp $MOZ_FETCHES_DIR/binutils.tar.* $UPLOAD_DIR

View File

@ -1,67 +1,46 @@
#!/bin/bash
set -x -e -v
# If you update this, make sure to update the minimum version in
# build/moz.configure/bindgen.configure as well.
CBINDGEN_REVISION=e19526e00b3fe6921b881682147a1fe5d6b64124 # v0.9.0
TARGET="$1"
case "$(uname -s)" in
Linux)
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
;;
MINGW*)
WORKSPACE=$PWD
UPLOAD_DIR=$WORKSPACE/public/build
WIN_WORKSPACE="$(pwd -W)"
UPLOAD_DIR=$PWD/public/build
COMPRESS_EXT=bz2
export INCLUDE="$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/include;$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/atlmfc/include;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/ucrt;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/shared;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/um;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/winrt;$WIN_WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/include"
export LIB="$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/lib/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/atlmfc/lib/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/lib/10.0.17134.0/um/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/lib/10.0.17134.0/ucrt/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/lib/amd64"
PATH="$WORKSPACE/build/src/vs2017_15.8.4/VC/bin/Hostx64/x64:$WORKSPACE/build/src/vs2017_15.8.4/VC/bin/Hostx86/x86:$WORKSPACE/build/src/vs2017_15.8.4/SDK/bin/10.0.17134.0/x64:$WORKSPACE/build/src/vs2017_15.8.4/redist/x64/Microsoft.VC141.CRT:$WORKSPACE/build/src/vs2017_15.8.4/SDK/Redist/ucrt/DLLs/x64:$WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/bin/amd64:$WORKSPACE/build/src/mingw64/bin:$PATH"
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
export CC=clang-cl
;;
esac
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
# OSX cross builds are a bit harder
if [ "$TARGET" == "x86_64-apple-darwin" ]; then
export PATH="$PWD/llvm-dsymutil/bin:$PATH"
export PATH="$PWD/cctools/bin:$PATH"
export PATH="$GECKO_PATH/llvm-dsymutil/bin:$PATH"
export PATH="$GECKO_PATH/cctools/bin:$PATH"
cat >cross-linker <<EOF
exec $PWD/clang/bin/clang -v \
-fuse-ld=$PWD/cctools/bin/x86_64-apple-darwin-ld \
exec $GECKO_PATH/clang/bin/clang -v \
-fuse-ld=$GECKO_PATH/cctools/bin/x86_64-apple-darwin-ld \
-mmacosx-version-min=10.11 \
-target $TARGET \
-B $PWD/cctools/bin \
-isysroot $PWD/MacOSX10.11.sdk \
-B $GECKO_PATH/cctools/bin \
-isysroot $GECKO_PATH/MacOSX10.11.sdk \
"\$@"
EOF
chmod +x cross-linker
export RUSTFLAGS="-C linker=$PWD/cross-linker"
fi
export PATH="$PWD/rustc/bin:$PATH"
export PATH="$(cd $GECKO_PATH && pwd)/rustc/bin:$PATH"
# XXX On Windows there's a workspace/builds/src/Cargo.toml from the root of
# mozilla-central, and cargo complains below if it's not gone...
if [ -f Cargo.toml ]; then
cat Cargo.toml
rm Cargo.toml
fi
git clone https://github.com/eqrion/cbindgen cbindgen
cd $_
git checkout $CBINDGEN_REVISION
cd $MOZ_FETCHES_DIR/cbindgen
cargo build --verbose --release --target "$TARGET"

View File

@ -16,16 +16,16 @@ CROSSTOOLS_CCTOOLS_DIR=$CROSSTOOLS_SOURCE_DIR/cctools
CROSSTOOLS_BUILD_DIR=$WORKSPACE/cctools
LIBTAPI_SOURCE_DIR=$MOZ_FETCHES_DIR/apple-libtapi
LIBTAPI_BUILD_DIR=$WORKSPACE/libtapi-build
CLANG_DIR=$WORKSPACE/build/src/clang
CLANG_DIR=$GECKO_PATH/clang
# Create our directories
mkdir -p $CROSSTOOLS_BUILD_DIR $LIBTAPI_BUILD_DIR
# Fetch clang from tooltool
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
export PATH="$WORKSPACE/build/src/binutils/bin:$PATH"
export PATH="$GECKO_PATH/binutils/bin:$PATH"
# Common setup for libtapi and cctools
export CC=$CLANG_DIR/bin/clang

View File

@ -1,23 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
. taskcluster/scripts/misc/tooltool-download.sh
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-4.0-linux64.json
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang.tar.* $UPLOAD_DIR

View File

@ -1,23 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
. taskcluster/scripts/misc/tooltool-download.sh
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-7-linux64.json
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang.tar.* $UPLOAD_DIR

View File

@ -1,24 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang on a Linux host with android compiler rt
# libs.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
. taskcluster/scripts/misc/tooltool-download.sh
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-8-android.json
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang.tar.* $UPLOAD_DIR

View File

@ -1,25 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
. taskcluster/scripts/misc/tooltool-download.sh
export PATH="$WORKSPACE/build/src/binutils/bin:$PATH"
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-8-linux64-aarch64-cross.json
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang.tar.* $UPLOAD_DIR

View File

@ -4,22 +4,20 @@ set -x -e -v
# This script is for building clang for Mac OS X targets on a Linux host,
# including native Mac OS X Compiler-RT libraries and llvm-symbolizer.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
# these variables are used in build-clang.py
export CROSS_CCTOOLS_PATH=$HOME_DIR/src/cctools
export CROSS_SYSROOT=$HOME_DIR/src/MacOSX10.11.sdk
export CROSS_CCTOOLS_PATH=$GECKO_PATH/cctools
export CROSS_SYSROOT=$GECKO_PATH/MacOSX10.11.sdk
export PATH=$PATH:$CROSS_CCTOOLS_PATH/bin
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-8-macosx64.json --skip-tar
python3 build/build-clang/build-clang.py -c $1 --skip-tar
# We now have a native macosx64 toolchain.
# What we want is a native linux64 toolchain which can target macosx64 and use the sanitizer dylibs.
@ -27,9 +25,9 @@ python3 ./build-clang.py -c clang-8-macosx64.json --skip-tar
(
cd "$WORKSPACE/moz-toolchain/build/stage1"
# Need the macosx64 native llvm-symbolizer since this gets shipped with sanitizer builds
mv clang/bin/llvm-symbolizer $HOME_DIR/src/clang/bin/
cp --remove-destination -lr $HOME_DIR/src/clang/* clang/
tar -c -J -f $HOME_DIR/src/build/build-clang/clang.tar.xz clang
mv clang/bin/llvm-symbolizer $GECKO_PATH/clang/bin/
cp --remove-destination -lr $GECKO_PATH/clang/* clang/
tar -c -J -f $GECKO_PATH/clang.tar.xz clang
)
set -x

View File

@ -1,23 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
. taskcluster/scripts/misc/tooltool-download.sh
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-8-linux64.json
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang.tar.* $UPLOAD_DIR

View File

@ -22,7 +22,6 @@ else
fi
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
TOOLCHAIN_DIR=$WORKSPACE/moz-toolchain
INSTALL_DIR=$TOOLCHAIN_DIR/build/stage3/clang
@ -31,15 +30,11 @@ SRC_DIR=$TOOLCHAIN_DIR/src
make_flags="-j$(nproc)"
mingw_version=8db8dd5aa1885e7807424a06bd14eebc9c0effd4
libunwind_version=6ee92fcc97350ae32db3172a269e9afcc2bab686
llvm_mingw_version=c3a16814bd26aa6702e1e5b482a3d9044bb0f725
# This is default value of _WIN32_WINNT. Gecko configure script explicitly sets this,
# so this is not used to build Gecko itself. We default to 0x601, which is Windows 7.
default_win32_winnt=0x601
cd $HOME_DIR/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
patch_file="$(pwd)/taskcluster/scripts/misc/mingw-winrt.patch"
@ -48,26 +43,9 @@ prepare() {
mkdir -p $TOOLCHAIN_DIR
touch $TOOLCHAIN_DIR/.build-clang
mkdir -p $TOOLCHAIN_DIR
pushd $TOOLCHAIN_DIR
git clone -n git://git.code.sf.net/p/mingw-w64/mingw-w64
pushd mingw-w64
git checkout $mingw_version
pushd $MOZ_FETCHES_DIR/mingw-w64
patch -p1 <$patch_file
popd
git clone https://github.com/llvm-mirror/libunwind.git
pushd libunwind
git checkout $libunwind_version
popd
git clone https://github.com/mstorsjo/llvm-mingw.git
pushd llvm-mingw
git checkout $llvm_mingw_version
popd
popd
}
install_wrappers() {
@ -98,7 +76,7 @@ EOF
build_mingw() {
mkdir mingw-w64-headers
pushd mingw-w64-headers
$TOOLCHAIN_DIR/mingw-w64/mingw-w64-headers/configure \
$MOZ_FETCHES_DIR/mingw-w64/mingw-w64-headers/configure \
--host=$machine-w64-mingw32 \
--enable-sdk=all \
--enable-idl \
@ -110,7 +88,7 @@ build_mingw() {
mkdir mingw-w64-crt
pushd mingw-w64-crt
$TOOLCHAIN_DIR/mingw-w64/mingw-w64-crt/configure \
$MOZ_FETCHES_DIR/mingw-w64/mingw-w64-crt/configure \
--host=$machine-w64-mingw32 \
$crt_flags \
--with-default-msvcrt=ucrt \
@ -125,7 +103,7 @@ build_mingw() {
mkdir widl
pushd widl
$TOOLCHAIN_DIR/mingw-w64/mingw-w64-tools/widl/configure --target=$machine-w64-mingw32 --prefix=$INSTALL_DIR
$MOZ_FETCHES_DIR/mingw-w64/mingw-w64-tools/widl/configure --target=$machine-w64-mingw32 --prefix=$INSTALL_DIR
make $make_flags
make $make_flags install
popd
@ -194,7 +172,7 @@ build_libcxx() {
-DLIBUNWIND_ENABLE_CROSS_UNWINDING=FALSE \
-DCMAKE_CXX_FLAGS="${DEBUG_FLAGS} -Wno-dll-attribute-on-redeclaration -nostdinc++ -I$SRC_DIR/libcxx/include -DPSAPI_VERSION=2" \
-DCMAKE_C_FLAGS="-Wno-dll-attribute-on-redeclaration" \
$TOOLCHAIN_DIR/libunwind
$MOZ_FETCHES_DIR/libunwind
make $make_flags
make $make_flags install
popd
@ -276,7 +254,7 @@ build_utils() {
ln -s llvm-strip $machine-w64-mingw32-strip
ln -s llvm-readobj $machine-w64-mingw32-readobj
ln -s llvm-objcopy $machine-w64-mingw32-objcopy
./clang $TOOLCHAIN_DIR/llvm-mingw/wrappers/windres-wrapper.c -O2 -Wl,-s -o $machine-w64-mingw32-windres
./clang $MOZ_FETCHES_DIR/llvm-mingw/wrappers/windres-wrapper.c -O2 -Wl,-s -o $machine-w64-mingw32-windres
popd
}
@ -287,8 +265,7 @@ prepare
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-8-mingw.json --skip-tar
python3 build/build-clang/build-clang.py -c $2 --skip-tar
set -x

View File

@ -1,27 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang for Mac OS X on Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
. taskcluster/scripts/misc/tooltool-download.sh
# these variables are used in build-clang.py
export CROSS_CCTOOLS_PATH=$HOME_DIR/src/cctools
export CROSS_SYSROOT=$HOME_DIR/src/MacOSX10.11.sdk
export PATH=$PATH:$CROSS_CCTOOLS_PATH/bin
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-8-macosx64.json
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang.tar.* $UPLOAD_DIR

View File

@ -1,23 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
. taskcluster/scripts/misc/tooltool-download.sh
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-tidy-linux64.json
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang-tidy.tar.* $UPLOAD_DIR

View File

@ -1,27 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang for Mac OS X on Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
. taskcluster/scripts/misc/tooltool-download.sh
# these variables are used in build-clang.py
export CROSS_CCTOOLS_PATH=$HOME_DIR/src/cctools
export CROSS_SYSROOT=$HOME_DIR/src/MacOSX10.11.sdk
export PATH=$PATH:$CROSS_CCTOOLS_PATH/bin
# gets a bit too verbose here
set +x
cd build/build-clang
python3 ./build-clang.py -c clang-tidy-macosx64.json
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang-tidy.tar.* $UPLOAD_DIR

View File

@ -1,3 +0,0 @@
#!/bin/bash
source build/src/taskcluster/scripts/misc/build-clang-windows-helper64.sh clang-tidy-win64.json

View File

@ -1,56 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building clang-cl on Windows.
: TOOLTOOL_CACHE ${TOOLTOOL_CACHE:=/builds/worker/tooltool-cache}
export TOOLTOOL_CACHE
TOOLTOOL_AUTH_FILE=/c/builds/relengapi.tok
if [ ! -e ${TOOLTOOL_AUTH_FILE} ]; then
echo cannot find ${TOOLTOOL_AUTH_FILE}
exit 1
fi
./build/src/mach artifact toolchain -v --authentication-file="${TOOLTOOL_AUTH_FILE}" --tooltool-manifest "build/src/${TOOLTOOL_MANIFEST}"${TOOLTOOL_CACHE:+ --cache-dir ${TOOLTOOL_CACHE}}${MOZ_TOOLCHAINS:+ ${MOZ_TOOLCHAINS}}
# Set up all the Visual Studio paths.
MSVC_DIR=vs2017_15.8.4
VSWINPATH="$(cd ${MSVC_DIR} && pwd)"
echo vswinpath ${VSWINPATH}
# LLVM_ENABLE_DIA_SDK is set if the directory "$ENV{VSINSTALLDIR}DIA SDK"
# exists.
export VSINSTALLDIR="${VSWINPATH}/"
export WINDOWSSDKDIR="${VSWINPATH}/SDK"
export WIN32_REDIST_DIR="${VSWINPATH}/VC/redist/x64/Microsoft.VC141.CRT"
export WIN_UCRT_REDIST_DIR="${VSWINPATH}/SDK/Redist/ucrt/DLLs/x64"
export PATH="${VSWINPATH}/VC/bin/Hostx64/x64:${VSWINPATH}/SDK/bin/10.0.17134.0/x64:${VSWINPATH}/VC/redist/x64/Microsoft.VC141.CRT:${VSWINPATH}/SDK/Redist/ucrt/DLLs/x64:${VSWINPATH}/DIA SDK/bin/amd64:${PATH}"
export INCLUDE="${VSWINPATH}/VC/include:${VSWINPATH}/VC/atlmfc/include:${VSWINPATH}/SDK/Include/10.0.17134.0/ucrt:${VSWINPATH}/SDK/Include/10.0.17134.0/shared:${VSWINPATH}/SDK/Include/10.0.17134.0/um:${VSWINPATH}/SDK/Include/10.0.17134.0/winrt:${VSWINPATH}/DIA SDK/include"
export LIB="${VSWINPATH}/VC/lib/x64:${VSWINPATH}/VC/atlmfc/lib/x64:${VSWINPATH}/SDK/Lib/10.0.17134.0/ucrt/x64:${VSWINPATH}/SDK/Lib/10.0.17134.0/um/x64:${VSWINPATH}/DIA SDK/lib/amd64"
# Add git.exe to the path
export PATH="$(pwd)/cmd:${PATH}"
export PATH="$(cd cmake && pwd)/bin:${PATH}"
export PATH="$(cd ninja && pwd)/bin:${PATH}"
# gets a bit too verbose here
set +x
BUILD_CLANG_DIR=build/src/build/build-clang
cd ${BUILD_CLANG_DIR}
python3 ./build-clang.py -c ./${1}
cd -
set -x
# Put a tarball in the artifacts dir
UPLOAD_PATH=public/build
mkdir -p ${UPLOAD_PATH}
cp ${BUILD_CLANG_DIR}/clang*.tar.* ${UPLOAD_PATH}

View File

@ -0,0 +1,55 @@
#!/bin/bash
set -x -e -v
# This script is for building clang.
ORIGPWD="$PWD"
JSON_CONFIG="$1"
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
if [ -d "$GECKO_PATH/binutils/bin" ]; then
export PATH="$GECKO_PATH/binutils/bin:$PATH"
fi
case "$JSON_CONFIG" in
*macosx64*)
# these variables are used in build-clang.py
export CROSS_CCTOOLS_PATH=$GECKO_PATH/cctools
export CROSS_SYSROOT=$GECKO_PATH/MacOSX10.11.sdk
export PATH=$PATH:$CROSS_CCTOOLS_PATH/bin
;;
*win64*)
UPLOAD_DIR=$ORIGPWD/public/build
# Set up all the Visual Studio paths.
. taskcluster/scripts/misc/vs-setup.sh
# LLVM_ENABLE_DIA_SDK is set if the directory "$ENV{VSINSTALLDIR}DIA SDK"
# exists.
export VSINSTALLDIR="${VSPATH}/"
# Add git.exe to the path
export PATH="$(pwd)/cmd:${PATH}"
export PATH="$(cd cmake && pwd)/bin:${PATH}"
export PATH="$(cd ninja && pwd)/bin:${PATH}"
;;
*linux64*|*android*)
;;
*)
echo Cannot figure out build configuration for $JSON_CONFIG
exit 1
;;
esac
# gets a bit too verbose here
set +x
python3 build/build-clang/build-clang.py -c $1
set -x
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp clang*.tar.* $UPLOAD_DIR

View File

@ -1,3 +0,0 @@
#!/bin/bash
source build/src/taskcluster/scripts/misc/build-clang-windows-helper64.sh clang-win64.json

View File

@ -19,14 +19,11 @@ fi
echo "Config: $CONFIG"
echo "Artifact name: $ARTIFACT_NAME"
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
cd $GECKO_PATH
# Setup depot_tools
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=$PATH:$HOME_DIR/src/depot_tools
export PATH=$PATH:$GECKO_PATH/depot_tools
# Get v8 source code and dependencies
fetch v8

View File

@ -2,11 +2,10 @@
set -x -e -v
# This script is for packaging toolchains suitable for use by distributed sccache.
WORKSPACE=$HOME/workspace
TL_NAME="$1"
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
sccache/sccache --package-toolchain $PWD/$TL_NAME/bin/$TL_NAME $HOME/artifacts/$TL_NAME-dist-toolchain.tar.xz
sccache/sccache --package-toolchain $GECKO_PATH/$TL_NAME/bin/$TL_NAME $HOME/artifacts/$TL_NAME-dist-toolchain.tar.xz

View File

@ -3,11 +3,8 @@ set -e
# This script is for building GCC 6 for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
root_dir=$HOME_DIR
data_dir=$HOME_DIR/src/build/unix/build-gcc
root_dir=$MOZ_FETCHES_DIR
data_dir=$GECKO_PATH/build/unix/build-gcc
. $data_dir/build-gcc.sh
@ -28,4 +25,4 @@ build_gcc
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp $HOME_DIR/gcc.tar.* $UPLOAD_DIR
cp $MOZ_FETCHES_DIR/gcc.tar.* $UPLOAD_DIR

View File

@ -3,11 +3,8 @@ set -e
# This script is for building GCC 7 for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
root_dir=$HOME_DIR
data_dir=$HOME_DIR/src/build/unix/build-gcc
root_dir=$MOZ_FETCHES_DIR
data_dir=$GECKO_PATH/build/unix/build-gcc
. $data_dir/build-gcc.sh
@ -28,4 +25,4 @@ build_gcc
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp $HOME_DIR/gcc.tar.* $UPLOAD_DIR
cp $MOZ_FETCHES_DIR/gcc.tar.* $UPLOAD_DIR

View File

@ -3,11 +3,8 @@ set -e
# This script is for building GCC 7 for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
root_dir=$HOME_DIR
data_dir=$HOME_DIR/src/build/unix/build-gcc
root_dir=$MOZ_FETCHES_DIR
data_dir=$GECKO_PATH/build/unix/build-gcc
. $data_dir/build-gcc.sh
@ -28,4 +25,4 @@ build_gcc
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp $HOME_DIR/gcc.tar.* $UPLOAD_DIR
cp $MOZ_FETCHES_DIR/gcc.tar.* $UPLOAD_DIR

View File

@ -3,11 +3,8 @@ set -e
# This script is for building GCC 7 for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
root_dir=$HOME_DIR
data_dir=$HOME_DIR/src/build/unix/build-gcc
root_dir=$MOZ_FETCHES_DIR
data_dir=$GECKO_PATH/build/unix/build-gcc
. $data_dir/build-gcc.sh
@ -28,4 +25,4 @@ build_gcc
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp $HOME_DIR/gcc.tar.* $UPLOAD_DIR
cp $MOZ_FETCHES_DIR/gcc.tar.* $UPLOAD_DIR

View File

@ -3,11 +3,8 @@ set -e
# This script is for building a MinGW GCC (and headers) to be used on Linux to compile for Windows.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
root_dir=$HOME_DIR
data_dir=$HOME_DIR/src/build/unix/build-gcc
root_dir=$MOZ_FETCHES_DIR
data_dir=$GECKO_PATH/build/unix/build-gcc
. $data_dir/build-gcc.sh

View File

@ -7,12 +7,9 @@ set -x
# the gcc checkout because it needs to recompile gmp and the gcc build script
# determines the version of gmp to download.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
root_dir=$HOME_DIR
build_dir=$HOME_DIR/src/build
data_dir=$HOME_DIR/src/build/unix/build-gcc
root_dir=$MOZ_FETCHES_DIR
build_dir=$GECKO_PATH/build
data_dir=$GECKO_PATH/build/unix/build-gcc
# Download and unpack upstream toolchain artifacts (ie, the gcc binary).
. $(dirname $0)/tooltool-download.sh
@ -87,4 +84,4 @@ build_sixgill
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp $HOME_DIR/sixgill.tar.* $UPLOAD_DIR
cp $MOZ_FETCHES_DIR/sixgill.tar.* $UPLOAD_DIR

View File

@ -2,12 +2,7 @@
set -e -v
# This is shared code for building GN.
: GN_REV ${GN_REV:=d69a9c3765dee2e650bcccebbadf72c5d42d92b1}
git clone --no-checkout https://gn.googlesource.com/gn $WORKSPACE/gn-standalone
cd $WORKSPACE/gn-standalone
git checkout $GN_REV
cd $MOZ_FETCHES_DIR/gn
# We remove /WC because of https://bugs.chromium.org/p/gn/issues/detail?id=51
# And /MACHINE:x64 because we just let the PATH decide what cl and link are
@ -38,11 +33,20 @@ index a7142fab..78d0fd56 100755
EOF
if test -n "$MAC_CROSS"; then
python build/gen.py --platform darwin
python build/gen.py --platform darwin --no-last-commit-position
else
python build/gen.py
python build/gen.py --no-last-commit-position
fi
cat > out/last_commit_position.h <<EOF
#ifndef OUT_LAST_COMMIT_POSITION_H_
#define OUT_LAST_COMMIT_POSITION_H_
#define LAST_COMMIT_POSITION "unknown"
#endif // OUT_LAST_COMMIT_POSITION_H_
EOF
ninja -C out -v
STAGE=gn

View File

@ -5,8 +5,8 @@ set -e -v
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
export CC=$WORKSPACE/build/src/gcc/bin/gcc
export CXX=$WORKSPACE/build/src/gcc/bin/g++
export CC=$GECKO_PATH/gcc/bin/gcc
export CXX=$GECKO_PATH/gcc/bin/g++
export LDFLAGS=-lrt
# Gn build scripts use #!/usr/bin/env python, which will be python 2.6 on
@ -16,7 +16,7 @@ mkdir -p $WORKSPACE/python_bin
ln -s /usr/bin/python2.7 $WORKSPACE/python_bin/python
export PATH=$WORKSPACE/python_bin:$PATH
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
. taskcluster/scripts/misc/build-gn-common.sh

View File

@ -6,12 +6,12 @@ set -e -v
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
CROSS_CCTOOLS_PATH=$WORKSPACE/build/src/cctools
CROSS_SYSROOT=$WORKSPACE/build/src/MacOSX10.11.sdk
CROSS_CCTOOLS_PATH=$GECKO_PATH/cctools
CROSS_SYSROOT=$GECKO_PATH/MacOSX10.11.sdk
export CC=$WORKSPACE/build/src/clang/bin/clang
export CXX=$WORKSPACE/build/src/clang/bin/clang++
export AR=$WORKSPACE/build/src/clang/bin/llvm-ar
export CC=$GECKO_PATH/clang/bin/clang
export CXX=$GECKO_PATH/clang/bin/clang++
export AR=$GECKO_PATH/clang/bin/llvm-ar
export CFLAGS="-target x86_64-apple-darwin -mlinker-version=137 -B ${CROSS_CCTOOLS_PATH}/bin -isysroot ${CROSS_SYSROOT} -I${CROSS_SYSROOT}/usr/include -iframework ${CROSS_SYSROOT}/System/Library/Frameworks"
export CXXFLAGS="-stdlib=libc++ ${CFLAGS}"
export LDFLAGS="${CXXFLAGS} -Wl,-syslibroot,${CROSS_SYSROOT} -Wl,-dead_strip"
@ -26,7 +26,7 @@ mkdir -p $WORKSPACE/python_bin
ln -s /usr/bin/python2.7 $WORKSPACE/python_bin/python
export PATH=$WORKSPACE/python_bin:$PATH
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh

View File

@ -3,22 +3,15 @@ set -e -v
# This script is for building GN on Windows.
WORKSPACE=$PWD
UPLOAD_DIR=$WORKSPACE/public/build
UPLOAD_DIR=$PWD/public/build
COMPRESS_EXT=bz2
VSPATH="$WORKSPACE/build/src/vs2017_15.8.4"
cd $GECKO_PATH
export INCLUDE="${VSPATH}/VC/include:${VSPATH}/VC/atlmfc/include:${VSPATH}/SDK/Include/10.0.17134.0/ucrt:${VSPATH}/SDK/Include/10.0.17134.0/shared:${VSPATH}/SDK/Include/10.0.17134.0/um:${VSPATH}/SDK/Include/10.0.17134.0/winrt:${VSPATH}/DIA SDK/include"
export LIB="${VSPATH}/VC/lib/x86:${VSPATH}/VC/atlmfc/lib/x86:${VSPATH}/SDK/lib/10.0.17134.0/ucrt/x86:${VSPATH}/SDK/lib/10.0.17134.0/um/x86:${VSPATH}/DIA SDK/lib"
export PATH="$WORKSPACE/build/src/ninja/bin:$PATH"
export PATH="$WORKSPACE/build/src/mingw64/bin:$PATH"
export PATH="${VSPATH}/VC/bin/Hostx64/x86:${VSPATH}/VC/bin/Hostx64/x64:${VSPATH}/VC/bin/Hostx86/x86:${VSPATH}/SDK/bin/10.0.17134.0/x64:${VSPATH}/DIA SDK/bin:${PATH}"
export PATH="${VSPATH}/VC/redist/x86/Microsoft.VC141.CRT:${VSPATH}/SDK/Redist/ucrt/DLLs/x86:${PATH}"
cd $WORKSPACE/build/src
export PATH="$GECKO_PATH/ninja/bin:$PATH"
export PATH="$GECKO_PATH/mingw64/bin:$PATH"
. taskcluster/scripts/misc/vs-setup.sh
. taskcluster/scripts/misc/tooltool-download.sh
. taskcluster/scripts/misc/build-gn-common.sh

View File

@ -3,31 +3,22 @@ set -x -e -v
# This script is for building grcov
OWNER=marco-c
PROJECT=grcov
PROJECT_REVISION=9214a916805838265764f9c69eaed657ea3db021
# This script is for building rust-size
case "$(uname -s)" in
Linux)
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
;;
MINGW*)
WORKSPACE=$PWD
UPLOAD_DIR=$WORKSPACE/public/build
WIN_WORKSPACE="$(pwd -W)"
UPLOAD_DIR=$PWD/public/build
COMPRESS_EXT=bz2
export INCLUDE="$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/include;$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/atlmfc/include;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/ucrt;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/shared;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/um;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/winrt;$WIN_WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/include"
export LIB="$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/lib/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/atlmfc/lib/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/lib/10.0.17134.0/um/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/lib/10.0.17134.0/ucrt/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/lib/amd64"
PATH="$WORKSPACE/build/src/vs2017_15.8.4/VC/bin/Hostx64/x64:$WORKSPACE/build/src/vs2017_15.8.4/VC/bin/Hostx86/x86:$WORKSPACE/build/src/vs2017_15.8.4/SDK/bin/10.0.17134.0/x64:$WORKSPACE/build/src/vs2017_15.8.4/redist/x64/Microsoft.VC141.CRT:$WORKSPACE/build/src/vs2017_15.8.4/SDK/Redist/ucrt/DLLs/x64:$WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/bin/amd64:$WORKSPACE/build/src/mingw64/bin:$PATH"
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
;;
esac
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
@ -36,13 +27,9 @@ if [ -e Cargo.toml ]; then
mv Cargo.toml Cargo.toml.back
fi
PATH="$PWD/rustc/bin:$PATH"
PATH="$(cd $GECKO_PATH && pwd)/rustc/bin:$PATH"
git clone -n https://github.com/${OWNER}/${PROJECT} ${PROJECT}
pushd $PROJECT
git checkout $PROJECT_REVISION
pushd $MOZ_FETCHES_DIR/$PROJECT
cargo build --verbose --release

View File

@ -2,17 +2,15 @@
set -x -e -v
# This script is for building hfsplus for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
export PATH=$PATH:$HOME_DIR/src/clang/bin
export PATH=$PATH:$GECKO_PATH/clang/bin
build/unix/build-hfsplus/build-hfsplus.sh $HOME_DIR
build/unix/build-hfsplus/build-hfsplus.sh $MOZ_FETCHES_DIR
# Put a tarball in the artifacts dir
mkdir -p $UPLOAD_DIR
cp $HOME_DIR/hfsplus-tools.tar.* $UPLOAD_DIR
cp $MOZ_FETCHES_DIR/hfsplus-tools.tar.* $UPLOAD_DIR

View File

@ -3,10 +3,7 @@ set -x -e -v
# This script is for building infer for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
cd $GECKO_PATH
# gets a bit too verbose here
set +x

View File

@ -3,10 +3,7 @@ set -x -e -v
# This script is for building clang for Linux.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
cd $HOME_DIR/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
@ -19,10 +16,10 @@ cmake \
-GNinja \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_TARGETS_TO_BUILD=X86 \
-DCMAKE_C_COMPILER=$HOME_DIR/src/gcc/bin/gcc \
-DCMAKE_C_COMPILER=$GECKO_PATH/gcc/bin/gcc \
..
export LD_LIBRARY_PATH=$HOME_DIR/src/gcc/lib64
export LD_LIBRARY_PATH=$GECKO_PATH/gcc/lib64
ninja dsymutil llvm-symbolizer

View File

@ -3,10 +3,9 @@ set -x -e -v
# This script is for building mar and mbsdiff
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
@ -17,7 +16,7 @@ echo ac_add_options --enable-project=tools/update-packaging > .mozconfig
TOOLCHAINS="binutils clang"
for t in $TOOLCHAINS; do
PATH="$WORKSPACE/build/src/$t/bin:$PATH"
PATH="$GECKO_PATH/$t/bin:$PATH"
done
./mach build -v

View File

@ -2,23 +2,17 @@
set -x -e -v
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
INSTALL_DIR=$WORKSPACE/fxc2
TOOLTOOL_DIR=$WORKSPACE/build/src
mkdir -p $INSTALL_DIR/bin
cd $TOOLTOOL_DIR
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
export PATH="$TOOLTOOL_DIR/clang/bin:$PATH"
cd $WORKSPACE
export PATH="$GECKO_PATH/clang/bin:$PATH"
# --------------
git clone -n https://github.com/mozilla/fxc2.git fxc2-clone
cd fxc2-clone
git checkout 63ad74b7faa7033f2c1be9cc1cd0225241a1a9a5 # Asserts integrity of the clone (right?)
cd $MOZ_FETCHES_DIR/fxc2
make -j$(nproc) x86
cp fxc2.exe $INSTALL_DIR/bin/

View File

@ -11,14 +11,11 @@ set -x -e -v
# DEBUG: | Error initalizing CEXEBuild: error setting
# ERROR: Failed to get nsis version.
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
INSTALL_DIR=$WORKSPACE/build/src/mingw32
TOOLTOOL_DIR=$WORKSPACE/build/src
INSTALL_DIR=$GECKO_PATH/mingw32
mkdir -p $INSTALL_DIR
cd $TOOLTOOL_DIR
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
# After tooltool runs, we move the stuff we just downloaded.
# As explained above, we have to build nsis to the directory it
@ -28,9 +25,9 @@ cd $TOOLTOOL_DIR
# we will package up the compiler we downloaded along with the
# stuff we just built.
mv mingw32 mingw32-gcc
export PATH="$TOOLTOOL_DIR/mingw32-gcc/bin:$PATH"
export PATH="$GECKO_PATH/mingw32-gcc/bin:$PATH"
cd $HOME_DIR
cd $MOZ_FETCHES_DIR
# --------------
@ -44,7 +41,7 @@ scons XGCC_W32_PREFIX=i686-w64-mingw32- ZLIB_W32=../zlib-1.2.11 SKIPUTILS="NSIS
# --------------
cd $WORKSPACE/build/src
cd $GECKO_PATH
tar caf nsis.tar.xz mingw32
mkdir -p $UPLOAD_DIR

View File

@ -3,10 +3,9 @@ set -x -e -v
# This script is for building minidump_stackwalk
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
@ -20,7 +19,7 @@ case "$1" in
macosx64)
TOOLCHAINS="cctools rustc clang"
echo ac_add_options --target=x86_64-apple-darwin >> .mozconfig
echo ac_add_options --with-macos-sdk=$WORKSPACE/build/src/MacOSX10.11.sdk >> .mozconfig
echo ac_add_options --with-macos-sdk=$GECKO_PATH/MacOSX10.11.sdk >> .mozconfig
;;
mingw32)
TOOLCHAINS="binutils rustc clang"
@ -35,7 +34,7 @@ mingw32)
esac
for t in $TOOLCHAINS; do
PATH="$WORKSPACE/build/src/$t/bin:$PATH"
PATH="$GECKO_PATH/$t/bin:$PATH"
done
./mach build -v

View File

@ -1,17 +1,16 @@
#!/bin/bash
set -x -e -v
WORKSPACE=$HOME/workspace
COMPRESS_EXT=bz2
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
cd $WORKSPACE/build/nasm-*
cd $MOZ_FETCHES_DIR/nasm-*
case "$1" in
win64)
export PATH="$WORKSPACE/build/src/clang/bin:$PATH"
export PATH="$GECKO_PATH/clang/bin:$PATH"
./configure CC=x86_64-w64-mingw32-clang AR=llvm-ar RANLIB=llvm-ranlib --host=x86_64-w64-mingw32
EXE=.exe
;;

View File

@ -1,31 +1,22 @@
#!/bin/bash
set -x -e -v
OWNER=luser
PROJECT=rust-size
PROJECT_REVISION=ab659d93b1faba95307df952aefe3fbed3583669
# This script is for building rust-size
case "$(uname -s)" in
Linux)
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
;;
MINGW*)
WORKSPACE=$PWD
UPLOAD_DIR=$WORKSPACE/public/build
WIN_WORKSPACE="$(pwd -W)"
UPLOAD_DIR=$PWD/public/build
COMPRESS_EXT=bz2
export INCLUDE="$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/include;$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/atlmfc/include;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/ucrt;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/shared;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/um;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/winrt;$WIN_WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/include"
export LIB="$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/lib/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/atlmfc/lib/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/lib/10.0.17134.0/um/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/lib/10.0.17134.0/ucrt/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/lib/amd64"
PATH="$WORKSPACE/build/src/vs2017_15.8.4/VC/bin/Hostx64/x64:$WORKSPACE/build/src/vs2017_15.8.4/VC/bin/Hostx86/x86:$WORKSPACE/build/src/vs2017_15.8.4/SDK/bin/10.0.17134.0/x64:$WORKSPACE/build/src/vs2017_15.8.4/redist/x64/Microsoft.VC141.CRT:$WORKSPACE/build/src/vs2017_15.8.4/SDK/Redist/ucrt/DLLs/x64:$WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/bin/amd64:$WORKSPACE/build/src/mingw64/bin:$PATH"
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
;;
esac
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
@ -34,13 +25,9 @@ if [ -e Cargo.toml ]; then
mv Cargo.toml Cargo.toml.back
fi
PATH="$PWD/rustc/bin:$PATH"
PATH="$(cd $GECKO_PATH && pwd)/rustc/bin:$PATH"
git clone -n https://github.com/${OWNER}/${PROJECT} ${PROJECT}
cd $PROJECT
git checkout $PROJECT_REVISION
cd $MOZ_FETCHES_DIR/$PROJECT
cargo build --verbose --release

View File

@ -1,79 +1,54 @@
#!/bin/bash
set -x -e -v
# 0.2.9 + some changes
SCCACHE_REVISION=93475f3458f7776c37b08201ae0d83ecac4b8fa2
TARGET="$1"
# This script is for building sccache
case "$(uname -s)" in
Linux)
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
PATH="$WORKSPACE/build/src/binutils/bin:$PATH"
PATH="$GECKO_PATH/binutils/bin:$PATH"
;;
MINGW*)
WORKSPACE=$PWD
UPLOAD_DIR=$WORKSPACE/public/build
WIN_WORKSPACE="$(pwd -W)"
UPLOAD_DIR=$PWD/public/build
COMPRESS_EXT=bz2
export INCLUDE="$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/include;$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/atlmfc/include;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/ucrt;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/shared;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/um;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/Include/10.0.17134.0/winrt;$WIN_WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/include"
export LIB="$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/lib/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/VC/atlmfc/lib/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/lib/10.0.17134.0/um/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/SDK/lib/10.0.17134.0/ucrt/x64;$WIN_WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/lib/amd64"
PATH="$WORKSPACE/build/src/vs2017_15.8.4/VC/bin/Hostx64/x64:$WORKSPACE/build/src/vs2017_15.8.4/VC/bin/Hostx86/x86:$WORKSPACE/build/src/vs2017_15.8.4/SDK/bin/10.0.17134.0/x64:$WORKSPACE/build/src/vs2017_15.8.4/redist/x64/Microsoft.VC141.CRT:$WORKSPACE/build/src/vs2017_15.8.4/SDK/Redist/ucrt/DLLs/x64:$WORKSPACE/build/src/vs2017_15.8.4/DIA SDK/bin/amd64:$WORKSPACE/build/src/mingw64/bin:$PATH"
. $GECKO_PATH/taskcluster/scripts/misc/vs-setup.sh
;;
esac
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
PATH="$PWD/rustc/bin:$PATH"
PATH="$(cd $GECKO_PATH && pwd)/rustc/bin:$PATH"
git clone https://github.com/mozilla/sccache sccache
cd sccache
git checkout $SCCACHE_REVISION
cd $MOZ_FETCHES_DIR/sccache
case "$(uname -s)" in
Linux)
if [ "$TARGET" == "x86_64-apple-darwin" ]; then
export PATH="$WORKSPACE/build/src/llvm-dsymutil/bin:$PATH"
export PATH="$WORKSPACE/build/src/cctools/bin:$PATH"
cat >$WORKSPACE/build/src/cross-linker <<EOF
exec $WORKSPACE/build/src/clang/bin/clang -v \
-fuse-ld=$WORKSPACE/build/src/cctools/bin/x86_64-apple-darwin-ld \
export PATH="$GECKO_PATH/llvm-dsymutil/bin:$PATH"
export PATH="$GECKO_PATH/cctools/bin:$PATH"
cat >$GECKO_PATH/cross-linker <<EOF
exec $GECKO_PATH/clang/bin/clang -v \
-fuse-ld=$GECKO_PATH/cctools/bin/x86_64-apple-darwin-ld \
-mmacosx-version-min=10.11 \
-target $TARGET \
-B $WORKSPACE/build/src/cctools/bin \
-isysroot $WORKSPACE/build/src/MacOSX10.11.sdk \
-B $GECKO_PATH/cctools/bin \
-isysroot $GECKO_PATH/MacOSX10.11.sdk \
"\$@"
EOF
chmod +x $WORKSPACE/build/src/cross-linker
export RUSTFLAGS="-C linker=$WORKSPACE/build/src/cross-linker"
export CC="$WORKSPACE/build/src/clang/bin/clang"
chmod +x $GECKO_PATH/cross-linker
export RUSTFLAGS="-C linker=$GECKO_PATH/cross-linker"
export CC="$GECKO_PATH/clang/bin/clang"
cargo build --features "all" --verbose --release --target $TARGET
else
# Link openssl statically so we don't have to bother with different sonames
# across Linux distributions. We can't use the system openssl; see the sad
# story in https://bugzilla.mozilla.org/show_bug.cgi?id=1163171#c26.
OPENSSL_TARBALL=openssl-1.1.0g.tar.gz
curl -L -O https://www.openssl.org/source/$OPENSSL_TARBALL
cat >$OPENSSL_TARBALL.sha256sum <<EOF
de4d501267da39310905cb6dc8c6121f7a2cad45a7707f76df828fe1b85073af openssl-1.1.0g.tar.gz
EOF
cat $OPENSSL_TARBALL.sha256sum
sha256sum -c $OPENSSL_TARBALL.sha256sum
tar zxf $OPENSSL_TARBALL
# We can't use the system openssl; see the sad story in
# https://bugzilla.mozilla.org/show_bug.cgi?id=1163171#c26.
OPENSSL_BUILD_DIRECTORY=$PWD/ourssl
pushd $(basename $OPENSSL_TARBALL .tar.gz)
pushd $MOZ_FETCHES_DIR/openssl-1.1.0g
./Configure --prefix=$OPENSSL_BUILD_DIRECTORY no-shared linux-x86_64
make -j `nproc --all`
# `make install` installs a *ton* of docs that we don't care about.

View File

@ -3,11 +3,10 @@ set -e -v
# This script is for building tup on Linux.
WORKSPACE=$HOME/workspace
COMPRESS_EXT=xz
export PATH=$WORKSPACE/build/src/gcc/bin:$PATH
export PATH=$GECKO_PATH/gcc/bin:$PATH
cd $WORKSPACE/build/src
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh

View File

@ -2,7 +2,6 @@
set -x -e -v
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
INSTALL_DIR=$WORKSPACE/upx
mkdir -p $INSTALL_DIR/bin

View File

@ -2,12 +2,11 @@
set -x -e -v
WORKSPACE=$HOME/workspace
HOME_DIR=$WORKSPACE/build
INSTALL_DIR=$WORKSPACE/wine
mkdir -p $INSTALL_DIR
cd $HOME_DIR
cd $MOZ_FETCHES_DIR
# --------------
cd wine-3.0.3

View File

@ -4,13 +4,12 @@ set -x -e -v
# This script is for fetching and repacking the Android NDK (for
# Linux), the tools required to produce native Android programs.
WORKSPACE=$HOME/workspace
UPLOAD_DIR=$HOME/project/gecko/android-ndk
mkdir -p $HOME/artifacts $UPLOAD_DIR
# Populate /builds/worker/.mozbuild/android-ndk-$VER.
cd /builds/worker/workspace/build/src
cd $GECKO_PATH
./mach python python/mozboot/mozboot/android.py --ndk-only --no-interactive
# Don't generate a tarball with a versioned NDK directory.

View File

@ -4,13 +4,12 @@ set -x -e -v
# This script is for fetching and repacking the Android SDK (for
# Linux), the tools required to produce Android packages.
WORKSPACE=$HOME/workspace
UPLOAD_DIR=$HOME/project/gecko/android-sdk
mkdir -p $HOME/artifacts $UPLOAD_DIR
# Populate /builds/worker/.mozbuild/android-sdk-linux.
cd /builds/worker/workspace/build/src
cd $GECKO_PATH
./mach python python/mozboot/mozboot/android.py --artifact-mode --no-interactive
# It's nice to have the build logs include the state of the world upon

View File

@ -1,6 +1,6 @@
# Fetch a tooltool manifest.
cd $WORKSPACE/build/src
cd $GECKO_PATH
case "`uname -s`" in
Linux)

View File

@ -0,0 +1,8 @@
VSDIR=vs2017_15.8.4
VSPATH="${GECKO_PATH}/${VSDIR}"
UNIX_VSPATH="$(cd ${GECKO_PATH} && pwd)/${VSDIR}"
SDK_VERSION=10.0.17134.0
export INCLUDE="${VSPATH}/VC/include;${VSPATH}/VC/atlmfc/include;${VSPATH}/SDK/Include/${SDK_VERSION}/ucrt;${VSPATH}/SDK/Include/${SDK_VERSION}/shared;${VSPATH}/SDK/Include/${SDK_VERSION}/um;${VSPATH}/SDK/Include/${SDK_VERSION}/winrt;${VSPATH}/DIA SDK/include"
export LIB="${VSPATH}/VC/lib/x64;${VSPATH}/VC/atlmfc/lib/x64;${VSPATH}/SDK/lib/${SDK_VERSION}/um/x64;${VSPATH}/SDK/lib/${SDK_VERSION}/ucrt/x64;${VSPATH}/DIA SDK/lib/amd64"
export PATH="${UNIX_VSPATH}/VC/bin/Hostx64/x64:${UNIX_VSPATH}/VC/bin/Hostx86/x86:${UNIX_VSPATH}/SDK/bin/${SDK_VERSION}/x64:${UNIX_VSPATH}/redist/x64/Microsoft.VC141.CRT:${UNIX_VSPATH}/SDK/Redist/ucrt/DLLs/x64:${UNIX_VSPATH}/DIA SDK/bin/amd64:$PATH"

View File

@ -1,20 +1,11 @@
#!/bin/bash
set -x -e -v
export WORKSPACE="/builds/worker/workspace"
export TOOLS_DIR="${WORKSPACE}/build/src"
export TARGET_TRIPLE="x86_64-apple-darwin"
mkdir -p "${TOOLS_DIR}"
# The tooltool-download script assumes that the gecko checkout is in
# ${WORKSPACE}/build/src and that it can run `./mach` there. This is not
# true when using run-task (which is what this script runs with) so we
# symlink mach to satisfy tooltool-download's assumptions.
ln -s "${GECKO_PATH}/mach" "${TOOLS_DIR}"
source "${GECKO_PATH}/taskcluster/scripts/misc/tooltool-download.sh"
MACOS_SYSROOT="${TOOLS_DIR}/MacOSX10.11.sdk"
MACOS_SYSROOT="${GECKO_PATH}/MacOSX10.11.sdk"
CLANGDIR="${MOZ_FETCHES_DIR}/clang"
# Deploy the wrench dependencies

View File

@ -6,15 +6,13 @@ set -x -e -v
# exports those dependencies as a tarball. This avoids having to download
# these dependencies on every test job that uses `wrench`.
WORKSPACE=$HOME/workspace
SRCDIR=$WORKSPACE/build/src
UPLOAD_DIR=$HOME/artifacts
cd $WORKSPACE
. $SRCDIR/taskcluster/scripts/misc/tooltool-download.sh
export PATH=$PATH:$SRCDIR/rustc/bin
cd $GECKO_PATH
. taskcluster/scripts/misc/tooltool-download.sh
export PATH=$PATH:$GECKO_PATH/rustc/bin
cargo install --version 0.1.23 cargo-vendor
cd $SRCDIR/gfx/wr/
cd gfx/wr/
mkdir .cargo
cargo vendor --relative-path --sync ./Cargo.lock > .cargo/config
mkdir wrench-deps
@ -26,7 +24,7 @@ mkdir wrench-deps/cargo-apk
# https://github.com/tomaka/android-rs-glue/pull/171 (see also
# https://github.com/tomaka/android-rs-glue/issues/204), we need to use
# an unpublished version.
cargo install --git https://github.com/staktrace/android-rs-glue --rev 486491e81819c3346d364a93fc1f3c0206d3ece0 --root wrench-deps/cargo-apk cargo-apk
cargo install --path $MOZ_FETCHES_DIR/android-rs-glue/cargo-apk --root wrench-deps/cargo-apk cargo-apk
tar caf wrench-deps.tar.bz2 wrench-deps
mkdir -p $UPLOAD_DIR

View File

@ -11,43 +11,10 @@ set -x -e -v
cd $GECKO_PATH
# This will download the rustc, cmake, ninja, MSVC, and wrench-deps artifacts.
WORKSPACE="$PWD/../../" taskcluster/scripts/misc/tooltool-download.sh
export PATH=$PATH:$MOZ_FETCHES_DIR/rustc/bin:$PWD/cmake/bin:$PWD/ninja/bin
. taskcluster/scripts/misc/tooltool-download.sh
export PATH=$PATH:$MOZ_FETCHES_DIR/rustc/bin:$GECKO_PATH/cmake/bin:$GECKO_PATH/ninja/bin
# We will be sourcing mozconfig files, which end up calling mk_add_options with
# various settings. We only need the variable settings they create along the
# way. Define mk_add_options as empty so the variables are defined but nothing
# else happens.
# This is adapted from the start of js/src/devtools/automation/winbuildenv.sh
# which does a similar thing.
mk_add_options() {
:
}
export topsrcdir=$PWD
. $topsrcdir/build/win64/mozconfig.vs2017
win_sdk_version="10.0.17134.0"
export PATH="${VSPATH}/VC/bin/Hostx64/x64:${VSPATH}/SDK/bin/${win_sdk_version}/x64:${PATH}"
export INCLUDE="${VSPATH}/VC/include:${VSPATH}/VC/atlmfc/include:${VSPATH}/SDK/Include/${win_sdk_version}/ucrt:${VSPATH}/SDK/Include/${win_sdk_version}/shared:${VSPATH}/SDK/Include/${win_sdk_version}/um:${VSPATH}/SDK/Include/${win_sdk_version}/winrt"
export LIB="${VSPATH}/VC/lib/x64:${VSPATH}/VC/atlmfc/lib/x64:${VSPATH}/SDK/Lib/${win_sdk_version}/ucrt/x64:${VSPATH}/SDK/Lib/${win_sdk_version}/um/x64"
# In the msys bash that we're running in, environment variables containing paths
# will *sometimes* get converted to windows format on their own, but it doesn't
# happen consistently. See bug 1508828 around comment 9 onwards for some details.
# To ensure we consistently convert the INCLUDE and LIB variables that MSVC
# needs for building stuff, we do it here explicitly.
convert_path_to_win() {
echo $1 |
sed -e 's#:#\n#g' | # split path components into separate lines
sed -e 's#^/\(.\)/#\1:/#' | # replace first path component (if one letter) with equivalent drive letter
sed -e 's#/#\\#g' | # convert all forward slashes to backslashes
paste -s -d ';' # glue the lines back together
}
export INCLUDE=$(convert_path_to_win "$INCLUDE")
export LIB=$(convert_path_to_win "$LIB")
. taskcluster/scripts/misc/vs-setup.sh
# Move the wrench-deps vendored crates into place
mv ${MOZ_FETCHES_DIR}/wrench-deps/{vendor,.cargo} gfx/wr

View File

@ -5,10 +5,8 @@
from __future__ import absolute_import, print_function, unicode_literals
import copy
import os
from taskgraph.transforms.base import TransformSequence
from taskgraph.transforms.job import get_default_moz_fetches_dir
from taskgraph.util.declarative_artifacts import get_geckoview_upstream_artifacts
from taskgraph.util.taskcluster import get_artifact_prefix
@ -52,9 +50,7 @@ def set_fetches_and_locations(config, jobs):
aar_file_name = aar_location.split('/')[-1]
env_var = MOZ_ANDROID_FAT_AAR_ENV_MAP[platform]
job['worker']['env'][env_var] = os.path.join(
get_default_moz_fetches_dir(job), aar_file_name
)
job['worker']['env'][env_var] = aar_file_name
job['dependencies'] = dependencies

View File

@ -233,21 +233,12 @@ def use_fetches(config, jobs):
env = worker.setdefault('env', {})
env['MOZ_FETCHES'] = {'task-reference': json.dumps(job_fetches, sort_keys=True)}
env.setdefault('MOZ_FETCHES_DIR', get_default_moz_fetches_dir(job))
# The path is normalized to an absolute path in run-task
env.setdefault('MOZ_FETCHES_DIR', 'fetches')
yield job
def get_default_moz_fetches_dir(job):
if job.get('worker', {}).get('os') in ('windows', 'macosx'):
moz_fetches_dir = 'fetches'
else:
workdir = job['run'].get('workdir', '/builds/worker')
moz_fetches_dir = '{}/fetches'.format(workdir)
return moz_fetches_dir
@transforms.add
def make_task_description(config, jobs):
"""Given a build description, create a task description"""

View File

@ -132,9 +132,12 @@ def docker_worker_toolchain(config, job, taskdesc):
env.update({
'MOZ_BUILD_DATE': config.params['moz_build_date'],
'MOZ_SCM_LEVEL': config.params['level'],
'MOZ_FETCHES_DIR': workspace,
'GECKO_PATH': gecko_path,
})
# If the task definition hasn't overridden the default value, set to
# the workspace.
if env.get('MOZ_FETCHES_DIR') == 'fetches':
env['MOZ_FETCHES_DIR'] = workspace
attributes = taskdesc.setdefault('attributes', {})
attributes['toolchain-artifact'] = run.pop('toolchain-artifact')