[MPlayer-dev-eng] [PATCH] Add fate test

Diego Biurrun diego at biurrun.de
Thu Nov 10 00:00:37 CET 2011


On Wed, Nov 09, 2011 at 07:45:44PM +0100, Reimar Döffinger wrote:
> On Wed, Nov 09, 2011 at 03:27:10PM +0100, Diego Biurrun wrote:
> > On Wed, Nov 09, 2011 at 08:30:13AM +0100, Reimar Döffinger wrote:
> > > I remember you complaining that people don't apply good programming
> > > principles to build systems, so this is a good point at applying the
> > > principle "independent stuff I different files" IMO.
> > 
> > If only it were independent - it is not.  Recursive make is always a bad
> > idea.  I'm under the impression that you have not read the "Recursive
> > Make Considered Harmful" paper yet.  Go right ahead, it's short and
> > sweet:
> > 
> > http://miller.emu.id.au/pmiller/books/rmch/
> 
> That one suggests splitting make files and including them, which is
> exactly what I was arguing for here, so I do not follow your point.

You did not include your subdir Makefile, you called it recursively,
that's a very decisive difference.

My point here is that the stuff is not independent.  You have a dependency
on the mplayer binary in the subdirectory Makefile, but no way to build
that dependency for example.

There's only really two variants of one way to construct Makefiles: as a
single monolithic Makefile (my design) or as snippets that get included
and thus assembled into a monolithic Makefile at runtime (Mans' design).

> (though not putting it into the subdir and/or not calling it Makefile
> would be advisable).
> However it misses things that with including you still end up with a
> single variable name-space, so at least in that aspect you _still_ need
> to know the whole Makefile including everything it includes.

Yes.  This is unavoidable - Make needs to "see the whole picture" in
order to function properly.

> I also slightly disagree with you line number argument: If you're new
> to a build system and need to change something the total number of lines
> matters almost as much as how many actually "do something useful".
> Btw. the median file size of .c files seems to be around 350 lines, so
> even by that measure the Makefile is larger.

I know that it looks daunting due to its length, but once you realize
that length does not equal complexity, it's quite manageable IMO.
It's *much* shorter than its recursive predecessors combined.

> Either way you either make sure I know a way to fix it that you'd accept
> or could you consider doing it yourself?
> I could just go ahead, but I am too lazy to do something and risk you'll
> hate it :-P

I'll look into it.

Diego


More information about the MPlayer-dev-eng mailing list