-
-
Notifications
You must be signed in to change notification settings - Fork 140
88 lines (81 loc) · 3.3 KB
/
make-msys2.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
# mainline windows build
name: Make CI (MSYS2 for Windows)
on:
push:
branches:
- "**"
pull_request:
branches:
- "**"
jobs:
build-msys2-windows:
# windows-latest = windows-2019 => windows-2022
# https://docs.github.com/ja/actions/using-github-hosted-runners/about-github-hosted-runners
# https://github.com/actions/virtual-environments/blob/main/images/win/Windows2019-Readme.md
# https://github.com/actions/virtual-environments/blob/main/images/win/Windows2022-Readme.md
runs-on: windows-2022
strategy:
matrix:
edition:
- YANEURAOU_ENGINE_NNUE
- YANEURAOU_ENGINE_KPPT
- YANEURAOU_ENGINE_KPP_KKPT
- YANEURAOU_ENGINE_MATERIAL
- YANEURAOU_MATE_ENGINE
- TANUKI_MATE_ENGINE
- USER_ENGINE
compiler:
- clang++
- g++
target:
- "normal,tournament"
- evallearn
archcpu:
- "AVX512VNNI,AVXVNNI,AVX512,AVX2,SSE42,SSE41,SSSE3,SSE2,ZEN1,ZEN2,ZEN3"
- NO_SSE
- OTHER
exclude:
# 以下のエディションには機械学習の実装が存在しない
# There is no machine learning implementation for the following editions
- edition: YANEURAOU_MATE_ENGINE
target: evallearn
- edition: TANUKI_MATE_ENGINE
target: evallearn
- edition: USER_ENGINE
target: evallearn
# 自動ビルドチェックから除外
# Build check exclude: archcpu ZEN3,AVXVNNI,OTHER
# `-march=cascadelake`: LLVM8, GCC9 support (AVX512VNNI)
# `-march=alderlake` : LLVM12, GCC11 support (AVX-VNNI)
# `-march=znver3`: LLVM12, GCC11 support
# https://llvm.org/docs/ReleaseNotes.html#changes-to-the-x86-target
# https://gcc.gnu.org/gcc-11/changes.html#x86
# https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html
# https://gcc.gnu.org/pipermail/gcc-patches/2020-October/556110.html
# https://twitter.com/herumi/status/1318418425295720448
- archcpu: OTHER
# NO_SSEではevallearnビルドを除外
- target: evallearn
archcpu: NO_SSE
steps:
- name: Checkout own repository
uses: actions/checkout@v2
with:
path: main
- name: Install pkg
run: |
$ErrorActionPreference = 'Continue'
C:\msys64\usr\bin\bash.exe -lc 'pacman --needed --noconfirm -Syuu'
C:\msys64\usr\bin\bash.exe -lc 'pacman --needed --noconfirm -Syuu'
C:\msys64\usr\bin\bash.exe -lc 'pacman --needed --noconfirm -Syuu pactoys'
C:\msys64\usr\bin\bash.exe -lc 'pacboy --needed --noconfirm -Syuu clang:m lld:m openblas:x openmp:x toolchain:m base-devel:'
$ErrorActionPreference = 'Stop'
- name: make
run: |
$env:PATH+=';C:\msys64';
.\main\script\msys2_build.ps1 -Edition ${{ matrix.edition }} -Compiler ${{ matrix.compiler }} -Target ${{ matrix.target }} -Cpu ${{ matrix.archcpu }}
shell: pwsh
# - uses: actions/upload-artifact@v4
# with:
# name: build-windows_${{ github.run_number }}__${{ matrix.edition }}_${{ matrix.compiler }}_${{ matrix.target }}_${{ matrix.archcpu }}_${{ github.sha }}
# path: ./main/build/**/*