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

Re: automake 1.5



On Mon, Oct 08, 2001 at 04:33:46PM -0400, Steve M. Robbins wrote:
> On Mon, Oct 08, 2001 at 02:31:50PM -0500, Colin Watson wrote:
> > On Mon, Oct 08, 2001 at 11:52:46AM -0400, Steve M. Robbins wrote:
> > > Such rumours are false.  Supposing the maintainer has correctly run
> > > auto* by hand, the resulting sources will build just fine *without*
> > > automake installed.
> > > 
> > > The generated Makefiles will have rules that nominally run "automake".
> > > But they in fact run a little script that will: run automake if present
> > > on the system or, if automake is not present, just touch the "generated"
> > > file(s) (the script will complain, but you can ignore that message).
> > 
> > Rather than relying on that, it's better to make sure that all the
> > timestamps are appropriate so that it won't even try to run automake.
> 
> Err, I was arguing that the absence of automake at build time is
> irrelevant.  Here you've skipped to an entirely different topic: the
> presence of an "incompatible" automake.

I agreed with your original point, but I don't think it's enough for a
completely correct solution for Debian. For our purposes it seems
related that an incompatible automake might be present.

> > Otherwise automake might be run on a buildd that has an incompatible
> > version of automake installed, and using 'Build-Conflicts: automake' to
> > prevent that seems excessive.
> 
> True, though I don't know how you can ensure the timestamps are correctly
> ordered if your .diff.gz contains patches against configure, Makefile.in,
> and the like.  I suppose you can try to "touch" things in debian/rules,
> but I wouldn't want to maintain something like that!  Better to just fix
> the source so that it works with automake 1.5 and be done with it.

If you have to patch the upstream Makefile.am for Debian then you don't
have a choice, as you still have to include that in the .diff.gz. Since
this is sometimes necessary, we should be figuring out a standard way
for people to do it correctly rather than just saying "don't do that
then".

At the moment, touching files in debian/rules is about the only solution
other than running automake in debian/rules. As I said somewhere else in
this thread, I think bug #105750 ("dpkg-source: touch all patched files
to avoid race conditions") would be much more reliable, but nobody's
ever commented on it.

> > Also, if you build without --enable-maintainer-mode, Makefile.in's
> > dependencies will be disabled, so automake will never be run.
> 
> That is only true if the configure.in uses AM_MAINTAINER_MODE which
> isn't too common, although it may be that rather large projects (like
> GNOME?) use it in all their packages.

Is there a downside to using it? I know that various people have
expressed a dislike for it in the past, but don't know the details.

-- 
Colin Watson                                  [cjwatson@flatline.org.uk]



Reply to: