-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathappveyor.yml
81 lines (73 loc) · 2.4 KB
/
appveyor.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
image:
- Visual Studio 2019
- Ubuntu
- macOS
environment:
APPVEYOR_SAVE_CACHE_ON_ERROR: true
SCCACHE_CACHE_SIZE: 1G
cache:
- build-cache
install:
- git submodule update --init --recursive --depth 1
for:
-
matrix:
only:
- image: Visual Studio 2019
init:
- call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
before_build:
- choco install sccache
- set SCCACHE_DIR=%APPVEYOR_BUILD_FOLDER%\build-cache
build_script:
- cmd: |
mkdir llvm-build
cd llvm-build
set CC=cl.exe
set CXX=cl.exe
cmake -G "Ninja" -DLLVM_HOST_TRIPLE=x86_64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DLLVM_ENABLE_PROJECTS="clang" -DLLVM_TARGETS_TO_BUILD="Glulx" ../llvm-project/llvm
ninja
after_build:
- cd %APPVEYOR_BUILD_FOLDER%\llvm-build\bin
- 7z a selected-binaries.zip clang.exe llc.exe llvm-link.exe
- move selected-binaries.zip ..
-
matrix:
only:
- image: Ubuntu
before_build:
- appveyor DownloadFile https://github.com/mozilla/sccache/releases/download/v0.2.15/sccache-v0.2.15-x86_64-unknown-linux-musl.tar.gz
- tar xzf sccache-v0.2.15-x86_64-unknown-linux-musl.tar.gz
- mv sccache-v0.2.15-x86_64-unknown-linux-musl sccache
- chmod u+x sccache/sccache
- export PATH=$PATH:`pwd`/sccache
- export SCCACHE_DIR=$APPVEYOR_BUILD_FOLDER/build-cache
after_build:
- cd $APPVEYOR_BUILD_FOLDER/llvm-build/bin
- 7za a -l selected-binaries.zip clang llc llvm-link
- mv selected-binaries.zip ..
-
matrix:
only:
- image: macOS
before_build:
- export HOMEBREW_NO_AUTO_UPDATE=1
- brew install ninja
- brew install sccache
- export SCCACHE_DIR=$APPVEYOR_BUILD_FOLDER/build-cache
after_build:
- cd $APPVEYOR_BUILD_FOLDER/llvm-build/bin
- zip selected-binaries.zip clang llc llvm-link
- mv selected-binaries.zip ..
build_script:
- mkdir llvm-build
- cd llvm-build
- cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DLLVM_ENABLE_PROJECTS="clang" -DLLVM_TARGETS_TO_BUILD="Glulx" ../llvm-project/llvm
- ninja
on_success:
- sccache -s
artifacts:
- path: llvm-build/bin
name: binaries
- path: llvm-build/selected-binaries.zip
name: selected-binaries