ack/util/ceg/util/make_ceg_obj
1989-03-10 09:47:41 +00:00

45 lines
1.2 KiB
Plaintext

EM = ../../../..
CEG = $(EM)/lib/ceg
Em = $(CEG)/EM_parser/obj_EM_pars
ASMAIN = $(CEG)/assemble/obj_assemble
AS = $(CEG)/as_parser
EVAL = $(CEG)/as_parser/eval
DEF = $(CEG)/defaults
AR = ar
CC = cc
LEXLIB = -ll
IFILES = -I. -I.. -I$(AS) -I$(Em) -I$(EM)/h -I$(EM)/modules/h -I../back
CFLAGS = -O $(IFILES)
CEG_LIBS = $(EM)/modules/lib/liballoc.a\
$(EM)/modules/lib/libprint.a\
$(EM)/modules/lib/libstring.a\
$(EM)/modules/lib/libsystem.a
all: ceg/ceg
ceg/ceg : ceg/as_lib.a ceg/as_instr.o ceg/eval_as.o
cd ceg ; $(CC) -o ceg $(Em)/*.o as_instr.o eval_as.o as_lib.a $(CEG_LIBS) $(LEXLIB) ; cd ..
ceg/as_lib.a:
-mkdir ceg
cd ceg ; cp $(CEG)/util/make_ceg_obj Makefile ; cd ..
cd ceg ; cp $(ASMAIN)/* . ; $(CC) -c $(CFLAGS) *.c; $(AR) r as_lib.a *.o ; cd ..
-sh -c 'ranlib ceg/as_lib.a'
ceg/eval_as.o : ceg/eval_as.c as.h # $(AS)/as_parser.h $(Em)/arg_type.h
cd ceg ; $(CC) -c $(CFLAGS) eval_as.c ; cd ..
ceg/eval_as.c : as.c # $(EVAL)/eval
cd ceg ; $(EVAL)/eval < ../as.c > eval_as.c ; cd ..
ceg/as_instr.o : as.h ceg/as_lib.a ceg/as_instr.c
cd ceg ; $(CC) -c $(CFLAGS) as_instr.c ; cd ..
ceg/as_instr.c : as_table # $(AS)/as_parser
cd ceg ; $(EM)/lib/cpp -P ../as_table | $(AS)/as_parser > as_instr.c ; cd ..