Makefile
author fabien
Thu, 26 Jan 2006 16:51:38 -0500
branchcda
changeset 5 8f149c3924cf
parent 4 99d0c02f5ee4
child 6 70f9aa9d00c6
permissions -rw-r--r--
[svn] r2249@freebird: fabien | 2006-01-26 16:34:55 -0500 New validation rule with a modified xmllint.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     1
#/usr/bin/make
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     2
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     3
targets=$(addprefix $(1), .html .pdf .txt /index.html)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     4
output=$(addprefix $(1), .html .pdf .txt) $(1)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     5
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     6
TOP=`pwd`
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     7
INSTALL_DIR=$(TOP)/install
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     8
SRCS=cda.xml
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
     9
FOP=fop
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    10
NWALSH_XSL_DIR=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    11
OO_PDF_OUTPUT_DIR=$(HOME)/pdf
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    12
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    13
PDF_OUTPUT=cda-perso.pdf cda-perso-alt.pdf presentation.pdf
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    14
OUTPUT=$(foreach target,$(basename $(SRCS)),$(call output,$(target))) \
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    15
	$(PDF_OUTPUT)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    16
UPLOAD=$(OUTPUT) cda-perso.sxw cda-perso-alt.sxw presentation.sxi index.fr.html blason.png
5
8f149c3924cf [svn] r2249@freebird: fabien | 2006-01-26 16:34:55 -0500
fabien
parents: 4
diff changeset
    17
xml_validate=xmllint --xinclude --postvalid --noout $(1)
4
99d0c02f5ee4 [svn] r2239@freebird: fabien | 2006-01-25 00:08:27 -0500
fabien
parents: 3
diff changeset
    18
html_validate=true
0
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    19
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    20
all: $(basename $(SRCS)) $(PDF_OUTPUT)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    21
3
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    22
validate: cda-validate
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    23
# need to validate html file also.
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    24
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    25
cda-validate:
4
99d0c02f5ee4 [svn] r2239@freebird: fabien | 2006-01-25 00:08:27 -0500
fabien
parents: 3
diff changeset
    26
	$(call xml_validate,cda.xml)
3
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    27
0
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    28
cda: $(call targets,cda)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    29
3
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    30
0
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    31
# title.xsl: title.xml
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    32
#	xsltproc -o $@ $(NWALSH_XSL_DIR)/template/titlepage.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    33
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    34
%.fo: %.xml print.xsl titlepage.xsl common.xsl
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    35
	xsltproc -o $@ print.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    36
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    37
%.pdf: %.fo
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    38
#	xsltproc -o $@.tmp.fo strip-attributes.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    39
#	xmlto pdf -o $(dir $@) $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    40
	fop $< $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    41
#	rm $@.tmp.fo
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    42
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    43
%.pdf: %.sxw
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    44
	xvfb-run -a oowriter2 -pt PDF $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    45
	mv $(OO_PDF_OUTPUT_DIR)/$@ $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    46
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    47
%.pdf: %.sxi
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    48
	xvfb-run -a ooimpress2 -pt PDF $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    49
	mv $(OO_PDF_OUTPUT_DIR)/$@ $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    50
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    51
%.html: %.xml html.xsl common.xsl
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    52
	xsltproc --xinclude -o $@ html.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    53
#	recode u8..l1 $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    54
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    55
%/index.html: %.xml chunk.xsl common.xsl
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    56
	rm -rf $(dir $@)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    57
	mkdir -p $(dir $@)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    58
	xsltproc --xinclude -o $(dir $@) chunk.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    59
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    60
%.txt: %.html
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    61
	w3m -dump $< > $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    62
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    63
install: $(UPLOAD)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    64
	-mkdir -p $(INSTALL_DIR)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    65
	cp -a $^ $(INSTALL_DIR)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    66
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    67
clean:
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    68
	rm -f *~ *.fo
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    69
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    70
purge: clean
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    71
	rm -rf $(OUTPUT)
3
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    72
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    73
.PHONY: clean install purge validate all