Makefile
author fabien
Tue, 24 Jan 2006 13:23:44 -0500
branchcda
changeset 3 dca5a75d3c0e
parent 0 ff2810600648
child 4 99d0c02f5ee4
permissions -rw-r--r--
[svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500 Add validate target. No depends on install however, since xmllint doesn't handle xml:tag and xmlns:ns correctly.
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
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    17
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    18
all: $(basename $(SRCS)) $(PDF_OUTPUT)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    19
3
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    20
validate: cda-validate
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    21
# need to validate html file also.
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    22
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    23
cda-validate:
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    24
	xmllint --valid --noout cda.xml
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    25
0
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    26
cda: $(call targets,cda)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    27
3
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    28
0
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    29
# title.xsl: title.xml
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    30
#	xsltproc -o $@ $(NWALSH_XSL_DIR)/template/titlepage.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    31
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    32
%.fo: %.xml print.xsl titlepage.xsl common.xsl
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    33
	xsltproc -o $@ print.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    34
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    35
%.pdf: %.fo
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    36
#	xsltproc -o $@.tmp.fo strip-attributes.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    37
#	xmlto pdf -o $(dir $@) $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    38
	fop $< $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    39
#	rm $@.tmp.fo
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    40
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    41
%.pdf: %.sxw
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    42
	xvfb-run -a oowriter2 -pt PDF $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    43
	mv $(OO_PDF_OUTPUT_DIR)/$@ $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    44
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    45
%.pdf: %.sxi
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    46
	xvfb-run -a ooimpress2 -pt PDF $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    47
	mv $(OO_PDF_OUTPUT_DIR)/$@ $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    48
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    49
%.html: %.xml html.xsl common.xsl
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    50
	xsltproc --xinclude -o $@ html.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    51
#	recode u8..l1 $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    52
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    53
%/index.html: %.xml chunk.xsl common.xsl
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    54
	rm -rf $(dir $@)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    55
	mkdir -p $(dir $@)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    56
	xsltproc --xinclude -o $(dir $@) chunk.xsl $<
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    57
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    58
%.txt: %.html
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    59
	w3m -dump $< > $@
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    60
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    61
install: $(UPLOAD)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    62
	-mkdir -p $(INSTALL_DIR)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    63
	cp -a $^ $(INSTALL_DIR)
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    64
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    65
clean:
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    66
	rm -f *~ *.fo
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    67
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    68
purge: clean
ff2810600648 [svn] r2212@freebird: fabien | 2006-01-23 13:21:15 -0500
fabien
parents:
diff changeset
    69
	rm -rf $(OUTPUT)
3
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    70
dca5a75d3c0e [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 0
diff changeset
    71
.PHONY: clean install purge validate all