Files
TheRock/rocm-systems/projects/rocprofiler-systems/external/dyninst/.github/workflows/consumers.yaml
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

171 lines
5.3 KiB
YAML

# Build the latest versions of applications that consume Dyninst
name: Build Consumers
on:
schedule:
- cron: '0 3 * * 1' # Monday at 3AM
workflow_dispatch:
jobs:
spack-build:
strategy:
fail-fast: false
matrix:
consumer: [
"hpctoolkit@develop",
"must+stackwalker~backward~tsan"
# extrae+dyninst - not yet tested, may not support dyninst >10.0.0
# omnitrace - Needs updated cmake
# timemory - Needs updated cmake
]
runs-on: ubuntu-latest
steps:
- name: ${{ matrix.consumer }}
run: |
sudo apt update -qq
sudo apt install -y -qq --no-install-recommends build-essential gcc g++ gfortran m4 cmake autoconf python3 git unzip openmpi-bin libopenmpi-dev
git clone --depth=1 --branch=develop https://github.com/spack/spack
spack/bin/spack compiler find
spack/bin/spack external find --not-buildable cmake python git m4 openmpi gmake
spack/bin/spack install ${{ matrix.consumer }} ^dyninst@master
systemtap:
permissions:
packages: read
strategy:
fail-fast: true
matrix:
os: ['ubuntu-23.10']
runs-on: ubuntu-latest
container:
image: ghcr.io/dyninst/amd64/${{ matrix.os }}:latest
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
name: systemtap ${{ matrix.os }}
steps:
- name: Install dependencies
run: |
apt update
apt install -y git python3 libjson-c-dev m4 autoconf
- name: Fetch systemtap
run: |
git clone --depth=1 https://sourceware.org/git/systemtap.git
- name: Make symlinks
run: |
ln -s /dyninst/install/include /usr/include/dyninst
ln -s /dyninst/install/lib /usr/lib64/dyninst
- name: Build systemtap
run: |
cd systemtap
autoreconf
mkdir build
cd build
../configure --with-dyninst --without-python3-probes
make -j2
llnl-stat:
permissions:
packages: read
strategy:
fail-fast: true
matrix:
os: ['ubuntu-20.04']
runs-on: ubuntu-latest
container:
image: ghcr.io/dyninst/amd64/${{ matrix.os }}:latest
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
name: llnl-stat ${{ matrix.os }}
steps:
- name: Install dependencies
run: |
apt update
apt install -y nano git bison flex python3 build-essential dh-autoreconf wget libgcrypt20-dev libboost-program-options-dev libboost-regex-dev libboost-wave-dev libpython3-dev python3-distutils
- name: Install GraphLib
run: |
git clone --depth=1 https://github.com/LLNL/graphlib
cd graphlib
mkdir build
cd build
cmake ..
cmake --build . --parallel 2
cmake --install . # /usr
- name: Install GraphViz
run: |
cd /
git clone --depth=1 https://gitlab.com/graphviz/graphviz.git
cd graphviz
./autogen.sh
mkdir build
cd build
../configure --without-qt --without-gts --without-doc --without-expat --without-ghostscript --without-gtkplus --without-libgd --without-pangocairo --without-popler --without-quartz --without-x
make -j2
make install
- name: Install launchmon
run: |
cd /
git clone --depth=1 https://github.com/llnl/launchmon.git
cd launchmon
./bootstrap
mkdir build
cd build
../configure
make -j2
make install
- name: Install MRNet
run: |
cd /
git clone --depth=1 https://github.com/dyninst/mrnet.git
cd mrnet
mkdir build
cd build
CC=gcc CXX=g++ ../configure --enable-shared
make -j2
make install
- name: Install STAT
run: |
cd /
git clone --depth=1 https://github.com/llnl/stat.git
cd stat
./bootstrap
mkdir build
cd build
../configure --disable-gui --disable-examples --with-stackwalker=/dyninst/install --with-mrnet=/usr/local
make -j2
tau:
permissions:
packages: read
strategy:
fail-fast: true
matrix:
os: ['ubuntu-20.04']
runs-on: ubuntu-latest
container:
image: ghcr.io/dyninst/amd64/${{ matrix.os }}:latest
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
name: TAU ${{ matrix.os }}
steps:
- name: Install dependencies
run: |
# TAU assumes Dyninst needs libdwarf instead of libdw. This has no real
# effect on Dyninst as we RPATH our deps. It just makes the manually-constructed
# link line in the TAU build work.
apt update
apt install -y git libdwarf1
- name: Fix libdwarf
run: |
ln -s /usr/lib/x86_64-linux-gnu/libdwarf.so.1.0.0 /usr/lib/x86_64-linux-gnu/libdwarf.so
- name: Fetch TAU
run: |
git clone --depth=1 https://github.com/UO-OACISS/tau2
- name: Build TAU
run: |
cd tau2
./configure -dyninst=/dyninst/install
make -j2