[RFC PATCH 0/5] XAudio PE conversion.

Jacek Caban jacek at codeweavers.com
Mon Jun 28 08:05:02 CDT 2021



On 6/28/21 5:51 AM, Zebediah Figura (she/her) wrote:
> On 6/25/21 7:38 AM, Jacek Caban wrote:
>> On 6/23/21 8:38 PM, Alexandre Julliard wrote:
>>> And honestly, building our dependencies as PE and linking them
>>> statically would make things so much easier for everybody, that there
>>> would need to be strong practical reasons to go out of our way to start
>>> relying on distro packages for this. A general dislike of the approach
>>> is not good enough IMHO.
>>
>>
>> I agree that it's a good way to move forward.
>>
>> To implement it, we will need to build dependencies with winegcc (rather
>> than plain mingw). I did experiment with it last year, you may see it 
>> here:
>>
>> https://github.com/cjacek/wine-addons
>>
>> While the build system itself is just a rough draft and needs
>> rethinking, it shows how to build static libs with winegcc (it links
>> them into standalone PE files, but they should be ready to statically
>> link to Wine modules as well).
>>
>> We will probably also need such static libs to be more portable by
>> getting rid of libgcc dependency, but that's a latter step.
> 
> I remember a discussion a while ago, but why exactly do we need winegcc 
> rather than plain mingw?

Those are just different CRTs. We use msvcrt/ucrt importlib in Wine with 
tiny additions of static parts of msvcrt and winecrt0. mingw-w64 has a 
ton of additions and depends on msvcrt importlib, libmingwex.a and 
libmingw32.a combination. You can't mix them in general (and there is no 
reason to).

Jacek



More information about the wine-devel mailing list