1 syntax "Makefile" "([Mm]akefile|\.ma?k)$"
2 header "^#!.*/(env +)?[bg]?make( |$)"
3 magic "makefile script"
6 color cyan "\<(ifeq|ifdef|ifneq|ifndef|else|endif)\>"
7 color cyan "^(export|include|override)\>"
8 color brightmagenta "^[^:= ]+:"
9 color brightmagenta "^[^:+ ]+\+"
10 color red "[=,%]" "\+=|\?=|:=|&&|\|\|"
11 color brightblue "\$\((abspath|addprefix|addsuffix|and|basename|call|dir)[[:space:]]"
12 color brightblue "\$\((error|eval|filter|filter-out|findstring|firstword)[[:space:]]"
13 color brightblue "\$\((flavor|foreach|if|info|join|lastword|notdir|or)[[:space:]]"
14 color brightblue "\$\((origin|patsubst|realpath|shell|sort|strip|suffix)[[:space:]]"
15 color brightblue "\$\((value|warning|wildcard|word|wordlist|words)[[:space:]]"
17 color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'"
18 color brightyellow "\$+(\{[^} ]+\}|\([^) ]+\))"
19 color brightyellow "\$[@^<*?%|+]|\$\([@^<*?%+-][DF]\)"
20 color magenta "\$\$|\\.?"
21 color brightblack "(^|[[:space:]])#([^{].*)?$"
22 color brightblack "^ @#.*"
24 # Show trailing whitespace
25 color ,green "[[:space:]]+$"