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 Second try

On 8/25/2010 12:19 AM, JonY wrote:
since cygport and gcc has been updated, I can do the packaging without
any local hacks.

Here are the packages.

Overall comments: I see you reverted to bundling the DLLs with the compiler packages (e.g. no separate mingw64-x86_64-libfoo-* tarballs). While it isn't the way I would do it, that's your choice as maintainer (and Yaakov would agree with you, not me).

Many of the setup.hint's specify
requires: mingw64-x86_64-gcc

I *think* that should be
requires: mingw64-x86_64-gcc-core.

You don't actually HAVE a 'mingw64-x86_64-gcc' package, except for the source-only one. And I'm sure you don't mean to require everybody to install the source code...


OK, and rebuilds fine from source.


Rebuilds fine from source (*), but the binary tarball above is not ok. It has the headers in the following directory:
instead of

Now, if I *rebuild*, the binary tarball generated has the headers in the correct spot; I think you just uploaded an old version.


OK, and rebuilds fine from source (*).


OK, and rebuilds fine from source.


OK, and (mostly) rebuilds fine from source. I had to comment out the Ada parts. Even though I had gcc4-ada-4.3.4 installed, rebuilding your package with Ada enabled failed. However, I've *never* tried to build Ada before, so it may be that I'm missing some pre-requisite.

Or does building gcc-4.5.x Ada require a newer native Ada compiler than 4.3.4?

(*) I notice that both the -headers and -runtime cygport included this line as the final command in src_install:


I see the same thing when I tried to use my old mingw*-zlib cygport; I think the problem is in cygport(1), and your cygport(5) is just working around the issue.

To sum up, assuming the Ada thing has a reasonable explanation, and the setup.hints are fixed, I think this is GTG.

If you want to hold off and see what Yaakov does about the issue below, and maybe revise your cygport(5)'s based on a new release of cygport(1), that's up to you.

========== POSSIBLE CYGPORT(1) BUG =============

the config.status for includedir has this:
but other dirs are explicit:

Looking at the configure command (from config.status):


'--srcdir=/usr/src/mingw64/headers/mingw64-x86_64-headers-svn3433-1/src/mingw-w64-headers' '--prefix=/usr/x86_64-w64-mingw32/sys-root/mingw' '--exec-prefix=/usr/x86_64-w64-mingw32/sys-root/mingw' '--bindir=/usr/x86_64-w64-mingw32/sys-root/mingw/bin' '--sbindir=/usr/x86_64-w64-mingw32/sys-root/mingw/sbin' '--libexecdir=/usr/x86_64-w64-mingw32/sys-root/mingw/lib' '--datadir=/usr/x86_64-w64-mingw32/sys-root/mingw/share' '--localstatedir=/usr/x86_64-w64-mingw32/sys-root/mingw/var' '--sysconfdir=/usr/x86_64-w64-mingw32/sys-root/mingw/etc' '--datarootdir=/usr/x86_64-w64-mingw32/sys-root/mingw/share' '--docdir=/usr/x86_64-w64-mingw32/sys-root/mingw/share/doc/mingw64-x86_64-headers' '-C' '--build=i686-pc-cygwin' '--host=x86_64-w64-mingw32' '--target=x86_64-w64-mingw32' '--enable-sdk=all' 'build_alias=i686-pc-cygwin' 'host_alias=x86_64-w64-mingw32' 'target_alias=x86_64-w64-mingw32' $ac_configure_extra_args --no-create --no-recursion

I see that --includedir is missing. I think that is an oversight in autotools.cygclass, and --includedir should be one of the elements specified in confargs:

confargs="--prefix=${prefix} --exec-prefix=${prefix} --bindir=${prefix}/bin \
--sbindir=${prefix}/sbin --libexecdir=${prefix}/lib \
--datadir=${prefix}/share --localstatedir=${prefix%/usr}/var \

I'm not real sure about the ${prefix%/...} manipulation, either, especially for cross. (The effect of this manipulation for a cross for $host=mingw is not apparent, since $prefix doesn't actually end in /usr in that case). But...the current code seems to be incorrect, IMO.

As an aside, I happened to notice there is a bug in cyginstall() when USE_DESTDIR=0, inherit cross, and $host is mingw: localstatedir (/var) and sysconfdir (/etc) aren't handled correctly. But that has little to do with JonY's mingw-w64 ITP.


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