Makefile
author fabien
Fri, 30 Dec 2005 19:51:39 -0500
branchecjdr
changeset 7 1e7134e26761
parent 0 9119688b1f02
child 13 7ef1648bebae
permissions -rw-r--r--
[svn] r2040@freebird: fabien | 2005-12-29 16:42:30 -0500 Add temptation id to the Temptation entry.
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.
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     5
TARGETS=couleurs colors jjch credo
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     6
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
     7
SSH_HOST=o
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     8
SRC_DIR=`pwd`
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
     9
REMOTE_DIR=/var/www/harmonies/articles
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    10
SGML_CATALOG_FILES=/etc/sgml/catalog
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    11
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    12
make_subdir=\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    13
	[ -d $(2) ] || mkdir -p $(2) ; \
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    14
	$(MAKE) SRC_DIR=$(SRC_DIR) VPATH=$(SRC_DIR) \
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    15
		-C $(2) -f $(SRC_DIR)/Makefile $(1)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    16
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    17
all: $(addsuffix -do,$(TARGETS))
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    18
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    19
$(addsuffix -do,$(TARGETS)):
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    20
	$(call make_subdir,$(patsubst %-do,%,$@),$(patsubst %-do,%,$@))
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
clean:
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    23
	rm -rf *~ *.fo *.aux *.log *.out
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    24
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    25
purge:
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    26
	rm -rf $(TARGETS)
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
$(TARGETS): 
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    29
	$(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
    30
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    31
%.fo: %.xml $(SRC_DIR)/print.xsl
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    32
	xsltproc -o $@ $(SRC_DIR)/print.xsl $< 
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
TEX_OPTIONS=-interaction=errorstopmode -file-line-error-style
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    35
TEXERRORLEVEL=2
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    36
MAX_TEX_RECURSION=4
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    37
%.pdf: %.fo
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    38
# 	-cp -pf prior.aux pprior.aux
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    39
# 	-cp -pf $(basename $<).aux prior.aux
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    40
# 	pdfxmltex $(TEX_OPTIONS) $< || [ $$? -lt $(TEXERRORLEVEL) ]
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    41
# 	if ! cmp $(basename $<).aux prior.aux &&	\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    42
# 	   ! cmp $(basename $<).aux pprior.aux &&	\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    43
# 	   expr $(MAKELEVEL) '<' $(MAX_TEX_RECURSION); then	\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    44
# 		rm -f $@ ;					\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    45
# 		$(MAKE) -f $(SRC_DIR)/Makefile $@ ;					\
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    46
# 	fi
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    47
# 	rm -f prior.aux pprior.aux
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    48
#	xmlto pdf $<
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    49
	fop $< $@
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    50
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    51
%.txt: %.html
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    52
	w3m -dump $< > $@
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    53
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    54
%/index.html: %.xml $(SRC_DIR)/chunk.xsl
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    55
	rm -rf $(dir $@)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    56
	xsltproc -o $(dir $@) $(SRC_DIR)/chunk.xsl $<
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    57
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    58
%.html: %.xml $(SRC_DIR)/html.xsl
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    59
	xsltproc -o $@ $(SRC_DIR)/html.xsl $<
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    60
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    61
update: all
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    62
	rsync -az --delete $(UPDATE_FILES) $(SSH_HOST):$(REMOTE_DIR)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    63
	ssh $(SSH_HOST) chmod -R a+rX $(REMOTE_DIR)
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    64
9119688b1f02 [svn] r1946@freebird: fabien | 2005-12-26 19:20:33 -0500
fabien
parents:
diff changeset
    65
.PHONY: $(TARGETS) $(addsuffix -do,$(TARGETS)) update clean all