MAKEFILE: ========= ::= '(' + "makefile" + * + ')' ::= | | | | | | | | | ::= '(' + + + + + + ')' ::= '(' + + + + + + ')' ::= '(' + + + + + ')' ::= '(' + + + + + ')' ::= '(' + + + + + ')' ::= "file" | "makefile-rule" | "is-out-of-date?" ::= "all" | "file-all" | "all-out-of-date?" ::= "md5" | "file-md5" | "fp-changed?" ::= "always" | "file-always" | "phony" | "is-out-of-date!" ::= "once" | "file-once" ::= '(' + + + + + + ')' ::= '(' + + + + + + ')' ::= '(' + + + + + ')' ::= '(' + + + + + ')' ::= '(' + + + + + ')' ::= "common-file" | "common-makefile-rule" | "common-is-out-of-date?" ::= "common-all" | "common-file-all" | "common-all-out-of-date?" ::= "common-md5" | "common-file-md5" | "common-fp-changed?" ::= "common-always" | "common-file-always" ::= "common-once" | "common-file-once" ::= | ::= ::= '(' + + + ')' ::= | ::= ::= '(' + * + ')' ::= | ::= '"' + { + { 'a'-'z''A'-'Z''0'-'9' ... }+ }+ + '"'