Makefile
author fabien
Thu, 05 Jan 2006 17:46:41 -0500
branchecjdr
changeset 17 d7f745a3e7ac
parent 14 acb2e646be22
child 19 22590956d131
permissions -rw-r--r--
[svn] r2075@freebird: fabien | 2006-01-05 17:37:48 -0500 Correction d'orthographe.
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`
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     6
TARGETS=couleurs colors jjch credo
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     7
UPDATE_FILES=$(TARGETS) index.en.html index.fr.html
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     8
SRC_DIR=`pwd`
13
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
     9
INSTALL_DIR=$(TOP)/install
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    10
SGML_CATALOG_FILES=/etc/sgml/catalog
13
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    11
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
    12
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    13
make_subdir=\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    14
	[ -d $(2) ] || mkdir -p $(2) ; \
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    15
	$(MAKE) SRC_DIR=$(SRC_DIR) VPATH=$(SRC_DIR) \
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    16
		-C $(2) -f $(SRC_DIR)/Makefile $(1)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    17
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    18
all: $(addsuffix -do,$(TARGETS))
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    19
13
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    20
install: $(addsuffix -do,$(TARGETS)) $(HTML_FILES)
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    21
	mkdir -p $(INSTALL_DIR)
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    22
	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
    23
	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
    24
0
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    25
$(addsuffix -do,$(TARGETS)):
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    26
	$(call make_subdir,$(patsubst %-do,%,$@),$(patsubst %-do,%,$@))
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    27
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    28
clean:
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    29
	rm -rf *~ *.fo *.aux *.log *.out
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    30
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    31
purge:
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    32
	rm -rf $(TARGETS)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    33
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    34
$(TARGETS): 
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    35
	$(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
    36
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    37
%.fo: %.xml $(SRC_DIR)/print.xsl
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    38
	xsltproc -o $@ $(SRC_DIR)/print.xsl $< 
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    39
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    40
TEX_OPTIONS=-interaction=errorstopmode -file-line-error-style
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    41
TEXERRORLEVEL=2
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    42
MAX_TEX_RECURSION=4
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    43
%.pdf: %.fo
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    44
# 	-cp -pf prior.aux pprior.aux
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    45
# 	-cp -pf $(basename $<).aux prior.aux
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    46
# 	pdfxmltex $(TEX_OPTIONS) $< || [ $$? -lt $(TEXERRORLEVEL) ]
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    47
# 	if ! cmp $(basename $<).aux prior.aux &&	\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    48
# 	   ! cmp $(basename $<).aux pprior.aux &&	\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    49
# 	   expr $(MAKELEVEL) '<' $(MAX_TEX_RECURSION); then	\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    50
# 		rm -f $@ ;					\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    51
# 		$(MAKE) -f $(SRC_DIR)/Makefile $@ ;					\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    52
# 	fi
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    53
# 	rm -f prior.aux pprior.aux
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    54
#	xmlto pdf $<
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    55
	fop $< $@
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    56
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    57
%.txt: %.html
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    58
	w3m -dump $< > $@
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    59
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    60
%/index.html: %.xml $(SRC_DIR)/chunk.xsl
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    61
	rm -rf $(dir $@)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    62
	xsltproc -o $(dir $@) $(SRC_DIR)/chunk.xsl $<
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    63
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    64
%.html: %.xml $(SRC_DIR)/html.xsl
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    65
	xsltproc -o $@ $(SRC_DIR)/html.xsl $<
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    66
13
7ef1648bebae [svn] r2046@freebird: fabien | 2005-12-30 13:41:56 -0500
fabien
parents: 0
diff changeset
    67
.PHONY: $(TARGETS) $(addsuffix -do,$(TARGETS)) update clean all install