Sebastian Kuschel reports that pfd_closing can be called for a socket
[u/mdw/putty] / doc / Makefile
1 all: man index.html
2
3 # Decide on the versionid policy.
4 #
5 # If the user has passed in $(VERSION) on the command line (`make
6 # VERSION="Release 0.56"'), we use that as an explicit version
7 # string. Otherwise, we use `svnversion' to examine the checked-out
8 # documentation source, and if that returns a single revision
9 # number then we invent a version string reflecting just that
10 # number. Failing _that_, we resort to versionids.but which shows a
11 # $Id for each individual file.
12 #
13 # So here, we define VERSION using svnversion if it isn't already
14 # defined ...
15 ifndef VERSION
16 SVNVERSION=$(shell test -d .svn && svnversion .)
17 BADCHARS=$(findstring :,$(SVNVERSION))$(findstring S,$(SVNVERSION))
18 ifeq ($(BADCHARS),)
19 ifneq ($(SVNVERSION),)
20 ifneq ($(SVNVERSION),exported)
21 VERSION=Built from revision $(patsubst M,,$(SVNVERSION))
22 endif
23 endif
24 endif
25 endif
26 # ... and now, we condition our build behaviour on whether or not
27 # VERSION _is_ defined.
28 ifdef VERSION
29 VERSIONIDS=vstr
30 vstr.but: FORCE
31 echo \\versionid $(VERSION) > vstr.but
32 FORCE:;
33 else
34 VERSIONIDS=vids
35 endif
36
37 CHAPTERS := $(SITE) blurb intro gs using config pscp psftp plink pubkey
38 CHAPTERS += pageant errors faq feedback licence udp pgpkeys sshnames
39 CHAPTERS += index $(VERSIONIDS)
40
41 INPUTS = $(patsubst %,%.but,$(CHAPTERS))
42
43 # This is temporary. Hack it locally or something.
44 HALIBUT = halibut
45
46 index.html: $(INPUTS)
47 $(HALIBUT) --text --html --winhelp $(INPUTS)
48
49 # During formal builds it's useful to be able to build this one alone.
50 putty.hlp: $(INPUTS)
51 $(HALIBUT) --winhelp $(INPUTS)
52
53 putty.info: $(INPUTS)
54 $(HALIBUT) --info $(INPUTS)
55
56 chm: putty.hhp
57 putty.hhp: $(INPUTS) chm.but
58 $(HALIBUT) --html $(INPUTS) chm.but
59
60 MKMAN = $(HALIBUT) --man=$@ mancfg.but $<
61 MANPAGES = putty.1 puttygen.1 plink.1 pscp.1 psftp.1 puttytel.1 pterm.1
62 man: $(MANPAGES)
63
64 putty.1: man-putt.but mancfg.but; $(MKMAN)
65 puttygen.1: man-pg.but mancfg.but; $(MKMAN)
66 plink.1: man-pl.but mancfg.but; $(MKMAN)
67 pscp.1: man-pscp.but mancfg.but; $(MKMAN)
68 psftp.1: man-psft.but mancfg.but; $(MKMAN)
69 puttytel.1: man-ptel.but mancfg.but; $(MKMAN)
70 pterm.1: man-pter.but mancfg.but; $(MKMAN)
71
72 mostlyclean:
73 rm -f *.html *.txt *.hlp *.cnt *.1 *.info vstr.but *.hh[pck]
74 clean: mostlyclean
75 rm -f *.chm