Joseph S. Myers wrote:
On Mon, 14 Feb 2011, Douglas B Rupp wrote:
Joseph S. Myers wrote:
* Interix (i[34567]86-*-interix3*) (see PR 47096).
I would appreciate it if you could leave Interix. I'll take the responsibility
to get it working.
The deprecation patch has gone in. That means that your patch to get it
working should include the undeprecation patch to config.gcc (as well as
the associated changes to the 4.6 release notes); there's no point
undeprecating before then since the target doesn't actually build at all.
Hopefully the SC can consider you as a potential Interix target maintainer
based on your message. If your patch isn't in by the time 4.6 branches
but is expected soon afterwards we can always leave the target present but
deprecated in trunk when the other deprecated targets are removed.
I'll accept appointment as maintainer, if the SC so decides.
Getting it working means not just making it possible to build a cross
compiler to Interix target but getting it to build cleanly with -Werror:
either making native bootstrap work, or making building a cross compiler
with --enable-werror-always work, starting from a native build of current
trunk as the native compiler used to build the cross compiler.
Thanks for clearing up that procedure. The binutils bits have rotted
badly, so it will take some work to get native bootstrap working again.
I'll try the latter procedure.
There are four different target configuration headers used for Interix
(i386/i386-interix.h i386/i386-interix3.h interix.h interix3.h). Since
there's only one Interix target present in GCC, the abstraction implied by
four headers - some of which override macros defined in each other,
meaning some macro definitions are effectively dead - is rather bogus. I
advise combining these four headers into one so that it is more readily
possible to see what target configuration actually ends up being in effect
for this target.
Agreed. Fyi the subsystem variants supported by MS are 32bit and 64bit
x86 and 64bit ia64. I don't the see much point in putting work into an
ia64 Interix compiler at this time. But maybe two headers for x86: 32
and 64bit, if it makes sense to have them split out.