Subversion Repositories HelenOS-doc

Rev

Rev 79 | Rev 90 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 79 Rev 82
1
#
1
#
2
# Copyright (C) 2006 Sergey Bondari
2
# Copyright (C) 2006 Sergey Bondari
3
# All rights reserved.
3
# All rights reserved.
4
#
4
#
5
# Redistribution and use in source and binary forms, with or without
5
# Redistribution and use in source and binary forms, with or without
6
# modification, are permitted provided that the following conditions
6
# modification, are permitted provided that the following conditions
7
# are met:
7
# are met:
8
#
8
#
9
# - Redistributions of source code must retain the above copyright
9
# - Redistributions of source code must retain the above copyright
10
#   notice, this list of conditions and the following disclaimer.
10
#   notice, this list of conditions and the following disclaimer.
11
# - Redistributions in binary form must reproduce the above copyright
11
# - Redistributions in binary form must reproduce the above copyright
12
#   notice, this list of conditions and the following disclaimer in the
12
#   notice, this list of conditions and the following disclaimer in the
13
#   documentation and/or other materials provided with the distribution.
13
#   documentation and/or other materials provided with the distribution.
14
# - The name of the author may not be used to endorse or promote products
14
# - The name of the author may not be used to endorse or promote products
15
#   derived from this software without specific prior written permission.
15
#   derived from this software without specific prior written permission.
16
#
16
#
17
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
#
27
#
28
 
28
 
29
 
29
 
30
# Use xsltproc as XSL processor
30
# Use xsltproc as XSL processor
31
XSLT = xsltproc
31
XSLT = xsltproc
32
 
32
 
33
TOOLCHAIN_DIR = tools/
33
TOOLCHAIN_DIR = tools/
34
 
34
 
35
# DocBook XSL package
35
# DocBook XSL package
36
DOCBOOK_DIR = $(TOOLCHAIN_DIR)docbook-xsl/
36
DOCBOOK_DIR = $(TOOLCHAIN_DIR)docbook-xsl/
37
 
37
 
38
# FOP - Apache XML graphics package
38
# FOP - Apache XML graphics package
39
FOP_DIR=$(TOOLCHAIN_DIR)fop/
39
FOP_DIR=$(TOOLCHAIN_DIR)fop/
40
FOP=$(FOP_DIR)fop.sh
40
FOP=$(FOP_DIR)fop.sh
41
 
41
 
-
 
42
DBLATEX_DIR=$(TOOLCHAIN_DIR)dblatex/
-
 
43
DBLATEX=$(DBLATEX_DIR)bin/dblatex
-
 
44
 
42
# Output folders
45
# Output folders
43
BUILD_HTML_DIR = build/html/
46
BUILD_HTML_DIR = build/html/
44
BUILD_PDF_DIR = build/pdf/
47
BUILD_PDF_DIR = build/pdf/
45
BUILD_HTML_CHUNKED_DIR = build/html.chunked/
48
BUILD_HTML_CHUNKED_DIR = build/html.chunked/
46
 
49
 
47
 
50
 
48
all: html htmlchunked pdf
51
all: html htmlchunked pdf
49
 
52
 
50
build: clean all
53
build: clean all
51
 
54
 
52
html:
55
html:
53
	mkdir -p $(BUILD_HTML_DIR)
56
	mkdir -p $(BUILD_HTML_DIR)
54
	mkdir -p $(BUILD_HTML_DIR)images
57
	mkdir -p $(BUILD_HTML_DIR)images
55
	cp src/images/* $(BUILD_HTML_DIR)images
58
	cp src/images/* $(BUILD_HTML_DIR)images
56
	xsltproc \
59
	xsltproc \
57
	  --stringparam section.autolabel 1 \
60
	  --stringparam section.autolabel 1 \
58
	  --stringparam section.label.includes.component.label 1 \
61
	  --stringparam section.label.includes.component.label 1 \
59
	  --stringparam section.autolabel.max.depth 2 \
62
	  --stringparam section.autolabel.max.depth 2 \
60
	  --stringparam preferred.mediaobject.role html \
63
	  --stringparam preferred.mediaobject.role html \
61
	  --output $(BUILD_HTML_DIR)index.html $(DOCBOOK_DIR)html/docbook.xsl src/index.xml
64
	  --output $(BUILD_HTML_DIR)index.html $(DOCBOOK_DIR)html/docbook.xsl src/index.xml
62
htmlchunked:
65
htmlchunked:
63
	mkdir -p $(BUILD_HTML_CHUNKED_DIR)
66
	mkdir -p $(BUILD_HTML_CHUNKED_DIR)
64
	mkdir -p $(BUILD_HTML_CHUNKED_DIR)images
67
	mkdir -p $(BUILD_HTML_CHUNKED_DIR)images
65
	cp src/images/* $(BUILD_HTML_CHUNKED_DIR)images
68
	cp src/images/* $(BUILD_HTML_CHUNKED_DIR)images
66
	xsltproc \
69
	xsltproc \
67
	  --stringparam section.autolabel 1 \
70
	  --stringparam section.autolabel 1 \
68
	  --stringparam section.label.includes.component.label 1 \
71
	  --stringparam section.label.includes.component.label 1 \
69
	  --stringparam chunk.section.depth 0 \
72
	  --stringparam chunk.section.depth 0 \
70
	  --stringparam section.autolabel.max.depth 2 \
73
	  --stringparam section.autolabel.max.depth 2 \
71
	  --stringparam preferred.mediaobject.role html \
74
	  --stringparam preferred.mediaobject.role html \
72
	  --output $(BUILD_HTML_CHUNKED_DIR)index.html $(DOCBOOK_DIR)html/chunk.xsl src/index.xml
75
	  --output $(BUILD_HTML_CHUNKED_DIR)index.html $(DOCBOOK_DIR)html/chunk.xsl src/index.xml
73
pdf: dblatex-pdf
76
pdf: dblatex-pdf
74
dblatex-pdf:
77
dblatex-pdf:
75
	mkdir -p $(BUILD_PDF_DIR)
78
	mkdir -p $(BUILD_PDF_DIR)
76
	dblatex \
79
	$(DBLATEX) \
77
	  -t pdf -T db2latex -f eps \
80
	  -t pdf -T db2latex -f eps \
78
	  -p tools/extra/dblatex-extra.xsl \
81
	  -p tools/extra/dblatex-extra.xsl \
79
	  -o $(BUILD_PDF_DIR)HelenOS-doc-design.pdf \
82
	  -o $(BUILD_PDF_DIR)HelenOS-doc-design.pdf \
80
	  src/index.xml
83
	  src/index.xml
81
fo-pdf:   
84
fo-pdf:   
82
	mkdir -p $(BUILD_PDF_DIR)
85
	mkdir -p $(BUILD_PDF_DIR)
83
	mkdir -p $(BUILD_PDF_DIR)images.vector
86
	mkdir -p $(BUILD_PDF_DIR)images.vector
84
	mkdir -p $(BUILD_PDF_DIR)images
87
	mkdir -p $(BUILD_PDF_DIR)images
85
	cp src/images.vector/* $(BUILD_PDF_DIR)images.vector
88
	cp src/images.vector/* $(BUILD_PDF_DIR)images.vector
86
	cp src/images/* $(BUILD_PDF_DIR)images
89
	cp src/images/* $(BUILD_PDF_DIR)images
87
	xsltproc \
90
	xsltproc \
88
	  --stringparam paper.type A4 \
91
	  --stringparam paper.type A4 \
89
	  --stringparam fop.extensions 1 \
92
	  --stringparam fop.extensions 1 \
90
	  --stringparam bondari.jimi.compatible 1 \
93
	  --stringparam bondari.jimi.compatible 1 \
91
	  --stringparam section.autolabel 1 \
94
	  --stringparam section.autolabel 1 \
92
	  --stringparam section.label.includes.component.label 1 \
95
	  --stringparam section.label.includes.component.label 1 \
93
	  --stringparam section.autolabel.max.depth 2 \
96
	  --stringparam section.autolabel.max.depth 2 \
94
	  --stringparam body.font.master 12 \
97
	  --stringparam body.font.master 12 \
95
	  --stringparam preferred.mediaobject.role fop \
98
	  --stringparam preferred.mediaobject.role fop \
96
	  --output  $(BUILD_PDF_DIR)index.fo $(DOCBOOK_DIR)fo/docbook.xsl src/index.xml
99
	  --output  $(BUILD_PDF_DIR)index.fo $(DOCBOOK_DIR)fo/docbook.xsl src/index.xml
97
 
100
 
98
	$(FOP) -q -fo $(BUILD_PDF_DIR)index.fo -pdf $(BUILD_PDF_DIR)index.pdf
101
	$(FOP) -q -fo $(BUILD_PDF_DIR)index.fo -pdf $(BUILD_PDF_DIR)index.pdf
99
 
102
 
100
distclean: clean
103
distclean: clean
101
 
104
 
102
clean:
105
clean:
103
	rm -rf build
106
	rm -rf build
104
 
107