automake
[Top][All Lists]
Advanced

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

Re: problem with make maintainer-clean while doing static linking


From: Ralf Wildenhues
Subject: Re: problem with make maintainer-clean while doing static linking
Date: Thu, 9 Jul 2009 20:07:08 +0200
User-agent: Mutt/1.5.20 (2009-06-15)

Hi Vincent,

* Vincent Torri wrote on Thu, Jul 09, 2009 at 08:28:50AM CEST:
> We have a library that uses modules. These modules can be shared lib
> or can be statically linked to the library. We use that tree
> structure:
> 
> evas
>   src
>     lib
>   modules
>     loaders
>       png
> 
> the library itself is in evas/src/lib
> the modules (here the png loader) is in evas/src/modules/loaders/png
> We first compile the library, then the modules.

> In evas/src/lib/Makefile.am we have added:
> 
> if EVAS_STATIC_BUILD_PNG
> SUBDIRS += ../modules/loaders/png
[...]
> The problem is that, when doing 'make maintainer-clean', the clean
> is done first in evas/src/lib, hence, with the code in
> evas/src/lib/Makefile.am, in evas/src/modules/loaders/png too.

> 1) Is our use for doing static linking correct ?

Seems ok to me.

BTW, whenever you add @substed@ values to *_LIBADD, automake cannot know
whether these substed values will contain references to other
uninstalled libraries or objects, for which it would be nice to add make
dependencies to, so the library is rebuilt when they are updated.  In
that case, what you can do is fill out the corresponding *_DEPENDENCIES
variable yourself, in that case with all library dependencies of course.

> 2) If yes, what should I do to correct the problem above (more
> precisely, I want 'make distcheck' to succeed, but it's the same
> problem than 'make maintainer-clean')

You can override DIST_SUBDIRS to avoid this.  In your particular case,
you should set it in evas/src/lib/Makefile.am, to the empty value.

Hope that helps.

Cheers,
Ralf




reply via email to

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