File: Makefile.base-rules

package info (click to toggle)
subversion 1.5.1dfsg1-7
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 41,860 kB
  • ctags: 43,900
  • sloc: ansic: 522,648; python: 64,596; sh: 12,784; ruby: 11,838; cpp: 9,584; java: 8,130; lisp: 7,131; perl: 5,686; makefile: 895; xml: 759
file content (109 lines) | stat: -rw-r--r-- 3,711 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# See comment in ./Makefile.base-vars

# Grouping targets
all: html html-chunk pdf ps
all-html: html html-chunk
install: install-html install-html-chunk install-pdf install-ps

# Build targets
$(VERSION_SOURCE): version
version:
	@if $(SVNVERSION) . > /dev/null; then \
	  echo '<!ENTITY svn.version "$(L10N_REVISION) '`$(SVNVERSION) .`'">' \
	    > $(VERSION_SOURCE).tmp; \
	else \
	  echo '<!ENTITY svn.version "">' > $(VERSION_SOURCE).tmp; \
	fi
	@if cmp -s $(VERSION_SOURCE) $(VERSION_SOURCE).tmp; then \
	  rm $(VERSION_SOURCE).tmp; \
	else \
	  mv $(VERSION_SOURCE).tmp $(VERSION_SOURCE); \
	fi

html: $(HTML_TARGET)
$(HTML_TARGET): $(ALL_SOURCE) $(VERSION_SOURCE) $(STYLESHEET) $(IMAGES)
	$(ENSURE_XSL)
	$(XSLTPROC) $(HTML_XSLTPROC_OPTS) --output $(HTML_TARGET) \
	  $(TOOLS_DIR)/html-stylesheet.xsl $(XML_SOURCE)

# The trailing slash on the xsltproc --output option is essential to
# output pages into the directory
html-chunk: $(HTML_CHUNK_TARGET)
$(HTML_CHUNK_TARGET): $(ALL_SOURCE) $(VERSION_SOURCE) $(STYLESHEET) $(IMAGES)
	mkdir -p $(HTML_CHUNK_DIR)
	$(IFIMAGES) mkdir -p $(HTML_CHUNK_DIR)/images $(ENDIF)
	$(ENSURE_XSL)
	$(XSLTPROC) $(HTML_XSLTPROC_OPTS) \
           --output $(HTML_CHUNK_DIR)/ \
	   $(TOOLS_DIR)/chunk-stylesheet.xsl $(XML_SOURCE)
	cp $(STYLESHEET) $(HTML_CHUNK_DIR)
	$(IFIMAGES) cp $(IMAGES) $(HTML_CHUNK_DIR)/images $(ENDIF)

html-arch: $(HTML_ARCH_TARGET)
$(HTML_ARCH_TARGET): $(HTML_TARGET) $(IMAGES)
	rm -rf $(HTML_ARCH_BASENAME) && \
	$(MAKE) install-html INSTALL_SUBDIR=$(HTML_ARCH_BASENAME) && \
	$(ARCH_CMD) $@ $(HTML_ARCH_BASENAME) && \
	rm -rf $(HTML_ARCH_BASENAME)

html-chunk-arch: $(HTML_CHUNK_ARCH_TARGET)
$(HTML_CHUNK_ARCH_TARGET): $(HTML_CHUNK_TARGET) $(IMAGES)
	rm -rf $(HTML_CHUNK_ARCH_BASENAME) && \
	$(MAKE) install-html-chunk \
	  INSTALL_SUBDIR=$(HTML_CHUNK_ARCH_BASENAME) && \
	$(ARCH_CMD) $@ $(HTML_CHUNK_ARCH_BASENAME) && \
	rm -rf $(HTML_CHUNK_ARCH_BASENAME)

fo: $(FO_TARGET)
$(FO_TARGET): $(ALL_SOURCE) $(VERSION_SOURCE) $(IMAGES)
	$(ENSURE_XSL)
	$(XSLTPROC) $(FO_XSLTPROC_OPTS) --output $(FO_TARGET) \
	  $(TOOLS_DIR)/fo-stylesheet.xsl $(XML_SOURCE)

pdf: $(PDF_TARGET)
$(PDF_TARGET): $(FO_TARGET) $(IMAGES)
	$(TOOLS_DIR)/bin/run-fop.sh -fo $(FO_TARGET) -pdf $(PDF_TARGET)

ps: $(PS_TARGET)
$(PS_TARGET): $(FO_TARGET) $(IMAGES)
	$(TOOLS_DIR)/bin/run-fop.sh -fo $(FO_TARGET) -ps $(PS_TARGET)

# Install targets
$(INSTALL_SUBDIR):
	$(MKDIR) $(INSTALL_SUBDIR)

install-html: $(HTML_TARGET) $(INSTALL_SUBDIR)
	$(IFIMAGES) $(MKDIR) $(INSTALL_SUBDIR)/images $(ENDIF)
	$(INSTALL_DATA) $(HTML_TARGET) $(INSTALL_SUBDIR)
	$(INSTALL_DATA) $(STYLESHEET) $(INSTALL_SUBDIR)
	$(IFIMAGES) $(INSTALL_DATA) $(IMAGES) $(INSTALL_SUBDIR)/images $(ENDIF)

install-html-chunk: $(HTML_CHUNK_TARGET) $(INSTALL_SUBDIR)
	$(IFIMAGES) $(MKDIR) $(INSTALL_SUBDIR)/images $(ENDIF)
	$(INSTALL_DATA) $(HTML_CHUNK_DIR)/*.html $(INSTALL_SUBDIR)
	$(INSTALL_DATA) $(STYLESHEET) $(INSTALL_SUBDIR)
	$(IFIMAGES) $(INSTALL_DATA) $(IMAGES) $(INSTALL_SUBDIR)/images $(ENDIF)

install-html-arch: $(HTML_ARCH_TARGET) $(INSTALL_SUBDIR)
	$(INSTALL_DATA) $(HTML_ARCH_TARGET) $(INSTALL_SUBDIR)

install-html-chunk-arch: $(HTML_CHUNK_ARCH_TARGET) $(INSTALL_SUBDIR)
	$(INSTALL_DATA) $(HTML_CHUNK_ARCH_TARGET) $(INSTALL_SUBDIR)

install-pdf: $(PDF_TARGET) $(INSTALL_SUBDIR)
	$(INSTALL_DATA) $(PDF_TARGET) $(INSTALL_SUBDIR)

install-ps: $(PS_TARGET) $(INSTALL_SUBDIR)
	$(INSTALL_DATA) $(PS_TARGET) $(INSTALL_SUBDIR)

# Clean targets
clean:
	rm -f $(VERSION_SOURCE) $(HTML_TARGET)
	rm -f $(HTML_ARCH_TARGET) $(HTML_CHUNK_ARCH_TARGET)
	rm -f $(FO_TARGET) $(PDF_TARGET) $(PS_TARGET)
	rm -rf $(HTML_CHUNK_DIR)

# Utility targets
valid: $(VERSION_SOURCE)
	$(XMLLINT) --noout --nonet --valid $(XML_SOURCE)