freeipmi-devel
[Top][All Lists]
Advanced

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

Re: [Freeipmi-devel] The buildsytem problem


From: Albert Chu
Subject: Re: [Freeipmi-devel] The buildsytem problem
Date: Wed, 07 Sep 2011 14:04:24 -0700

Hey Diego,

Thanks for looking into this.  The build system has been an annoyance
for awhile, but I'm struggling with the best way to deal with it.

On Wed, 2011-09-07 at 01:54 -0700, Diego Elio Pettenò wrote:
> As I noted in my previous mail, the current build system is suffering
> from a high level of recursion that makes the build (and the install)
> very slow on modern multi-core systems using parallel make.
> 
> Now, it isn't difficult to make the Automake files non-recursive, and
> that would solve the problem. But there is a matter of choosing how to
> do so, as there are different methods.
> 
> My usual favourite method is to use subdir-objects to make sure that the
> object files are built in the same directory hierarchy as the source
> files, for the sake of order, but then build all the targets (libraries
> and commands) in the top-level directory.
> 
> Considering how many tools freeipmi consists of, this could be a bit
> chaotic.

Given the large number of tools, I'd definitely prefer not to do this.

> The alternative would be to declare the tools in the subdirectories, but
> that makes the Makefile.am syntax a bit more complex (i.e. to build
> bmc-watchdog/bmc-watchdog you'd have something like
> 
> bmc_watchdog_bmc_watchdog_SOURCES =

This would probably be preferred.  But before you go and do anything.
Let me think about this more.

There is still the tiny part of me that thinks, "It's not broke, no need
to change."  When I'm developing the code, it's still nice to be able to
type 'make' in the subdir I'm in, instead of typing make at the
top-level directory.  But at the same time, I realize that I should
probably give up that comfort for the sake of the distro maintainers out
there.

I've contemplated re-orging alot of the code too.  Perhaps something in
between would be good?  Hypothetically re-org to something like:

freeipmi/libraries
freeipmi/tools
freeipmi/man

So the recursion would be 1 level deep?  I sort of fear having some
monster makefile in the top-level directory that includes almost
everything in FreeIPMI.

Al

> Before trying to provide some build system patches I'd like some
> comments on what is preferred to deal with it.
> 
> Thanks,
-- 
Albert Chu
address@hidden
Computer Scientist
High Performance Systems Division
Lawrence Livermore National Laboratory





reply via email to

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