[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: dummy prerequisites and "make clean"
From: |
Ben Pfaff |
Subject: |
Re: dummy prerequisites and "make clean" |
Date: |
Fri, 27 Nov 2020 18:00:14 -0800 |
On Fri, Nov 20, 2020 at 12:36 AM John Darrington
<john@darrington.wattle.id.au> wrote:
>
> On Thu, Nov 19, 2020 at 10:31:28PM -0800, Ben Pfaff wrote:
> When I type "make clean", the first thing that happens is that gnulib
> gets built. This seems to be caused by commit 49501a8888003350 "Add
> default to generate prerequisistes for any rule", which always build
> libgl, even if the target is "clean".
>> It should only do that if libgl is not up to date.
The "clean" target is actually completely broken. If you run "make clean"
from a fresh worktree, what happens is this:
- libgl gets built
- libgl gets cleaned
- libgl gets built again (!)
And, thus, the "clean" doesn't actually work. It does not clean the build
tree.
> Yes. Before this commit, attempting to run many targets from a clean tarball
> without first running "make" (from memory, I think "make check", "make doc"
> and
> "make install" were just some of those affected), resulted in wierd failures
> after
> about five minutes half way through the process.
That's pretty well-understood behavior that is actually documented in the
Automake manual (under "Built Sources"). If it's annoying, then we can
work on eliminating the use of BUILT_SOURCES. (It would be harder to
fix libgl.)