Files
TheRock/third-party/sysdeps/linux/amd-mesa/mesa-fork/.gitlab-ci/container/build-opencl-cts.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

67 lines
1.9 KiB
Bash
Executable File

#!/usr/bin/env bash
# shellcheck disable=SC2086 # we want word splitting
set -uex
section_start opencl-cts "Building OpenCL-CTS"
# Changing this file changes CONDITIONAL_BUILD_OPENCL_CTS_TAG. Bump the GL image
# tag too so CI rebuilds the image and uploads the matching OpenCL-CTS artifact:
# DEBIAN_TEST_GL_TAG
ci_tag_build_time_check "OPENCL_CTS_TAG"
REV="349973878bd92be01eefc489206d73bdbe5e7aed"
MESA_SOURCE_DIR="$PWD"
OPENCL_CTS_S3_ARTIFACT="opencl-cts.tar.zst"
ARTIFACT_PATH="${DATA_STORAGE_PATH}/opencl-cts/${DEBIAN_ARCH}/${OPENCL_CTS_TAG}.tar.zst"
if FOUND_ARTIFACT_URL="$(find_s3_project_artifact "${ARTIFACT_PATH}")"; then
echo "Found OpenCL-CTS at: ${FOUND_ARTIFACT_URL}"
curl-with-retry "${FOUND_ARTIFACT_URL}" | tar --zstd -x -C /
else
mkdir /OpenCL-CTS
pushd /OpenCL-CTS
git init
git remote add origin https://github.com/KhronosGroup/OpenCL-CTS.git
git fetch --depth 1 origin "$REV"
git checkout FETCH_HEAD
mkdir -p /opencl-cts/test_conformance
echo "$REV" > /opencl-cts/opencl-cts-version
mkdir build
pushd build
cmake -S .. -B . -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCL_INCLUDE_DIR="$MESA_SOURCE_DIR/include" \
-DCL_LIB_DIR="/usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)" \
-DOPENCL_LIBRARIES=OpenCL \
-DSPIRV_INCLUDE_DIR=/usr \
-DSPIRV_TOOLS_DIR=/usr/bin
ninja -j ${FDO_CI_CONCURRENT:-4}
cp -R test_conformance /opencl-cts/
find /opencl-cts/test_conformance -depth \
\( \
-name CMakeFiles \
-o -name cmake_install.cmake \
-o -name CMakeCache.txt \
-o -name build.ninja \
-o -name '*.ninja' \
\) \
-exec rm -rf {} +
popd
popd
rm -rf /OpenCL-CTS
tar --zstd -cf "$OPENCL_CTS_S3_ARTIFACT" -C / opencl-cts
ci-fairy s3cp --token-file "${S3_JWT_FILE}" "$OPENCL_CTS_S3_ARTIFACT" \
"https://${S3_BASE_PATH}/${CI_PROJECT_PATH}/${ARTIFACT_PATH}"
rm "$OPENCL_CTS_S3_ARTIFACT"
fi
section_end opencl-cts