name: Linux

on: [push, pull_request]

jobs:
  build:
    name: ${{matrix.os}}-${{matrix.build_type}}-${{matrix.lib}}-${{matrix.gpu}}
    runs-on: ubuntu-latest
    container: ${{matrix.os}}
    defaults:
      run:
        shell: bash -e -o pipefail {0}
    env:
      CCACHE_DIR: ${{github.workspace}}/ccache
      CMAKE_GENERATOR: Ninja
      DEBIAN_FRONTEND: noninteractive
    strategy:
      fail-fast: true
      matrix:
        os:
          - ubuntu:22.04
          - ubuntu:24.04
        build_type:
          - Release
        lib:
          - shared
          - static
        gpu:
          - cuda
          - no-cuda

    steps:
      - name: Setup Dependencies
        run: |
          apt-get update
          apt-get install -y \
            build-essential \
            ccache \
            cmake \
            git \
            libbenchmark-dev \
            libblas-dev \
            libeigen3-dev \
            liblapack-dev \
            libmetis-dev \
            libsuitesparse-dev \
            ninja-build \
            wget

      - uses: actions/checkout@v4
        with:
          submodules: recursive

      # nvidia cuda toolkit + gcc combo shipped with 22.04LTS is broken
      # and is not able to compile code that uses thrust
      # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1006962
      - name: Setup CUDA Toolkit Repositories (22.04)
        if: matrix.gpu == 'cuda' && matrix.os == 'ubuntu:22.04'
        run: |
          wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb
          dpkg -i cuda-keyring_1.0-1_all.deb

      - name: Setup CUDA Toolkit Repositories (24.04)
        if: matrix.gpu == 'cuda' && matrix.os == 'ubuntu:24.04'
        run: |
          wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb
          dpkg -i cuda-keyring_1.1-1_all.deb

      - name: Setup CUDA Toolkit (<24.04)
        if: matrix.gpu == 'cuda' && matrix.os != 'ubuntu:24.04'
        run: |
          apt-get update
          apt-get install -y cuda
          echo "CUDACXX=/usr/local/cuda/bin/nvcc" >> $GITHUB_ENV

      - name: Setup CUDA Toolkit (>=24.04)
        if: matrix.gpu == 'cuda' && matrix.os == 'ubuntu:24.04'
        run: |
          apt-get update
          apt-get install -y nvidia-cuda-toolkit
          echo "CUDACXX=/usr/lib/nvidia-cuda-toolkit/bin/nvcc" >> $GITHUB_ENV

      - name: Setup cuDSS
        if: matrix.gpu == 'cuda'
        run: |
          wget https://developer.download.nvidia.com/compute/cudss/redist/libcudss/linux-x86_64/libcudss-linux-x86_64-0.3.0.9_cuda12-archive.tar.xz
          tar -xf libcudss-linux-x86_64-0.3.0.9_cuda12-archive.tar.xz
          echo "cudss_DIR=${{github.workspace}}/libcudss-linux-x86_64-0.3.0.9_cuda12-archive/lib/cmake/cudss" >> $GITHUB_ENV

      - name: Cache Build
        id: cache-build
        uses: actions/cache@v4
        with:
          path: ${{env.CCACHE_DIR}}
          key: ${{matrix.os}}-ccache-${{matrix.build_type}}-${{matrix.lib}}-${{matrix.gpu}}-${{github.run_id}}
          restore-keys: ${{matrix.os}}-ccache-${{matrix.build_type}}-${{matrix.lib}}-${{matrix.gpu}}-

      - name: Setup Environment
        if: matrix.build_type == 'Release'
        run: |
          echo 'CXXFLAGS=-flto' >> $GITHUB_ENV

      - name: Configure
        run: |
          cmake -S . -B build_${{matrix.build_type}} \
                -DBUILD_SHARED_LIBS=${{matrix.lib == 'shared'}} \
                -DUSE_CUDA=${{matrix.gpu == 'cuda'}} \
                -DCMAKE_BUILD_TYPE=${{matrix.build_type}} \
                -DCMAKE_C_COMPILER_LAUNCHER=$(which ccache) \
                -DCMAKE_CXX_COMPILER_LAUNCHER=$(which ccache) \
                -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/install

      - name: Build
        run: |
          cmake --build build_${{matrix.build_type}} \
                --config ${{matrix.build_type}}

      - name: Test
        if: matrix.gpu == 'no-cuda'
        run: |
          cd build_${{matrix.build_type}}/
          ctest --build-config ${{matrix.build_type}} \
                --output-on-failure \
                -j$(nproc)

      - name: Install
        run: |
          cmake --build build_${{matrix.build_type}}/ \
                --config ${{matrix.build_type}} \
                --target install
