A Solaris 8 make bug
; cat Makefile foo : /tmp/bar touch foo ; mkdir /tmp/bar ; make touch foo ; make `foo' is up to date. ; touch /tmp/bar/t ; make `foo' is up to date. ; gmake touch foo
As 'make -ndd' shows, for some reason Solaris 8's version of make
decides that directories always have a timestamp of 0. It knows that
they exist, because if you remove /tmp/bar it complains about
it. This behavior is the same for both /usr/ccs/bin/make and
/usr/xpg4/bin/make.
On a quick test, this bug appears to be gone in Solaris 9. There's
a Solaris 8 make patch not applied to our systems, but the README
doesn't mention anything like this bug.
(Depending on a directory is the kind of thing you do if you're building something from a bunch of files dropped into a directory, and you need to do something every time a file is added or removed.)
I note in passing that make problems that cause things to not get
rebuilt are much more annoying than make problems that cause things
to get rebuilt all the time.
Comments on this page:
|
|