Skip to content

Linux

Linux #941

Workflow file for this run

name: Linux
on:
push:
pull_request:
workflow_dispatch:
schedule:
- cron: '37 3 * * 6'
jobs:
# gcc ########################################################################
gcc:
runs-on: ubuntu-latest
strategy:
matrix:
compiler: ['5', '6', '9', '10', '11', '12', '13'] # 7, 8 - unmet dependencies
fail-fast: false
steps:
- uses: actions/checkout@v4
- name: APT Update
run: |
echo 'deb [trusted=yes] http://dk.archive.ubuntu.com/ubuntu/ bionic main' | sudo tee -a /etc/apt/sources.list
echo 'deb [trusted=yes] http://dk.archive.ubuntu.com/ubuntu/ bionic universe' | sudo tee -a /etc/apt/sources.list
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update -y
- name: Compiler setup
run: sudo apt-get install gcc-${{ matrix.compiler }} g++-${{ matrix.compiler }}
- name: Boost setup
run: sudo apt-get install libboost-container-dev
- name: Check
env:
CXX: g++-${{ matrix.compiler }}
run: $CXX --version; make -j check
gcc-cxx-std:
runs-on: ubuntu-latest
strategy:
matrix:
compiler: ['13']
standard: [11, 14, 17, 20]
fail-fast: false
steps:
- uses: actions/checkout@v4
- name: APT Update
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update -y
- name: Compiler setup
run: sudo apt-get install gcc-${{ matrix.compiler }} g++-${{ matrix.compiler }}
- name: Boost setup
run: sudo apt-get install libboost-container-dev
- name: Check
env:
CXX: g++-${{ matrix.compiler }}
CXXFLAGS: -std=c++${{ matrix.standard }}
run: $CXX --version; make -j check
gcc-arch-32:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: APT Update
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update -y
- name: Compiler setup
run: sudo apt-get install gcc-13-multilib g++-13-multilib
- name: Boost setup
run: sudo apt-get install libboost-container-dev
- name: Check
env:
CXX: g++-13
CXXFLAGS: -m32 -std=c++20
LDFLAGS: -m32
run: $CXX --version; make -j check
gcc-ubsan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: APT Update
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update -y
- name: Compiler setup
run: sudo apt-get install gcc-13 g++-13
- name: Boost setup
run: sudo apt-get install libboost-container-dev
- name: Check
env:
CXX: g++-13
CXXFLAGS: -std=c++20 -g -O0 -fsanitize=undefined
LDFLAGS: -fsanitize=undefined
run: $CXX --version; make -j check
gcc-asan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: APT Update
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update -y
- name: Compiler setup
run: sudo apt-get install gcc-13 g++-13
- name: Boost setup
run: sudo apt-get install libboost-container-dev
- name: Check
env:
CXX: g++-13
CXXFLAGS: -std=c++20 -g -O0 -fsanitize=address
LDFLAGS: -fsanitize=address
run: $CXX --version; make -j check
make-install:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: APT Update
run: sudo apt-get update
- name: Compiler setup
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update -y
sudo apt-get install gcc-13 g++-13
- name: Boost setup
run: sudo apt-get install libboost-container-dev
- name: Check
env:
CXX: g++-13
CXXFLAGS: -std=c++20
run: |
sudo make install
$CXX --version; make -j INCLUDE= check
# clang ######################################################################
clang:
runs-on: ubuntu-latest
strategy:
matrix:
compiler: ['4.0', '6.0', '7', '8', '9', '10', '11', '12', '13', '14', '15'] # 5.0 - unmet dependencies
fail-fast: false
steps:
- uses: actions/checkout@v4
- name: APT Update
run: |
echo 'deb [trusted=yes] http://dk.archive.ubuntu.com/ubuntu/ bionic main' | sudo tee -a /etc/apt/sources.list
echo 'deb [trusted=yes] http://dk.archive.ubuntu.com/ubuntu/ bionic universe' | sudo tee -a /etc/apt/sources.list
echo 'deb [trusted=yes] http://dk.archive.ubuntu.com/ubuntu/ focal main' | sudo tee -a /etc/apt/sources.list
echo 'deb [trusted=yes] http://dk.archive.ubuntu.com/ubuntu/ focal universe' | sudo tee -a /etc/apt/sources.list
sudo apt-get update
- name: Compiler setup
run: sudo apt-get install clang-${{ matrix.compiler }}
- name: Boost setup
run: sudo apt-get install libboost-container-dev
- name: Check
env:
CXX: clang++-${{ matrix.compiler }}
run: $CXX --version; make -j check
clang-cxx-std:
runs-on: ubuntu-latest
strategy:
matrix:
compiler: ['15']
standard: [11, 14, 17, 20]
fail-fast: false
steps:
- uses: actions/checkout@v4
- name: APT Update
run: sudo apt-get update
- name: Compiler setup
run: sudo apt-get install clang-${{ matrix.compiler }}
- name: Boost setup
run: sudo apt-get install libboost-container-dev
- name: Check
env:
CXX: clang++-${{ matrix.compiler }}
CXXFLAGS: -std=c++${{ matrix.standard }}
run: $CXX --version; make -j check