---
kind: pipeline
type: docker
name: default-gcc

steps:
  - name: submodules
    image: alpine/git
    commands:
      - git submodule update --init --recursive
  - name: build
    image: debian:bullseye
    commands:
      - DEBIAN_FRONTEND=noninteractive apt update
      - DEBIAN_FRONTEND=noninteractive apt install -y g++ gcc cmake make
      - mkdir build && cd build
      - cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS_RELEASE="-march=native" -DCMAKE_C_FLAGS_RELEASE="-march=native" -DCMAKE_INSTALL_PREFIX="/usr"
      - make -j$(nproc)
      - ./test ../test.raw
      - make install
---
kind: pipeline
type: docker
name: default-clang

steps:
  - name: submodules
    image: alpine/git
    commands:
      - git submodule update --init --recursive
  - name: build
    image: debian:bullseye
    commands:
      - DEBIAN_FRONTEND=noninteractive apt update
      - DEBIAN_FRONTEND=noninteractive apt install -y clang cmake make
      - update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
      - update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang 100
      - mkdir build && cd build
      - cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS_RELEASE="-march=native" -DCMAKE_C_FLAGS_RELEASE="-march=native" -DCMAKE_INSTALL_PREFIX="/usr"
      - make -j$(nproc)
      - ./test ../test.raw
      - make install
...