Makefile
author fabien
Fri, 03 Feb 2006 16:28:04 -0500
branchcontes
changeset 7 201b9e3f08dd
parent 6 f5ce1e175ca6
child 8 e3e4d3d6c637
permissions -rw-r--r--
[svn r1975] r2268@freebird: fabien | 2006-01-31 00:28:15 -0500 Permet à toutes les pages de valider correctement.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     1
#/usr/bin/make
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     2
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     3
targets=$(addprefix $(1), .html .pdf .txt /index.html)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     4
output=$(addprefix $(1), .html .pdf .txt) $(1)/
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     5
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     6
TOP=$(shell pwd)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     7
INSTALL_DIR=$(TOP)/install
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     8
SRCS=contes.xml
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
     9
SRC_DEPS=\
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    10
	dorsey.xml \
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    11
	jardin.xml \
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    12
	marche.xml \
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    13
	yeux.xml \
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    14
	genese.xml \
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    15
	mythos.xml
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    16
STYLES_DIR=$(TOP)/styles
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    17
DTD_DIR=$(TOP)/dtd
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    18
STYLES=$(addprefix $(STYLES_DIR)/,common.xsl)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    19
HTML_STYLES=$(STYLES) $(addprefix $(STYLES_DIR)/,html.xsl story_html.xsl)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    20
PRINT_STYLES=$(STYLES) $(addprefix $(STYLES_DIR)/,print.xsl story_print.xsl masters_print.xsl)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    21
DTD=$(addprefix $(DTD_DIR)/,story.dtd)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    22
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    23
# FOP=xmlto pdf
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    24
FOP=fop
5
b0d91312ad83 [svn r1966] r2244@freebird: fabien | 2006-01-25 01:03:44 -0500
fabien
parents: 0
diff changeset
    25
SGML_CATALOG_FILES=$(TOP)/catalog
b0d91312ad83 [svn r1966] r2244@freebird: fabien | 2006-01-25 01:03:44 -0500
fabien
parents: 0
diff changeset
    26
export SGML_CATALOG_FILES
0
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    27
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    28
#OUTPUT=$(foreach target,$(basename $(SRCS)),$(call output,$(target)))
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    29
OUTPUT=contes.pdf contes/
7
201b9e3f08dd [svn r1975] r2268@freebird: fabien | 2006-01-31 00:28:15 -0500
fabien
parents: 6
diff changeset
    30
xml_validate=xmllint --catalogs --xinclude --valid --noout $(1)
201b9e3f08dd [svn r1975] r2268@freebird: fabien | 2006-01-31 00:28:15 -0500
fabien
parents: 6
diff changeset
    31
html_validate=xmllint --valid --noout $(1)
0
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    32
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    33
all: $(OUTPUT)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    34
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    35
#poetry: $(call targets,poetry) $(SRC_DEPS)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    36
contes/: contes/index.html
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    37
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    38
update: $(OUTPUT)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    39
	rsync -avz -P $(OUTPUT) $(REMOTE_DIR)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    40
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    41
install: $(OUTPUT)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    42
	[ -d $(INSTALL_DIR) ] || mkdir -p $(INSTALL_DIR)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    43
	cp -a $(OUTPUT)* $(INSTALL_DIR)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    44
6
f5ce1e175ca6 [svn r1968] r2250@freebird: fabien | 2006-01-26 16:51:01 -0500
fabien
parents: 5
diff changeset
    45
validate: $(SRCS) $(addsuffix -validate,$(SRC_DEPS))
f5ce1e175ca6 [svn r1968] r2250@freebird: fabien | 2006-01-26 16:51:01 -0500
fabien
parents: 5
diff changeset
    46
	$(call xml_validate,$<)
f5ce1e175ca6 [svn r1968] r2250@freebird: fabien | 2006-01-26 16:51:01 -0500
fabien
parents: 5
diff changeset
    47
f5ce1e175ca6 [svn r1968] r2250@freebird: fabien | 2006-01-26 16:51:01 -0500
fabien
parents: 5
diff changeset
    48
%-validate: %
f5ce1e175ca6 [svn r1968] r2250@freebird: fabien | 2006-01-26 16:51:01 -0500
fabien
parents: 5
diff changeset
    49
	$(call xml_validate,$<)
5
b0d91312ad83 [svn r1966] r2244@freebird: fabien | 2006-01-25 01:03:44 -0500
fabien
parents: 0
diff changeset
    50
0
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    51
clean:
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    52
	rm -f *~ *.fo
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    53
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    54
purge: clean
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    55
	rm -rf $(OUTPUT)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    56
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    57
debug:
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    58
	echo $(PRINT_STYLES)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    59
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    60
%.fo: %.xml $(PRINT_STYLES) $(SRC_DEPS)
5
b0d91312ad83 [svn r1966] r2244@freebird: fabien | 2006-01-25 01:03:44 -0500
fabien
parents: 0
diff changeset
    61
	xsltproc --catalogs --xinclude			\
0
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    62
		-o $@ $(STYLES_DIR)/story_print.xsl $<
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    63
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    64
%.pdf: %.fo
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    65
#	xsltproc -o $@.tmp.fo strip-attributes.xsl $<
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    66
#	xmlto pdf -o $(dir $@) $<
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    67
	fop $< $@
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    68
#	rm $@.tmp.fo
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    69
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    70
%.html: %.xml $(HTML_STYLES) $(SRC_DEPS)
5
b0d91312ad83 [svn r1966] r2244@freebird: fabien | 2006-01-25 01:03:44 -0500
fabien
parents: 0
diff changeset
    71
	xsltproc --catalogs --xinclude				\
b0d91312ad83 [svn r1966] r2244@freebird: fabien | 2006-01-25 01:03:44 -0500
fabien
parents: 0
diff changeset
    72
		--stringparam css-base-dir '/~fabien/styles/'	\
0
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    73
		-o $@ $(STYLES_DIR)/story_html.xsl $<
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    74
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    75
%/index.html: %.xml $(HTML_STYLES) $(SRC_DEPS)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    76
	rm -rf $(dir $@)
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    77
	mkdir -p $(dir $@)
5
b0d91312ad83 [svn r1966] r2244@freebird: fabien | 2006-01-25 01:03:44 -0500
fabien
parents: 0
diff changeset
    78
	xsltproc --catalogs --xinclude				\
b0d91312ad83 [svn r1966] r2244@freebird: fabien | 2006-01-25 01:03:44 -0500
fabien
parents: 0
diff changeset
    79
		--stringparam css-base-dir '/~fabien/styles/'	\
0
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    80
		-o $@ $(STYLES_DIR)/story_html.xsl $<
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    81
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    82
%.txt: %.html
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    83
	w3m -dump $< > $@
5cbf517f2a5a [svn r1850] r2001@freebird: fabien | 2005-12-27 01:28:42 -0500
fabien
parents:
diff changeset
    84