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
60 lines
2.1 KiB
Bash
60 lines
2.1 KiB
Bash
#!/bin/bash
|
|
|
|
# When changing this file, you need to bump the following
|
|
# .gitlab-ci/image-tags.yml tags:
|
|
# DEBIAN_TEST_VK_TAG
|
|
set -ex
|
|
|
|
section_start vkd3d-proton "Building vkd3d-proton"
|
|
|
|
# Do a very early check to make sure the tag is correct without the need of
|
|
# setting up the environment variables locally
|
|
ci_tag_build_time_check "VKD3D_PROTON_TAG"
|
|
|
|
VKD3D_PROTON_COMMIT="97a834b8473e700f3cb15567ba5f90b2236ecfc5"
|
|
|
|
VKD3D_PROTON_DST_DIR="/vkd3d-proton-tests"
|
|
VKD3D_PROTON_SRC_DIR="/vkd3d-proton-src"
|
|
VKD3D_PROTON_S3_ARTIFACT="vkd3d-proton.tar.zst"
|
|
|
|
mkdir -p "$VKD3D_PROTON_SRC_DIR"
|
|
pushd "$VKD3D_PROTON_SRC_DIR"
|
|
git init
|
|
git remote add origin https://github.com/HansKristian-Work/vkd3d-proton.git
|
|
git fetch --depth 1 origin "$VKD3D_PROTON_COMMIT"
|
|
git checkout FETCH_HEAD
|
|
git submodule update --init --recursive
|
|
|
|
meson setup build --buildtype release -D enable_tests=true \
|
|
-D c_args=-Wno-error=incompatible-pointer-types
|
|
# Build and install specifically the bits we want; gets rid of 24MB of
|
|
# unwanted files, keeping only 7.6MB of the three useful files.
|
|
for file in \
|
|
libs/d3d12/libvkd3d-proton-d3d12.so \
|
|
libs/d3d12core/libvkd3d-proton-d3d12core.so \
|
|
tests/d3d12 \
|
|
; do
|
|
ninja -C build "$file"
|
|
strip build/"$file"
|
|
install -Dm755 -t "${VKD3D_PROTON_DST_DIR}/$(dirname "$file")" build/"$file"
|
|
done
|
|
|
|
install -m755 -t "${VKD3D_PROTON_DST_DIR}/tests" tests/test-runner.sh
|
|
popd
|
|
|
|
# Archive and upload vkd3d-proton for use as a LAVA overlay, if the archive doesn't exist yet
|
|
ARTIFACT_PATH="${DATA_STORAGE_PATH}/vkd3d-proton/${VKD3D_PROTON_TAG}/${CI_JOB_NAME}/${VKD3D_PROTON_S3_ARTIFACT}"
|
|
if FOUND_ARTIFACT_URL="$(find_s3_project_artifact "${ARTIFACT_PATH}")"; then
|
|
echo "Found vkd3d-proton at: ${FOUND_ARTIFACT_URL}, skipping upload"
|
|
else
|
|
echo "Uploaded vkd3d-proton not found, reuploading..."
|
|
tar --zstd -cf "$VKD3D_PROTON_S3_ARTIFACT" -C / "${VKD3D_PROTON_DST_DIR#/}"
|
|
ci-fairy s3cp --token-file "${S3_JWT_FILE}" "$VKD3D_PROTON_S3_ARTIFACT" \
|
|
"https://${S3_BASE_PATH}/${CI_PROJECT_PATH}/${ARTIFACT_PATH}"
|
|
rm "$VKD3D_PROTON_S3_ARTIFACT"
|
|
fi
|
|
|
|
rm -rf "$VKD3D_PROTON_SRC_DIR"
|
|
|
|
section_end vkd3d-proton
|