This is the mail archive of the automake@gnu.org mailing list for the automake project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Subdirectory problem


On Sat, Sep 21, 2002 at 06:36:10PM -0400, Peter Gavin wrote:
> Hi,
> 
> I decided to switch a project I'm working on to use a single top level Makefile, instead of using recursive make. One thing I noticed was that if you have this in your Makefile.am:
> 
> bin_PROGRAMS = a/a
> a_a_SOURCES = a/a.c
> 
> Then a.o gets built in $(top_builddir), not $(top_builddir)/a as I would have expected, and as it would be using recursive make.  Is this a bug, or am I misunderstanding something?
> 
> Peter Gavin
> 
> 

Oh, btw, I'm using automake-1.6.3.

And one other problem... My project has a library and an executable that links to that library. So, e.g. my project's Makefile.am is something like this:

lib_LTLIBRARIES = liba/liba.la
liba_liba_la_SOURCES = liba/liba.c

bin_PROGRAMS = a/a
a_a_SOURCES = a
a_a_LDADD = $(top_builddir)/liba/liba.la

So, liba/liba.c and a/a.c get compiled to liba.o and a.o respectively. liba.la gets created as liba/liba.la, and the real .so and .a files are put in liba/.libs, as expected.
But, make distclean fails to remove liba/.libs or any of the files within, apparently because make distclean does rm -f liba/liba.la instead of using libtool to remove it.

Pete




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]