BSD 4_3_Tahoe release
[unix-history] / usr / src / bin / as / as.tahoe / Makefile
CommitLineData
ca67e7b4
C
1#
2# Copyright (c) 1987 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 1.2 (Berkeley) 6/6/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# bignum.c constructs large integers; utility routines
27#
28# asparse.c parser
29# asexpr.c parses expressions, constructs and evaluates
30# expression trees
31#
32# asmain.c main body
33# assyms.c symbol table processing routines
34# asjxxx.c Fixes jxxx instructions
35# ascode.c Emits code
36# assizetab.c Converts internal ordinal #'s into sizes, strings, etc
37# asio.c Does block I/O and faster versions of fwrite
38#
39# aspseudo.c Symbol table definitions for reserved words
40# instrs included in pseudo.c; instructions and semantic info
41# for each instructions
42#
43HDRS= astoks.H astokfix.awk as.h asscan.h assyms.h asexpr.h
44SRCS= asscan1.c asscan2.c asscan3.c asscan4.c bignum.c asmain.c asparse.c \
45 asexpr.c assyms.c asjxxx.c ascode.c aspseudo.c assizetab.c asio.c
46OBJS= asscan1.o asscan2.o asscan3.o asscan4.o bignum.o asparse.o asexpr.o \
47 asmain.o assyms.o asjxxx.o ascode.o aspseudo.o assizetab.o asio.o
48GRIND = astoks.h as.h asscan.h assyms.h asexpr.h instrs.h asnumber.h \
49 asscanl.h asscan1.c asscan2.c asscan3.c asscan4.c bignum.c \
50 asmain.c asscan.c asparse.c asexpr.c assyms.c asjxxx.c ascode.c \
51 asio.c assizetab.c aspseudo.c
52#
53# available flags:
54#
55# AS This is the assembler; always set
56# (UNIX and VMS are mutually exclusive.)
57# UNIX Must be set if the assembler is to produce a.out
58# files for UNIX.
59#
60# VMS Must be set if the assembler is to produce executables
61# for VMS (Thanks to David Kashtan, SRI for these fixes)
62#
63# if VMS is set, then these two flags are also valid:
64# (necessary to frob system calls and '$' conventions
65# VMSDEVEL The assembler is being compiled under VMS
66# UNIXDEVEL The assembler is being compiled under UNIX
67#
68#
69# DEBUG print out various debugging information
70# in the first pass
71#
72# FLEXNAMES All names are stored internally as true character
73# strings, null terminated, and can be no more
74# than BUFSIZ long.
75#
76DFLAGS= -DAS
77CFLAGS= -O $(DFLAGS)
78
79all: as
80
81as: ${OBJS} ${LIBC}
82 ${CC} ${CFLAGS} ${OBJS} -o $@
83
84astoks.h: astoks.H astokfix.awk
85 awk -f astokfix.awk < astoks.H > astoks.h
86
87aspseudo.o: as.h astoks.h aspseudo.c instrs.h instrs.as
88 ${CC} -c -R ${DFLAGS} aspseudo.c
89
90instrs.as: instrs
91 (echo FLAVOR AS ; cat instrs) | awk -f instrs > instrs.as
92
93clean: FRC
94 rm -f ${OBJS} core as
95
96depend: FRC
97 mkdep ${CFLAGS} ${SRCS}
98
99install: FRC
100 install -s -o bin -g bin as ${DESTDIR}/bin/as
101
102lint: FRC
103 lint ${CFLAGS} ${SRCS}
104
105tags: FRC
106 ctags ${SRCS}
107
108FRC:
109
110# DO NOT DELETE THIS LINE -- mkdep uses it.
111# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
112
113asscan1.o: asscan1.c asscanl.h /usr/include/stdio.h as.h
114asscan1.o: /usr/include/sys/types.h /usr/include/a.out.h
115asscan1.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
116asscan1.o: asnumber.h asscan.h
117asscan2.o: asscan2.c asscanl.h /usr/include/stdio.h as.h
118asscan2.o: /usr/include/sys/types.h /usr/include/a.out.h
119asscan2.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
120asscan2.o: asnumber.h asscan.h
121asscan3.o: asscan3.c asscanl.h /usr/include/stdio.h as.h
122asscan3.o: /usr/include/sys/types.h /usr/include/a.out.h
123asscan3.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
124asscan3.o: asnumber.h asscan.h
125asscan4.o: asscan4.c asscanl.h /usr/include/stdio.h as.h
126asscan4.o: /usr/include/sys/types.h /usr/include/a.out.h
127asscan4.o: /usr/include/sys/exec.h /usr/include/stab.h instrs.h astoks.h
128asscan4.o: asnumber.h asscan.h
129bignum.o: bignum.c /usr/include/errno.h /usr/include/stdio.h as.h
130bignum.o: /usr/include/sys/types.h /usr/include/a.out.h /usr/include/sys/exec.h
131bignum.o: /usr/include/stab.h instrs.h astoks.h asnumber.h
132asmain.o: asmain.c /usr/include/stdio.h /usr/include/ctype.h
133asmain.o: /usr/include/signal.h /usr/include/machine/trap.h as.h
134asmain.o: /usr/include/sys/types.h /usr/include/a.out.h /usr/include/sys/exec.h
135asmain.o: /usr/include/stab.h instrs.h astoks.h asnumber.h assyms.h asscan.h
136asmain.o: asexpr.h
137asparse.o: asparse.c /usr/include/stdio.h as.h /usr/include/sys/types.h
138asparse.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
139asparse.o: instrs.h astoks.h asnumber.h asscan.h assyms.h asexpr.h
140asexpr.o: asexpr.c /usr/include/stdio.h as.h /usr/include/sys/types.h
141asexpr.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
142asexpr.o: instrs.h astoks.h asnumber.h asscan.h asexpr.h
143assyms.o: assyms.c /usr/include/stdio.h /usr/include/ctype.h as.h
144assyms.o: /usr/include/sys/types.h /usr/include/a.out.h /usr/include/sys/exec.h
145assyms.o: /usr/include/stab.h instrs.h astoks.h asnumber.h asscan.h assyms.h
146asjxxx.o: asjxxx.c /usr/include/stdio.h as.h /usr/include/sys/types.h
147asjxxx.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
148asjxxx.o: instrs.h astoks.h asnumber.h assyms.h
149ascode.o: ascode.c /usr/include/stdio.h as.h /usr/include/sys/types.h
150ascode.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
151ascode.o: instrs.h astoks.h asnumber.h assyms.h
152aspseudo.o: aspseudo.c /usr/include/stdio.h as.h /usr/include/sys/types.h
153aspseudo.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
154aspseudo.o: instrs.h astoks.h asnumber.h instrs.as
155assizetab.o: assizetab.c /usr/include/stdio.h as.h /usr/include/sys/types.h
156assizetab.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
157assizetab.o: instrs.h astoks.h asnumber.h assyms.h
158asio.o: asio.c /usr/include/stdio.h as.h /usr/include/sys/types.h
159asio.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h
160asio.o: instrs.h astoks.h asnumber.h
161
162# IF YOU PUT ANYTHING HERE IT WILL GO AWAY