From 97bc8ae7db5ab19f5efcc93cf0205f6081773a35 Mon Sep 17 00:00:00 2001 From: Matt Wozniski Date: Mon, 6 May 2024 18:17:18 -0400 Subject: [PATCH] ci: Install libdebuginfod for all workflows Now that we've introduced a build-time dependency on `libdebuginfod` on Linux, we need to ensure it's installed in every environment that we perform an install in. On Alpine in particular, this means building it from source, since Alpine doesn't package it. Signed-off-by: Matt Wozniski --- .github/workflows/build.yml | 15 ++++++++++++--- .github/workflows/coverage.yml | 1 + 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c5b1607187..4484668b8a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -49,7 +49,7 @@ jobs: - name: Set up dependencies run: | sudo apt-get update - sudo apt-get install -qy libunwind-dev liblz4-dev pkg-config npm gdb lldb lcov + sudo apt-get install -qy libdebuginfod-dev libunwind-dev liblz4-dev pkg-config npm gdb lldb lcov - name: Create virtual environment run: | python3 -m venv venv @@ -79,6 +79,15 @@ jobs: apk add --update build-base libunwind-dev lz4-dev musl-dev python3-dev python3-dbg gdb lldb git bash perl perl-datetime build-base perl-app-cpanminus cpanm Date::Parse cpanm Capture::Tiny + # Build elfutils + cd / + apk add --update argp-standalone bison bsd-compat-headers bzip2-dev curl curl-dev flex-dev libtool linux-headers musl-fts-dev musl-libintl musl-obstack-dev xz-dev zlib-dev zstd-dev + VERS=0.191 + curl https://sourceware.org/elfutils/ftp/$VERS/elfutils-$VERS.tar.bz2 > ./elfutils.tar.bz2 + tar -xf elfutils.tar.bz2 + cd elfutils-$VERS + CFLAGS='-Wno-error -DFNM_EXTMATCH=0 -g -O3' CXXFLAGS='-Wno-error -DFNM_EXTMATCH=0 -g -O3' ./configure --enable-libdebuginfod --disable-debuginfod --disable-nls --with-zstd + make install - name: Clone lcov repository run: | git clone https://github.com/linux-test-project/lcov.git @@ -119,7 +128,7 @@ jobs: - name: Set up dependencies run: | sudo apt-get update - sudo apt-get install -qy clang-format npm libunwind-dev liblz4-dev pkg-config + sudo apt-get install -qy clang-format npm libdebuginfod-dev libunwind-dev liblz4-dev pkg-config - name: Install Python dependencies run: | python3 -m pip install -r requirements-extra.txt @@ -146,7 +155,7 @@ jobs: - name: Set up dependencies run: | sudo apt-get update - sudo apt-get install -qy libunwind-dev liblz4-dev pkg-config npm valgrind + sudo apt-get install -qy libdebuginfod-dev libunwind-dev liblz4-dev pkg-config npm valgrind - name: Install Python dependencies and package run: | python3 -m pip install --upgrade pip diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 4caf9730d0..ba03d71f16 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -37,6 +37,7 @@ jobs: sudo apt-get update sudo apt-get install -qy \ pkg-config \ + libdebuginfod-dev \ libunwind-dev \ liblz4-dev \ gdb \