Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Debian Development (http://www.linux-archive.org/debian-development/)
-   -   The mingw* mess in Debian (http://www.linux-archive.org/debian-development/596302-mingw-mess-debian.html)

Fabian Greffrath 11-09-2011 11:33 AM

The mingw* mess in Debian
 
Dear -devel,

is there a reason why we have both a mingw32 and a gcc-mingw32 package
in Debian? Both seem to contain the same, i.e. the GCC from the MinGW
project (please note they dropped the "32" for a while), but the
version in gcc-mingw32 is newer than the one in mingw32.


For the 64-bit variant, there is a meta-package called mingw-w64 that
pulls in gcc-mingw-w64 and mingw-w64-dev. However, for the 32-bit
variant, the mingw32 package is not a meta-package but (an ancient
version) the actual compiler, as stated above.


Then, some the package names are also inconsistent, compare
mingw32-binutils and binutils-mingw-w64.


Is there a principle behind all this or where can I help to clean this
up? ;)


Cheers,
Fabian


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 4EBA730A.7060707@greffrath.com">http://lists.debian.org/4EBA730A.7060707@greffrath.com

Pau Garcia i Quiles 11-09-2011 11:58 AM

The mingw* mess in Debian
 
Hi,

It's even more complex than that, actually:

mingw32 contains gcc 4.2.1 for 32-bit targets

gcc-mingw32 contains gcc 4.4.4 for 32-bit targets. IIRC is not an
official mingw.org release, this may be the reason why there is
mingw32 and gcc-mingw32.

gcc-mingw-w64 contains gcc 4.6 for both 32-bit and 64-bit targets.
IMHO it would be better if it were split in two packages, one for
32-bit targets and the other for 64-bit targets.



On Wed, Nov 9, 2011 at 1:33 PM, Fabian Greffrath <fabian@greffrath.com> wrote:
> Dear -devel,
>
> is there a reason why we have both a mingw32 and a gcc-mingw32 package in
> Debian? Both seem to contain the same, i.e. the GCC from the MinGW project
> (please note they dropped the "32" for a while), but the version in
> gcc-mingw32 is newer than the one in mingw32.
>
> For the 64-bit variant, there is a meta-package called mingw-w64 that pulls
> in gcc-mingw-w64 and mingw-w64-dev. However, for the 32-bit variant, the
> mingw32 package is not a meta-package but (an ancient version) the actual
> compiler, as stated above.
>
> Then, some the package names are also inconsistent, compare mingw32-binutils
> and binutils-mingw-w64.
>
> Is there a principle behind all this or where can I help to clean this up?
> ;)
>
> Cheers,
> Fabian
>
>
> --
> To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmaster@lists.debian.org
> Archive: http://lists.debian.org/4EBA730A.7060707@greffrath.com
>
>



--
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: CAKcBoku2=iWAgStH=nCvi8iGxHHdCiR+zEhMFDDtTp4_hzyzY Q@mail.gmail.com">http://lists.debian.org/CAKcBoku2=iWAgStH=nCvi8iGxHHdCiR+zEhMFDDtTp4_hzyzY Q@mail.gmail.com

Adam Borowski 11-09-2011 12:01 PM

The mingw* mess in Debian
 
On Wed, Nov 09, 2011 at 01:33:14PM +0100, Fabian Greffrath wrote:
> is there a reason why we have both a mingw32 and a gcc-mingw32
> package in Debian? Both seem to contain the same, i.e. the GCC from
> the MinGW project (please note they dropped the "32" for a while),
> but the version in gcc-mingw32 is newer than the one in mingw32.
>
> For the 64-bit variant, there is mingw-w64

While the name has been carefully chosen to cause as much confusion as
possible, what you want is mingw-w64. It supports both win32 and win64,
and provides a modern version of the compiler.

--
1KB // Yo momma uses IPv4!

Simon McVittie 11-09-2011 12:16 PM

The mingw* mess in Debian
 
On Wed, 09 Nov 2011 at 13:33:14 +0100, Fabian Greffrath wrote:
> is there a reason why we have both a mingw32 and a gcc-mingw32
> package in Debian? Both seem to contain the same, i.e. the GCC from
> the MinGW project (please note they dropped the "32" for a while),
> but the version in gcc-mingw32 is newer than the one in mingw32.

mingw-w64 isn't the same upstream as mingw[32] - it's a separate project
(a fork of mingw[32], I think?) which targets both 32- and 64-bit Windows.

I believe the rationale for gcc-mingw32 was largely that mingw32 wasn't updated
for a while (it's gcc 4.2 whereas gcc-mingw32 is 4.4), while the rationale
for mingw-w64 is that it's needed for wine-gecko, the browser engine used by
recent versions of Wine to emulate the embeddable Internet Explorer libraries
(MSHTML etc.), although I could be wrong. mingw-w64 seems to be the preferred
version these days?

The mingw32 and mingw32-binutils packages seem to be done as independent
sources, whereas gcc-mingw32 and mingw-w64 use binutils-source and
gcc-4.x-source (where x is currently 4) and patch it, if I'm understanding
correctly?

gcc-mingw32 now has the same maintainer as mingw-w64 (Stephen Kitt, who has
also worked on Wine 1.2 packaging, although sadly that hasn't made it into
Debian).

Does mingw[32] have any particular advantages over mingw-w64, I wonder?

Upstreams:

* http://mingw-w64.sourceforge.net/ - mingw-w64
* http://www.mingw.org/ - mingw (aka mingw32)

GNU tuples:

* i686-w64-mingw32 - mingw-w64 for 32-bit Windows
* x86_64-w64-mingw32 - mingw-w64 for 64-bit Windows
* i586-mingw32msvc - mingw32 and gcc-mingw32 for 32-bit Windows
* amd64-mingw32msvc - gcc-mingw32 for 64-bit Windows (removed post-squeeze
in favour of x86_64-w64-mingw32)

S


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 20111109131656.GA27608@reptile.pseudorandom.co.uk" >http://lists.debian.org/20111109131656.GA27608@reptile.pseudorandom.co.uk

Pau Garcia i Quiles 11-09-2011 01:04 PM

The mingw* mess in Debian
 
On Wed, Nov 9, 2011 at 2:16 PM, Simon McVittie <smcv@debian.org> wrote:

> Does mingw[32] have any particular advantages over mingw-w64, I wonder?

Not that I know. mingw-w64's CRT is more complete (it includes LFS,
which mingw32 does not, for instance), includes more up-to-date
compilers and handles threading better.

Back then there were some concerns about mingw-w64 reverse
engineering/clean room practices, but they were not justified and have
been fully cleared.

--
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: CAKcBokuBoTjveTDdW-a2LZ6GwLR1Fxi4bAn3+GPG2dSOmTrCcA@mail.gmail.com">h ttp://lists.debian.org/CAKcBokuBoTjveTDdW-a2LZ6GwLR1Fxi4bAn3+GPG2dSOmTrCcA@mail.gmail.com

Fabian Greffrath 11-09-2011 03:04 PM

The mingw* mess in Debian
 
Thanks for your answers!


On Wed, Nov 9, 2011 at 2:16 PM, Simon McVittie <smcv@debian.org> wrote:

Does mingw[32] have any particular advantages over mingw-w64, I wonder?


Not that I know. mingw-w64's CRT is more complete (it includes LFS,
which mingw32 does not, for instance), includes more up-to-date
compilers and handles threading better.


So if I understand it correctly, it would be best to entirely drop
mingw32, gcc-mingw32, mingw32-runtime and the other members of that
family from Debian and concentrate on mingw-w64 (which then, as a
bonus, could be split into packages targeting i686-w64-mingw32 and
x86_64-w64-mingw32). Right?


- Fabian


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 4EBAA49D.1030707@greffrath.com">http://lists.debian.org/4EBAA49D.1030707@greffrath.com

Pau Garcia i Quiles 11-09-2011 03:04 PM

The mingw* mess in Debian
 
On Wed, Nov 9, 2011 at 5:04 PM, Fabian Greffrath <fabian@greffrath.com> wrote:

> So if I understand it correctly, it would be best to entirely drop mingw32,
> gcc-mingw32, mingw32-runtime and the other members of that family from
> Debian and concentrate on mingw-w64 (which then, as a bonus, could be split
> into packages targeting i686-w64-mingw32 and x86_64-w64-mingw32). Right?

Yes, that would be my advice. Unfortunately mingw32 is now too far
behind mingw-w64. The fork has become better than the original
project.

--
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: CAKcBoktzgMJDO5HDkddGSQ=hHD=5f_wung4+-DwifiJQUiRBCQ@mail.gmail.com">http://lists.debian.org/CAKcBoktzgMJDO5HDkddGSQ=hHD=5f_wung4+-DwifiJQUiRBCQ@mail.gmail.com

Fabian Greffrath 11-10-2011 07:28 AM

The mingw* mess in Debian
 
Am 09.11.2011 17:04, schrieb Pau Garcia i Quiles:

Yes, that would be my advice. Unfortunately mingw32 is now too far
behind mingw-w64. The fork has become better than the original
project.


I still love it for the MSYS bundle, though.


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 4EBB8B45.1070803@greffrath.com">http://lists.debian.org/4EBB8B45.1070803@greffrath.com

Pau Garcia i Quiles 11-10-2011 08:01 AM

The mingw* mess in Debian
 
On Thu, Nov 10, 2011 at 9:28 AM, Fabian Greffrath <fabian@greffrath.com> wrote:
> Am 09.11.2011 17:04, schrieb Pau Garcia i Quiles:
>>
>> Yes, that would be my advice. Unfortunately mingw32 is now too far
>> behind mingw-w64. The fork has become better than the original
>> project.
>
> I still love it for the MSYS bundle, though.

You can use MSYS with mingw-w64, nuwen, tdm, or any other flavor of MinGW.

For instance:

http://sourceforge.net/apps/trac/mingw-w64/wiki/MSYS

--
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: CAKcBoktznNWcvCYiAcz+QyNrc+a4_wFYuO_crabFD__0HzBuj Q@mail.gmail.com">http://lists.debian.org/CAKcBoktznNWcvCYiAcz+QyNrc+a4_wFYuO_crabFD__0HzBuj Q@mail.gmail.com

Stephen Kitt 11-10-2011 06:16 PM

The mingw* mess in Debian
 
Hi Fabian (and all the other participants in this thread),

On Wed, 09 Nov 2011 13:33:14 +0100, Fabian Greffrath <fabian@greffrath.com>
wrote:
> Is there a principle behind all this or where can I help to clean this
> up? ;)

The history has been explained by others. I've been working for a while on
dropping at least gcc-mingw32; see #644769 which tracks the various packages
build-depending on gcc-mingw32 and/or mingw32. There are only three packages
left now; see #623400, #623402 and #623526. Patches are available for all the
bugs so NMUs should be straightforward if they're deemed necessary - I could
do the NMUs but I'd need a sponsor!

On Thu, 10 Nov 2011 14:13:12 +0100, Fabian Greffrath <fabian@greffrath.com>
wrote:
> Furthermore, the gcc-mingw-w64 package, although misleadingly labeled
> w64, is able to produce object code targeted at both the 32-bit and
> 64-bit Windows platform. I'd thus suggest to split the package into
> one component for each platform to avoid confusion and place
> appropriate Replaces and Provides against the mingw32 package family.

As far as the naming is concerned, see #622276 for details. I've thought
about splitting the packages up, with separate 32- and 64-bit targets, but
I'm not sure whether replacing and providing the mingw32 packages would be
correct, since mingw-w64 isn't a drop-in replacement (the triplets are
different). If that's not a problem then why not! The names for the 32-bit
packages would probably be quite weird though since the upstream name is
mingw-w64 (and I'd rather keep that in the package names...).

Regards,

Stephen


All times are GMT. The time now is 09:30 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.