Subject: Re: Weird "make all" behavior
To: None <>
From: Mike Long <>
List: current-users
Date: 11/06/1997 13:28:14
>Date: Wed,  5 Nov 1997 18:36:32 +0100 (MET)
>From: Matthias Drochner <>
>[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, there is a rule:
>.if !defined(BUILD)
>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
>at all.

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 <>      
"Every normal man must be tempted at times to spit on his hands,
hoist the black flag, and begin slitting throats." -- H.L. Mencken