Mailing List Archive

Queries about perl `make' targets.
I was putzing around with perl5.002b1p6, and noticed a couple of
unusual things happening with the `make' targets, and I was curious
if what I was seeing is desired behavior.

First, I patched perl5.002b1 to p6, but forgot to clean the tree
first. When I did a "make clean", I got a rebuild of the Makefile,
followed by a makedepend, all just to clean up the tree. It makes
more sense to me that anyone doing a "make clean" with an outdated
Makefile in fact wants to use the outdated Makefile's target, since
it's unlikely the to-be-cleaned stuff was generated with a newer
Makefile.

Second, I did a "make test", after a "make". The make proceeded to
retraverse all of the extension subdirectories, twice for each
extension:

AutoSplitting perl library

Making DynaLoader (static)
make[1]: Entering directory `.../perl5.002b1p6/ext/DynaLoader'
make[1]: Leaving directory `.../perl5.002b1p6/ext/DynaLoader'
make[1]: Entering directory `.../perl5.002b1p6/ext/DynaLoader'
make[1]: Leaving directory `.../perl5.002b1p6/ext/DynaLoader'
...

Is `make' supposed to be going into each extension twice? And more
importantly, how hard would it be to get `make' to skip the extension
builds when they're up to date? Depending on the speed of the machine
(and the number of extensions :-), this can save a lot of time. (And
with the reduced noise, it's easier to see if something has broken.)


William