Skip to content

Release 0.6.3

Release 0.6.3 #251

Workflow file for this run

name: Test
on:
push:
branches:
- develop
pull_request:
jobs:
cpp-linux:
name: 'C++ tests (gcc-clang/Linux/x64)'
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
build_type:
- Debug
- Release
compiler:
- clang++
- g++
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Get latest CMake
uses: lukka/get-cmake@latest
- name: Create build directory
run: mkdir -p build-${{ matrix.compiler }}-${{ matrix.build_type }}
- name: Configure
env:
CXX: ${{ matrix.compiler }}
working-directory: build-${{ matrix.compiler }}-${{ matrix.build_type }}
run: cmake -S .. -B . -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DQX_BUILD_TESTS=ON
- name: Build
working-directory: build-${{ matrix.compiler }}-${{ matrix.build_type }}
run: cmake --build . --parallel 10
- name: Test
working-directory: build-${{ matrix.compiler }}-${{ matrix.build_type }}
run: ctest -C ${{ matrix.build_type }} --output-on-failure
cpp-macos:
name: 'C++ tests (clang/MacOS/x64)'
runs-on: macos-latest
strategy:
fail-fast: false
matrix:
build_type:
- Debug
- Release
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install flex/bison
run: |
brew install flex bison
echo "$(brew --prefix flex)/bin" >> $GITHUB_PATH
echo "$(brew --prefix bison)/bin" >> $GITHUB_PATH
- name: Get latest CMake
uses: lukka/get-cmake@latest
- name: Create build directory
run: mkdir -p build-${{ matrix.build_type }}
- name: Configure
working-directory: build-${{ matrix.build_type }}
run: cmake -S .. -B . -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DQX_BUILD_TESTS=ON
- name: Build
working-directory: build-${{ matrix.build_type }}
run: cmake --build . --parallel 10
- name: Test
working-directory: build-${{ matrix.build_type }}
run: ctest -C ${{ matrix.build_type }} --output-on-failure
cpp-windows:
name: 'C++ tests (msvc/Windows/x64)'
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
build_type:
- Debug
- Release
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install Winflexbison3
shell: powershell
run: choco install winflexbison3 --version 2.5.24.20210105
- name: Get latest CMake
uses: lukka/get-cmake@latest
- name: Create build directory
run: mkdir -p build-${{ matrix.build_type }}
- name: Configure
working-directory: build-${{ matrix.build_type }}
run: cmake -S .. -B . -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DQX_BUILD_TESTS=ON
- name: Build
working-directory: build-${{ matrix.build_type }}
run: cmake --build . --parallel 10 --config ${{ matrix.build_type }}
- name: Test
working-directory: build-${{ matrix.build_type }}
run: ctest -C ${{ matrix.build_type }} --output-on-failure
cpp-arm64:
name: 'C++ tests (gcc/Linux/ARM64, clang/MacOS/ARM64)'
runs-on: [self-hosted, ARM64, "${{ matrix.os }}"]
strategy:
fail-fast: false
matrix:
os:
- Linux
- macOS
steps:
- if: matrix.os == 'Linux'
name: Install flex/bison, and gcc (Linux)
run: |
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y install flex bison gcc
shell: bash
- if: matrix.os == 'macOS'
name: Install flex/bison, and gcc (MacOS)
run: |
brew install flex bison gcc
echo "$(brew --prefix flex)/bin" >> $GITHUB_PATH
echo "$(brew --prefix bison)/bin" >> $GITHUB_PATH
shell: bash
- name: Checkout
uses: actions/checkout@v3
- name: Get latest CMake
uses: lukka/get-cmake@latest
- name: Create build directory
run: mkdir -p build
- name: Configure
working-directory: build
run: cmake -S .. -B . -DCMAKE_BUILD_TYPE=Release -DQX_BUILD_TESTS=ON
- name: Build
working-directory: build
run: cmake --build . --parallel 10
- name: Test
working-directory: build
run: ctest -C Release --output-on-failure
python:
name: Python
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install Python dependencies
run: python -m pip install --upgrade pip setuptools wheel pytest
- name: Install SWIG
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get install -y swig
- name: Install flex/bison and SWIG
if: matrix.os == 'macos-latest'
run: |
brew install bison flex swig
echo "/usr/local/opt/bison/bin" >> $GITHUB_PATH
echo "/usr/local/opt/flex/bin" >> $GITHUB_PATH
- name: Install Winflexbison3
if: matrix.os == 'windows-latest'
shell: powershell
run: |
choco install winflexbison3 --version 2.5.24.20210105
- name: Get latest CMake
uses: lukka/get-cmake@latest
- name: Build
env:
QX_CPU_COMPATIBILITY_MODE: ON
NPROCS: 10
run: python -m pip install --verbose .
- name: Test
working-directory: tests/qxelarator
run: python -m pytest