This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


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

Re: RFC: Maintainer mode support


>>>>> "Joseph" == Joseph S Myers <jsm28@cam.ac.uk> writes:

Joseph> The GNU Coding Standards are meant to ensure that GNU packages
Joseph> are built and installed in a uniform way.
Joseph> [ ... ]

I agree.  But I think they also need to respect existing practice.
Unfortunately this hasn't always been the case in the past.  I'm very
reluctant to propose automake-inspired changes be fed into the
standards.  In the past that has resulted in random change entering
into already established practice (my particular example is the
install-strip debacle, which is still the cause of way too much
email).

Joseph> They should also document the problems maintainer modes seek
Joseph> to solve (timestamp problems after applying patches? tight
Joseph> version dependencies?).

The impetus for the original maintainer mode was a bunch of bug
reports from people (to Jim Meyering as I recall) who tried to build
in losing environments (typically NFS server time skew) where the
build would try to re-run autoconf.  Usually this failed, since, back
in the day, nobody installed autoconf unless they were maintaining a
package.

It turned out that maintainer mode was also useful in the other common
case of timestamp problems, namely a cvs repository where derived
files were committed.

Not everybody likes maintainer mode.  In fact, some people are
vehemently against it.  There are good reasons on both sides; the
automake mailing list archives have the whole the contentious history.
Requiring it for all GNU programs would be an error, in my estimation.

Joseph> The instructions for GNU maintainers may also need clarifying
Joseph> where they say

Where is this document?  It doesn't seem to be part of standards.texi.


About the standards: gcc doesn't really come that close to following
them.  It is missing `install-strip; it is missing all the (useless)
NORMAL_INSTALL stuff; `uninstall' (which, imnsho, is also useless)
appears to be incomplete (or maybe it is just the java directory :-);
the GNU standards require that `make dist' work; there is no
`installcheck' target.  I'm sure there are more divergences.  Maybe
these divergences aren't important.  I certainly haven't missed them!


I think instead it makes sense to document maintainer mode somewhere
that the person building gcc might actually read (users, in my
experience, don't read the standards).  It could explain under what
situations they might want to use `--enable-maintainer-mode'.

Tom


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