gerrit/Documentation/Makefile
Sasa Zivkov 6f0d90c464 Make sure asciidoc uses unix line endings in generated HTML.
The difference in the size of gerrit-2.4.1.war and gerrit-2.4.2.war is
about 50K. Main reason is that the HTML produced by asciidoc in
2.4.1 contains windows line endings while in 2.4.2 it contains unix line
endings.

Use an explicit asciidoc attribute to make sure the produced HTML will
always contain unix line endings.  This will help in producing build
results that are better comparable by size.

Besides the line endings, there are actually some more differences in
the produced HTML files.  They probably come from usage of different
version of asciidoc for producing 2.4.1 and 2.4.2.  We may want to agree
on, and enforce, using a particular asciidoc version for producing
Gerrit releases.

Change-Id: Iee938d3aeaa266e72b62241778855aaaa3409ef6
2012-06-27 10:19:13 +02:00

85 lines
2.4 KiB
Makefile

# Copyright (C) 2009 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
ASCIIDOC ?= asciidoc
ASCIIDOC_EXTRA ?=
SVN ?= svn
PUB_ROOT ?= https://gerrit-documentation.googlecode.com/svn/Documentation
all: html
clean:
rm -f *.html
rm -rf $(LOCAL_ROOT)
ifeq ($(origin VERSION), undefined)
VERSION := $(shell ./GEN-DOC-VERSION 2>/dev/null)
endif
DOC_HTML := $(patsubst %.txt,%.html,$(wildcard *.txt))
LOCAL_ROOT := .published
COMMIT := $(shell git describe HEAD | sed s/^v//)
PUB_DIR := $(PUB_ROOT)/$(VERSION)
PRIOR = PRIOR
ifeq ($(VERSION),)
REVISION = $(COMMIT)
else
ifeq ($(VERSION),$(COMMIT))
REVISION := $(VERSION)
else
REVISION := $(VERSION) (from v$(COMMIT))
endif
endif
html: $(DOC_HTML)
update: html
ifeq ($(VERSION),)
./GEN-DOC-VERSION
endif
@-rm -rf $(LOCAL_ROOT)
@echo "Checking out current $(VERSION)"
@if ! $(SVN) checkout $(PUB_DIR) $(LOCAL_ROOT) 2>/dev/null ; then \
echo "Copying $(PRIOR) to $(VERSION) ..." && \
$(SVN) cp -m "Create $(VERSION) documentation" $(PUB_ROOT)/$(PRIOR) $(PUB_DIR) && \
$(SVN) checkout $(PUB_DIR) $(LOCAL_ROOT) ; \
fi
@rm -f $(LOCAL_ROOT)/*.html
@cp *.html $(LOCAL_ROOT)
@cd $(LOCAL_ROOT) && \
r=`$(SVN) status | perl -ne 'print if s/^! *//' ` && \
if [ -n "$$r" ]; then $(SVN) rm $$r; fi && \
a=`$(SVN) status | perl -ne 'print if s/^\? *//' ` && \
if [ -n "$$a" ]; then \
$(SVN) add $$a && \
$(SVN) propset svn:mime-type text/html $$a ; \
fi && \
echo "Committing $(VERSION) at v$(COMMIT)" && \
$(SVN) commit -m "Updated $(VERSION) documentation to v$(COMMIT)"
@-rm -rf $(LOCAL_ROOT)
$(DOC_HTML): %.html : %.txt
@echo "FORMAT $@"
@rm -f $@+ $@
@$(ASCIIDOC) -a toc \
-a data-uri \
-a 'revision=$(REVISION)' \
-a 'newline=\n' \
-b xhtml11 \
-f asciidoc.conf \
$(ASCIIDOC_EXTRA) \
-o $@+ $<
@mv $@+ $@