xref: /original-bsd/old/as.tahoe/Makefile (revision 6fdbdce2)
1#	@(#)Makefile	5.1 (Berkeley) 05/11/90
2#
3#	as.h		Definitions for data structures
4#	asnumber.h	Definitions for all numbers: byte .. G format float
5#	asscan.h	Definitions for the character scanner
6#	asscanl.h	Definitions for the character scanner;
7#				local to asscan?.c
8#	astokfix.awk
9#	astoks.H	The defines for tokens that yacc produced
10#				This is processed by astokfix.awk to yield:
11#	astoks.h	Included implicitly in as.h
12#	asexpr.h	The macros for parsing and expressions
13#	assyms.h	Macros for dealing with the symbol table
14#	instrs.h	Definitions to make instrs more readable
15#
16#	asscan1.c	buffer management, yylex, and buffer drainer
17#	asscan2.c	character scanner, and buffer filler
18#	asscan3.c	character sets definitions (initialized data)
19#	asscan4.c	constructs normal integers; interfaces with bignum.c
20#
21#	bignum.c	constructs large integers; utility routines
22#
23#	asparse.c	parser
24#	asexpr.c	parses expressions, constructs and evaluates
25#				expression trees
26#
27#	asmain.c	main body
28#	assyms.c	symbol table processing routines
29#	asjxxx.c	Fixes jxxx instructions
30#	ascode.c	Emits code
31#	assizetab.c	Converts internal ordinal #'s into sizes, strings, etc
32#	asio.c		Does block I/O and faster versions of fwrite
33#
34#	aspseudo.c	Symbol table definitions for reserved words
35#	instrs		included in pseudo.c; instructions and semantic info
36#				for each instructions
37#
38#	available flags:
39#
40#	AS		This is the assembler; always set
41#  (UNIX and VMS are mutually exclusive.)
42#	UNIX		Must be set if the assembler is to produce a.out
43#			files for UNIX.
44#
45#	VMS		Must be set if the assembler is to produce executables
46#			for VMS (Thanks to David Kashtan, SRI for these fixes)
47#
48#	if VMS is set, then these two flags are also valid:
49#			(necessary to frob system calls and '$' conventions
50#	VMSDEVEL	The assembler is being compiled under VMS
51#	UNIXDEVEL	The assembler is being compiled under UNIX
52#
53#
54#	DEBUG		print out various debugging information
55#			in the first pass
56#
57#	FLEXNAMES	All names are stored internally as true character
58#			strings, null terminated, and can be no more
59#			than BUFSIZ long.
60#
61PROG=	as
62CFLAGS+=-DAS -I.
63SRCS=	asscan1.c asscan2.c asscan3.c asscan4.c bignum.c asmain.c asparse.c \
64	asexpr.c assyms.c asjxxx.c ascode.c aspseudo.c assizetab.c asio.c
65CLEANFILES+=astoks.h instrs.as
66
67.PATH: ${.CURDIR}/../as.vax
68
69astoks.h: astoks.H astokfix.awk
70	awk -f ${.CURDIR}/astokfix.awk < ${.CURDIR}/astoks.H > astoks.h
71
72aspseudo.o: as.h astoks.h aspseudo.c instrs.h instrs.as
73	${CC} ${CFLAGS} -R -c ${.IMPSRC}
74
75instrs.as: ${.CURDIR}/instrs
76	(echo FLAVOR AS ; cat ${.CURDIR}/instrs) | \
77	    awk -f ${.CURDIR}/instrs > instrs.as
78
79.include <bsd.prog.mk>
80
81all depend lint tags: astoks.h instrs.as
82