This is slightly different from dlltool but I think it should be compatible. The transition is done by first replacing dlltool with its bugs, and fixing them in separate changes.
I based the ARM / AARCH64 implementation on the existing code around, but I have no idea if it is correct, and dlltool also doesn't include any delay load implementation for ARM.
--
v2: winebuild: Put the delay import descriptor in data section.
winebuild: Fix import hint value for symbols imported by name.
winebuild: Implement import lib generation to replace dlltool.
winebuild: Split output_static_lib into output_(import|static)_lib.
winebuild: Use asm_name to add underscore prefix in asm_globl.
winebuild: Pass the desired symbol name to get_link_name.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1001
This shows that media session samples are correctly oriented, but that mfmediaengine renders them upside down.
--
v4: mfmediaengine: Remove vertical flipping of video frames.
mfmediaengine/tests: Check IMFMediaEngine_TransferVideoFrames output orientation.
mfmediaengine/tests: Pass a device and output format to create_media_engine.
mf/tests: Check sample grabber RGB / NV12 orientation.
mf/tests: Factor test grabber callback implementations.
https://gitlab.winehq.org/wine/wine/-/merge_requests/874