Subject: Re: Weird "make all" behavior
To: None <firstname.lastname@example.org>
From: Mike Long <email@example.com>
Date: 11/06/1997 13:28:14
>Date: Wed, 5 Nov 1997 18:36:32 +0100 (MET)
>From: Matthias Drochner <firstname.lastname@example.org>
>[make skips "all" in eg "make clean all install"]
>OK. now I see it too.
>(If I "make" in a leaf, not the whole tree.)
>This behaviour disappears when I define
>"BUILD" in the environment.
>Looking at bsd.prog.mk, there is a rule:
>With an "install" target, the installed program becomes
>dependant on the to-be-built one, and "make" decides
>to do nothing here.
>I don't yet understand how this is supposed to work
Perhaps we should just deprecate BUILD and the idea that the install
target never builds anything unless BUILD is defined. In addition to
the problem described above, 'make install BUILD=' fails in every case
where a related set of programs link with a private library. To see
an example, try:
# cd backgammon; make clean && make install BUILD=
The build will fail because libcommon is never built.
Mike Long <email@example.com> http://www.shore.net/~mikel
"Every normal man must be tempted at times to spit on his hands,
hoist the black flag, and begin slitting throats." -- H.L. Mencken