summaryrefslogtreecommitdiff
path: root/macros/plain/contrib/pdcmac/makefile.in
blob: 35bdae190755c010a557a406eec0febdc22a623a (plain)
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
# Makefile for the PDCMAC package
# Template for configure

package		= @package@

#  directory source code is in:
srcdir		= @srcdir@

#  directory for TeX macro files:
texmf		= @texmf@
texdir		= @texdir@
docdir		= @docdir@

#  End of configuration section
########################################################################

TEX		= tex </dev/null
DVIPS		= dvips 
FIG2EPSF	= $(srcdir)/fig2epsf
ETAGS		= $(srcdir)/dtxtags
INSTALL		= @INSTALL@
INSTALL_DATA	= @INSTALL_DATA@
MKDIR		= $(srcdir)/pmkdir $(MKDIRFLAGS)
MKDIRFLAGS	= --mode=755

code_files	= pdccode.tex pdccode2.tex

#  The macro files are divided according to whether they have their own
#  DTX file, or come from pdcmisc.dtx or pdcsty.dtx
self_files	= pdcfmt2.dtx pdcfsel.dtx magrmac.dtx pdcoput5.dtx \
		pdcadobe.dtx pdcl1maa.dtx maamac.dtx
misc_files	= pdcmigr.tex pdcimth.tex pdchyex.tex pdccmsub.tex
sty_files	= ma55lft.tex ma55doc.tex pdccmlft.tex pdccmdoc.tex\
		pdcpsdoc.tex pdcpslft.tex pdcdoc.def pdclft.def
macro_files	= $(self_files:.dtx=.tex) $(misc_files) $(sty_files)

misc_dtx	= pdcmisc.dtx
sty_dtx		= pdcsty.dtx
dtxfiles	= $(self_files) $(sty_dtx) $(misc_dtx) pdccode.dtx
dvifiles	= $(dtxfiles:.dtx=.dvi) pdcguide.dvi

figures		= oput01.eps oput02.eps
documents	= pdcguide.tex magrman.tex copying.tex pdcmacvn.tex
config_files	= makefile.in configure
miscscript	= fig2epsf pmkdir pinstall dtxtags
miscdoc		= 00readme.txt install.txt copying.txt version.txt

distfiles	= $(miscdoc) pdcguide.dvi pdcmondo.tex \
		$(code_files) $(dtxfiles) $(documents) $(config_files) \
		$(figures) $(figures:.eps=.fig) \
		$(miscscript) $(miscscript:=.1)

########################################################################
#	Standard targets

all: 		pdcguide.dvi $(macro_files)

#  Note.  This target assumes either I can use GNU "install", or
#  an "install" compatible with it, or the "pinstall" shellscript supplied.
install:	all pdccode.dvi
	test -d $(texdir) || $(MKDIR) $(texdir)
	$(INSTALL_DATA) $(macro_files) $(texdir)
	-test -d $(docdir) || $(MKDIR) $(docdir)
	-$(INSTALL_DATA) $(dvifiles) $(figures) $(miscdoc) $(docdir)
	-test -r news.txt && $(INSTALL_DATA) news.txt $(docdir)

uninstall:
	cd $(texdir); rm -f $(macro_files) 
	cd $(docdir) && rm -f $(dvifiles) $(figures) $(miscdoc)

mostlyclean:
	rm -f *.log *.ilg *.toc *.bak
clean:		mostlyclean
	rm -f   *.dvi *.aux *.idx $(macro_files) .misc.flag .sty.flag
distclean:	clean
	rm -f makefile config.status TAGS
realclean:	distclean
	rm -f *.ind $(figures) version.txt

dist:		$(distfiles)
	sed -n '/pdcmacv/s/.*[^0-9.]\([0-9.]*\)[^0-9.].*$$/$(package)-\1/p' \
		pdcmacvn.tex > .fn
	rm -rf `cat .fn`
	mkdir `cat .fn`
	cp -p $(distfiles) `cat .fn`
	-cp -p ChangeLog `cat .fn`/changes.txt
	-cp -p news.txt `cat .fn`/news.txt
	cd `cat .fn`; ls -Rl > contents.txt
	tar -cf `cat .fn`.tar `cat .fn` && gzip -v9f `cat .fn`.tar
	cd `cat .fn`; zip -9qrl ../`cat ../.fn`.zip *
	rm -rf `cat .fn` .fn

version.txt: $(dtxfiles) $(miscscript) pdcmacvn.tex
	sed -e 's/\\def\\pdcmacversion{\([0-9]*\.[0-9]*\)}/* $(package) release \1 */' \
	  -e 's/\\def\\pdcmacversion{\([0-9]*\.[0-9]*\)\.\([0-9]*\)}/* $(package) release \1, patch level \2 */' \
	pdcmacvn.tex > version.txt
	date '+Version ID list generated %Y-%m-%d' >> version.txt
	echo >> version.txt
	( grep -h 'rcs\$$Id' $(dtxfiles) | \
	sed -e 's/^.*: \(.*\) \$$.*$$/\1/' -e 's/,v/ =/' | sort; echo; \
	grep version= $(miscscript) configure | \
	sed -e 's/:version=/ = /' -e 's/"//g' | sort ) | \
	align_equals >> version.txt

tagfiles	= $(dtxfiles)
TAGS:		$(tagfiles) $(srcdir)/dtxtags
	$(ETAGS) $(ETAGSFLAGS) $(tagfiles)

########################################################################
#	Individual targets

$(self_files) $(miscfiles): pdccode.tex
$(sty_files): 	pdccode2.tex

pdcguide.dvi magrman.dvi: $(macro_files)
pdcguide.dvi:	 copying.tex pdcmacvn.tex

pdcoput5.dvi pdcoput5.tex: $(figures)

$(misc_files): .misc.flag
.misc.flag:	$(misc_dtx)
	$(TEX) $(misc_dtx) && touch .misc.flag

$(sty_files): 	.sty.flag
.sty.flag:	$(sty_dtx)
	$(TEX) $(sty_dtx) && touch .sty.flag

pdccode.dvi pdccode.tex:   pdccode.dtx
	$(TEX) pdccode.dtx
	grep endinput tmp.tex && mv tmp.tex pdccode.tex

pdcguide.ps: pdcguide.tex copying.tex $(macro_files)
	echo '\let\usepsfonts! \input pdcguide' > tmp.tex
	$(TEX) tmp
	rm -f tmp.tex
	$(DVIPS) $(DVIPSFLAGS) -o $@ tmp

#  A scratch file for doing tests:
tryit.dvi:	tryit.tex ma55lft.tex pdcl1maa.tex
	$(TEX) tryit


# rules for the configuration itself
makefile: makefile.in config.status
	sh config.status makefile
config.status: $(srcdir)/configure
	sh config.status --recheck --nocreate

########################################################################
#	Implicit rules

.SUFFIXES:	.dtx .tex .dvi .ps .eps .fig
.dtx.tex:
	$(TEX) $<
.tex.dvi:
	$(TEX) $<
.dvi.ps:
	$(DVIPS) $(DVIPSFLAGS) $< -o $@
.fig.eps:
	$(FIG2EPSF) $< > $@