Spent the last hour or so trying to track down why this wouldn't build. It would make the 32bit libraries fine, but not the 64bit libraries.
Turns out, the build process appears to just use the user's default Wine prefix (so ~/.wine). The problem with this is that it could be configured in any way. In my case, my default prefix was a 32bit prefix which meant it couldn't run the 64bit test binary (as a 32bit Wine prefix cannot run 64bit binaries, but vice versa can). Thus it resulted in this error...
[02:28:58] arcade@arcade /var/tmp/makepkg/dxvk-git/src/dxvk-git $ ./package-release.sh master ../built --no-package
The Meson build system
Version: 0.45.1
Source dir: /var/tmp/makepkg/dxvk-git/src/dxvk-git
Build dir: /var/tmp/makepkg/dxvk-git/src/built/dxvk-master/build.64
Build type: cross build
Project name: dxvk
wine: Bad EXE format for Z:\var\tmp\makepkg\dxvk-git\src\built\dxvk-master\build.64\meson-private\sanitycheckc_cross.exe.
meson.build:1:0: ERROR: Executables created by c compiler /usr/bin/x86_64-w64-mingw32-gcc are not runnable.
A full log can be found at /var/tmp/makepkg/dxvk-git/src/built/dxvk-master/build.64/meson-logs/meson-log.txt
ninja: error: loading 'build.ninja': No such file or directory
cp: cannot stat '/var/tmp/makepkg/dxvk-git/src/built/dxvk-master/install.64/bin/d3d11.dll': No such file or directory
cp: cannot stat '/var/tmp/makepkg/dxvk-git/src/built/dxvk-master/install.64/bin/dxgi.dll': No such file or directory
cp: cannot stat '/var/tmp/makepkg/dxvk-git/src/built/dxvk-master/install.64/bin/setup_dxvk.sh': No such file or directory
rm: cannot remove '/var/tmp/makepkg/dxvk-git/src/built/dxvk-master/install.64': No such file or directory
Forcing a new prefix (which will be 64bit by default) allowed the process to complete:
[03:54:23] arcade@arcade /var/tmp/makepkg/dxvk-git/src/dxvk-git $ WINEPREFIX=~/wintest ./package-release.sh master ../built --no-package
The Meson build system
Version: 0.45.1
Source dir: /var/tmp/makepkg/dxvk-git/src/dxvk-git
Build dir: /var/tmp/makepkg/dxvk-git/src/built/dxvk-master/build.64
Build type: cross build
Project name: dxvk
wine: created the configuration directory '/home/arcade/wintest'
wine: configuration in '/home/arcade/wintest' has been updated.
Native C compiler: ccache cc (gcc 7.3.1 "cc (GCC) 7.3.1 20180312")
Cross C compiler: /usr/bin/x86_64-w64-mingw32-gcc (gcc 7.3.0)
Native C++ compiler: ccache c++ (gcc 7.3.1 "c++ (GCC) 7.3.1 20180312")
Cross C++ compiler: /usr/bin/x86_64-w64-mingw32-g++ (gcc 7.3.0)
Host machine cpu family: x86_64
Host machine cpu: x86_64
Target machine cpu family: x86_64
Target machine cpu: x86_64
Build machine cpu family: x86_64
Build machine cpu: x86_64
Library vulkan-1 found: YES
Library d3d11 found: YES
Library dxgi found: YES
Library d3dcompiler_47 found: YES
Program glslangValidator found: YES (/usr/bin/glslangValidator)
Dependency threads found: YES
Configuring setup_dxvk.sh using configuration
Build targets in project: 13
Found ninja-1.8.2 at /usr/bin/ninja
I recommend modifying the build script so that it uses a temporary Wine prefix in the build directory and sets the relevant other core options as well (e.g. "WINEARCH=win64") so that we know the build process will work, rather than assuming the user's default prefix is suitable for the build process.
I can do a pull request to fix this if you'd like.
Spent the last hour or so trying to track down why this wouldn't build. It would make the 32bit libraries fine, but not the 64bit libraries.
Turns out, the build process appears to just use the user's default Wine prefix (so ~/.wine). The problem with this is that it could be configured in any way. In my case, my default prefix was a 32bit prefix which meant it couldn't run the 64bit test binary (as a 32bit Wine prefix cannot run 64bit binaries, but vice versa can). Thus it resulted in this error...
Forcing a new prefix (which will be 64bit by default) allowed the process to complete:
I recommend modifying the build script so that it uses a temporary Wine prefix in the build directory and sets the relevant other core options as well (e.g. "WINEARCH=win64") so that we know the build process will work, rather than assuming the user's default prefix is suitable for the build process.
I can do a pull request to fix this if you'd like.