aboutsummaryrefslogtreecommitdiffstats
path: root/doc/Makefile.in
blob: 9203f121ee1544155ab4dd737fc6c8b969754244 (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
#
# UNIX Makefile for NASM documentation
#

top_srcdir	= @top_srcdir@
srcdir		= @srcdir@
VPATH		= @srcdir@
prefix		= @prefix@
exec_prefix	= @exec_prefix@
bindir		= @bindir@
mandir		= @mandir@
docdir		= $(prefix)/doc/nasm
infodir		= @infodir@
datarootdir	= @datarootdir@

INSTALL		= @INSTALL@
INSTALL_PROGRAM	= @INSTALL_PROGRAM@
INSTALL_DATA	= @INSTALL_DATA@

PERL		= perl -I$(srcdir)
MAKEINFO	= makeinfo
TEXI2DVI        = texi2dvi
TEXI2IPF	= texi2ipf
IPFC		= ipfc

ACRODIST	= acrodist		# Acrobat Distiller
PSTOPDF		= pstopdf		# BSD/MacOS X utility
PS2PDF          = ps2pdf		# Part of GhostScript

RM_F		= rm -f
RM_RF		= rm -rf

SRCS		= nasmdoc.src inslist.src changes.src version.src
OUT		= info html nasmdoc.txt nasmdoc.ps nasmdoc.pdf

.SUFFIXES: .pfa .ph

all: $(OUT)

os2: nasm.inf

inslist.src: inslist.pl ../x86/insns.dat
	$(PERL) $(srcdir)/inslist.pl $(srcdir)/../x86/insns.dat

.PHONY: html
html: html/nasmdoc0.html

RDSRC = $(PERL) $(srcdir)/rdsrc.pl -I$(srcdir)/

html/nasmdoc0.html: $(SRCS) rdsrc.pl
	$(RDSRC) -ohtml html nasmdoc.src

nasmdoc.dip: $(SRCS) rdsrc.pl
	$(RDSRC) dip nasmdoc.src

nasmdoc.texi: $(SRCS) rdsrc.pl
	$(RDSRC) texi nasmdoc.src

nasmdoc.txt: $(SRCS) rdsrc.pl
	$(RDSRC) txt nasmdoc.src

version.src: $(top_srcdir)/version.pl $(top_srcdir)/version
	$(PERL) $(top_srcdir)/version.pl docsrc \
		< $(top_srcdir)/version > version.src

nasmdoc.ps: nasmdoc.dip nasmlogo.eps genps.pl afmmetrics.ph pswidth.ph \
	psfonts.ph head.ps
	$(PERL) $(srcdir)/genps.pl -headps $(srcdir)/head.ps nasmdoc.dip \
		> nasmdoc.ps

nasmdoc.pdf: nasmdoc.ps
	$(PERL) pspdf.pl nasmdoc.ps nasmdoc.pdf

.PHONY: info
info: info/nasm.info

info/nasm.info: nasmdoc.texi
	mkdir -p info
	$(MAKEINFO) $<
	mv -f *.info *.info-* info

# DVI output from texinfo (optional)
nasmdoc.dvi: nasmdoc.texi
	$(TEXI2DVI) nasmdoc.texi

# Rules for building an OS/2 book
nasmdoc.ipf: nasmdoc.texi
	$(TEXI2IPF) $< >$@

nasm.inf: nasmdoc.ipf
	$(IPFC) -i -s $< $@

clean:
	-$(RM_F) *.rtf *.hpj *.texi *.gid *.ipf *.dip
	-$(RM_F) *.aux *.cp *.fn *.ky *.pg *.log *.toc *.tp *.vr
	-$(RM_F) inslist.src version.src

spotless: clean
	-$(RM_RF) html info
	-$(RM_F) *.hlp nasmdoc.txt *.inf *.pdf *.dvi
	-$(RM_F) nasmdoc*.ps

install: all
	mkdir -p $(INSTALLROOT)$(infodir)
	$(INSTALL_DATA) info/* $(INSTALLROOT)$(infodir)
	mkdir -p $(INSTALLROOT)$(docdir)/html
	$(INSTALL_DATA) html/* $(INSTALLROOT)$(docdir)/html
	$(INSTALL_DATA) nasmdoc.ps nasmdoc.pdf nasmdoc.txt $(INSTALLROOT)$(docdir)