build:debian-testing:
  image: debian:testing
  tags:
    - docker
  stage: build
  before_script:
    - apt update && apt -y install make autoconf gfortran libopenmpi-dev cmake
  script:
    - cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=install -S . -B build
    - cmake --build build
    - CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --target test
    - cmake --build build --target install
  artifacts:
    paths:
      - install/

build:local:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.local

build:rt:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.rt

build:debug:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.debug

build:asan:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.asan

build:ubsan:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.ubsan

build:nompi:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.nompi

build:compilers:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.compilers

build:armv7:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.armv7

build:aarch64:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.aarch64

build:riscv64:
  stage: build
  tags:
    - nix
  script:
    - nix build -L --no-link .#ovniPackages.riscv64