summaryrefslogtreecommitdiff
path: root/Makefile.in
blob: ce7b47d4576a5facaa2f2df04d944eb80f44589d (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
#
# Auto-configuring Makefile for the Netwide Assembler.
#
# The Netwide Assembler is copyright (C) 1996 Simon Tatham and
# Julian Hall. All rights reserved. The software is
# redistributable under the licence given in the file "Licence"
# distributed in the NASM archive.

srcdir = @srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
mandir = @mandir@

CC = @CC@
CFLAGS = @CFLAGS@ @GCCFLAGS@ -I$(srcdir) -I.

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

.c.o:
	$(CC) -c $(CFLAGS) $<

NASM = nasm.o nasmlib.o float.o insnsa.o assemble.o labels.o \
       parser.o outform.o outbin.o outaout.o outcoff.o outelf.o \
       outobj.o outas86.o outrdf.o outrdf2.o outdbg.o zoutieee.o \
       preproc.o listing.o eval.o

NDISASM = ndisasm.o disasm.o sync.o nasmlib.o insnsd.o

all: nasm ndisasm

nasm: $(NASM)
	$(CC) -o nasm $(NASM)

ndisasm: $(NDISASM)
	$(CC) -o ndisasm $(NDISASM)

assemble.o: assemble.c nasm.h insnsi.h nasmlib.h assemble.h insns.h
disasm.o: disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
eval.o: eval.c eval.h nasm.h insnsi.h nasmlib.h
float.o: float.c nasm.h insnsi.h
insnsa.o: insnsa.c nasm.h insnsi.h insns.h
insnsd.o: insnsd.c nasm.h insnsi.h insns.h
labels.o: labels.c nasm.h insnsi.h nasmlib.h
listing.o: listing.c nasm.h insnsi.h nasmlib.h listing.h
nasm.o: nasm.c nasm.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
 outform.h listing.h
nasmlib.o: nasmlib.c nasm.h insnsi.h nasmlib.h
ndisasm.o: ndisasm.c nasm.h insnsi.h nasmlib.h sync.h disasm.h
outaout.o: outaout.c nasm.h insnsi.h nasmlib.h outform.h
outas86.o: outas86.c nasm.h insnsi.h nasmlib.h outform.h
outbin.o: outbin.c nasm.h insnsi.h nasmlib.h outform.h
outcoff.o: outcoff.c nasm.h insnsi.h nasmlib.h outform.h
outdbg.o: outdbg.c nasm.h insnsi.h nasmlib.h outform.h
outelf.o: outelf.c nasm.h insnsi.h nasmlib.h outform.h
outform.o: outform.c outform.h nasm.h insnsi.h
outobj.o: outobj.c nasm.h insnsi.h nasmlib.h outform.h
outrdf.o: outrdf.c nasm.h insnsi.h nasmlib.h outform.h
outrdf2.o: outrdf2.c nasm.h insnsi.h nasmlib.h outform.h
parser.o: parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
preproc.o: preproc.c nasm.h insnsi.h nasmlib.h macros.c
sync.o: sync.c sync.h
zoutieee.o: zoutieee.c nasm.h insnsi.h nasmlib.h outform.h

# These source files are automagically generated from a single
# instruction-table file by a Perl script. They're distributed,
# though, so it isn't necessary to have Perl just to recompile NASM
# from the distribution.

insnsa.c insnsd.c insnsi.h insnsn.c: insns.dat insns.pl
	perl $(srcdir)/insns.pl $(srcdir)/insns.dat

# This source file is generated from the standard macros file
# `standard.mac' by another Perl script. Again, it's part of the
# standard distribution.

macros.c: standard.mac macros.pl
	perl $(srcdir)/macros.pl $(srcdir)/standard.mac

install: nasm ndisasm
	$(INSTALL_PROGRAM) nasm $(bindir)/nasm
	$(INSTALL_PROGRAM) ndisasm $(bindir)/ndisasm
	$(INSTALL_DATA) $(srcdir)/nasm.1 $(mandir)/man1/nasm.1
	$(INSTALL_DATA) $(srcdir)/ndisasm.1 $(mandir)/man1/ndisasm.1

clean:
	rm -f *.o nasm ndisasm
	cd rdoff; $(MAKE) clean

distclean: clean
	rm -f config.* Makefile *~ *.bak changes.lst changes.bin
	cd rdoff; $(MAKE) distclean

cleaner: clean
	rm -f insnsa.c insnsd.c insnsi.h insnsn.c macros.c

spotless: distclean cleaner

rdf:
	cd rdoff; $(MAKE)

rdf_install install_rdf:
	cd rdoff; $(MAKE) install