bug-autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Infinite loop on make dist


From: Stepan Kasal
Subject: Re: Infinite loop on make dist
Date: Thu, 19 Jun 2008 10:15:39 +0200
User-agent: Mutt/1.5.17 (2007-11-01)

Hi Eric,

On Wed, Jun 18, 2008 at 10:05:51PM -0600, Eric Blake wrote:
> Does this gnulib patch fix matters for a VPATH build?

I confirm that your commit to autoconf git does fix the bug, thanks.

> | In connection with this, I'd like to ask why is GNUmakefile
> | distributed?
>
> Because it is useful for more than just the maintainer.  [...]
> [make without ./configure] gives the user a nice informative
> message, rather than a cryptic error.

$ make
make: *** No targets specified and no makefile found.  Stop.

I would hesitate to call that ``a cryptic error.''

If I had to use the word ``cryptic'' in connection with this issue, I
would apply it to the extra rules for make brought by GNUmakefile.

The GNUmakefile presents extra complexity, so there are more
particles to break.

Moreover GNUmakefile is kind of hidden: one can stare to Makefile for
a long time trying to find out the reason for a rebuild until they
remember makefile and GNUmakefile.  This happened to me several
times.  It is probably necessary in development trees, but
distributed tarballs could get out with one make file only.

These are the things which I percept as negatives here.

You have mentioned one positive so far: the improved error message
for make without configure.  IMHO this cannot outweight the negatives
above.  Moreover, that can be implemented without the negatives, by
packing a cut-down version of GNUmakefile to the tarball.  Hey, we
could even enhance Automake to pack such a stub Makefile to each
tarball; and that would even work with all make implementations (no,
I'm not proposing the enhancement).

So I still vote for my proposal to disable maintainer features in
tarball, and I still think that excluding GNUmakefile (and the
included *.mk) from the tarball is the most transparent way to do it.

> | [...]  For the purpose of building and installing Autoconf,
> | Gnu make should be treated as any other make implementation.
>
> Autoconf does not require GNU make to be built [...]

Yes, I understand that.  I meant to say: "GNU make should source the
same makefiles as other make implementations".
Unless there are reasons to break the rule, of course.  ;-)
And I'm not yet convinced that there are such reasons for the case of
the built tarball.

Have a nice day,
        Stepan

PS:
This is similar to the file "bootstrap" or "autogen.sh" often found
in the root of the VCS checkout of a project.  Some people add it to
the tarball, perhaps thinking "we have nothing to hide".
I generally think that these scripts do not belong there.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]