On November 28, 2002 02:26 pm, Alexandre Julliard wrote:
That was my point. If you replace the .rc.o rule by .rc.res and .res.o then windres happily builds the .res for you, and it still works on Windows too.
This is simple, I agree. Adding a .rc -> .res is simple, and portable.
Yes you need to change the link command-line but I don't think it's that bad.
What about having to deal with the .o file that is present all over the place? That is the problem. And without a configure script, it becomes nasty.
Generating .o files in the proper format for linking directly is fairly hard to do cleanly in ELF; wrc actually supports generating C files, and we used to do it that way, but you need all kinds of tricks to make them integrate properly in the PE header.
In fact, I had something a lot simpler in mind. Currently, we define a variable called resources in the .spec.c file, which is later used in the nt_header structure. The idea was to simply generate the resources tree in a separate .c file, rename it to something like __wine_<spec file name>_resources, and make it non-static. Later, we can use it in the nt_header structure, just like we do right now. We still need to transfer the size of the resources...