3 # Decide on the versionid policy.
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 string.
7 # Otherwise, we use `svnversion' to examine the checked-out
8 # documentation source, and if that returns a single revision number
9 # then we invent a version string reflecting just that number. Failing
10 # _that_, we resort to versionids.but which gives 'version
13 # So here, we define VERSION using svnversion if it isn't already
16 SVNVERSION=$(shell test -d .svn && svnversion .)
17 BADCHARS=$(findstring :,$(SVNVERSION))$(findstring S,$(SVNVERSION))
19 ifneq ($(SVNVERSION),)
20 ifneq ($(SVNVERSION),exported)
21 VERSION=Built from revision $(patsubst M,,$(SVNVERSION))
26 # ... and now, we condition our build behaviour on whether or not
27 # VERSION _is_ defined.
31 printf '\\versionid $(VERSION)\n' > vstr.but
37 CHAPTERS := $(SITE) copy blurb intro gs using config pscp psftp plink
38 CHAPTERS += pubkey pageant errors faq feedback licence udp pgpkeys sshnames
39 CHAPTERS += index $(VERSIONIDS)
41 INPUTS = $(patsubst %,%.but,$(CHAPTERS))
43 # This is temporary. Hack it locally or something.
47 $(HALIBUT) --text --html --winhelp $(INPUTS)
49 # During formal builds it's useful to be able to build this one alone.
51 $(HALIBUT) --winhelp $(INPUTS)
54 $(HALIBUT) --info $(INPUTS)
57 putty.hhp: $(INPUTS) chm.but
58 $(HALIBUT) --html $(INPUTS) chm.but
60 MKMAN = $(HALIBUT) --man=$@ mancfg.but $<
61 MANPAGES = putty.1 puttygen.1 plink.1 pscp.1 psftp.1 puttytel.1 pterm.1 \
65 putty.1: man-putt.but mancfg.but; $(MKMAN)
66 puttygen.1: man-pg.but mancfg.but; $(MKMAN)
67 plink.1: man-pl.but mancfg.but; $(MKMAN)
68 pscp.1: man-pscp.but mancfg.but; $(MKMAN)
69 psftp.1: man-psft.but mancfg.but; $(MKMAN)
70 puttytel.1: man-ptel.but mancfg.but; $(MKMAN)
71 pterm.1: man-pter.but mancfg.but; $(MKMAN)
72 pageant.1: man-pag.but mancfg.but; $(MKMAN)
75 rm -f *.html *.txt *.hlp *.cnt *.1 *.info vstr.but *.hh[pck]