[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Overwriting targets.
From: |
Ralf Wildenhues |
Subject: |
Re: Overwriting targets. |
Date: |
Mon, 23 Apr 2007 07:56:15 +0200 |
User-agent: |
Mutt/1.5.15 (2007-04-13) |
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