view docs/GNUmakefile @ 7003:7943298d4ac0

Contrib: proper syntax parsing in vim syntax highlighting. Instead of highlighting directives in arbitrary positions, proper parsing of nginx.conf syntax was implemented, matching what nginx does internally. This allows vim to correctly highlight various complex cases, including: return 301 http://example.com/path#fragment"; and also avoids highlighting of parameters as directives, as in server_name missing.semicolon.example.com index index.php; where "index" is not a directive but a parameter of the "server_name" directive due to missing semicolon. Most important downside of this approach seems to be that there is no easy way to introduce directive-specific parameters. As such, only "listen" directive parameters were preserved.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 22 May 2017 16:34:47 +0300
parents f303f3e43f7b
children 1bc938b270dc
line wrap: on
line source


VER=	$(shell grep 'define NGINX_VERSION' src/core/nginx.h		\
		| sed -e 's/^.*"\(.*\)".*/\1/')
NGINX=	nginx-$(VER)
TEMP=	tmp
XSLS?=	xslscript.pl


all:		changes

changes:	$(TEMP)/$(NGINX)/CHANGES.ru				\
		$(TEMP)/$(NGINX)/CHANGES


$(TEMP)/$(NGINX)/CHANGES.ru:	docs/dtd/changes.dtd			\
				docs/xml/nginx/changes.xml		\
				docs/xml/change_log_conf.xml		\
				docs/xslt/changes.xslt

	mkdir -p $(TEMP)/$(NGINX)

	xmllint --noout --valid docs/xml/nginx/changes.xml
	xsltproc --stringparam lang ru					\
		-o $@ docs/xslt/changes.xslt docs/xml/nginx/changes.xml


$(TEMP)/$(NGINX)/CHANGES:	docs/dtd/changes.dtd			\
				docs/xml/nginx/changes.xml		\
				docs/xml/change_log_conf.xml		\
				docs/xslt/changes.xslt

	mkdir -p $(TEMP)/$(NGINX)

	xmllint --noout --valid docs/xml/nginx/changes.xml
	xsltproc --stringparam lang en					\
		-o $@ docs/xslt/changes.xslt docs/xml/nginx/changes.xml


docs/xslt/changes.xslt:		docs/xsls/changes.xsls

	$(XSLS) -o $@ $<