name: build on: push: branches: ["**"] pull_request: branches: ["**"] workflow_dispatch: concurrency: group: ci-${{ github.ref }} cancel-in-progress: true jobs: build: name: Build (${{ matrix.os }}) runs-on: ${{ matrix.runner }} strategy: fail-fast: false matrix: include: - os: Linux runner: ubuntu-latest - os: macOS runner: macos-latest - os: Windows runner: windows-latest env: IDASDK: ${{ github.workspace }}/ida-sdk/src steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Python uses: actions/setup-python@v5 with: python-version: '3.12' - name: Install pybind11 run: pip install pybind11 - name: Setup IDA SDK shell: bash run: | git clone --depth 1 https://github.com/HexRaysSA/ida-sdk ida-sdk git clone --depth 1 https://github.com/allthingsida/ida-cmake.git "${IDASDK}/ida-cmake" - name: Configure shell: bash run: | cmake -B build -DCMAKE_BUILD_TYPE=Release \ -Dpybind11_DIR="$(python -c 'import pybind11; print(pybind11.get_cmake_dir())')" - name: Build shell: bash run: cmake --build build --config Release