Add cmake and build-essential #22
Workflow file for this run
This file contains hidden or 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
| # SPDX-FileCopyrightText: Copyright (c) <2025> NVIDIA CORPORATION & AFFILIATES. All rights reserved. | |
| # | |
| # SPDX-License-Identifier: Apache-2.0 | |
| name: CI | |
| on: | |
| push: | |
| branches: [main, pull-request/1] | |
| pull_request: | |
| branches: [main] | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| lint: | |
| name: Lint | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.10" | |
| - name: Install lint dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install flake8 reuse | |
| - name: Run flake8 | |
| run: flake8 | |
| - name: Check license headers (REUSE) | |
| run: | | |
| outputs=$(reuse lint --lines | grep -v -e "src/cuda/tile/VERSION" || true) | |
| if [ -n "$outputs" ]; then | |
| echo -e "License check failed\n${outputs}" | |
| exit 1 | |
| fi | |
| - name: Check inline samples are up to date | |
| run: python test/tools/inline_samples.py --check | |
| build-wheel: | |
| name: Build wheel (Linux x86_64, Python ${{ matrix.python-version }}) | |
| runs-on: ubuntu-latest | |
| container: | |
| image: nvidia/cuda:13.0.2-base-ubuntu24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ["3.10", "3.11", "3.12", "3.13"] | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Install build dependencies | |
| run: | | |
| apt-get update | |
| apt-get install -y software-properties-common cmake build-essential git | |
| add-apt-repository -y ppa:deadsnakes/ppa | |
| apt-get update | |
| apt-get install -y python${{ matrix.python-version }} python${{ matrix.python-version }}-venv python${{ matrix.python-version }}-dev | |
| - name: Build wheel | |
| run: | | |
| python${{ matrix.python-version }} -m venv .venv | |
| .venv/bin/pip install --upgrade pip build wheel setuptools | |
| .venv/bin/python -m build --wheel --outdir dist/ | |
| - name: Upload wheel artifact | |
| uses: actions/upload-artifact@v5 | |
| with: | |
| name: wheel-linux-x86_64-py${{ matrix.python-version }} | |
| path: dist/*.whl | |
| retention-days: 7 |