SyntaxHighlighter.brushes.Makefile = function()
{
	var keywords =
	    'define do done else endef endif for ifdef ifeq ifndef ifned in include';
	var funcs = 
	    'addprefix addsuffix basename dir error filter filter-out findstring ' +
	    'firstword foreach if join notdir origin patsubst shell sort strip ' +
	    'subst suffix warning wildcard word wordlist words';
	
	this.regexList = [
		{ regex: SyntaxHighlighter.regexLib.singleLinePerlComments,	css: 'comments' },  // one line comments
		{ regex: /^(\.?\w+)(\s*\.?\w+)*:(\s*\.?\w+)*$/gm,           css: 'functions' }, // targets
		{ regex: /\$\(\w+\)/g,                                      css: 'variable' },  // $(var)
		{ regex: /\${\w+}/g,                                        css: 'variable' },  // ${var}
		{ regex: /\$[A-Za-z0-9@%?^+*]/g,                            css: 'variable' },  // $A, $x, $0, $@ etc.
		{ regex: /\$&lt;/g,                                         css: 'variable' },  // $<
		{ regex: /@\w+/g,                                           css: 'string' },    // @command
		{ regex: new RegExp(this.getKeywords(keywords), 'gm'),      css: 'keyword' },   // keyword
		{ regex: new RegExp(this.getKeywords(funcs), 'gm'),         css: 'functions' }, // functions
		];
}

SyntaxHighlighter.brushes.Makefile.prototype = new SyntaxHighlighter.Highlighter();
SyntaxHighlighter.brushes.Makefile.aliases = ['makefile', 'Makefile', 'make', 'Make'];

