automake
[Top][All Lists]
Advanced

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

Re: Changing library does *not* always cause executable to beremade with


From: zaufi
Subject: Re: Changing library does *not* always cause executable to beremade with "make"!?!?..
Date: Wed, 7 May 2003 16:39:50 +0400
User-agent: KMail/1.5.9

On Wednesday 07 May 2003 13:46, Guido Draheim wrote:
> zaufi schrieb:
>
> a very sophisticated trick that is, a simple one might be to
> add the rebuild rule on every instance where a library is
> linked that exists in the same configured tree:
>
> name_LDADD = ../other/libthing.la
>
> ../other/libthing.la : ../other/*.c ../other/*.h
>       cd ../other && $(MAKE) `basename address@hidden
>
Hmmm... then you should provide such rules (manualy) in _EVERY_ Makefile.am 
and for _EVERY_ depended library... In my source tree usual length of list of 
depended libs is about 10-15, count of Makefile.am's is about 100...
It will be REAL hard to manualy track dependencies lists :()
Moreover source files for noinst libs not only C/C++, also it can be Lex and 
Yacc sources, sometimes it is `autogen`ed sources...

My solution allow to automate this task by autogenerating this rules.

PS: I'm sorry for my previous example (it was just copy-n-pasted) from
working source tree. Actualy rebuilding rule can be simple as

#
# Rule to make all depended libs
#
$(AM_DEPTGTS):
        $(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F) || exit 1

and I forget to add:

.PHONY: $(AM_DEPTGTS)

to force make always to rebuild depended libs from other dirs.





reply via email to

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