diff options
author | Stelios Tsampas | 2019-05-19 10:30:03 +0300 |
---|---|---|
committer | Stelios Tsampas | 2019-05-19 10:30:03 +0300 |
commit | 8284deb3b82651707881e916dbf22c419d6a6a10 (patch) | |
tree | 1a96802a40ae92c1c9ebc19c38c21635a0c6e08a | |
parent | f47f1a9195cf87d6e1d62a4f64a90770ca6aad15 (diff) | |
download | aur-8284deb3b82651707881e916dbf22c419d6a6a10.tar.gz |
Remove extraopts patch
-rw-r--r-- | .SRCINFO | 8 | ||||
-rw-r--r-- | PKGBUILD | 21 | ||||
-rw-r--r-- | dxvk-async.patch | 20 | ||||
-rw-r--r-- | extraopts.patch | 70 | ||||
-rw-r--r-- | setup_dxvk.patch | 109 |
5 files changed, 139 insertions, 89 deletions
@@ -1,7 +1,7 @@ pkgbase = d9vk-mingw pkgdesc = A d3d9 to vk layer based off DXVK's codebase, mingw version pkgver = 0.11 - pkgrel = 1 + pkgrel = 2 url = https://github.com/Joshua-Ashton/d9vk arch = x86_64 license = zlib/libpng @@ -19,12 +19,12 @@ pkgbase = d9vk-mingw conflicts = d9vk source = git+https://github.com/Joshua-Ashton/d9vk.git#tag=0.11 source = setup_d9vk - source = extraopts.patch + source = setup_dxvk.patch source = dxvk-async.patch sha256sums = SKIP sha256sums = 7147644664ef33d04f7b18683c47be95b5664c57cf6d63fdc019d915deebd37a - sha256sums = d73f948fd39da218141cc72c7373f59e6fc289630e155b6e51d18597455d0040 - sha256sums = 6c6936b753903ba59ee9e2b6c8fc533bf60cba894cf4288ec0239c35b86796cd + sha256sums = 4e74b2d921c38ca0f9c5a6069501e9d15c7c076dcd6d41ae243830375115b8f9 + sha256sums = 1f9e060fe059c0333bbe361f6278716757a853ab7b289186f58f3ddd2466bb8e pkgname = d9vk-mingw @@ -2,7 +2,7 @@ pkgname=d9vk-mingw pkgver=0.11 -pkgrel=1 +pkgrel=2 pkgdesc="A d3d9 to vk layer based off DXVK's codebase, mingw version" arch=('x86_64') url="https://github.com/Joshua-Ashton/d9vk" @@ -14,29 +14,20 @@ conflicts=("d9vk") source=( "git+https://github.com/Joshua-Ashton/d9vk.git#tag=$pkgver" "setup_d9vk" - "extraopts.patch" + "setup_dxvk.patch" "dxvk-async.patch" ) sha256sums=( "SKIP" "7147644664ef33d04f7b18683c47be95b5664c57cf6d63fdc019d915deebd37a" - "d73f948fd39da218141cc72c7373f59e6fc289630e155b6e51d18597455d0040" - "6c6936b753903ba59ee9e2b6c8fc533bf60cba894cf4288ec0239c35b86796cd" + "4e74b2d921c38ca0f9c5a6069501e9d15c7c076dcd6d41ae243830375115b8f9" + "1f9e060fe059c0333bbe361f6278716757a853ab7b289186f58f3ddd2466bb8e" ) prepare() { cd d9vk - # Patch crossfiles with extra optimizations from makepkg.conf - # If building fails, comment the line below to disable them. - patch -p1 -i ../extraopts.patch - CFLAGS="$CPPFLAGS $CFLAGS" - LDFLAGS="${LDFLAGS/,-z,relro,-z,now/}" - sed -i build-win64.txt \ - -e "s|@CARGS@|\'${CFLAGS// /\',\'}\'|g" \ - -e "s|@LDARGS@|\'${LDFLAGS// /\',\'}\'|g" - sed -i build-win32.txt \ - -e "s|@CARGS@|\'${CFLAGS// /\',\'}\'|g" \ - -e "s|@LDARGS@|\'${LDFLAGS// /\',\'}\'|g" + patch -p1 -i ../setup_dxvk.patch + # Uncomment to enable dxvk async patch. # Enable at your own risk, if you don't know what it is, # leave it as is. You have been warned. diff --git a/dxvk-async.patch b/dxvk-async.patch index f7f4f10aa28c..7455dfd2dbd4 100644 --- a/dxvk-async.patch +++ b/dxvk-async.patch @@ -632,3 +632,23 @@ index 79259875..db2f8a32 100644 /// Number of compiler threads /// when using the state cache +diff --git a/dxvk.conf b/dxvk.conf +index 25d27cb9..4e409075 100644 +--- a/dxvk.conf ++++ b/dxvk.conf +@@ -159,6 +159,15 @@ + # dxvk.numCompilerThreads = 0 + + ++# Compile pipelines asynchronously if possible. This may reduce stuttering ++# in some games, but may also introduce rendering issues that might become ++# apparent over time. Do not report bugs with this option enabled. ++# ++# Supported values: True, False ++ ++# dxvk.useAsync = False ++ ++ + # Toggles raw SSBO usage. + # + # Uses storage buffers to implement raw and structured buffer diff --git a/extraopts.patch b/extraopts.patch deleted file mode 100644 index c65e89798ef1..000000000000 --- a/extraopts.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff --git a/build-win32.txt b/build-win32.txt -index 0865fc5e..b93a280f 100644 ---- a/build-win32.txt -+++ b/build-win32.txt -@@ -5,10 +5,10 @@ ar = 'i686-w64-mingw32-ar' - strip = 'i686-w64-mingw32-strip' - - [properties] --c_args=['-msse', '-msse2'] --cpp_args=['-msse', '-msse2'] --c_link_args = ['-static', '-static-libgcc'] --cpp_link_args = ['-static', '-static-libgcc', '-static-libstdc++', '-Wl,--add-stdcall-alias,--enable-stdcall-fixup'] -+c_args=['-msse', '-msse2', @CARGS@] -+cpp_args=['-msse', '-msse2', @CARGS@] -+c_link_args = ['-static', '-static-libgcc', @LDARGS@] -+cpp_link_args = ['-static', '-static-libgcc', '-static-libstdc++', '-Wl,--add-stdcall-alias,--enable-stdcall-fixup', @LDARGS@] - needs_exe_wrapper = true - - [host_machine] -diff --git a/build-win64.txt b/build-win64.txt -index 2a7fbee3..9e3bfc2e 100644 ---- a/build-win64.txt -+++ b/build-win64.txt -@@ -5,8 +5,10 @@ ar = 'x86_64-w64-mingw32-ar' - strip = 'x86_64-w64-mingw32-strip' - - [properties] --c_link_args = ['-static', '-static-libgcc'] --cpp_link_args = ['-static', '-static-libgcc', '-static-libstdc++'] -+c_args=[@CARGS@] -+cpp_args=[@CARGS@] -+c_link_args = ['-static', '-static-libgcc', @LDARGS@] -+cpp_link_args = ['-static', '-static-libgcc', '-static-libstdc++', @LDARGS@] - needs_exe_wrapper = true - - [host_machine] -diff --git a/build-wine32.txt b/build-wine32.txt -index ba8d34a8..ecec2eb4 100644 ---- a/build-wine32.txt -+++ b/build-wine32.txt -@@ -7,9 +7,9 @@ strip = 'strip' - [properties] - needs_exe_wrapper = true - --c_args=['-m32', '-msse', '-msse2'] --cpp_args=['-m32', '--no-gnu-unique', '-msse', '-msse2'] --cpp_link_args=['-m32', '-mwindows'] -+c_args=['-m32', '-msse', '-msse2', @CARGS@] -+cpp_args=['-m32', '--no-gnu-unique', '-msse', '-msse2', @CARGS@] -+cpp_link_args=['-m32', '-mwindows', @LDARGS@] - - [host_machine] - system = 'linux' -diff --git a/build-wine64.txt b/build-wine64.txt -index b3e028bb..fb9d98fd 100644 ---- a/build-wine64.txt -+++ b/build-wine64.txt -@@ -7,9 +7,9 @@ strip = 'strip' - [properties] - needs_exe_wrapper = true - --c_args=['-m64'] --cpp_args=['-m64', '--no-gnu-unique'] --cpp_link_args=['-m64', '-mwindows'] -+c_args=['-m64', @CARGS@] -+cpp_args=['-m64', '--no-gnu-unique', @CARGS@] -+cpp_link_args=['-m64', '-mwindows', @LDARGS@] - - [host_machine] - system = 'linux' diff --git a/setup_dxvk.patch b/setup_dxvk.patch new file mode 100644 index 000000000000..80d69f1a84d9 --- /dev/null +++ b/setup_dxvk.patch @@ -0,0 +1,109 @@ +diff --git a/setup_dxvk.sh b/setup_dxvk.sh +index f6bb5b7d..01cebf7f 100644 +--- a/setup_dxvk.sh ++++ b/setup_dxvk.sh +@@ -50,6 +50,7 @@ if [ -z "$wine" ]; then + fi + + wine64="${wine}64" ++wineboot="${wine}boot" + + # resolve 32-bit and 64-bit system32 path + winever=`$wine --version | grep wine` +@@ -58,6 +59,10 @@ if [ -z "$winever" ]; then + exit 1 + fi + ++# ensure wine placeholder dlls are recreated ++# if they are missing ++$wineboot -u ++ + win32_sys_path=$($wine winepath -u 'C:\windows\system32' 2> /dev/null) + win64_sys_path=$($wine64 winepath -u 'C:\windows\system32' 2> /dev/null) + +@@ -91,14 +96,14 @@ installFile() { + if [ -f "${srcfile}.so" ]; then + srcfile="${srcfile}.so" + fi +- ++ + if ! [ -f "${srcfile}" ]; then +- echo "${srcfile}: File not found" >&2 +- exit 1 ++ echo "${srcfile}: File not found. Skipping." >&2 ++ return 1 + fi +- ++ + if [ -n "$1" ]; then +- if [ -f "${dstfile}" ]; then ++ if [ -f "${dstfile}" ] || [ -h "${dstfile}" ]; then + if ! [ -f "${dstfile}.old" ]; then + mv "${dstfile}" "${dstfile}.old" + else +@@ -107,31 +112,58 @@ installFile() { + $file_cmd "${srcfile}" "${dstfile}" + else + echo "${dstfile}: File not found in wine prefix" >&2 +- exit 1 ++ return 1 + fi + fi ++ return 0 + } + + # remove dxvk dll, restore original file + uninstallFile() { +- dstfile="${1}/${2}.dll" +- ++ dstfile="${1}/${3}.dll" ++ srcfile="${basedir}/${2}/${3}.dll" ++ ++ if [ -f "${srcfile}.so" ]; then ++ srcfile="${srcfile}.so" ++ fi ++ ++ if ! [ -f "${srcfile}" ]; then ++ echo "${srcfile}: File not found. Skipping." >&2 ++ return 1 ++ fi ++ ++ if ! [ -f "${dstfile}" ] && ! [ -h "${dstfile}" ]; then ++ echo "${dstfile}: File not found. Skipping." >&2 ++ return 1 ++ fi ++ + if [ -f "${dstfile}.old" ]; then + rm "${dstfile}" + mv "${dstfile}.old" "${dstfile}" ++ return 0 ++ else ++ return 1 + fi + } + + install() { + installFile "$win32_sys_path" "x32" "$1" ++ inst32_ret="$?" + installFile "$win64_sys_path" "x64" "$1" +- overrideDll "$1" ++ inst64_ret="$?" ++ if [ "$inst32_ret" -eq 0 ] || [ "$inst64_ret" -eq 0 ]; then ++ overrideDll "$1" ++ fi + } + + uninstall() { +- uninstallFile "$win32_sys_path" "$1" +- uninstallFile "$win64_sys_path" "$1" +- restoreDll "$1" ++ uninstallFile "$win32_sys_path" "x32" "$1" ++ uninst32_ret="$?" ++ uninstallFile "$win64_sys_path" "x64" "$1" ++ uninst64_ret="$?" ++ if [ "$uninst32_ret" -eq 0 ] || [ "$uninst64_ret" -eq 0 ]; then ++ restoreDll "$1" ++ fi + } + + # skip dxgi during install if not explicitly |