Following my proposal for target architecture deprecations in 4.3 <http://gcc.gnu.org/ml/gcc/2008-01/msg00335.html>, I now propose the following list of individual targets to deprecate, based on the same methodology previously described. The patch to remove c4x and deprecate the previously discussed target architectures crx, iq2000, mt, stormy16 will be submitted shortly; the patch for the remaining deprecations (only touching config.gcc and the release notes) will be submitted later after any discussion.
* c4x to be removed before 4.3, as previously mentioned. * Stray ns32k stanzas left in config.gcc after config/ns32k was removed to be removed. Likewise, stray h8300-*-rtemscoff* and sh-*-rtemscoff* stanzas since *-*-rtemscoff* is marked as unsupported earlier in the file. The following to be deprecated in 4.3 and removed in 4.4 (some time after 4.3.0 is released) in the absence of activity to revive them (which means at least testing from time to time and reporting they work or sending and chasing up patches to fix them): * crx, iq2000, mt, stormy16 (all configurations), as previously mentioned. * strongarm*-*-*, ep9312*-*-*, xscale*-*-* (the alternative CPU names in target triplets for certain ARM targets). There has been no activity recently using these aliases, and such aliases acted on by config.gcc are more problematic than those substituted by config.sub (for example, testcases need to include them in their target triplet lists). If someone wishes to revive these targets, I think they should move to them being aliases processed by config.sub, with config.gcc checking the noncanonical name and selecting --with-cpu etc. options on that basis. * parisc*-*-*, alias for hppa*-*-*. Also apparently an unused alias handled by config.gcc that should move to config.sub if desired. * m680[012]0-*-* aliases for m68k-*-*. I see no activity using these aliases and they appear fully equivalent to --with-cpu options that already exist; anyone wishing the continue to use them can move them to config.sub and make config.gcc treat them as --with-cpu based on the noncanonical name. * *-*-beos* * *-*-kaos* * *-*-linux*aout* * *-*-linux*libc1* * *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, as proposed by Eric Botcazou. * *-*-sysv* * *-*-windiss* * alpha*-*-unicosmk* * hppa1.1-*-pro* * hppa1.1-*-osf* * hppa1.1-*-bsd* * i[34567]86-sequent-ptx4* * i[34567]86-*-nto-qnx* * i[34567]86-*-sco3.2v5* * i[34567]86-*-uwin* * powerpc-*-chorusos* * vax-*-bsd* * vax-*-sysv* * vax-*-ultrix* There are many more targets I haven't listed, with a lack of test results and varying amounts of evidence of use or testing of patches. OSes needing more coverage in posted results include GNU HURD, uClinux, OpenBSD, NetBSD (most platforms), *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu (BSD kernel with GNU libc), RTEMS, VxWorks, VMS, DJGPP, Interix, WinCE, NetWare, LynxOS and s390x-ibm-tpf*; some people may wish to propose deprecations of some of these if they feel they are no longer being used with GCC. There is good coverage for bare-metal ELF targets, but none for bare-metal a.out and COFF targets (perhaps we should consider deprecating all of those, on the presumption that bare-metal use has moved to ELF and objcopy is likely to be used in any case to produce a raw binary image; -pe targets are not being tested either); and good coverage for GNU/Linux on many platforms. Darwin and Solaris are being tested on relevant platforms; HP-UX is only being tested on hppa, not IA64. One question of interest is whether some targets supporting both GNU and non-GNU assembler can have use of non-GNU assembler deprecated. If this could be done for alpha*-dec-osf[45]*, we could remove mips-tdump and mips-tfile. -- Joseph S. Myers [EMAIL PROTECTED]