]>
Commit | Line | Data |
---|---|---|
255e6f7c TS |
1 | trigger: |
2 | - master | |
3 | ||
4 | jobs: | |
5 | - job: Build | |
6 | timeoutInMinutes: 360 | |
7 | strategy: | |
8 | matrix: | |
9 | windows: | |
10 | imageName: 'vs2017-win2016' | |
11 | mac: | |
12 | imageName: 'macos-10.14' | |
13 | linux: | |
14 | imageName: 'ubuntu-16.04' | |
15 | ||
16 | pool: | |
17 | vmImage: $(imageName) | |
18 | ||
19 | steps: | |
20 | - script: | | |
21 | powershell -Command "$ProgressPreference = 'SilentlyContinue'; iwr -outf %TEMP%\LLVM-8.0.0-win64.exe https://rust-lang-ci2.s3.amazonaws.com/rust-ci-mirror/LLVM-8.0.0-win64.exe" | |
22 | set CLANG_DIR=%CD%\citools\clang-rust | |
23 | start "" /WAIT %TEMP%\LLVM-8.0.0-win64.exe /S /NCRC /D=%CLANG_DIR% | |
24 | echo ##vso[task.prependpath]%CLANG_DIR%/bin | |
25 | condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT')) | |
26 | displayName: Install clang (Windows) | |
27 | - bash: | | |
28 | set -euo pipefail | |
29 | curl -f http://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-apple-darwin.tar.xz | tar xJf - | |
30 | export CLANG_DIR=`pwd`/clang+llvm-8.0.0-x86_64-apple-darwin/bin | |
31 | echo "##vso[task.prependpath]$CLANG_DIR" | |
32 | displayName: Install clang (OSX) | |
33 | condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin')) | |
34 | - bash: | | |
35 | set -euo pipefail | |
36 | curl -f http://releases.llvm.org/8.0.0/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz | tar xJf - | |
37 | export CLANG_DIR=`pwd`/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/bin | |
38 | echo "##vso[task.prependpath]$CLANG_DIR" | |
39 | displayName: Install clang (Linux) | |
40 | condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux')) | |
41 | - bash: | | |
42 | # Windows releases of LLVM don't include the llvm-nm tool, which is needed for building | |
43 | # wasi-libc. Rust's llvm-tools include llvm-nm, and Rust is installed on Azure's Windows | |
44 | # images, so we can use that to make llvm-nm available without too much overhead. | |
45 | set -euo pipefail | |
46 | rustup update stable | |
47 | rustup default stable | |
48 | rustup component add llvm-tools-preview | |
49 | echo "##vso[task.setvariable variable=WASM_NM;]$(rustc --print sysroot|sed 's|C:|/c|'|sed 's|\\|/|g')/lib/rustlib/x86_64-pc-windows-msvc/bin/llvm-nm.exe" | |
50 | displayName: Install llvm-nm (Windows) | |
51 | condition: and(succeeded(), eq( variables['Agent.OS'], 'Windows_NT' )) | |
52 | - script: make -j4 | |
53 | displayName: Build |