On Wed, 2006-05-24 at 13:57 +0200, Ralf Wildenhues wrote: > Hi Olly, > > * Olly Betts wrote on Wed, May 24, 2006 at 12:24:53PM CEST: > > I've been looking at the feasibility of converting a project (Xapian) > > using autoconf+automake+libtool to using non-recursive makefiles. > > > I'm fairly convinced it'll be an improvement overall, but there are a > > few issues I've noticed so far: > > > > * Generally, it would be useful for the manual to go into a bit more > > detail about how to approach all this. > > Agreed. I'm sure Alexandre will gladly accept contributions to > improvement to the manual. :-) I don't think it's worth it, because I think this concept is a) Trivial to implement b) IMNSHO, the approach has had way too much attention, because - Non-recursive makefiles are suitable for projects of mediocre complexity. For complex projects the price of flat Makefile is high and often doesn't pay off. - subdir makefile.am-fragments are tedious to maintain in longer terms. In practice, in nontrivial projects, at least I found myself ending up with a mixture of real flat Makefiles (no subdir *.ams) and independent subdirs.
> > * I'm not sure what to call the Makefile.am snippets in the > > subdirectories. I looked at GraphicsMagick which was suggested to be > > a good example in a previous thread and that calls them "Makefile.am". > > That helps editors know how to syntax highlight, but it feels odd to > > me and I wonder if it might confuse people to see "Makefile.am" > > without "Makefile.in", especially if there's an unrelated static > > "Makefile". > > Probably, I've wondered about this before. You could call it sub.am > or partial.am or similar. But I'm bad at naming, so I'd rather have > someone suggest something better. Wrt editor highlighting: it looks > like Emacs sets type to Makefile for *.am. For Vim, let's submit a > patch after we've agreed on a good set of names (it sets *.am to > file type Applix ELF if not [mM]akefile.am currently). I'd recommend using files ending with "*.am", but would not use Makefile.am. Ralf