Hi,
Fedora currently ships Wine 7.3 released February 25th, 2022.
Wine 7.4, released March 11th, started to require a 'llvm-mingw' compiler for ARM64 builds. Fedora ships the 'mingw-w64' gcc-based MinGW environment and does not ship the 'llvm' MinGW environment. Unlike the WineMono package, which bundles a 'llvm-mingw' compiler (that is removed and mingw-w64 is used), the Wine package does not bundle one and does not allow for an alternative compiler.
I will need to drop ARM from Wine in order to continue shipping new updates. I do not have the bandwidth to package the llvm-mingw compiler toolchain, nor do I have the time right now to discuss this with upstream.
Thanks, Michael
Hi
What does llvm-mingw mean exactly? FWIW, there is a mingw-llvm package.
Thanks Sandro
On 30.03.22 14:33, Michael Cronenworth wrote:
Hi,
Fedora currently ships Wine 7.3 released February 25th, 2022.
Wine 7.4, released March 11th, started to require a 'llvm-mingw' compiler for ARM64 builds. Fedora ships the 'mingw-w64' gcc-based MinGW environment and does not ship the 'llvm' MinGW environment. Unlike the WineMono package, which bundles a 'llvm-mingw' compiler (that is removed and mingw-w64 is used), the Wine package does not bundle one and does not allow for an alternative compiler.
I will need to drop ARM from Wine in order to continue shipping new updates. I do not have the bandwidth to package the llvm-mingw compiler toolchain, nor do I have the time right now to discuss this with upstream.
Thanks, Michael _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
On 3/30/22 7:38 AM, Sandro Mani wrote:
Hi
What does llvm-mingw mean exactly? FWIW, there is a mingw-llvm package.
Thanks Sandro
It is a complete, cross-compiling, Windows PE building toolchain[1][2] that uses llvm instead of gcc. The 'mingw-llvm' package is the llvm backend in PE form and not the complete toolchain.
[1] https://github.com/mstorsjo/llvm-mingw [2] https://www.mingw-w64.org/downloads/#llvm-mingw
On Wed, Mar 30, 2022 at 9:25 AM Michael Cronenworth mike@cchtml.com wrote:
On 3/30/22 7:38 AM, Sandro Mani wrote:
Hi
What does llvm-mingw mean exactly? FWIW, there is a mingw-llvm package.
Thanks Sandro
It is a complete, cross-compiling, Windows PE building toolchain[1][2] that uses llvm instead of gcc. The 'mingw-llvm' package is the llvm backend in PE form and not the complete toolchain.
The main llvm package should be capable of this already, as it's a retargetable compiler. The clang package provides a clang program that's capable of this.
On 30.03.22 15:26, Neal Gompa wrote:
On Wed, Mar 30, 2022 at 9:25 AM Michael Cronenworth mike@cchtml.com wrote:
On 3/30/22 7:38 AM, Sandro Mani wrote:
Hi
What does llvm-mingw mean exactly? FWIW, there is a mingw-llvm package.
Thanks Sandro
It is a complete, cross-compiling, Windows PE building toolchain[1][2] that uses llvm instead of gcc. The 'mingw-llvm' package is the llvm backend in PE form and not the complete toolchain.
The main llvm package should be capable of this already, as it's a retargetable compiler. The clang package provides a clang program that's capable of this.
This makes me wonder, is mingw-llvm actually useful? I took interest into it way back when I thought it was necessary to get mingw-rust building, but this turned out not to be the case (resp mingw targets are now built directly in the main rust package). So any point in keeping mingw-llvm around?
On 30.03.22 15:31, Sandro Mani wrote:
On 30.03.22 15:26, Neal Gompa wrote:
On Wed, Mar 30, 2022 at 9:25 AM Michael Cronenworth mike@cchtml.com wrote:
On 3/30/22 7:38 AM, Sandro Mani wrote:
Hi
What does llvm-mingw mean exactly? FWIW, there is a mingw-llvm package.
Thanks Sandro
It is a complete, cross-compiling, Windows PE building toolchain[1][2] that uses llvm instead of gcc. The 'mingw-llvm' package is the llvm backend in PE form and not the complete toolchain.
The main llvm package should be capable of this already, as it's a retargetable compiler. The clang package provides a clang program that's capable of this.
This makes me wonder, is mingw-llvm actually useful? I took interest into it way back when I thought it was necessary to get mingw-rust building, but this turned out not to be the case (resp mingw targets are now built directly in the main rust package). So any point in keeping mingw-llvm around?
To add to this: as I understand it's just the llvm backend which could be used on a Windows host, but serve no purpose in cross-compiling from linux to mingw?
On Wed, Mar 30, 2022 at 9:35 AM Sandro Mani manisandro@gmail.com wrote:
On 30.03.22 15:31, Sandro Mani wrote:
On 30.03.22 15:26, Neal Gompa wrote:
On Wed, Mar 30, 2022 at 9:25 AM Michael Cronenworth mike@cchtml.com wrote:
On 3/30/22 7:38 AM, Sandro Mani wrote:
Hi
What does llvm-mingw mean exactly? FWIW, there is a mingw-llvm package.
Thanks Sandro
It is a complete, cross-compiling, Windows PE building toolchain[1][2] that uses llvm instead of gcc. The 'mingw-llvm' package is the llvm backend in PE form and not the complete toolchain.
The main llvm package should be capable of this already, as it's a retargetable compiler. The clang package provides a clang program that's capable of this.
This makes me wonder, is mingw-llvm actually useful? I took interest into it way back when I thought it was necessary to get mingw-rust building, but this turned out not to be the case (resp mingw targets are now built directly in the main rust package). So any point in keeping mingw-llvm around?
To add to this: as I understand it's just the llvm backend which could be used on a Windows host, but serve no purpose in cross-compiling from linux to mingw?
The main value for mingw-llvm would be for supporting a mingw-mesa package. The latter needs LLVM infrastructure in the first place to work, and there's a lot of work going on in Mesa around Mesa-on-Windows right now.
On Wed, Mar 30, 2022, 08:34 Michael Cronenworth mike@cchtml.com wrote:
Hi,
Fedora currently ships Wine 7.3 released February 25th, 2022.
Wine 7.4, released March 11th, started to require a 'llvm-mingw' compiler for ARM64 builds. Fedora ships the 'mingw-w64' gcc-based MinGW environment and does not ship the 'llvm' MinGW environment. Unlike the WineMono package, which bundles a 'llvm-mingw' compiler (that is removed and mingw-w64 is used), the Wine package does not bundle one and does not allow for an alternative compiler.
I will need to drop ARM from Wine in order to continue shipping new updates. I do not have the bandwidth to package the llvm-mingw compiler toolchain, nor do I have the time right now to discuss this with upstream.
That is an unfortunate decision on the part of wine. Gcc is a very robust compiler.
On Wed, Mar 30, 2022 at 10:44 AM NightStrike nightstrike@gmail.com wrote:
On Wed, Mar 30, 2022, 08:34 Michael Cronenworth mike@cchtml.com wrote:
Hi,
Fedora currently ships Wine 7.3 released February 25th, 2022.
Wine 7.4, released March 11th, started to require a 'llvm-mingw' compiler for ARM64 builds. Fedora ships the 'mingw-w64' gcc-based MinGW environment and does not ship the 'llvm' MinGW environment. Unlike the WineMono package, which bundles a 'llvm-mingw' compiler (that is removed and mingw-w64 is used), the Wine package does not bundle one and does not allow for an alternative compiler.
I will need to drop ARM from Wine in order to continue shipping new updates. I do not have the bandwidth to package the llvm-mingw compiler toolchain, nor do I have the time right now to discuss this with upstream.
That is an unfortunate decision on the part of wine. Gcc is a very robust compiler.
I'm not surprised, honestly. I suspect the primary motivation for Clang is that Microsoft contributed support for PDB to LLVM, but nobody brought it into GCC as far as I know. That said, we don't have any debug infrastructure for PDB, only DWARF (which is what GCC uses in Fedora).
-- 真実はいつも一つ!/ Always, there's only one truth!