Mercurial > hg > nginx-site
view GNUmakefile @ 27:1201fabeccf7
Added .SECONDARY to preserve intermediate files.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Thu, 29 Sep 2011 12:46:58 +0000 |
parents | 9d3403f5204d |
children | 02fc5e96a305 |
line wrap: on
line source
OUT = libxslt TEXT = text ZIP = gzip NGINX_ORG = /data/www/nginx.org CP = /data/sites/java/xsls/\*:$(HOME)/java/xsls/\* RSYNC = rsync -v -rc --exclude=.svn define XSLScript java -cp $(CP) \ com.pault.StyleSheet \ -x com.pault.XX -y com.pault.XX \ $(1) xsls/dump.xsls \ | sed 's/ *$$//;/^ *$$/N;/\n *$$/D' > $(2) if [ ! -s $(2) ]; then rm $(2); fi; test -s $(2) endef define XSLT xsltproc -o $3 \ $(shell echo $4 \ | sed -e "s/\([^= ]*\)=\([^= ]*\)/--param \1 \"'\2'\"/g") \ $1 $2 endef define JPEGNORM jpegtopnm $1 \ | pamscale -width=150 \ | pnmtojpeg -quality=95 -optimize -dct=float \ > $2 endef all: news arx 404 en ja he ru tr news: $(OUT)/index.html $(OUT)/index.rss arx: $(OUT)/2010.html $(OUT)/2009.html 404: $(OUT)/404.html ARTICLE_XSLT = xml/menu.xml \ xml/versions.xml \ xslt/article.xslt \ dtd/article.dtd \ dtd/content.dtd \ MODULE_XSLT = xml/menu.xml \ xml/versions.xml \ xslt/module.xslt \ xslt/directive.xslt \ dtd/module.dtd \ dtd/content.dtd \ include xml/en/GNUmakefile include xml/ja/GNUmakefile include xml/he/GNUmakefile include xml/ru/GNUmakefile include xml/tr/GNUmakefile $(OUT)/index.html: xml/index.xml \ xml/menu.xml \ xslt/news.xslt \ dtd/news.dtd \ dtd/content.dtd $(call XSLT, xslt/news.xslt, $<, $@) $(OUT)/index.rss: xml/index.xml \ xslt/rss.xslt \ dtd/article.dtd \ dtd/content.dtd $(call XSLT, xslt/rss.xslt, $<, $@) $(OUT)/2010.html: xml/index.xml \ xml/menu.xml \ xslt/news.xslt \ dtd/news.dtd \ dtd/content.dtd $(call XSLT, xslt/news.xslt, $<, $@, YEAR=2010) $(OUT)/2009.html: xml/index.xml \ xml/menu.xml \ xslt/news.xslt \ dtd/news.dtd \ dtd/content.dtd $(call XSLT, xslt/news.xslt, $<, $@, YEAR=2009) $(OUT)/404.html: xml/404.xml \ xml/menu.xml \ xslt/error.xslt \ dtd/article.dtd \ dtd/content.dtd $(call XSLT, xslt/error.xslt, $<, $@) .SECONDARY: $(OUT)/%_module.html: xml/%_module.xml \ $(MODULE_XSLT) $(call XSLT, xslt/module.xslt, $<, $@) $(OUT)/%.html: xml/%.xml \ $(ARTICLE_XSLT) $(call XSLT, xslt/article.xslt, $<, $@) xslt/news.xslt: xsls/news.xsls \ xslt/dirname.xslt \ xslt/link.xslt \ xslt/style.xslt \ xslt/body.xslt \ xslt/menu.xslt \ xslt/content.xslt xslt/article.xslt: xsls/article.xsls \ xslt/dirname.xslt \ xslt/link.xslt \ xslt/style.xslt \ xslt/body.xslt \ xslt/menu.xslt \ xslt/donate.xslt \ xslt/content.xslt \ xslt/versions.xslt xslt/module.xslt: xsls/module.xsls \ xslt/dirname.xslt \ xslt/link.xslt \ xslt/style.xslt \ xslt/body.xslt \ xslt/menu.xslt \ xslt/donate.xslt \ xslt/content.xslt \ xslt/versions.xslt xslt/download.xslt: xsls/download.xsls \ xslt/dirname.xslt \ xslt/link.xslt \ xslt/style.xslt \ xslt/body.xslt \ xslt/menu.xslt \ xslt/content.xslt xslt/security.xslt: xsls/security.xsls \ xslt/dirname.xslt \ xslt/link.xslt \ xslt/style.xslt \ xslt/body.xslt \ xslt/menu.xslt \ xslt/content.xslt xslt/books.xslt: xsls/books.xsls \ xslt/dirname.xslt \ xslt/link.xslt \ xslt/style.xslt \ xslt/body.xslt \ xslt/menu.xslt \ xslt/content.xslt xslt/%.xslt: xsls/%.xsls \ xsls/dump.xsls $(call XSLScript, $<, $@) images: \ binary/books/nginx_http_server_jp.jpg \ binary/books/nginx_1_web_server.jpg \ binary/books/nginx_http_server.jpg \ binary/books/nginx_in_practice.jpg binary/books/nginx_http_server_jp.jpg: sources/1106030720.jpg mkdir -p $(dir $@) $(call JPEGNORM, $<, $@) binary/books/nginx_1_web_server.jpg: \ sources/Nginx\ 1\ Web\ Server\ Implementation\ Cookbook.jpg mkdir -p $(dir $@) $(call JPEGNORM, "$<", $@) binary/books/nginx_http_server.jpg: sources/0868OS_MockupCover.jpg mkdir -p $(dir $@) $(call JPEGNORM, $<, $@) binary/books/nginx_in_practice.jpg: sources/20807089-1_o.jpg mkdir -p $(dir $@) $(call JPEGNORM, $<, $@) .PHONY: gzip gzip: rsync_gzip $(MAKE) do_gzip rsync_gzip: $(RSYNC) $(OUT)/ $(ZIP)/ $(RSYNC) $(TEXT)/ $(ZIP)/ do_gzip: $(addsuffix .gz, $(wildcard $(ZIP)/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/en/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/en/docs/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/en/docs/http/*.html))\ $(addsuffix .gz, $(wildcard $(ZIP)/ja/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/ja/docs/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/ja/docs/http/*.html))\ $(addsuffix .gz, $(wildcard $(ZIP)/he/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/he/docs/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/he/docs/http/*.html))\ $(addsuffix .gz, $(wildcard $(ZIP)/ru/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/ru/docs/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/tr/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/tr/docs/*.html)) \ $(addsuffix .gz, $(wildcard $(ZIP)/tr/docs/http/*.html))\ $(ZIP)/index.rss.gz \ $(ZIP)/LICENSE.gz \ $(ZIP)/en/CHANGES.gz \ $(addsuffix .gz, $(wildcard $(ZIP)/en/CHANGES-?.?)) \ $(ZIP)/ru/CHANGES.ru.gz \ $(addsuffix .gz, $(wildcard $(ZIP)/ru/CHANGES.ru-?.?)) \ find $(ZIP)/ -type d -name .svn -prune \ -o -type f -not -name '*.gz' -exec test \! -e {}.gz \; -print $(ZIP)/%.gz: $(ZIP)/% rm -f $<.gz ifneq (, $(shell which 7za)) 7za a -tgzip -mx9 -mpass=15 -si -ba -bd $<.gz < $< else gzip -9cn $< > $<.gz endif touch -r $< $<.gz dirs: test -d $(OUT)/en/docs/http || mkdir -p $(OUT)/en/docs/http draft: all $(RSYNC) $(OUT)/ $(NGINX_ORG)/$(OUT)/ copy: $(RSYNC) $(ZIP)/ $(NGINX_ORG)/ $(RSYNC) binary/ $(NGINX_ORG)/ dev: xslt/development.xslt sign dev: NGINX=$(shell xsltproc xslt/development.xslt xml/versions.xml) stable: xslt/stable.xslt sign stable: NGINX=$(shell xsltproc xslt/stable.xslt xml/versions.xml) legacy: xslt/legacy_stable.xslt sign legacy: NGINX=$(shell xsltproc xslt/legacy_stable.xslt xml/versions.xml) any: sign any: NGINX=0.7.69 sign: @echo sign nginx-$(NGINX) gpg -sab binary/download/nginx-$(NGINX).tar.gz gpg -sab binary/download/nginx-$(NGINX).zip TEMP = temp SITE = nginx.org tarball: rm -rf $(TEMP) mkdir -p $(TEMP)/$(SITE) cp -Rp BSDmakefile GNUmakefile TODO \ xml xsls xslt dtd binary \ $(TEMP)/$(SITE) rm -f $(SITE).tar.bz2 tar -c -y -f $(SITE).tar.bz2 \ --directory $(TEMP) \ --exclude .svn \ $(SITE) .DELETE_ON_ERROR: