[vlc-devel] [RFC 06/82] d3d11: update directX header for crosscompilation

Martin Storsjö martin at martin.st
Sat Feb 2 21:05:37 CET 2019


On Fri, 1 Feb 2019, Pierre Lamot wrote:

>  updated headers are required to compile ANGLE support in Qt
> ---
> contrib/src/d3d11/SHA512SUMS             |  14 ++-
> contrib/src/d3d11/processor_format.patch |  14 +--
> contrib/src/d3d11/rules.mak              | 122 ++++++++++++++++++-----
> modules/hw/d3d11/d3d11_deinterlace.c     |   2 -
> 4 files changed, 109 insertions(+), 43 deletions(-)

This patch is a bit problematic.

When downloading the files, it first tries CONTRIB_VIDEOLAN, which does 
have files with the right name, but older versions. So when downloading 
from there, we get the wrong version.

Secondly, a few of these rules are missing dependencies, which you notice 
if building with parallel make (and who doesn't these days). E.g. like 
this:

-$(DST_DXGITYPE_H): $(TARBALLS)/dxgitype.idl
+$(DST_DXGITYPE_H): $(TARBALLS)/dxgitype.idl $(TARBALLS)/dxgicommon.idl $(TARBALLS)/dxgiformat.idl

-$(DST_DXGI12_H): $(TARBALLS)/dxgi1_2.idl
+$(DST_DXGI12_H): $(TARBALLS)/dxgi1_2.idl $(TARBALLS)/dxgi.idl

dxgitype.idl includes dxgicommon.idl and dxgiformat.idl. Without the 
dependency, it will try to run widl on dxgitype.idl even while 
dxgicommon.idl and dxgiformat.idl are still being downloaded and are 
partial broken files.

I'm not sure if there are more similar dependencies - this at least seems 
to make "rm -rf ../x86_64-w64-mingw32/include/* ../tarballs/*.{h,idl}; 
make -j4 .d3d11" succeed for me.

// Martin



More information about the vlc-devel mailing list