blob: 8c9a2a7ce85555072d8bf6d7f7ac2bc63bcde246 [file] [log] [blame]
Fumitoshi Ukaia9e51362015-04-17 10:26:00 +09001bar := FAIL
Fumitoshi Ukaid8cec172015-04-28 00:08:09 +09002pf := prog: baz
3$(pf) := PASS
Fumitoshi Ukaifa5e9222015-04-17 11:45:20 +09004
5moge := PASS
6hoge := $$(moge)
7
Fumitoshi Ukaid8cec172015-04-28 00:08:09 +09008a := FAIL
9b := c
10c := PASS
11
12d := FAIL
13e := $$f
14f := PASS
15
16empty:=#
17g := FAIL
18h := $(empty) PASS
19
Fumitoshi Ukaia9e51362015-04-17 10:26:00 +090020define evaltest
21 $(eval foo := PASS)
22 $(eval bar := $$(foo))
23 echo $(bar)
Fumitoshi Ukaid8cec172015-04-28 00:08:09 +090024 $(eval prog: baz := FAIL)
25 echo $($(pf))
Fumitoshi Ukaifa5e9222015-04-17 11:45:20 +090026 $(eval fuga := $(hoge))
27 echo $(fuga)
Fumitoshi Ukaid8cec172015-04-28 00:08:09 +090028 $(eval a := $($(b)))
29 echo $(a)
30 $(eval d := $(e))
31 echo $(d)
32 $(eval g := $(h))
33 echo _$(g)_
Fumitoshi Ukaia9e51362015-04-17 10:26:00 +090034endef
35
Fumitoshi Ukai769157a2015-06-02 15:18:53 +090036a.x=X
37y:=Y
38$(foreach tag,x,$(eval a.$(tag)+=$(y)))
39y:=Z
40$(foreach tag,x,$(eval a.$(tag)+=$(y)))
41$(info $(a.x))
42
Fumitoshi Ukaia9e51362015-04-17 10:26:00 +090043test:
44 $(call evaltest)