On Mon, Mar 07, 2005 at 02:27:25PM +0100, Nicolas Joly wrote: > > 2. More importantly, I can't build the project any more: make > > immediately dives into testsuite/, files under which require > > libzzz.la, which is going to be built later. If I "make libzzz.la > > all", everything works fine. > > Use `SUBDIRS = . testsuite' in your Makefile.am, this will force the > directory processing order.
An interesting trick, thanks for the suggestion! I quickly tested it yesterday, and it worked. However, today I've tried make -j3, and it failed, since make builds libzzz.la and the test1 in parallel, and building the library takes longer than building the test program. So, what I actually want is that automake generates dependencies for libraries in LDADD. I've tried adding "test1_DEPENDENCIES = $(top_builddir)/libzzz.la" to Makefile.am, but this didn't work (make said "*** No rule to make target `../../libzzz.la', needed by `test1'. Stop."), which is normal, since that makefile doesn't know anything about the library. So, this has to be solved from the top-level makefile. How can I specify e.g. that all targets in testsuite depend on libzzz.la? With kind regards, Baurzhan.