|
|
1.1 root 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) 6/2/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: #
45: HDRS= astoks.H astokfix.awk as.h asexpr.h asnumber.h asscan.h asscanl.h \
46: assyms.h instrs.h
47: SRCS= 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
50: OBJS= 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
53: GRIND = 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: #
81: AS= /bin/as
82: DFLAGS= -DAS
83: CFLAGS= -O ${DFLAGS}
84:
85: as: ${OBJS} ${LIBC}
86: ${CC} -o $@ ${CFLAGS} ${OBJS}
87:
88: .c.o: astoks.h ${HDRS}
89: ${CC} ${CFLAGS} -c $*.c
90:
91: astoks.h: astoks.H astokfix.awk
92: awk -f astokfix.awk < astoks.H > astoks.h
93:
94: aspseudo.o: as.h astoks.h aspseudo.c instrs.h instrs.as
95: ${CC} -c -R ${DFLAGS} aspseudo.c
96:
97: instrs.as: instrs
98: (echo FLAVOR AS ; cat instrs) | awk -f instrs > instrs.as
99:
100: lint: FRC
101: lint ${CFLAGS} ${SRCS}
102:
103: clean: FRC
104: rm -f ${OBJS} instrs.as as core a.out errs
105:
106: depend: instrs.as FRC
107: mkdep ${CFLAGS} ${SRCS}
108:
109: install: FRC
110: install -s -o bin -g bin -m 755 as ${DESTDIR}/bin/as
111:
112: tags: FRC
113: ctags ${SRCS}
114:
115: print:
116: pr Makefile ${HDRS} ${SRCS}
117:
118: FRC:
119: # DO NOT DELETE THIS LINE -- mkdep uses it.
120: # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.