Hello Brendon, * Brendon Costa wrote on Mon, Apr 23, 2007 at 03:34:21AM CEST: [...] > $buildir/patched/gcc-4.0.1/Makefile > $buildir/patched/doxygen-1.5.1/Makefile > > When i do a make distclean i want to perform the distclean as normal > for all directories EXCEPT when descending into $builddir/patched > > When distclean is recursively invoked in the patched subdir, i want to > perform a rm -r gcc-4.0.1 doxygen-1.5.1
Then, with current Automake, you cannot put these dirs in SUBDIRS nor DIST_SUBDIRS. So I guess you need to write proxy *-local rules for all the operations you want to support: <http://sources.redhat.com/automake/automake.html#Third_002dParty-Makefiles> For example: all-local: cd gcc-4.0.1 && $(MAKE) all I suppose you could also build a construct similar to the $(RECURSIVE_TARGETS) rule in automake/lib/am/subdirs.am and fill MY_RECURSIVE_TARGETS with all but distclean (untested). Maybe a much easier solution is to patch the gcc-4.0.1/Makefile to let distclean be a no-op, then avoid all the manual overriding above, put gcc-4.0.1 in SUBDIRS, and let distclean-local do the cleanup. In that case, you cannot use parallel `make -j distclean', however. I suppose that's a minor inconvenience only. Hope that helps. Cheers, Ralf