3.9 How make Reads a Makefile
GNU make does its work in two distinct phases. During the first phase
it reads all the make-
files, included makefiles, etc. and internalizes all the variables and
their values, implicit and
--
he verified me:
On Tue, Aug 31, 2010 at 4:36 PM, Paul Smith wrote:
> On Tue, 2010-08-31 at 11:28 +0430, ali hagigat wrote:
>> Secondary Expansion of Explicit Rules
>> .SECONDEXPANSION:
>> foo: foo.1 bar.1 $$< $$^ $$+ # line #1
>> foo: foo.2 bar.2 $$< $$^ $$
Secondary Expansion of Implicit Rules
.SECONDEXPANSION:
/tmp/foo.o:
%.o: $$(addsuffix /%.c,foo bar) foo.h
The prerequisite list after the secondary expansion and directory
prefix reconstruction
will be ‘/tmp/foo/foo.c /tmp/var/bar/foo.c foo.h’.
--
The directory, 'di4', found by directory search algorithm, is not
considered for 'di2/preq2' of the rule, 'all5'. The steps to reproduce
the result has been written as three steps:
1) makefile9:
-
vpath preq1 di4
vpath di2/preq2 di3
all5: preq1
.INTERMEDIATE does not work correctly:
The following makefile is run with:
root> make my.all
Why the file, my.gch is created (it is not removed!) while it is an
intermediate file?
.INTERMEDIATE: my.gch
%.all: %.gch
@echo hh
%.gch:
@echo
@touch $@
___