blob: 74b4d270e2d9f050200380ecc5baa101029eed61 [file] [log] [blame]
Fumitoshi Ukaic54e0252015-07-08 12:10:40 +09001# TODO(c): fix test6 - \t$${empty} should be empty.
Shinichiro Hamaji2ffad632015-04-15 18:35:44 +09002MAKEVER:=$(shell make --version | ruby -n0e 'puts $$_[/Make (\d)/,1]')
3ifeq ($(MAKEVER),4)
4AT=@
5endif
6
Shinichiro Hamaji77353192015-04-13 16:04:15 +09007# http://www.gnu.org/software/make/manual/make.html#Splitting-Recipe-Lines
Shinichiro Hamaji77353192015-04-13 16:04:15 +09008test1:
Shinichiro Hamaji2ffad632015-04-15 18:35:44 +09009 $(AT) echo no\
Shinichiro Hamaji77353192015-04-13 16:04:15 +090010space
Shinichiro Hamaji2ffad632015-04-15 18:35:44 +090011 $(AT) # echo no\
12 # space
13 $(AT) echo one \
Shinichiro Hamaji77353192015-04-13 16:04:15 +090014 space
Shinichiro Hamaji2ffad632015-04-15 18:35:44 +090015 $(AT) echo one\
Shinichiro Hamaji77353192015-04-13 16:04:15 +090016 space
17
18test2:
Shinichiro Hamaji2ffad632015-04-15 18:35:44 +090019 $(AT) for d in foo bar; do \
Shinichiro Hamaji77353192015-04-13 16:04:15 +090020 echo $$d ; done
21
22define cmd3
23echo foo
24echo bar
25endef
26
27test3:
28 $(cmd3)
29
30define cmd4
31echo foo ; \
32echo bar
33endef
34
35test4:
36 $(cmd4)
37
38test5:
Shinichiro Hamaji2ffad632015-04-15 18:35:44 +090039 $(AT) echo foo \
Shinichiro Hamaji77353192015-04-13 16:04:15 +090040 $$empty bar
41
Fumitoshi Ukai95ff7602015-07-07 16:28:10 +090042test6:
43 echo foo\
44 $${empty}bar
Shinichiro Hamaji77353192015-04-13 16:04:15 +090045
Shinichiro Hamaji212abfb2015-04-29 03:02:59 +090046define cmd7
47@echo first
48@echo second
49endef
50
51test7:
52 $(cmd7) \
53 third
54