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