Hi Costas,

On 3/7/23 15:00, Costas Argyris wrote:
Hi Jacek,

"Is there a reason to make it specific to x86_64? It seems to me that all mingw hosts could use it."

Are you referring to the 32-bit host?    My concern here is that this functionality (embedding the UTF-8 manifest file into the executable) is only truly supported in recent versions of Windows.    From:

https://learn.microsoft.com/en-us/windows/apps/design/globalizing/use-utf8-code-page

It says that Windows Version 1903 (May 2019 Update) enables this, so we are looking at the 64-bit
version of Windows.

I suppose you are referring to the scenario where one has a 32-bit gcc + mingw running in a 64-bit Windows that is recent enough to support this?    It is not clear to me based on the above doc what would happen encoding-wise in that situation, and I haven't tried it either because I assumed that most people would want the 64-bit version of gcc since they are probably running a 64-bit OS.

If you think it is useful, I could look into that as a separate task to try and keep this one simple, if
that makes sense.


Yes, realistically it's mostly about 32-bit gcc on 64-bit Windows (perhaps aarch64 as well at some point in the future). It's probably indeed not very popular configuration those days, but I think it should work just fine if you didn't explicitly limit the patch to x86_64.


"I think that .manifest file should also be a dependency here."

Why is that?    Windres takes only the .rc file as its input, as per its own doc, and it successfully compiles it into an object file.    The .manifest file is only referenced by the .rc file, and it doesn't get passed to windres, so I don't see why it has to be listed as a prerequisite in the make rule.


The point that when winnt-utf8.manifest is modified, utf8-mingw32.o should be rebuilt. Anyway, it's probably not a big deal (I should disclaim that I'm not very familiar with gcc build system; I'm mostly on this ML due to mingw-w64 contributions).


Thanks,

Jacek

Reply via email to