CLBlast release #12
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CLBlast release | |
on: | |
workflow_dispatch: | |
inputs: | |
version: | |
description: "Version of the form 1.5.3" | |
required: true | |
jobs: | |
release_linux_and_macos: | |
strategy: | |
matrix: | |
config: [ | |
{name: linux, os: ubuntu-20.04, arch: x86_64, c_compiler: gcc-9, cpp_compiler: g++-9}, | |
{name: macos, os: macos-11, arch: x86_64, c_compiler: clang, cpp_compiler: clang++}, | |
] | |
runs-on: ${{ matrix.config.os }} | |
env: | |
RELEASE_NAME: CLBlast-${{ github.event.inputs.version }}-${{ matrix.config.name }}-${{ matrix.config.arch }} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install requirements for Ubuntu | |
run: | | |
sudo apt-get update | |
sudo apt-get install -yq ocl-icd-opencl-dev opencl-c-headers --no-install-recommends | |
if: ${{ matrix.config.name == 'linux' }} | |
- name: Run CMake | |
run: | | |
mkdir ${{env.RELEASE_NAME}} | |
export CC=${{ matrix.config.c_compiler }} | |
export CXX=${{ matrix.config.cpp_compiler }} | |
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DTESTS=OFF -DCLIENTS=OFF -DSAMPLES=ON -DCMAKE_INSTALL_PREFIX=${{env.RELEASE_NAME}} | |
- name: Compile the code | |
run: cmake --build build | |
- name: Package the code | |
run: | | |
cmake --build build --target install | |
tar -cvzf ${{env.RELEASE_NAME}}.tar.gz ${{env.RELEASE_NAME}} | |
- name: Upload the release | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ${{env.RELEASE_NAME}} | |
path: ${{env.RELEASE_NAME}}.tar.gz | |
release_windows: | |
strategy: | |
matrix: | |
config: [ | |
{name: windows, os: windows-2019, arch: x64}, | |
] | |
runs-on: ${{ matrix.config.os }} | |
env: | |
RELEASE_NAME: CLBlast-${{ github.event.inputs.version }}-${{ matrix.config.name }}-${{ matrix.config.arch }} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up MSVC | |
uses: ilammy/msvc-dev-cmd@v1 | |
- name: Install OpenCL | |
run: vcpkg.exe --triplet=${{ matrix.config.arch }}-windows install opencl | |
- name: Run CMake | |
run: | | |
mkdir "${{env.RELEASE_NAME}}" | |
cmake -S . -B build -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DTESTS=OFF -DCLIENTS=OFF -DSAMPLES=ON -DCMAKE_INSTALL_PREFIX="${{env.RELEASE_NAME}}" -DOPENCL_ROOT=C:/vcpkg/packages/opencl_x64-windows | |
- name: Compile the code | |
run: cmake --build build --config Release | |
- name: Package the code | |
run: | | |
cmake --build build --target install | |
7z a -r ${{env.RELEASE_NAME}}.7z "${{env.RELEASE_NAME}}" | |
- name: Upload the release | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ${{env.RELEASE_NAME}} | |
path: ${{env.RELEASE_NAME}}.7z |