1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
# This requires GNU make. -*- makefile -*-
#
# To use this, a script must include the following minimal set of
# stuff:
#
# include relative/path/to/scripts/make.rules
# ROOT_DIR = relative/path/to
# ROOT_OFFSET = path/of/cwd/relative/to/ROOT_DIR
#
# E.g. for the cp4e directory:
#
# include ../scripts/make.rules
# ROOT_DIR = ..
# ROOT_OFFSET = cp4e
# Make rules for www.python.org ht->html generation. SOURCES
# indirection filters out "*.ht" value when no ht files are around.
SOURCES = $(wildcard *.ht)
HTTARGETS = $(filter-out *.html,$(SOURCES:%.ht=%.html))
TARGETS = $(HTTARGETS) $(EXTRA_TARGETS)
# Where to upload stuff for make install. LIVE_ROOT is the actual
# physical location of files on the server.
LIVE_HOST = shell.sourceforge.net
LIVE_ROOT = /home/groups/p/py/python-mode/htdocs
LIVE_DEST = $(LIVE_HOST):$(LIVE_ROOT)/$(ROOT_OFFSET)
# rsync definitions.
RSYNC_RSH = ssh
# Validation
HTML_CATALOG = /usr/share/sgml/html-4.01/HTML4.cat
NSGMLS = nsgmls
GLOBAL_EXCLUDES =
# If the file .rsync-excludes exists in the make dir, use it.
EXCLUDE_FROM = $(shell if [ -f .rsync-excludes ]; then \
echo "--exclude-from=.rsync-excludes"; \
else \
echo ""; \
fi)
LOCAL_INCLUDE =
SCRIPTDIR = $(ROOT_DIR)
HT2HTML = $(shell which ht2html)
HTSTYLE = PMGenerator
HTALLFLAGS = -f -s $(HTSTYLE)
HTROOT = $(shell $(SCRIPTDIR)/calcroot.py $(ROOT_OFFSET))
HTFLAGS = $(HTALLFLAGS) -r $(HTROOT)
RST2HT = rst2ht.py
RSTFLAGS = -g -t -s
HTRELDIR = .
#HTWF = $(SCRIPTDIR)/ht2html/htwf.py
#HTWFFLAGS = -s $(HTSTYLE) -r $(HTROOT)
GENERATED_HTML= $(SOURCES:.ht=.html)
.SUFFIXES: .ht .html
%.html : %.ht
$(HT2HTML) $(HTFLAGS) $(HTRELDIR)/$<
all: $(TARGETS)
$(HTTARGETS): $(HT2HTML) $(HTSTYLE).py
clean:
-rm -f *~ .*~ *.py[co]
realclean: clean
-rm -f $(GENERATED_HTML)
install: all local_install
@if [ -z "$(ROOT_OFFSET)" ]; then \
echo "You have to specify a value for 'ROOT_OFFSET' in the makefile!"; \
false; \
fi
@echo Push to $(LIVE_DEST) ...
rsync --rsh=$(RSYNC_RSH) -v -l -u $(GLOBAL_EXCLUDES) $(EXCLUDE_FROM) $(HTTARGETS) *.ht $(LIVE_DEST)
validate: $(TARGETS)
for f in $(TARGETS); \
do echo $$f;\
$(NSGMLS) -s -c $(HTML_CATALOG) $$f; \
done
wfcheck:
$(HTWF) $(HTWFFLAGS) $(SOURCES)
# Override local_install in Makefile for directory-specific install actions.
local_install:
recursive: all
for dir in * ; do \
if [ -f $$dir/Makefile ] ; then \
echo "Changing to $$dir" ; \
cd $$dir ; make recursive; cd .. ; \
fi \
done
|