forked from official-stockfish/Stockfish
-
Notifications
You must be signed in to change notification settings - Fork 4
116 lines (114 loc) · 4.19 KB
/
build.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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
name: Build
on: [push, pull_request]
jobs:
linux:
strategy:
matrix:
arch: ["x86-64-bmi2", "x86-64-avx2", "x86-64-sse41-popcnt", "x86-64-ssse3", "x86-64-sse3-popcnt", "x86-64"]
runs-on: ubuntu-16.04
steps:
- run: sudo add-apt-repository ppa:ubuntu-toolchain-r/test && sudo apt-get update && sudo apt-get install -y g++-7
- uses: actions/checkout@v2
- run: echo "CXXFLAGS=-DNNUE_EMBEDDING_OFF" >> $GITHUB_ENV
- run: cd src && make CXX=g++-7 ARCH=${{ matrix.arch }} profile-build && strip stockfish
- run: ./src/stockfish compiler
- run: mv ./src/stockfish stockfish-${{ matrix.arch }}
- uses: actions/upload-artifact@v2
with:
name: stockfish
path: stockfish-*
windows:
strategy:
matrix:
arch: ["x86-64-bmi2", "x86-64-avx2", "x86-64-sse41-popcnt", "x86-64-ssse3", "x86-64-sse3-popcnt", "x86-64"]
runs-on: windows-2016
steps:
- uses: actions/checkout@v2
- run: echo "CXXFLAGS=-DNNUE_EMBEDDING_OFF" >> ${env:GITHUB_ENV}
- run: cd src && make ARCH=${{ matrix.arch }} COMP=mingw profile-build && strip stockfish.exe
- run: ./src/stockfish compiler
- run: mv ./src/stockfish.exe stockfish-${{ matrix.arch }}.exe
- uses: actions/upload-artifact@v2
with:
name: stockfish
path: stockfish-*
macos:
strategy:
matrix:
include:
- arch: x86-64-bmi2
build: build
- arch: x86-64-avx2
build: build
- arch: x86-64-sse41-popcnt
build: profile-build
- arch: x86-64-ssse3
build: profile-build
- arch: x86-64-sse3-popcnt
build: profile-build
- arch: x86-64
build: profile-build
runs-on: macos-10.15
steps:
- uses: actions/checkout@v2
- run: echo "CXXFLAGS=-DNNUE_EMBEDDING_OFF" >> $GITHUB_ENV
- run: cd src && make ARCH=${{ matrix.arch }} ${{ matrix.build }} && strip stockfish
- run: ./src/stockfish compiler
if: ${{ matrix.build == 'profile-build' }}
- run: mv ./src/stockfish stockfish-macos-${{ matrix.arch }}
- uses: actions/upload-artifact@v2
with:
name: stockfish
path: stockfish-*
macos-aarch64:
runs-on: macos-11.0
steps:
- uses: actions/checkout@v2
- run: echo "CXXFLAGS=-DNNUE_EMBEDDING_OFF -target arm64-apple-macos11" >> $GITHUB_ENV
- run: cd src && make ARCH=apple-silicon build && strip stockfish
- run: mv ./src/stockfish stockfish-macos-aarch64
- uses: actions/upload-artifact@v2
with:
name: stockfish
path: stockfish-*
linux-aarch64:
runs-on: ubuntu-16.04
steps:
- uses: actions/checkout@v2
- uses: uraimo/[email protected]
with:
arch: aarch64
distro: ubuntu16.04
run: apt-get update && apt-get install -y software-properties-common && add-apt-repository -y ppa:ubuntu-toolchain-r/test && apt-get update && apt-get install -y wget make binutils g++-7 && cd src && CXXFLAGS=-DNNUE_EMBEDDING_OFF make CXX=g++-7 ARCH=armv8 profile-build && strip stockfish && ./stockfish compiler
- run: mv ./src/stockfish stockfish-aarch64
- uses: actions/upload-artifact@v2
with:
name: stockfish
path: stockfish-*
freebsd:
strategy:
matrix:
include:
- arch: x86-64-bmi2
build: build
- arch: x86-64-avx2
build: build
- arch: x86-64-sse41-popcnt
build: profile-build
- arch: x86-64-ssse3
build: profile-build
- arch: x86-64-sse3-popcnt
build: profile-build
- arch: x86-64
build: profile-build
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- uses: niklasf/freebsd-vm@main
with:
run: pkg install -y gmake curl && cd src && env CXXFLAGS=-DNNUE_EMBEDDING_OFF gmake ARCH=${{ matrix.arch }} COMP=clang ${{ matrix.build }} && strip stockfish
- run: mv ./src/stockfish stockfish-freebsd-${{ matrix.arch }}
- uses: actions/upload-artifact@v2
with:
name: stockfish
path: stockfish-*