xref: /original-bsd/old/as.vax/Makefile (revision cd18b70b)
1#
2# Copyright (c) 1980 Regents of the University of California.
3# All rights reserved.  The Berkeley software License Agreement
4# specifies the terms and conditions for redistribution.
5#
6#	@(#)Makefile	5.5 (Berkeley) 06/02/87
7#
8#	as.h		Definitions for data structures
9#	asnumber.h	Definitions for all numbers: byte .. G format float
10#	asscan.h	Definitions for the character scanner
11#	asscanl.h	Definitions for the character scanner;
12#				local to asscan?.c
13#	astokfix.awk
14#	astoks.H	The defines for tokens that yacc produced
15#				This is processed by astokfix.awk to yield:
16#	astoks.h	Included implicitly in as.h
17#	asexpr.h	The macros for parsing and expressions
18#	assyms.h	Macros for dealing with the symbol table
19#	instrs.h	Definitions to make instrs more readable
20#
21#	asscan1.c	buffer management, yylex, and buffer drainer
22#	asscan2.c	character scanner, and buffer filler
23#	asscan3.c	character sets definitions (initialized data)
24#	asscan4.c	constructs normal integers; interfaces with bignum?.c
25#
26#	bignum1.c	constructs large integers; utility routines
27#	bignum2.c	packs/unpacks floating point numbers
28#	natof.c		constructs large floating point #'s, ala atof
29#
30#	asparse.c	parser
31#	asexpr.c	parses expressions, constructs and evaluates
32#				expression trees
33#
34#	asmain.c	main body
35#	assyms.c	symbol table processing routines
36#	asjxxx.c	Fixes jxxx instructions
37#	ascode.c	Emits code
38#	assizetab.c	Converts internal ordinal #'s into sizes, strings, etc
39#	asio.c		Does block I/O and faster versions of fwrite
40#
41#	aspseudo.c	Symbol table definitions for reserved words
42#	instrs		included in pseudo.c; instructions and semantic info
43#				for each instructions
44#
45HDRS=	astoks.H astokfix.awk as.h asexpr.h asnumber.h asscan.h asscanl.h \
46	assyms.h instrs.h
47SRCS=	asscan1.c asscan2.c asscan3.c asscan4.c bignum1.c bignum2.c natof.c \
48	floattab.c asmain.c asparse.c asexpr.c assyms.c asjxxx.c ascode.c \
49	aspseudo.c assizetab.c asio.c
50OBJS=	asscan1.o asscan2.o asscan3.o asscan4.o bignum1.o bignum2.o natof.o \
51	floattab.o asparse.o asexpr.o asmain.o assyms.o asjxxx.o ascode.o \
52	aspseudo.o assizetab.o asio.o
53GRIND = astoks.h as.h asscan.h assyms.h asexpr.h instrs.h asnumber.h \
54	asscanl.h asscan1.c asscan2.c asscan3.c asscan4.c bignum1.c \
55	bignum2.c natof.c floattab.c asmain.c asscan.c asparse.c asexpr.c \
56	assyms.c asjxxx.c ascode.c asio.c assizetab.c aspseudo.c
57
58#	available flags:
59#
60#	AS		This is the assembler; always set
61#  (UNIX and VMS are mutually exclusive.)
62#	UNIX		Must be set if the assembler is to produce a.out
63#			files for UNIX.
64#
65#	VMS		Must be set if the assembler is to produce executables
66#			for VMS (Thanks to David Kashtan, SRI for these fixes)
67#
68#	if VMS is set, then these two flags are also valid:
69#			(necessary to frob system calls and '$' conventions
70#	VMSDEVEL	The assembler is being compiled under VMS
71#	UNIXDEVEL	The assembler is being compiled under UNIX
72#
73#
74#	DEBUG		print out various debugging information
75#			in the first pass
76#
77#	FLEXNAMES	All names are stored internally as true character
78#			strings, null terminated, and can be no more
79#			than BUFSIZ long.
80#
81AS=	/bin/as
82DFLAGS=	-DAS
83CFLAGS=	-O ${DFLAGS}
84
85as: ${OBJS} ${LIBC}
86	${CC} -o $@ ${CFLAGS} ${OBJS}
87
88.c.o:	astoks.h ${HDRS}
89	${CC} ${CFLAGS} -c $*.c
90
91astoks.h: astoks.H astokfix.awk
92	awk -f astokfix.awk < astoks.H > astoks.h
93
94aspseudo.o: as.h astoks.h aspseudo.c instrs.h instrs.as
95	${CC} -c -R ${DFLAGS} aspseudo.c
96
97instrs.as: instrs
98	(echo FLAVOR AS ; cat instrs) | awk -f instrs > instrs.as
99
100lint: FRC
101	lint ${CFLAGS} ${SRCS}
102
103clean: FRC
104	rm -f ${OBJS} instrs.as as core a.out errs
105
106depend: instrs.as FRC
107	mkdep ${CFLAGS} ${SRCS}
108
109install: FRC
110	install -s -o bin -g bin -m 755 as ${DESTDIR}/bin/as
111
112tags: FRC
113	ctags ${SRCS}
114
115print:
116	pr Makefile ${HDRS} ${SRCS}
117
118FRC:
119# DO NOT DELETE THIS LINE -- mkdep uses it.
120# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
121
122asscan1.o: asscan1.c asscanl.h /usr/include/stdio.h as.h
123asscan1.o: /usr/include/sys/types.h /usr/include/a.out.h
124asscan1.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
125asscan1.o: asnumber.h asscan.h
126asscan2.o: asscan2.c asscanl.h /usr/include/stdio.h as.h
127asscan2.o: /usr/include/sys/types.h /usr/include/a.out.h
128asscan2.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
129asscan2.o: asnumber.h asscan.h
130asscan3.o: asscan3.c asscanl.h /usr/include/stdio.h as.h
131asscan3.o: /usr/include/sys/types.h /usr/include/a.out.h
132asscan3.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
133asscan3.o: asnumber.h asscan.h
134asscan4.o: asscan4.c asscanl.h /usr/include/stdio.h as.h
135asscan4.o: /usr/include/sys/types.h /usr/include/a.out.h
136asscan4.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
137asscan4.o: asnumber.h asscan.h
138bignum1.o: bignum1.c /usr/include/errno.h /usr/include/stdio.h as.h
139bignum1.o: /usr/include/sys/types.h /usr/include/a.out.h
140bignum1.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
141bignum1.o: asnumber.h
142bignum2.o: bignum2.c /usr/include/stdio.h as.h /usr/include/sys/types.h
143bignum2.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
144bignum2.o: instrs.h astoks.h asnumber.h
145natof.o: natof.c /usr/include/stdio.h /usr/include/ctype.h /usr/include/errno.h
146natof.o: as.h /usr/include/sys/types.h /usr/include/a.out.h
147natof.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
148natof.o: asnumber.h
149floattab.o: floattab.c /usr/include/stdio.h as.h /usr/include/sys/types.h
150floattab.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
151floattab.o: instrs.h astoks.h asnumber.h
152asmain.o: asmain.c /usr/include/stdio.h /usr/include/ctype.h
153asmain.o: /usr/include/signal.h as.h /usr/include/sys/types.h
154asmain.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
155asmain.o: instrs.h astoks.h asnumber.h assyms.h asscan.h asexpr.h
156asmain.o: /usr/include/sys/stat.h
157asparse.o: asparse.c /usr/include/stdio.h as.h /usr/include/sys/types.h
158asparse.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
159asparse.o: instrs.h astoks.h asnumber.h asscan.h assyms.h asexpr.h
160asexpr.o: asexpr.c /usr/include/stdio.h as.h /usr/include/sys/types.h
161asexpr.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
162asexpr.o: instrs.h astoks.h asnumber.h asscan.h asexpr.h
163assyms.o: assyms.c /usr/include/stdio.h /usr/include/ctype.h as.h
164assyms.o: /usr/include/sys/types.h /usr/include/a.out.h /usr/include/sys/exec.h
165assyms.o: /usr/include/stab.h instrs.h astoks.h asnumber.h asscan.h assyms.h
166asjxxx.o: asjxxx.c /usr/include/stdio.h as.h /usr/include/sys/types.h
167asjxxx.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
168asjxxx.o: instrs.h astoks.h asnumber.h assyms.h
169ascode.o: ascode.c /usr/include/stdio.h as.h /usr/include/sys/types.h
170ascode.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
171ascode.o: instrs.h astoks.h asnumber.h assyms.h
172aspseudo.o: aspseudo.c /usr/include/stdio.h as.h /usr/include/sys/types.h
173aspseudo.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
174aspseudo.o: instrs.h astoks.h asnumber.h instrs.as
175assizetab.o: assizetab.c /usr/include/stdio.h as.h /usr/include/sys/types.h
176assizetab.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
177assizetab.o: instrs.h astoks.h asnumber.h assyms.h
178asio.o: asio.c /usr/include/stdio.h as.h /usr/include/sys/types.h
179asio.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
180asio.o: instrs.h astoks.h asnumber.h
181
182# IF YOU PUT ANYTHING HERE IT WILL GO AWAY
183