mirror of
https://github.com/opelly27/Stockfish.git
synced 2026-05-20 02:47:45 +00:00
6c1df553fa
Github Actions allows us to use up to 20 workers. This way we can launch multiple different checks at the same time and optimize the overall time the CI takes a bit. closes https://github.com/official-stockfish/Stockfish/pull/4223 No functional change
115 lines
2.9 KiB
YAML
115 lines
2.9 KiB
YAML
name: Stockfish
|
|
on:
|
|
workflow_call:
|
|
jobs:
|
|
Stockfish:
|
|
name: ${{ matrix.config.name }}
|
|
runs-on: ${{ matrix.config.os }}
|
|
env:
|
|
COMPILER: ${{ matrix.config.compiler }}
|
|
COMP: ${{ matrix.config.comp }}
|
|
strategy:
|
|
matrix:
|
|
config:
|
|
- {
|
|
name: "Ubuntu 20.04 GCC",
|
|
os: ubuntu-20.04,
|
|
compiler: g++,
|
|
comp: gcc,
|
|
shell: 'bash {0}'
|
|
}
|
|
- {
|
|
name: "Ubuntu 20.04 Clang",
|
|
os: ubuntu-20.04,
|
|
compiler: clang++,
|
|
comp: clang,
|
|
shell: 'bash {0}'
|
|
}
|
|
- {
|
|
name: "MacOS 12 Apple Clang",
|
|
os: macos-12,
|
|
compiler: clang++,
|
|
comp: clang,
|
|
shell: 'bash {0}'
|
|
}
|
|
- {
|
|
name: "MacOS 12 GCC 11",
|
|
os: macos-12,
|
|
compiler: g++-11,
|
|
comp: gcc,
|
|
shell: 'bash {0}'
|
|
}
|
|
- {
|
|
name: "Windows 2022 Mingw-w64 GCC x86_64",
|
|
os: windows-2022,
|
|
compiler: g++,
|
|
comp: mingw,
|
|
msys_sys: 'mingw64',
|
|
msys_env: 'x86_64-gcc',
|
|
shell: 'msys2 {0}'
|
|
}
|
|
- {
|
|
name: "Windows 2022 Mingw-w64 Clang x86_64",
|
|
os: windows-2022,
|
|
compiler: clang++,
|
|
comp: clang,
|
|
msys_sys: 'clang64',
|
|
msys_env: 'clang-x86_64-clang',
|
|
shell: 'msys2 {0}'
|
|
}
|
|
|
|
defaults:
|
|
run:
|
|
working-directory: src
|
|
shell: ${{ matrix.config.shell }}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Setup msys and install required packages
|
|
if: runner.os == 'Windows'
|
|
uses: msys2/setup-msys2@v2
|
|
with:
|
|
msystem: ${{matrix.config.msys_sys}}
|
|
install: mingw-w64-${{matrix.config.msys_env}} make git expect
|
|
|
|
- name: Download the used network from the fishtest framework
|
|
run: |
|
|
make net
|
|
|
|
- name: Check compiler
|
|
run: |
|
|
export PATH=$PATH:$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin
|
|
$COMPILER -v
|
|
|
|
- name: Test help target
|
|
run: |
|
|
make help
|
|
|
|
# x86-64 with newer extensions tests
|
|
|
|
- name: Compile x86-64-avx2 build
|
|
run: |
|
|
make clean
|
|
make -j2 ARCH=x86-64-avx2 build
|
|
|
|
- name: Compile x86-64-bmi2 build
|
|
run: |
|
|
make clean
|
|
make -j2 ARCH=x86-64-bmi2 build
|
|
|
|
- name: Compile x86-64-avx512 build
|
|
run: |
|
|
make clean
|
|
make -j2 ARCH=x86-64-avx512 build
|
|
|
|
- name: Compile x86-64-vnni512 build
|
|
run: |
|
|
make clean
|
|
make -j2 ARCH=x86-64-vnni512 build
|
|
|
|
- name: Compile x86-64-vnni256 build
|
|
run: |
|
|
make clean
|
|
make -j2 ARCH=x86-64-vnni256 build |