Switch to supported ubuntu image

This commit is contained in:
Victor Zverovich
2025-03-02 09:15:17 -08:00
parent 9212ff6ca1
commit 77c0fc07d9

View File

@ -7,54 +7,46 @@ permissions:
jobs: jobs:
build: build:
runs-on: ubuntu-20.04 runs-on: ubuntu-22.04
strategy: strategy:
matrix: matrix:
cxx: [g++-4.9, g++-10, clang++-9] cxx: [g++-4.9, g++-11, clang++-11]
build_type: [Debug, Release] build_type: [Debug, Release]
std: [11] std: [11]
shared: [""] shared: [""]
include: include:
- cxx: g++-4.9 - cxx: g++-4.9
install: sudo apt install g++-4.9 - cxx: g++-11
- cxx: g++-8
build_type: Debug build_type: Debug
std: 14 std: 14
install: sudo apt install g++-8 install: sudo apt install g++-11
- cxx: g++-8 - cxx: g++-11
build_type: Debug
std: 17
install: sudo apt install g++-8
- cxx: g++-9
build_type: Debug
std: 17
- cxx: g++-10
build_type: Debug build_type: Debug
std: 17 std: 17
- cxx: g++-11 - cxx: g++-11
build_type: Debug build_type: Debug
std: 20 std: 20
install: sudo apt install g++-11 install: sudo apt install g++-11
- cxx: clang++-8 - cxx: clang++-11
build_type: Debug build_type: Debug
std: 17 std: 17
cxxflags: -stdlib=libc++ cxxflags: -stdlib=libc++
install: sudo apt install clang-8 libc++-8-dev libc++abi-8-dev install: sudo apt install clang-11 libc++-11-dev libc++abi-11-dev
- cxx: clang++-9 - cxx: clang++-11
install: sudo apt install clang-9 install: sudo apt install clang-11
- cxx: clang++-9 - cxx: clang++-11
build_type: Debug build_type: Debug
fuzz: -DFMT_FUZZ=ON -DFMT_FUZZ_LINKMAIN=ON fuzz: -DFMT_FUZZ=ON -DFMT_FUZZ_LINKMAIN=ON
std: 17 std: 17
install: sudo apt install clang-9 install: sudo apt install clang-11
- cxx: clang++-11 #- cxx: clang++-13
build_type: Debug # build_type: Debug
std: 20 # std: 20
- cxx: clang++-11 #- cxx: clang++-13
build_type: Debug # build_type: Debug
std: 20 # std: 20
cxxflags: -stdlib=libc++ # cxxflags: -stdlib=libc++
install: sudo apt install libc++-11-dev libc++abi-11-dev # install: sudo apt install libc++-13-dev libc++abi-13-dev
- cxx: g++-13 - cxx: g++-13
build_type: Release build_type: Release
std: 23 std: 23
@ -67,11 +59,34 @@ jobs:
- name: Set timezone - name: Set timezone
run: sudo timedatectl set-timezone 'Asia/Yekaterinburg' run: sudo timedatectl set-timezone 'Asia/Yekaterinburg'
- name: Add repositories for older GCC - name: Install GCC 4.9
run: | run: |
# Below repo provides GCC 4.9. sudo apt update
sudo apt-add-repository 'deb http://dk.archive.ubuntu.com/ubuntu/ xenial main' sudo apt install libatomic1 libc6-dev libgomp1 libitm1 libmpc3
sudo apt-add-repository 'deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe' # https://launchpad.net/ubuntu/xenial/amd64/g++-4.9/4.9.3-13ubuntu2
wget --no-verbose \
http://launchpadlibrarian.net/230069137/libmpfr4_3.1.3-2_amd64.deb \
http://launchpadlibrarian.net/253728314/gcc-4.9-base_4.9.3-13ubuntu2_amd64.deb \
http://launchpadlibrarian.net/445345919/gcc-5-base_5.4.0-6ubuntu1~16.04.12_amd64.deb \
http://launchpadlibrarian.net/253728399/cpp-4.9_4.9.3-13ubuntu2_amd64.deb \
http://launchpadlibrarian.net/253728424/libasan1_4.9.3-13ubuntu2_amd64.deb \
http://launchpadlibrarian.net/445346135/libubsan0_5.4.0-6ubuntu1~16.04.12_amd64.deb \
http://launchpadlibrarian.net/445346112/libcilkrts5_5.4.0-6ubuntu1~16.04.12_amd64.deb \
http://launchpadlibrarian.net/253728426/libgcc-4.9-dev_4.9.3-13ubuntu2_amd64.deb \
http://launchpadlibrarian.net/253728404/gcc-4.9_4.9.3-13ubuntu2_amd64.deb \
http://launchpadlibrarian.net/253728432/libstdc++-4.9-dev_4.9.3-13ubuntu2_amd64.deb \
http://launchpadlibrarian.net/253728401/g++-4.9_4.9.3-13ubuntu2_amd64.deb
sudo dpkg -i libmpfr4_3.1.3-2_amd64.deb \
gcc-4.9-base_4.9.3-13ubuntu2_amd64.deb \
gcc-5-base_5.4.0-6ubuntu1~16.04.12_amd64.deb \
cpp-4.9_4.9.3-13ubuntu2_amd64.deb \
libasan1_4.9.3-13ubuntu2_amd64.deb \
libubsan0_5.4.0-6ubuntu1~16.04.12_amd64.deb \
libcilkrts5_5.4.0-6ubuntu1~16.04.12_amd64.deb \
libgcc-4.9-dev_4.9.3-13ubuntu2_amd64.deb \
gcc-4.9_4.9.3-13ubuntu2_amd64.deb \
libstdc++-4.9-dev_4.9.3-13ubuntu2_amd64.deb \
g++-4.9_4.9.3-13ubuntu2_amd64.deb
if: ${{ matrix.cxx == 'g++-4.9' }} if: ${{ matrix.cxx == 'g++-4.9' }}
- name: Add repositories for newer GCC - name: Add repositories for newer GCC
@ -81,7 +96,7 @@ jobs:
- name: Add Ubuntu mirrors - name: Add Ubuntu mirrors
run: | run: |
# Github Actions caching proxy is at times unreliable # GitHub Actions caching proxy is at times unreliable
# see https://github.com/actions/runner-images/issues/7048 # see https://github.com/actions/runner-images/issues/7048
printf 'http://azure.archive.ubuntu.com/ubuntu\tpriority:1\n' | sudo tee /etc/apt/mirrors.txt printf 'http://azure.archive.ubuntu.com/ubuntu\tpriority:1\n' | sudo tee /etc/apt/mirrors.txt
curl http://mirrors.ubuntu.com/mirrors.txt | sudo tee --append /etc/apt/mirrors.txt curl http://mirrors.ubuntu.com/mirrors.txt | sudo tee --append /etc/apt/mirrors.txt
@ -89,7 +104,7 @@ jobs:
- name: Create Build Environment - name: Create Build Environment
run: | run: |
sudo apt update sudo apt update --allow-unauthenticated
${{matrix.install}} ${{matrix.install}}
sudo apt install locales-all sudo apt install locales-all
cmake -E make_directory ${{runner.workspace}}/build cmake -E make_directory ${{runner.workspace}}/build