From 85b6b114b38c0d7496c6c889b8a0147c901b83db Mon Sep 17 00:00:00 2001 From: Solomon Bekele Date: Tue, 1 Oct 2024 18:05:03 +0000 Subject: [PATCH] Revert "Dependency update (#286)" This reverts commit ecd8b207cf247023ba98f66724aac5c8bd6bab2d. --- .github/workflows/presubmit.yml | 203 ++++++++++++++------------------ ze/Makefile.am | 6 +- 2 files changed, 87 insertions(+), 122 deletions(-) diff --git a/.github/workflows/presubmit.yml b/.github/workflows/presubmit.yml index 58eaa44b..306926f9 100644 --- a/.github/workflows/presubmit.yml +++ b/.github/workflows/presubmit.yml @@ -1,9 +1,6 @@ name: Presubmit on: [push, pull_request] -env: - APT_PACKAGE: gcc g++ ruby ruby-dev elfutils libelf-dev libpopt-dev libdw-dev libprotobuf-dev protobuf-compiler valgrind libglib2.0-dev libnuma-dev liburcu-dev - jobs: pre_job: runs-on: ubuntu-24.04 @@ -18,93 +15,65 @@ jobs: paths_ignore: '["**/README.md"]' do_not_skip: '["pull_request"]' - efficios_dep: + babeltrace2: needs: pre_job if: ${{ needs.pre_job.outputs.should_skip != 'true' }} - name: Build and Cache Efficios Dependencies + name: Build and cache Babeltrace2 runs-on: ubuntu-24.04 steps: - uses: actions/cache@v4 - id: efficios_dep + id: babeltrace2 env: - cache-name: cache-efficios_dep + cache-name: cache-babeltrace2 with: - path: ~/efficios_dep/ + path: ~/babeltrace2/2.0.5 key: ${{ runner.os }}-build-${{ env.cache-name }} - - name: Set PKG_CONFIG - run: | - echo "PKG_CONFIG_PATH=$HOME/efficios_dep/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV - if: steps.efficios_dep.outputs.cache-hit != 'true' - - run: sudo apt update; sudo apt install -y $APT_PACKAGE - if: steps.efficios_dep.outputs.cache-hit != 'true' - # lttng-ust - - run: git clone https://github.com/lttng/lttng-ust - if: steps.efficios_dep.outputs.cache-hit != 'true' - - name: Install lttng-ust - run: | - # Avoid https://github.com/lttng/lttng-ust/commit/b187bcd5d99cde54dececee0e5028524d55aa314 who change the signature of - # lttng_ust_ctl_recv_register_event used by lttng-tool anl-ms3 - git checkout 4f8afc535e77070f1ef00434674f0417c6f9ef69 - ./bootstrap - ./configure --disable-man-pages --prefix=$HOME/efficios_dep/ - make -j$(nproc) - make install - working-directory: lttng-ust - if: steps.efficios_dep.outputs.cache-hit != 'true' - # lttng-tools need lttng-ust 2.14+ - - run: git clone -b anl-ms3 git://git.efficios.com/deliverable/lttng-tools.git - if: steps.efficios_dep.outputs.cache-hit != 'true' - - name: Install lttng-tools - run: | - ./bootstrap - ./configure --disable-man-pages --disable-bin-lttng-crash --prefix=$HOME/efficios_dep - make -j$(nproc) - make install - #Todo, this will need to be added in the spack repo as a patch - echo "#!/usr/bin/env python"| cat - dirwatch.py > $HOME/efficios_dep/bin/dirwatch.py - chmod 755 $HOME/efficios_dep/bin/dirwatch.py - working-directory: lttng-tools - if: steps.efficios_dep.outputs.cache-hit != 'true' - # babeltrace - - run: git clone -b anl-ms3 git://git.efficios.com/deliverable/babeltrace.git - if: steps.efficios_dep.outputs.cache-hit != 'true' - - name: Install Babeltrace - run: | - #Todo, grab file from Spack - wget https://raw.githubusercontent.com/argonne-lcf/THAPI/53262fcaaaf45d7d475884d7e63b69abe47e41d6/.github/workflows/str_nullptr.patch - patch -p1 < str_nullptr.patch - wget https://raw.githubusercontent.com/argonne-lcf/THAPI/4418916620496fd66cde0b3d5e241bed0a4c18a3/.github/workflows/bt_makefile.patch - patch -p1 < bt_makefile.patch - ./bootstrap - ./configure --disable-man-pages --prefix=$HOME/efficios_dep - make -j$(nproc) - make install - working-directory: babeltrace - if: steps.efficios_dep.outputs.cache-hit != 'true' + - run: sudo apt update; sudo apt install -y gcc g++ lttng-tools liblttng-ust-dev ruby ruby-dev elfutils libelf-dev libdw-dev libprotobuf-dev protobuf-compiler libglib2.0-dev + if: steps.babeltrace2.outputs.cache-hit != 'true' + - run: wget https://www.efficios.com/files/babeltrace/babeltrace2-2.0.5.tar.bz2 + if: steps.babeltrace2.outputs.cache-hit != 'true' + - run: tar -xjvf babeltrace2-2.0.5.tar.bz2 + if: steps.babeltrace2.outputs.cache-hit != 'true' + - run: | + wget https://github.com/argonne-lcf/THAPI-spack/raw/main/packages/babeltrace2/d2d2e6cc.patch + patch -p1 < d2d2e6cc.patch + if: steps.babeltrace2.outputs.cache-hit != 'true' + working-directory: babeltrace2-2.0.5 + - run: mkdir -p babeltrace2-2.0.5/build + if: steps.babeltrace2.outputs.cache-hit != 'true' + - run: ../configure --prefix=$HOME/babeltrace2/2.0.5 + if: steps.babeltrace2.outputs.cache-hit != 'true' + working-directory: babeltrace2-2.0.5/build + - run: make -j + if: steps.babeltrace2.outputs.cache-hit != 'true' + working-directory: babeltrace2-2.0.5/build + - run: make -j install + if: steps.babeltrace2.outputs.cache-hit != 'true' + working-directory: babeltrace2-2.0.5/build build-and-check: - needs: [efficios_dep, pre_job] + needs: [babeltrace2, pre_job] if: ${{ needs.pre_job.outputs.should_skip != 'true' }} name: Build and Check ubuntu-24.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: actions/cache@v4 - id: efficios_dep + id: babeltrace2 env: - cache-name: cache-efficios_dep + cache-name: cache-babeltrace2 with: - path: ~/efficios_dep/ + path: ~/babeltrace2/2.0.5 key: ${{ runner.os }}-build-${{ env.cache-name }} - - run: sudo apt update; sudo apt install -y $APT_PACKAGE + - run: sudo apt update; sudo apt install -y gcc g++ lttng-tools liblttng-ust-dev ruby ruby-dev elfutils libelf-dev libdw-dev libprotobuf-dev protobuf-compiler valgrind libglib2.0-dev - run: sudo gem install cast-to-yaml nokogiri babeltrace2 opencl_ruby_ffi metababel - name: Load Babeltrace2 run: | - echo "$HOME/efficios_dep/bin" >> $GITHUB_PATH - echo "PKG_CONFIG_PATH=$HOME/efficios_dep/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV - echo "CPATH=$HOME/efficios_dep/include:$CPATH" >> $GITHUB_ENV - echo "LD_LIBRARY_PATH=$HOME/efficios_dep/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV - echo "LIBRARY_PATH=$HOME/efficios_dep/lib:$LIBRARY_PATH" >> $GITHUB_ENV + echo "$HOME/babeltrace2/2.0.5/bin" >> $GITHUB_PATH + echo "PKG_CONFIG_PATH=$HOME/babeltrace2/2.0.5/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV + echo "CPATH=$HOME/babeltrace2/2.0.5/include:$CPATH" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV + echo "LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LIBRARY_PATH" >> $GITHUB_ENV - run: mkdir -p build - run: ./autogen.sh - run: ../configure @@ -125,7 +94,7 @@ jobs: build/**/tests/*.log install-with-mpi: - needs: [efficios_dep, pre_job] + needs: [babeltrace2, pre_job] if: ${{ needs.pre_job.outputs.should_skip != 'true' }} name: Install with MPI daemon support runs-on: ubuntu-24.04 @@ -133,23 +102,23 @@ jobs: - uses: actions/checkout@v4 - uses: mpi4py/setup-mpi@v1 with: - mpi: intelmpi + mpi: intelmpi - uses: actions/cache@v4 - id: efficios_dep + id: babeltrace2 env: - cache-name: cache-efficios_dep + cache-name: cache-babeltrace2 with: - path: ~/efficios_dep/ + path: ~/babeltrace2/2.0.5 key: ${{ runner.os }}-build-${{ env.cache-name }} - - run: sudo apt update; sudo apt install -y $APT_PACKAGE + - run: sudo apt update; sudo apt install -y gcc g++ lttng-tools liblttng-ust-dev ruby ruby-dev elfutils libelf-dev libdw-dev libprotobuf-dev protobuf-compiler libglib2.0-dev - run: sudo gem install cast-to-yaml nokogiri babeltrace2 opencl_ruby_ffi metababel - name: Load Babeltrace2 run: | - echo "$HOME/efficios_dep/bin" >> $GITHUB_PATH - echo "PKG_CONFIG_PATH=$HOME/efficios_dep/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV - echo "CPATH=$HOME/efficios_dep/include:$CPATH" >> $GITHUB_ENV - echo "LD_LIBRARY_PATH=$HOME/efficios_dep/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV - echo "LIBRARY_PATH=$HOME/efficios_dep/lib:$LIBRARY_PATH" >> $GITHUB_ENV + echo "$HOME/babeltrace2/2.0.5/bin" >> $GITHUB_PATH + echo "PKG_CONFIG_PATH=$HOME/babeltrace2/2.0.5/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV + echo "CPATH=$HOME/babeltrace2/2.0.5/include:$CPATH" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV + echo "LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LIBRARY_PATH" >> $GITHUB_ENV - run: mkdir -p build - run: ./autogen.sh - run: ../configure --prefix=`pwd`/ici @@ -164,7 +133,7 @@ jobs: path: thapi.tar integration-tests: - needs: [efficios_dep, pre_job, install-with-mpi] + needs: [babeltrace2, pre_job, install-with-mpi] if: ${{ needs.pre_job.outputs.should_skip != 'true' }} name: Integration ${{ matrix.bats_file }} ${{matrix.thapi_sync_daemon }} runs-on: ubuntu-24.04 @@ -177,50 +146,50 @@ jobs: with: mpi: intelmpi - uses: actions/cache@v4 - id: efficios_dep + id: babeltrace2 env: - cache-name: cache-efficios_dep + cache-name: cache-babeltrace2 with: - path: ~/efficios_dep/ + path: ~/babeltrace2/2.0.5 key: ${{ runner.os }}-build-${{ env.cache-name }} - uses: actions/download-artifact@v4 with: name: thapi-bin - name: Untar THAPI run: tar -xvf thapi.tar - - run: sudo apt update; sudo apt install -y $APT_PACKAGE bats coreutils libpocl2 clinfo + - run: sudo apt update; sudo apt install -y lttng-tools liblttng-ust-dev ruby ruby-dev libprotobuf-dev libpocl2 clinfo bats coreutils libglib2.0-dev - run: sudo gem install babeltrace2 opencl_ruby_ffi - name: Load Efficios Dependencies run: | - echo "$HOME/efficios_dep/bin" >> $GITHUB_PATH - echo "LD_LIBRARY_PATH=$HOME/efficios_dep/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV + echo "$HOME/babeltrace2/2.0.5/bin" >> $GITHUB_PATH + echo "LD_LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV - name: Integration test run: | bats integration_tests/ - build-in-tree-and-check: - needs: [efficios_dep, pre_job] + build-in-tree: + needs: [babeltrace2, pre_job] if: ${{ needs.pre_job.outputs.should_skip != 'true' }} name: Build in Tree ubuntu-24.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: actions/cache@v4 - id: efficios_dep + id: babeltrace2 env: - cache-name: cache-efficios_dep + cache-name: cache-babeltrace2 with: - path: ~/efficios_dep/ + path: ~/babeltrace2/2.0.5 key: ${{ runner.os }}-build-${{ env.cache-name }} - - run: sudo apt update; sudo apt install -y $APT_PACKAGE + - run: sudo apt update; sudo apt install -y gcc g++ lttng-tools liblttng-ust-dev ruby ruby-dev elfutils libelf-dev libdw-dev libprotobuf-dev protobuf-compiler valgrind libglib2.0-dev - run: sudo gem install cast-to-yaml nokogiri babeltrace2 opencl_ruby_ffi metababel - name: Load Efficios Dependencies run: | - echo "$HOME/efficios_dep/bin" >> $GITHUB_PATH - echo "PKG_CONFIG_PATH=$HOME/efficios_dep/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV - echo "CPATH=$HOME/efficios_dep/include:$CPATH" >> $GITHUB_ENV - echo "LD_LIBRARY_PATH=$HOME/efficios_dep/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV - echo "LIBRARY_PATH=$HOME/efficios_dep/lib:$LIBRARY_PATH" >> $GITHUB_ENV + echo "$HOME/babeltrace2/2.0.5/bin" >> $GITHUB_PATH + echo "PKG_CONFIG_PATH=$HOME/babeltrace2/2.0.5/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV + echo "CPATH=$HOME/babeltrace2/2.0.5/include:$CPATH" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV + echo "LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LIBRARY_PATH" >> $GITHUB_ENV - run: ./autogen.sh - run: ./configure - run: make -j @@ -237,28 +206,28 @@ jobs: ./**/tests/*.log distcheck: - needs: [efficios_dep, pre_job] + needs: [babeltrace2, pre_job] if: ${{ needs.pre_job.outputs.should_skip != 'true' }} name: Distcheck ubuntu-24.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: actions/cache@v4 - id: efficios_dep + id: babeltrace2 env: - cache-name: cache-efficios_dep + cache-name: cache-babeltrace2 with: - path: ~/efficios_dep/ + path: ~/babeltrace2/2.0.5 key: ${{ runner.os }}-build-${{ env.cache-name }} - - run: sudo apt update; sudo apt install -y $APT_PACKAGE + - run: sudo apt update; sudo apt install -y gcc g++ lttng-tools liblttng-ust-dev ruby ruby-dev elfutils libelf-dev libdw-dev libprotobuf-dev protobuf-compiler valgrind libglib2.0-dev - run: sudo gem install cast-to-yaml nokogiri babeltrace2 opencl_ruby_ffi metababel - name: Load Efficios Dependencies run: | - echo "$HOME/efficios_dep/bin" >> $GITHUB_PATH - echo "PKG_CONFIG_PATH=$HOME/efficios_dep/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV - echo "CPATH=$HOME/efficios_dep/include:$CPATH" >> $GITHUB_ENV - echo "LD_LIBRARY_PATH=$HOME/efficios_dep/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV - echo "LIBRARY_PATH=$HOME/efficios_dep/lib:$LIBRARY_PATH" >> $GITHUB_ENV + echo "$HOME/babeltrace2/2.0.5/bin" >> $GITHUB_PATH + echo "PKG_CONFIG_PATH=$HOME/babeltrace2/2.0.5/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV + echo "CPATH=$HOME/babeltrace2/2.0.5/include:$CPATH" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV + echo "LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LIBRARY_PATH" >> $GITHUB_ENV - run: mkdir -p build - run: ./autogen.sh - run: ../configure @@ -269,28 +238,28 @@ jobs: THAPI_VALGRIND: 1 dist-check: - needs: [efficios_dep, pre_job] + needs: [babeltrace2, pre_job] if: ${{ needs.pre_job.outputs.should_skip != 'true' }} name: Dist and Check ubuntu-24.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: actions/cache@v4 - id: efficios_dep + id: babeltrace2 env: - cache-name: cache-efficios_dep + cache-name: cache-babeltrace2 with: - path: ~/efficios_dep/ + path: ~/babeltrace2/2.0.5 key: ${{ runner.os }}-build-${{ env.cache-name }} - - run: sudo apt update; sudo apt install -y $APT_PACKAGE + - run: sudo apt update; sudo apt install -y gcc g++ lttng-tools liblttng-ust-dev ruby ruby-dev elfutils libelf-dev libdw-dev libprotobuf-dev protobuf-compiler valgrind libglib2.0-dev - run: sudo gem install cast-to-yaml nokogiri babeltrace2 opencl_ruby_ffi metababel - name: Load Efficios Dependencie run: | - echo "$HOME/efficios_dep/bin" >> $GITHUB_PATH - echo "PKG_CONFIG_PATH=$HOME/efficios_dep/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV - echo "CPATH=$HOME/efficios_dep/include:$CPATH" >> $GITHUB_ENV - echo "LD_LIBRARY_PATH=$HOME/efficios_dep/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV - echo "LIBRARY_PATH=$HOME/efficios_dep/lib:$LIBRARY_PATH" >> $GITHUB_ENV + echo "$HOME/babeltrace2/2.0.5/bin" >> $GITHUB_PATH + echo "PKG_CONFIG_PATH=$HOME/babeltrace2/2.0.5/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV + echo "CPATH=$HOME/babeltrace2/2.0.5/include:$CPATH" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV + echo "LIBRARY_PATH=$HOME/babeltrace2/2.0.5/lib:$LIBRARY_PATH" >> $GITHUB_ENV - run: mkdir -p build - run: ./autogen.sh - run: ../configure diff --git a/ze/Makefile.am b/ze/Makefile.am index 3e06da70..20d14200 100644 --- a/ze/Makefile.am +++ b/ze/Makefile.am @@ -1,11 +1,7 @@ .DELETE_ON_ERROR: if STRICT - # We disable `nonnull` check due to - # ././ze_tracepoints.h: In function 'lttng_ust__event_get_size__lttng_ust_ze___zeModuleCreate_entry': - # [...]/lttng/ust-tracepoint-event.h:578:17: error: argument 1 null where non-null expected [-Werror=nonnull] - # 578 | strlen((_src) ? (_src) : LTTNG_UST__NULL_STRING) + 1; - WERROR = -Werror -Wno-error=nonnull + WERROR = -Werror else WERROR = endif