Advertisement
Guest User

Untitled

a guest
Feb 13th, 2024
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 3.04 KB | None | 0 0
  1. #!/usr/bin/bash
  2.  
  3. unset CPPFLAGS
  4. unset CFLAGS
  5. unset CXXFLAGS
  6. unset LDFLAGS
  7.  
  8. BUILD=1
  9. CODE_DIR="${HOME:?}/code"
  10. WINE_MY="${HOME:?}/wine"
  11. PROTON="${HOME:?}/.steam/root/compatibilitytools.d/ProtonWay-9.2"
  12.  
  13. WINE_PREFIXES=(
  14.     "${HOME:?}/Games/overwatch"
  15.     "${HOME:?}/.steam/steam/steamapps/compatdata/824270/pfx"
  16.     "${HOME:?}/.steam/steam/steamapps/compatdata/1172470/pfx"
  17.     "${HOME:?}/.steam/steam/steamapps/compatdata/1100990/pfx"
  18. )
  19.  
  20. dxvk_build(){
  21.    
  22.     BUILD_DIR=${1}
  23.  
  24.     cd ${BUILD_DIR:?}
  25.  
  26.     #git switch master && git pull
  27.     #git switch mydev && git rebase master
  28.  
  29.     rm -rf "${BUILD_DIR:?}/install"
  30.  
  31.     for ARCH in "32" "64"; do
  32.  
  33.         rm -rf "/tmp/build-${ARCH}"
  34.  
  35.         cd ${BUILD_DIR:?}
  36.  
  37.         meson setup --cross-file "${BUILD_DIR:?}/build-win${ARCH}.txt" \
  38.             --buildtype release \
  39.             --prefix "${BUILD_DIR:?}/install" \
  40.             --strip \
  41.             --bindir "x${ARCH}" \
  42.             --libdir "x${ARCH}" \
  43.             "/tmp/build-${ARCH}"
  44.  
  45.         ninja install -C "/tmp/build-${ARCH}"
  46.  
  47.         rm -rf "/tmp/build-${ARCH}"
  48.  
  49.     done
  50.  
  51. }
  52.      
  53. if [[ ${BUILD} -eq 1 ]]; then
  54.     dxvk_build "${CODE_DIR:?}/dxvk"
  55.     dxvk_build "${CODE_DIR:?}/vkd3d-proton"
  56. fi
  57.  
  58. for WINEPREFIX in "${WINE_PREFIXES[@]}"; do
  59.     cp -v ${CODE_DIR:?}/dxvk/install/x64/*.dll "${WINEPREFIX:?}/drive_c/windows/system32/"
  60.     cp -v ${CODE_DIR:?}/dxvk/install/x32/*.dll "${WINEPREFIX:?}/drive_c/windows/syswow64/"
  61.     cp -v ${CODE_DIR:?}/vkd3d-proton/install/x64/*.dll "${WINEPREFI:?}/drive_c/windows/system32/"
  62.     cp -v ${CODE_DIR:?}/vkd3d-proton/install/x32/*.dll "${WINEPREFIX:?}/drive_c/windows/syswow64/"
  63. done
  64.  
  65. cp -v ${CODE_DIR:?}/dxvk/install/x64/*.dll "${WINE_MY:?}/lib64/wine/x86_64-windows/"
  66. cp -v ${CODE_DIR:?}/dxvk/install/x32/*.dll "${WINE_MY:?}/lib/wine/i386-windows/"
  67. cp -v ${CODE_DIR:?}/vkd3d-proton/install/x64/*.dll "${WINE_MY:?}/lib64/wine/x86_64-windows/"
  68. cp -v ${CODE_DIR:?}/vkd3d-proton/install/x32/*.dll "${WINE_MY:?}/lib/wine/i386-windows/"
  69.  
  70. chmod -R +w "${PROTON:?}/files/lib64/wine/x86_64-windows"
  71. chmod -R +w "${PROTON:?}/files/lib64/wine/dxvk"
  72. chmod -R +w "${PROTON:?}/files/lib64/wine/vkd3d-proton"
  73.  
  74. chmod -R +w "${PROTON:?}/files/lib/wine/i386-windows"
  75. chmod -R +w "${PROTON:?}/files/lib/wine/dxvk/"
  76. chmod -R +w "${PROTON:?}/files/lib/wine/vkd3d-proton"
  77.  
  78. cp -v ${CODE_DIR:?}/dxvk/install/x64/*.dll "${PROTON:?}/files/lib64/wine/x86_64-windows/"
  79. cp -v ${CODE_DIR:?}/dxvk/install/x64/*.dll "${PROTON:?}/files/lib64/wine/dxvk/"
  80.  
  81. cp -v ${CODE_DIR:?}/dxvk/install/x32/*.dll "${PROTON:?}/files/lib/wine/i386-windows/"
  82. cp -v ${CODE_DIR:?}/dxvk/install/x32/*.dll "${PROTON:?}/files/lib/wine/dxvk/"
  83.  
  84. cp -v ${CODE_DIR:?}/vkd3d-proton/install/x64/*.dll "${PROTON:?}/files/lib64/wine/x86_64-windows/"
  85. cp -v ${CODE_DIR:?}/vkd3d-proton/install/x64/*.dll "${PROTON:?}/files/lib64/wine/vkd3d-proton/"
  86.  
  87. cp -v ${CODE_DIR:?}/vkd3d-proton/install/x32/*.dll "${PROTON:?}/files/lib/wine/i386-windows/"
  88. cp -v ${CODE_DIR:?}/vkd3d-proton/install/x32/*.dll "${PROTON:?}/files/lib/wine/vkd3d-proton/"
  89.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement