|
@@ -7,6 +7,11 @@ EM = /usr/em# # where to find the ACK tree
|
|
ACK = $(EM)/bin/ack# # old ACK C compiler
|
|
ACK = $(EM)/bin/ack# # old ACK C compiler
|
|
EM_INCLUDES =$(EM)/h# # directory containing EM interface definition
|
|
EM_INCLUDES =$(EM)/h# # directory containing EM interface definition
|
|
|
|
|
|
|
|
+# Libraries
|
|
|
|
+SYSLIB = /user1/erikb/em/lib/libsystem.a
|
|
|
|
+LIBS = $(SYSLIB)
|
|
|
|
+LIB_INCLUDES = /user1/erikb/em/h
|
|
|
|
+
|
|
# Where to install the compiler and its driver
|
|
# Where to install the compiler and its driver
|
|
CEMCOM = $(BIN)/cemcom
|
|
CEMCOM = $(BIN)/cemcom
|
|
DRIVER = $(BIN)/cem
|
|
DRIVER = $(BIN)/cem
|
|
@@ -22,7 +27,7 @@ GEN = /user0/ceriel/bin/LLgen
|
|
GENOPTIONS = -vv
|
|
GENOPTIONS = -vv
|
|
|
|
|
|
# Special #defines during compilation
|
|
# Special #defines during compilation
|
|
-CDEFS = $(MAP) -I$(EM_INCLUDES)
|
|
|
|
|
|
+CDEFS = $(MAP) -I$(EM_INCLUDES) -I$(LIB_INCLUDES)
|
|
CFLAGS = $(CDEFS) $(COPTIONS) -O# # we cannot pass the COPTIONS to lint!
|
|
CFLAGS = $(CDEFS) $(COPTIONS) -O# # we cannot pass the COPTIONS to lint!
|
|
|
|
|
|
# Grammar files and their objects
|
|
# Grammar files and their objects
|
|
@@ -37,7 +42,7 @@ COBJ = main.o idf.o declarator.o decspecs.o struct.o \
|
|
input.o domacro.o replace.o init.o options.o \
|
|
input.o domacro.o replace.o init.o options.o \
|
|
scan.o skip.o stack.o type.o ch7mon.o label.o eval.o \
|
|
scan.o skip.o stack.o type.o ch7mon.o label.o eval.o \
|
|
switch.o storage.o ival.o conversion.o \
|
|
switch.o storage.o ival.o conversion.o \
|
|
- em.o blocks.o dataflow.o system.o string.o
|
|
|
|
|
|
+ em.o blocks.o dataflow.o string.o
|
|
|
|
|
|
# Objects of other generated C files
|
|
# Objects of other generated C files
|
|
GOBJ = char.o symbol2str.o next.o writeem.o
|
|
GOBJ = char.o symbol2str.o next.o writeem.o
|
|
@@ -54,7 +59,7 @@ GHSRC = botch_free.h dataflow.h debug.h density.h errout.h \
|
|
maxincl.h myalloc.h nobitfield.h nopp.h \
|
|
maxincl.h myalloc.h nobitfield.h nopp.h \
|
|
nparams.h numsize.h parbufsize.h pathlength.h predefine.h \
|
|
nparams.h numsize.h parbufsize.h pathlength.h predefine.h \
|
|
proc_intf.h strsize.h target_sizes.h textsize.h use_tmp.h \
|
|
proc_intf.h strsize.h target_sizes.h textsize.h use_tmp.h \
|
|
- bufsiz.h str_params.h spec_arith.h
|
|
|
|
|
|
+ str_params.h spec_arith.h
|
|
|
|
|
|
# Other generated files, for 'make clean' only
|
|
# Other generated files, for 'make clean' only
|
|
GENERATED = tab tokenfile.g Lpars.h LLfiles LL.output lint.out \
|
|
GENERATED = tab tokenfile.g Lpars.h LLfiles LL.output lint.out \
|
|
@@ -76,7 +81,7 @@ cc:
|
|
make main
|
|
make main
|
|
|
|
|
|
cem: cem.c string.o
|
|
cem: cem.c string.o
|
|
- $(CC) -O cem.c string.o -o cem
|
|
|
|
|
|
+ $(CC) -O cem.c string.o $(SYSLIB) -o cem
|
|
|
|
|
|
lint.cem: cem.c string.c
|
|
lint.cem: cem.c string.c
|
|
lint -abx cem.c
|
|
lint -abx cem.c
|
|
@@ -124,7 +129,7 @@ writeem.h: make.emmac emcode.def
|
|
OBJ = $(COBJ) $(LOBJ) $(GOBJ)
|
|
OBJ = $(COBJ) $(LOBJ) $(GOBJ)
|
|
|
|
|
|
main: $(OBJ) Makefile
|
|
main: $(OBJ) Makefile
|
|
- $(CC) $(COPTIONS) $(LFLAGS) $(OBJ) -o main
|
|
|
|
|
|
+ $(CC) $(COPTIONS) $(LFLAGS) $(OBJ) $(LIBS) -o main
|
|
size main
|
|
size main
|
|
|
|
|
|
cfiles: hfiles LLfiles $(GSRC)
|
|
cfiles: hfiles LLfiles $(GSRC)
|
|
@@ -184,7 +189,7 @@ sim: cfiles
|
|
$(SIM) $(SIMFLAGS) `sources $(COBJ)` $(GSRC) $(LSRC)
|
|
$(SIM) $(SIMFLAGS) `sources $(COBJ)` $(GSRC) $(LSRC)
|
|
|
|
|
|
#AUTOAUTOAUTOAUTOAUTOAUTOAUTOAUTOAUTOAUTO
|
|
#AUTOAUTOAUTOAUTOAUTOAUTOAUTOAUTOAUTOAUTO
|
|
-main.o: LLlex.h Lpars.h alloc.h arith.h bufsiz.h debug.h declar.h idf.h input.h inputtype.h level.h maxincl.h myalloc.h nobitfield.h nopp.h spec_arith.h specials.h system.h target_sizes.h tokenname.h type.h use_tmp.h
|
|
|
|
|
|
+main.o: LLlex.h Lpars.h alloc.h arith.h debug.h declar.h idf.h input.h inputtype.h level.h maxincl.h myalloc.h nobitfield.h nopp.h spec_arith.h specials.h target_sizes.h tokenname.h type.h use_tmp.h
|
|
idf.o: LLlex.h Lpars.h align.h alloc.h arith.h assert.h botch_free.h debug.h declar.h decspecs.h def.h idf.h idfsize.h label.h level.h nobitfield.h nopp.h sizes.h spec_arith.h specials.h stack.h storage.h struct.h type.h
|
|
idf.o: LLlex.h Lpars.h align.h alloc.h arith.h assert.h botch_free.h debug.h declar.h decspecs.h def.h idf.h idfsize.h label.h level.h nobitfield.h nopp.h sizes.h spec_arith.h specials.h stack.h storage.h struct.h type.h
|
|
declarator.o: Lpars.h alloc.h arith.h botch_free.h declar.h expr.h idf.h label.h nobitfield.h nopp.h sizes.h spec_arith.h storage.h type.h
|
|
declarator.o: Lpars.h alloc.h arith.h botch_free.h declar.h expr.h idf.h label.h nobitfield.h nopp.h sizes.h spec_arith.h storage.h type.h
|
|
decspecs.o: Lpars.h arith.h decspecs.h def.h level.h nobitfield.h spec_arith.h type.h
|
|
decspecs.o: Lpars.h arith.h decspecs.h def.h level.h nobitfield.h spec_arith.h type.h
|
|
@@ -194,22 +199,22 @@ ch7.o: Lpars.h arith.h assert.h debug.h def.h expr.h idf.h label.h nobitfield.h
|
|
ch7bin.o: Lpars.h arith.h botch_free.h expr.h idf.h label.h nobitfield.h nopp.h spec_arith.h storage.h struct.h type.h
|
|
ch7bin.o: Lpars.h arith.h botch_free.h expr.h idf.h label.h nobitfield.h nopp.h spec_arith.h storage.h struct.h type.h
|
|
cstoper.o: Lpars.h arith.h expr.h idf.h label.h nobitfield.h nopp.h sizes.h spec_arith.h target_sizes.h type.h
|
|
cstoper.o: Lpars.h arith.h expr.h idf.h label.h nobitfield.h nopp.h sizes.h spec_arith.h target_sizes.h type.h
|
|
arith.o: Lpars.h alloc.h arith.h botch_free.h expr.h field.h idf.h label.h mes.h nobitfield.h nopp.h spec_arith.h storage.h type.h
|
|
arith.o: Lpars.h alloc.h arith.h botch_free.h expr.h field.h idf.h label.h mes.h nobitfield.h nopp.h spec_arith.h storage.h type.h
|
|
-alloc.o: alloc.h assert.h debug.h myalloc.h system.h
|
|
|
|
|
|
+alloc.o: alloc.h assert.h debug.h myalloc.h
|
|
code.o: LLlex.h Lpars.h alloc.h arith.h assert.h atw.h botch_free.h code.h dataflow.h debug.h declar.h decspecs.h def.h em.h expr.h idf.h label.h level.h mes.h nobitfield.h nopp.h proc_intf.h sizes.h spec_arith.h specials.h stack.h storage.h type.h use_tmp.h writeem.h
|
|
code.o: LLlex.h Lpars.h alloc.h arith.h assert.h atw.h botch_free.h code.h dataflow.h debug.h declar.h decspecs.h def.h em.h expr.h idf.h label.h level.h mes.h nobitfield.h nopp.h proc_intf.h sizes.h spec_arith.h specials.h stack.h storage.h type.h use_tmp.h writeem.h
|
|
dumpidf.o: Lpars.h arith.h debug.h def.h expr.h field.h idf.h label.h nobitfield.h nopp.h spec_arith.h stack.h struct.h type.h
|
|
dumpidf.o: Lpars.h arith.h debug.h def.h expr.h field.h idf.h label.h nobitfield.h nopp.h spec_arith.h stack.h struct.h type.h
|
|
-error.o: LLlex.h arith.h debug.h em.h errout.h expr.h label.h nopp.h proc_intf.h spec_arith.h string.h system.h tokenname.h use_tmp.h writeem.h
|
|
|
|
|
|
+error.o: LLlex.h arith.h debug.h em.h errout.h expr.h label.h nopp.h proc_intf.h spec_arith.h string.h tokenname.h use_tmp.h writeem.h
|
|
field.o: Lpars.h arith.h assert.h code.h debug.h em.h expr.h field.h idf.h label.h nobitfield.h nopp.h proc_intf.h sizes.h spec_arith.h type.h writeem.h
|
|
field.o: Lpars.h arith.h assert.h code.h debug.h em.h expr.h field.h idf.h label.h nobitfield.h nopp.h proc_intf.h sizes.h spec_arith.h type.h writeem.h
|
|
tokenname.o: LLlex.h Lpars.h arith.h idf.h nopp.h spec_arith.h tokenname.h
|
|
tokenname.o: LLlex.h Lpars.h arith.h idf.h nopp.h spec_arith.h tokenname.h
|
|
LLlex.o: LLlex.h Lpars.h alloc.h arith.h assert.h class.h debug.h def.h idf.h idfsize.h input.h nopp.h numsize.h sizes.h spec_arith.h strsize.h
|
|
LLlex.o: LLlex.h Lpars.h alloc.h arith.h assert.h class.h debug.h def.h idf.h idfsize.h input.h nopp.h numsize.h sizes.h spec_arith.h strsize.h
|
|
LLmessage.o: LLlex.h Lpars.h alloc.h arith.h idf.h nopp.h spec_arith.h
|
|
LLmessage.o: LLlex.h Lpars.h alloc.h arith.h idf.h nopp.h spec_arith.h
|
|
-input.o: LLlex.h alloc.h arith.h assert.h bufsiz.h debug.h idepth.h input.h inputtype.h interface.h nopp.h pathlength.h spec_arith.h system.h
|
|
|
|
|
|
+input.o: LLlex.h alloc.h arith.h assert.h debug.h idepth.h input.h inputtype.h interface.h nopp.h pathlength.h spec_arith.h
|
|
domacro.o: LLlex.h Lpars.h alloc.h arith.h assert.h botch_free.h class.h debug.h idf.h idfsize.h ifdepth.h input.h interface.h macro.h nopp.h nparams.h parbufsize.h spec_arith.h storage.h textsize.h
|
|
domacro.o: LLlex.h Lpars.h alloc.h arith.h assert.h botch_free.h class.h debug.h idf.h idfsize.h ifdepth.h input.h interface.h macro.h nopp.h nparams.h parbufsize.h spec_arith.h storage.h textsize.h
|
|
replace.o: LLlex.h alloc.h arith.h assert.h class.h debug.h idf.h input.h interface.h macro.h nopp.h pathlength.h spec_arith.h string.h strsize.h
|
|
replace.o: LLlex.h alloc.h arith.h assert.h class.h debug.h idf.h input.h interface.h macro.h nopp.h pathlength.h spec_arith.h string.h strsize.h
|
|
-init.o: alloc.h class.h idf.h interface.h macro.h nopp.h predefine.h string.h system.h
|
|
|
|
|
|
+init.o: alloc.h class.h idf.h interface.h macro.h nopp.h predefine.h string.h
|
|
options.o: align.h arith.h class.h idf.h idfsize.h macro.h maxincl.h nobitfield.h nopp.h sizes.h spec_arith.h storage.h
|
|
options.o: align.h arith.h class.h idf.h idfsize.h macro.h maxincl.h nobitfield.h nopp.h sizes.h spec_arith.h storage.h
|
|
scan.o: class.h idf.h input.h interface.h lapbuf.h macro.h nopp.h nparams.h
|
|
scan.o: class.h idf.h input.h interface.h lapbuf.h macro.h nopp.h nparams.h
|
|
skip.o: LLlex.h arith.h class.h input.h interface.h nopp.h spec_arith.h
|
|
skip.o: LLlex.h arith.h class.h input.h interface.h nopp.h spec_arith.h
|
|
-stack.o: Lpars.h alloc.h arith.h botch_free.h debug.h def.h em.h idf.h level.h mes.h nobitfield.h nopp.h proc_intf.h spec_arith.h stack.h storage.h struct.h system.h type.h use_tmp.h writeem.h
|
|
|
|
|
|
+stack.o: Lpars.h alloc.h arith.h botch_free.h debug.h def.h em.h idf.h level.h mes.h nobitfield.h nopp.h proc_intf.h spec_arith.h stack.h storage.h struct.h type.h use_tmp.h writeem.h
|
|
type.o: Lpars.h align.h alloc.h arith.h def.h idf.h nobitfield.h nopp.h sizes.h spec_arith.h type.h
|
|
type.o: Lpars.h align.h alloc.h arith.h def.h idf.h nobitfield.h nopp.h sizes.h spec_arith.h type.h
|
|
ch7mon.o: Lpars.h arith.h botch_free.h def.h expr.h idf.h label.h nobitfield.h nopp.h spec_arith.h storage.h type.h
|
|
ch7mon.o: Lpars.h arith.h botch_free.h def.h expr.h idf.h label.h nobitfield.h nopp.h spec_arith.h storage.h type.h
|
|
label.o: Lpars.h arith.h def.h idf.h label.h level.h nobitfield.h nopp.h spec_arith.h type.h
|
|
label.o: Lpars.h arith.h def.h idf.h label.h level.h nobitfield.h nopp.h spec_arith.h type.h
|
|
@@ -218,11 +223,10 @@ switch.o: arith.h assert.h botch_free.h code.h debug.h density.h em.h expr.h idf
|
|
storage.o: alloc.h assert.h botch_free.h debug.h storage.h
|
|
storage.o: alloc.h assert.h botch_free.h debug.h storage.h
|
|
ival.o: Lpars.h align.h arith.h assert.h class.h debug.h def.h em.h expr.h field.h idf.h label.h level.h nobitfield.h nopp.h proc_intf.h sizes.h spec_arith.h string.h struct.h type.h writeem.h
|
|
ival.o: Lpars.h align.h arith.h assert.h class.h debug.h def.h em.h expr.h field.h idf.h label.h level.h nobitfield.h nopp.h proc_intf.h sizes.h spec_arith.h string.h struct.h type.h writeem.h
|
|
conversion.o: Lpars.h arith.h em.h nobitfield.h proc_intf.h sizes.h spec_arith.h type.h writeem.h
|
|
conversion.o: Lpars.h arith.h em.h nobitfield.h proc_intf.h sizes.h spec_arith.h type.h writeem.h
|
|
-em.o: arith.h bufsiz.h em.h label.h proc_intf.h spec_arith.h system.h writeem.h
|
|
|
|
|
|
+em.o: arith.h em.h label.h proc_intf.h spec_arith.h writeem.h
|
|
blocks.o: arith.h atw.h em.h proc_intf.h sizes.h spec_arith.h writeem.h
|
|
blocks.o: arith.h atw.h em.h proc_intf.h sizes.h spec_arith.h writeem.h
|
|
dataflow.o: dataflow.h
|
|
dataflow.o: dataflow.h
|
|
-system.o: inputtype.h system.h
|
|
|
|
-string.o: arith.h nopp.h spec_arith.h str_params.h string.h system.h
|
|
|
|
|
|
+string.o: arith.h nopp.h spec_arith.h str_params.h string.h
|
|
tokenfile.o: Lpars.h
|
|
tokenfile.o: Lpars.h
|
|
declar.o: LLlex.h Lpars.h arith.h debug.h declar.h decspecs.h def.h expr.h field.h idf.h label.h nobitfield.h nopp.h sizes.h spec_arith.h struct.h type.h
|
|
declar.o: LLlex.h Lpars.h arith.h debug.h declar.h decspecs.h def.h expr.h field.h idf.h label.h nobitfield.h nopp.h sizes.h spec_arith.h struct.h type.h
|
|
statement.o: LLlex.h Lpars.h arith.h botch_free.h code.h debug.h def.h em.h expr.h idf.h label.h nobitfield.h nopp.h proc_intf.h spec_arith.h stack.h storage.h type.h writeem.h
|
|
statement.o: LLlex.h Lpars.h arith.h botch_free.h code.h debug.h def.h em.h expr.h idf.h label.h nobitfield.h nopp.h proc_intf.h spec_arith.h stack.h storage.h type.h writeem.h
|