Hello,

there seems to be a problem with the management of new ports.

- Documentation is inappropriate. There is a picky checklist to follow, but
it does not cover the interesting things, that is the list of de-facto
technical standards that we expect new ports to follow (with respect to
incomplete transition). For instance, most maintainers have expressed
negative feelings toward integrating new ports using cc0, or with
define_peephole, or with ASM prologues/epilogues. I have proposed a patch in
the past to document this and it has been rejected on the basis that there
is no official statement on this. I think that the SC should take a position
on how to resolve this issue (see below for my suggestion), otherwise we are
going to really annoy people.

- At this point, there are at least three pending new ports, one of which
have not been reviewed for 9 months already. The only comments they have
received are the usual generic comments like "document every function and
arguments", or "you need a copyright assignments and you should volunteer to
maintain this". Once these nitpicks are done, the patch goes unreviewed
forever. I believe we are losing valuable contributions with this behaviour.
The only new port that went in is Blackfin, because it was contributed by a
GWP which was allowed to commit it without waiting for the review.

- I read several times messages by users which believe that GCC is changing
trend, going towards supporting only a handful of very common systems,
instead of being a generic compiler open to every small platform the open
source community needs to support. I do not believe this is the official
mission statement of GCC, but the fact that some users *start* to believe
this should make the SC think that maybe we need to be more open towards new
ports.

I'm kindly asking the SC:

1) An official statement about whether GCC is going to still accept every
new port which is technically fit and actively maintained, or is now going
to restrict the number of targets to the few most important systems for
maintenance reasons.

2) An official up-to-date list of technical requirements for a new port to
be accepted.

3) Some sort of formal procedure which gives some basic guarantees that new
ports are going to be reviewed and eventually accepted. For instance, one
solution could be auto-approval for new ports which follow the new technical
list and with active maintainers, if the patch went unreviewed for some
months.

I think it could be a good idea to appoint a new maintainer in charge for
new ports, at least to do the leg-work (checklist validation of the port)
and to provide some official feedback to the contributors.

Thanks.
-- 
Giovanni Bajo

Reply via email to