1#!/bin/bash 2 3set -ex 4 5VKD3D_PROTON_VERSION="2.3.1" 6VKD3D_PROTON_COMMIT="3ed3526332f53d7d35cf1b685fa8096b01f26ff0" 7 8VKD3D_PROTON_DST_DIR="/vkd3d-proton-tests" 9VKD3D_PROTON_SRC_DIR="/vkd3d-proton-src" 10VKD3D_PROTON_BUILD_DIR="/vkd3d-proton-$VKD3D_PROTON_VERSION" 11 12function build_arch { 13 local arch="$1" 14 shift 15 16 meson "$@" \ 17 -Denable_tests=true \ 18 --buildtype release \ 19 --prefix "$VKD3D_PROTON_BUILD_DIR" \ 20 --strip \ 21 --bindir "x${arch}" \ 22 --libdir "x${arch}" \ 23 "$VKD3D_PROTON_BUILD_DIR/build.${arch}" 24 25 ninja -C "$VKD3D_PROTON_BUILD_DIR/build.${arch}" install 26 27 install -D -m755 -t "${VKD3D_PROTON_DST_DIR}/x${arch}/bin" "$VKD3D_PROTON_BUILD_DIR/build.${arch}/tests/"*.exe 28} 29 30git clone https://github.com/HansKristian-Work/vkd3d-proton.git --single-branch -b "v$VKD3D_PROTON_VERSION" --no-checkout "$VKD3D_PROTON_SRC_DIR" 31pushd "$VKD3D_PROTON_SRC_DIR" 32git checkout "$VKD3D_PROTON_COMMIT" 33git submodule update --init --recursive 34git submodule update --recursive 35build_arch 64 --cross-file build-win64.txt 36build_arch 86 --cross-file build-win32.txt 37cp "setup_vkd3d_proton.sh" "$VKD3D_PROTON_BUILD_DIR/setup_vkd3d_proton.sh" 38chmod +x "$VKD3D_PROTON_BUILD_DIR/setup_vkd3d_proton.sh" 39popd 40 41"$VKD3D_PROTON_BUILD_DIR"/setup_vkd3d_proton.sh install 42rm -rf "$VKD3D_PROTON_BUILD_DIR" 43rm -rf "$VKD3D_PROTON_SRC_DIR" 44