Makefile
author fabien
Tue, 24 Jan 2006 13:23:49 -0500
branchecjdr
changeset 38 89fc4e7b7d51
parent 37 dba3080acefd
child 40 a073c4449384
permissions -rw-r--r--
[svn] r2223@freebird: fabien | 2006-01-24 13:10:46 -0500 Ajout des attributs des genres et du genre d'horreur (avec références).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     1
#!/usr/bin/make
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     2
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     3
# No final slash here!
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     4
# It will mess up rsync behavior.
13
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
     5
TOP=`pwd`
37
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
     6
SRC_DIR=`pwd`
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
     7
INSTALL_DIR=$(TOP)/install
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
     8
FR_ARTICLES=couleurs jjch credo systemes
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
     9
EN_ARTICLES=colors
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    10
UNPUBLISHED=dri-aido jdrdef jdrl resolution
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    11
TARGETS=jeuderologie rpgtheory $(FR_ARTICLES) $(EN_ARTICLES) $(UNPUBLISHED)
37
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    12
HTML_FILES=index.en.html index.fr.html
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    13
SGML_CATALOG_FILES=/etc/sgml/catalog
37
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    14
xml_validate=xmllint --xinclude --postvalid --noout $(1)
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    15
html_validate=true
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    16
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    17
make_subdir=						\
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    18
	[ -d $(2) ] || mkdir -p $(2) ;			\
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    19
	$(MAKE) SRC_DIR=$(SRC_DIR) VPATH=$(SRC_DIR)	\
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    20
		-C $(2) -f $(SRC_DIR)/Makefile $(1)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    21
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    22
all: $(addsuffix -do,$(TARGETS))
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    23
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    24
jeuderologie.xml: $(addsuffix .xml, $(FR_ARTICLES))
37
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    25
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    26
rpgtheory.xml: $(addsuffix .xml, $(EN_ARTICLES))
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    27
37
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    28
$(addsuffix -validate,$(TARGETS)):
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    29
	$(call xml_validate,$(subst -validate,.xml,$@))
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    30
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    31
$(addsuffix -validate,$(HTML_FILES)):
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    32
	$(call html_validate,$(subst -validate,,$@))
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    33
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    34
validate: $(addsuffix -validate,$(TARGETS) $(HTML_FILES))
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    35
13
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    36
install: $(addsuffix -do,$(TARGETS)) $(HTML_FILES)
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    37
	mkdir -p $(INSTALL_DIR)
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    38
	cp -a $(HTML_FILES) $(TARGETS) $(INSTALL_DIR)
14
acb2e646be22 [svn] r2049@freebird: fabien | 2005-12-30 16:41:51 -0500
fabien
parents: 13
diff changeset
    39
	ln -sf index.fr.html $(INSTALL_DIR)/index.html
13
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    40
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    41
$(addsuffix -do,$(TARGETS)):
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    42
	$(call make_subdir,$(patsubst %-do,%,$@),$(patsubst %-do,%,$@))
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    43
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    44
clean:
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    45
	rm -rf *~ *.fo *.aux *.log *.out
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    46
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    47
purge:
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    48
	rm -rf $(TARGETS)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    49
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    50
$(TARGETS): 
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    51
	$(MAKE) -f $(SRC_DIR)/Makefile $@.pdf $@.txt $@/index.html $@.html
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    52
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    53
%.fo: %.xml $(SRC_DIR)/print.xsl
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    54
	xsltproc --xinclude -o $@ $(SRC_DIR)/print.xsl $< 
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    55
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    56
TEX_OPTIONS=-interaction=errorstopmode -file-line-error-style
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    57
TEXERRORLEVEL=2
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    58
MAX_TEX_RECURSION=4
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    59
%.pdf: %.fo
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    60
# 	-cp -pf prior.aux pprior.aux
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    61
# 	-cp -pf $(basename $<).aux prior.aux
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    62
# 	pdfxmltex $(TEX_OPTIONS) $< || [ $$? -lt $(TEXERRORLEVEL) ]
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    63
# 	if ! cmp $(basename $<).aux prior.aux &&		\
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    64
# 	   ! cmp $(basename $<).aux pprior.aux &&		\
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    65
# 	   expr $(MAKELEVEL) '<' $(MAX_TEX_RECURSION); then	\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    66
# 		rm -f $@ ;					\
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    67
# 		$(MAKE) -f $(SRC_DIR)/Makefile $@ ;		\
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    68
# 	fi
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    69
# 	rm -f prior.aux pprior.aux
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    70
# 	xmlto pdf $<
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    71
	fop $< $@
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    72
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    73
%.txt: %.html
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    74
	w3m -dump $< > $@
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    75
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    76
%/index.html: %.xml $(SRC_DIR)/chunk.xsl
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    77
	rm -rf $(dir $@)
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    78
	xsltproc --xinclude -o $(dir $@) $(SRC_DIR)/chunk.xsl $<
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    79
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    80
%.html: %.xml $(SRC_DIR)/html.xsl
30
bbd7d782878a [svn] r2187@freebird: fabien | 2006-01-21 01:02:54 -0500
fabien
parents: 23
diff changeset
    81
	xsltproc --xinclude -o $@ $(SRC_DIR)/html.xsl $<
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    82
37
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    83
.PHONY: $(TARGETS) $(addsuffix -do,$(TARGETS))
dba3080acefd [svn] r2222@freebird: fabien | 2006-01-24 02:28:37 -0500
fabien
parents: 30
diff changeset
    84
.PHONY: update clean all install validate