GCC4 status.
Charles Wilson
cygwin@cwilson.fastmail.fm
Tue Feb 24 14:29:00 GMT 2009
Dave Korn wrote:
> Well, I'm as allergic as cgf seems to be to the idea of having
> duplicated-and-potentially-inconsistent sets of the same files around the
> place,
D'oh. I was forgetting that the cross compiler would be a cygwin app.
For some reason I was thinking that it wouldn't be able to understand
symlinks, so it needed actual files (copies) for its "relocated" w32api
and mingw-runtime headers/libs. Then again, the native cygwin compiler
is obviously a cygwin app, so it's just a reasonable to put the "real"
files in /usr/i686-pc-mingw32 and, as cgf mentioned, populate
/usr/[include|lib]/[w32api] with symlinks.
For mingw-runtime, the only reason not to completely relocate /ITS/
headers, libs, and objects (but not mingwm10.dll and docs) is backwards
compatibility with existing -mno-cygwin-capable compilers, or if Dave
doesn't want to respin gcc-3.4.4-999 to look in the new location. The
new cygwin-only gcc shouldn't care about mingw-runtime at all.
To close out the "relocate vs. copy vs. symlink" subthread: I was also
thinking of the "two copies" problem from the w32api-maintainer's
perspective. I don't consider the following:
$ configure --prefix=/usr/i686-pc-mingw32 \
--includedir=${prefix}/include/w32api \
--libdir=${prefix}/lib/w32api
$ make && make install DESTDIR=/tmp/foo
...
$ configure --prefix=/usr \
--includedir=${prefix}/include/w32api \
--libdir=${prefix}/lib/w32api
$ make && make install DESTDIR=/tmp/foo
...
$ make-pkg w32api /tmp/foo/
or
$ make-pkg w32api /tmp/foo/usr
$ make-pkg mingw-cross-w32api /tmp/foo/i686-pc-mingw32
to be very prone to inconsistency. Heck, the pkg-build script could
even include a giant "diff -urN" sanity check.
However, if end-users are in the habit of editing stuff in
/usr/include/w32api/ in-place, or (in the separate packages case) don't
upgrade both related packages together for whatever reason, then...yeah,
ok, things could get messed up.
> but as the downthread consensus seems to be settling on, we can
> rearrange things to have a proper $prefix/$target dir and build a proper one.
> (More to come in follow-on responses.)
Hmm. Maybe the "final" gcc-3.4.4-999 should be gcc-3.4.4-990. Just in
case there are unanticipated wrinkles. <g>
--
Chuck
More information about the Cygwin-apps
mailing list