drivers/gpu/drm/ci/build-igt.sh
Source file repositories/reference/linux-study-clean/drivers/gpu/drm/ci/build-igt.sh
File Facts
- System
- Linux kernel
- Corpus path
drivers/gpu/drm/ci/build-igt.sh- Extension
.sh- Size
- 2342 bytes
- Lines
- 75
- Domain
- Driver Families
- Bucket
- drivers/gpu
- Inferred role
- Driver Families: drivers/gpu
- Status
- atlas-only
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#!/bin/bash
# SPDX-License-Identifier: MIT
set -ex
function generate_testlist {
set +x
while read -r line; do
if [ "$line" = "TESTLIST" ] || [ "$line" = "END TESTLIST" ]; then
continue
fi
tests=$(echo "$line" | tr ' ' '\n')
for test in $tests; do
output=$(/igt/libexec/igt-gpu-tools/"$test" --list-subtests || true)
if [ -z "$output" ]; then
echo "$test"
else
echo "$output" | while read -r subtest; do
echo "$test@$subtest"
done
fi
done
done < /igt/libexec/igt-gpu-tools/test-list.txt > /igt/libexec/igt-gpu-tools/ci-testlist.txt
set -x
}
git clone https://gitlab.freedesktop.org/drm/igt-gpu-tools.git --single-branch --no-checkout
cd igt-gpu-tools
git checkout $IGT_VERSION
if [[ "$KERNEL_ARCH" = "arm" ]]; then
. ../.gitlab-ci/container/create-cross-file.sh armhf
EXTRA_MESON_ARGS="--cross-file /cross_file-armhf.txt"
fi
MESON_OPTIONS="-Doverlay=disabled \
-Dchamelium=disabled \
-Dvalgrind=disabled \
-Dman=enabled \
-Dtests=enabled \
-Drunner=enabled \
-Dlibunwind=enabled \
-Dprefix=/igt"
if [[ "$KERNEL_ARCH" = "arm64" ]] || [[ "$KERNEL_ARCH" = "arm" ]]; then
MESON_OPTIONS="$MESON_OPTIONS -Dxe_driver=disabled"
fi
mkdir -p /igt
meson build $MESON_OPTIONS $EXTRA_MESON_ARGS
ninja -C build -j${FDO_CI_CONCURRENT:-4} || ninja -C build -j 1
ninja -C build install
if [[ "$KERNEL_ARCH" = "arm64" ]]; then
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib/aarch64-linux-gnu
elif [[ "$KERNEL_ARCH" = "arm" ]]; then
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib
else
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib64
fi
echo "Generating ci-testlist.txt"
generate_testlist
mkdir -p artifacts/
tar -cf artifacts/igt.tar /igt
Annotation
- Atlas domain: Driver Families / drivers/gpu.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.