Build failure with gcc13 #255
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: build | |
on: [pull_request] | |
jobs: | |
build-ubuntu-20-04: | |
name: ubuntu-20.04 | |
runs-on: ubuntu-latest | |
container: | |
image: ubuntu:20.04 | |
env: | |
TZ: America/New_York | |
DEBIAN_FRONTEND: noninteractive | |
services: | |
nginx: | |
image: nginx:stable | |
haproxy: | |
image: jbaldwindh/liblifthttp-automation-haproxy:0.1 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: apt | |
run: | | |
apt-get update | |
apt-get -y upgrade | |
apt install -y build-essential software-properties-common | |
add-apt-repository ppa:ubuntu-toolchain-r/test | |
apt-get install -y \ | |
cmake \ | |
git \ | |
ninja-build \ | |
g++-9 \ | |
clang-9 \ | |
zlib1g-dev \ | |
libcurl4-openssl-dev \ | |
libuv1-dev \ | |
curl | |
- name: check-haproxy | |
run: | | |
curl -v --user guest:guestpassword -x "http://haproxy:3128" "http://nginx/index.html" | |
- name: build-release-g++ | |
run: | | |
mkdir build-release-g++ | |
cd build-release-g++ | |
cmake \ | |
-GNinja \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_C_COMPILER=gcc-9 \ | |
-DCMAKE_CXX_COMPILER=g++-9 \ | |
.. | |
ninja | |
- name: build-release-clang | |
run: | | |
mkdir build-release-clang | |
cd build-release-clang | |
cmake \ | |
-GNinja \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_C_COMPILER=clang-9 \ | |
-DCMAKE_CXX_COMPILER=clang++-9 \ | |
.. | |
ninja | |
- name: test-release-g++ | |
run: | | |
cd build-release-g++ | |
ctest -VV | |
- name: test-release-clang | |
run: | | |
cd build-release-clang | |
ctest -VV | |
build-ubuntu-22-04: | |
name: ubuntu-22.04 | |
runs-on: ubuntu-latest | |
container: | |
image: ubuntu:22.04 | |
env: | |
TZ: America/New_York | |
DEBIAN_FRONTEND: noninteractive | |
services: | |
nginx: | |
image: nginx:stable | |
haproxy: | |
image: jbaldwindh/liblifthttp-automation-haproxy:0.1 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: apt | |
run: | | |
apt-get update | |
apt-get -y upgrade | |
apt install -y build-essential software-properties-common | |
apt-get install -y \ | |
cmake \ | |
git \ | |
ninja-build \ | |
g++ \ | |
clang \ | |
zlib1g-dev \ | |
libssl-dev \ | |
libuv1-dev \ | |
curl \ | |
wget | |
- name: check-haproxy | |
run: | | |
curl --user guest:guestpassword -x "http://haproxy:3128" "http://nginx/index.html" | |
- name: build-libcurl | |
run: | | |
# We have to custom build libcurl because ubuntu 22.02 default comes with a broken | |
# libcurl verison 7.81.0 that has a mutli interface segfault. | |
# See: | |
# https://github.com/jbaldwin/liblifthttp/issues/142 | |
wget https://github.com/curl/curl/releases/download/curl-7_86_0/curl-7.86.0.tar.gz | |
gunzip curl-7.86.0.tar.gz | |
tar -xf curl-7.86.0.tar | |
cd curl-7.86.0/ | |
./configure --with-openssl | |
make -j $(nproc) | |
make install | |
- name: build-release-g++ | |
run: | | |
mkdir build-release-g++ | |
cd build-release-g++ | |
cmake \ | |
-GNinja \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_C_COMPILER=gcc \ | |
-DCMAKE_CXX_COMPILER=g++ \ | |
-DLIFT_USER_LINK_LIBRARIES="/usr/local/lib/libcurl.so.4;z;uv;pthread;dl;stdc++fs" \ | |
.. | |
ninja | |
- name: build-release-clang | |
run: | | |
mkdir build-release-clang | |
cd build-release-clang | |
cmake \ | |
-GNinja \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_C_COMPILER=clang \ | |
-DCMAKE_CXX_COMPILER=clang++ \ | |
-DLIFT_USER_LINK_LIBRARIES="/usr/local/lib/libcurl.so.4;z;uv;pthread;dl;stdc++fs" \ | |
.. | |
ninja | |
- name: test-release-g++ | |
run: | | |
cd build-release-g++ | |
ctest -VV | |
- name: test-release-clang | |
run: | | |
cd build-release-clang | |
ctest -VV | |
build-ubuntu-24-04: | |
name: ubuntu-24.04 | |
runs-on: ubuntu-latest | |
container: | |
image: ubuntu:24.04 | |
env: | |
TZ: America/New_York | |
DEBIAN_FRONTEND: noninteractive | |
services: | |
nginx: | |
image: nginx:stable | |
haproxy: | |
image: jbaldwindh/liblifthttp-automation-haproxy:0.1 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: apt | |
run: | | |
apt-get update | |
apt-get -y upgrade | |
apt install -y build-essential software-properties-common | |
add-apt-repository ppa:ubuntu-toolchain-r/test | |
apt-get install -y \ | |
cmake \ | |
git \ | |
ninja-build \ | |
g++-13 \ | |
clang \ | |
zlib1g-dev \ | |
libcurl4-openssl-dev \ | |
libuv1-dev \ | |
curl | |
- name: check-haproxy | |
run: | | |
curl -v --user guest:guestpassword -x "http://haproxy:3128" "http://nginx/index.html" | |
- name: build-release-g++ | |
run: | | |
mkdir build-release-g++ | |
cd build-release-g++ | |
cmake \ | |
-GNinja \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_C_COMPILER=gcc-13 \ | |
-DCMAKE_CXX_COMPILER=g++-13 \ | |
.. | |
ninja | |
- name: build-release-clang | |
run: | | |
mkdir build-release-clang | |
cd build-release-clang | |
cmake \ | |
-GNinja \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_C_COMPILER=clang \ | |
-DCMAKE_CXX_COMPILER=clang++ \ | |
.. | |
ninja | |
- name: test-release-g++ | |
run: | | |
cd build-release-g++ | |
ctest -VV | |
- name: test-release-clang | |
run: | | |
cd build-release-clang | |
ctest -VV | |
build-fedora-31: | |
name: fedora-31 | |
runs-on: ubuntu-latest | |
container: | |
image: fedora:31 | |
services: | |
nginx: | |
image: nginx:stable | |
haproxy: | |
image: jbaldwindh/liblifthttp-automation-haproxy:0.1 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: dnf | |
run: | | |
sudo dnf install -y \ | |
cmake \ | |
git \ | |
ninja-build \ | |
gcc-c++-9.3.1 \ | |
clang-9.0.1 \ | |
lcov \ | |
zlib-devel \ | |
libcurl-devel \ | |
libuv-devel \ | |
iputils \ | |
curl | |
- name: ping | |
run: | | |
ping -c1 nginx | |
- name: check-haproxy | |
run: | | |
curl -v --user guest:guestpassword -x "http://haproxy:3128" "http://nginx/index.html" | |
- name: build-debug-g++ | |
run: | | |
mkdir build-debug-g++ | |
cd build-debug-g++ | |
cmake \ | |
-GNinja \ | |
-DLIFT_CODE_COVERAGE=ON \ | |
-DCMAKE_BUILD_TYPE=Debug \ | |
-DCMAKE_C_COMPILER=gcc \ | |
-DCMAKE_CXX_COMPILER=g++ \ | |
.. | |
ninja | |
- name: build-release-g++ | |
run: | | |
mkdir build-release-g++ | |
cd build-release-g++ | |
cmake \ | |
-GNinja \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_C_COMPILER=gcc \ | |
-DCMAKE_CXX_COMPILER=g++ \ | |
.. | |
ninja | |
- name: build-release-clang | |
run: | | |
mkdir build-release-clang | |
cd build-release-clang | |
cmake \ | |
-GNinja \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_C_COMPILER=clang \ | |
-DCMAKE_CXX_COMPILER=clang++ \ | |
.. | |
ninja | |
- name: test-release-g++ | |
run: | | |
cd build-release-g++ | |
ctest -VV | |
- name: test-release-clang | |
run: | | |
cd build-release-clang | |
ctest -VV | |
- name: Build coverage info | |
run: | | |
cd build-debug-g++ | |
ctest -VV | |
gcov -o ./test/CMakeFiles/liblifthttp_tests.dir/main.cpp.o ./test/liblifthttp_tests | |
lcov --include "*/inc/lift/*" --include "*/src/*" --exclude "test/*" -o liblifthttp_tests.info -c -d . | |
- name: Coveralls GitHub Action | |
uses: coverallsapp/[email protected] | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
path-to-lcov: build-debug-g++/liblifthttp_tests.info |