This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ITP] mingw-w64


On 6/28/2010 14:53, Charles Wilson wrote:
On 6/27/2010 8:32 PM, JonY wrote:
On 6/26/2010 19:59, JonY wrote:
Hello,
mingw-w64 (mingw-w64.sourceforge.net) is a toolchain to target 64bit
windows. It is setup as a cygwin hosted cross compiler. Currently it is
split into 4 packages: headers, crt, binutils and gcc. The latter 2 is
from FSF.

Does this version support multilib? that is, it's a cygwin hosted compiler targeting only -m64, or also -m32? If the latter, then...well, it's just good to know.


Currently, its not setup to be multilib, but it is possible if you want. I fixed up the gcc install process to put target dlls in toolexeclibdir, libgcc_s*.dll still clash though, if installed without manual intervention.


GCC 4.6 (trunk) was chosen to avoid the ABI change from 4.5.0 biting
users. LTO is also enabled.

I would admit packaging could be a bit better, I'm open to suggestions
for improvement.

mingw-w64 headers:
<https://sourceforge.net/projects/mingw-w64/files/Cygwin%20Snapshots/dist/w64-headers/w64-headers-20100625-1.tar.bz2>

I know headers are, by definition, source, but I'm not sure if setup.exe's tiny little brain can grok a package like this, without a corresponding source. Should its setup.hint have an "external-source: ???" record?


OK, I'll try to do that.


I'm pretty sure all of the w64-gcc-??? language binary packages should
have one, specifying w64-gcc as their source provider.  And w64-gcc-rt
is probably misnamed.  If it contains the DLLs (like libgcc*.dll or
whatever it is named, plus the corresponding DLLs for g++&  fortran),
they should be split up into separate "libfoo" packages. This makes
representing dependency information for apps compiled using this
compiler more granular. E.g.

Consider "regular" cygwin gcc(4)'s runtime library packages:
	libgcc1
	libstdc++6
	libgfortran3

If you *really* want to prefix everything with w64 to indicate which
"compiler family" they belong to, then something like
	w64-mingw64-libgcc1
	w64-mingw64-libstdc++6
	w64-mingw64-libgfortran3
or similar would be good.  If the compiler is multilib (e.g. supports
also -m32), then the 32bit runtime libs should have their OWN separate
packages, perhaps
         w64-mingw32-libgcc1
         w64-mingw32-libstdc++6
         w64-mingw32-libgfortran3



Ok, I'll split the DLLs.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]