Files
TheRock/third-party/sysdeps/linux/libpciaccess/patch_source.sh
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

48 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# Copyright Advanced Micro Devices, Inc.
# SPDX-License-Identifier: MIT
set -e
SOURCE_DIR="${1:?Source directory must be given}"
echo "Patching libpciaccess sources to rename main library..."
# Patch the src/meson.build to change library name from pciaccess to rocm_sysdeps_pciaccess
SRC_MESON_BUILD="$SOURCE_DIR/src/meson.build"
if [ -f "$SRC_MESON_BUILD" ]; then
echo "Patching $SRC_MESON_BUILD..."
# Change the variable name and the library name parameter
# Original: libpciaccess = library('pciaccess', ...)
# Result: librocm_sysdeps_pciaccess = library('rocm_sysdeps_pciaccess', ...)
sed -i "s/^libpciaccess = library($/librocm_sysdeps_pciaccess = library(/g" "$SRC_MESON_BUILD"
sed -i "s/^ 'pciaccess',$/ 'rocm_sysdeps_pciaccess',/g" "$SRC_MESON_BUILD"
# Update dependency declaration
sed -i 's/link_with : libpciaccess/link_with : librocm_sysdeps_pciaccess/g' "$SRC_MESON_BUILD"
fi
# Patch the root meson.build pkg.generate reference
ROOT_MESON_BUILD="$SOURCE_DIR/meson.build"
if [ -f "$ROOT_MESON_BUILD" ]; then
echo "Patching $ROOT_MESON_BUILD..."
# Update pkg.generate to NOT pass the library object, use libraries parameter instead
# This way meson won't auto-generate -lrocm_sysdeps_pciaccess
# Original:
# pkg.generate(
# libpciaccess,
# description : '...',
# )
# Result:
# pkg.generate(
# name : 'pciaccess',
# libraries : ['-L${libdir}', '-lpciaccess'],
# description : '...',
# )
sed -i '/^pkg\.generate($/,/^)$/ {
s/^ libpciaccess,$/ name : '\''pciaccess'\'',\n libraries : ['\''-L${libdir}'\'', '\''-lpciaccess'\''],/
}' "$ROOT_MESON_BUILD"
fi
echo "libpciaccess patching completed."