1986-03-20 14:52:03 +00:00
|
|
|
# make modula-2 "compiler"
|
|
|
|
# $Header$
|
|
|
|
|
|
|
|
HDIR = ../../em/h
|
|
|
|
PKGDIR = ../../em/pkg
|
|
|
|
LIBDIR = ../../em/lib
|
1986-04-03 17:41:26 +00:00
|
|
|
|
1986-03-24 17:29:57 +00:00
|
|
|
INCLUDES = -I$(HDIR) -I$(PKGDIR) -I/user1/erikb/em/h
|
1986-04-03 17:41:26 +00:00
|
|
|
|
1986-03-20 14:52:03 +00:00
|
|
|
LSRC = tokenfile.g program.g declar.g expression.g statement.g
|
|
|
|
CC = cc
|
|
|
|
GEN = LLgen
|
|
|
|
GENOPTIONS =
|
1986-04-03 17:41:26 +00:00
|
|
|
PROFILE =
|
|
|
|
CFLAGS = -DDEBUG $(PROFILE) $(INCLUDES)
|
|
|
|
LFLAGS = $(PROFILE)
|
1986-03-20 14:52:03 +00:00
|
|
|
LOBJ = tokenfile.o program.o declar.o expression.o statement.o
|
|
|
|
COBJ = LLlex.o LLmessage.o char.o error.o main.o \
|
1986-03-26 15:11:02 +00:00
|
|
|
symbol2str.o tokenname.o idf.o input.o type.o def.o \
|
1986-04-03 17:41:26 +00:00
|
|
|
scope.o misc.o enter.o defmodule.o
|
1986-03-20 14:52:03 +00:00
|
|
|
OBJ = $(COBJ) $(LOBJ) Lpars.o
|
|
|
|
GENFILES= tokenfile.c \
|
|
|
|
program.c declar.c expression.c statement.c \
|
|
|
|
tokenfile.g symbol2str.c char.c Lpars.c Lpars.h
|
|
|
|
|
|
|
|
all:
|
|
|
|
make LLfiles
|
|
|
|
make main
|
|
|
|
|
|
|
|
LLfiles: $(LSRC)
|
|
|
|
$(GEN) $(GENOPTIONS) $(LSRC)
|
|
|
|
@touch LLfiles
|
|
|
|
|
|
|
|
main: $(OBJ) Makefile
|
1986-04-03 17:41:26 +00:00
|
|
|
$(CC) $(LFLAGS) $(OBJ) $(LIBDIR)/libcomp.a $(LIBDIR)/malloc.o /user1/erikb/em/lib/libprint.a /user1/erikb/em/lib/libstr.a /user1/erikb/em/lib/libsystem.a -o main
|
1986-03-20 14:52:03 +00:00
|
|
|
size main
|
|
|
|
|
|
|
|
clean:
|
|
|
|
rm -f $(OBJ) $(GENFILES) LLfiles
|
|
|
|
|
|
|
|
tokenfile.g: tokenname.c make.tokfile
|
|
|
|
make.tokfile <tokenname.c >tokenfile.g
|
|
|
|
|
|
|
|
symbol2str.c: tokenname.c make.tokcase
|
|
|
|
make.tokcase <tokenname.c >symbol2str.c
|
|
|
|
|
1986-03-26 15:11:02 +00:00
|
|
|
misc.h: misc.H make.allocd
|
|
|
|
def.h: def.H make.allocd
|
|
|
|
type.h: type.H make.allocd
|
|
|
|
scope.c: scope.C make.allocd
|
1986-03-20 14:52:03 +00:00
|
|
|
|
|
|
|
char.c: char.tab tab
|
|
|
|
./tab -fchar.tab >char.c
|
|
|
|
|
|
|
|
tab:
|
|
|
|
$(CC) tab.c -o tab
|
|
|
|
|
|
|
|
depend:
|
|
|
|
sed '/^#AUTOAUTO/,$$d' Makefile > Makefile.new
|
|
|
|
echo '#AUTOAUTOAUTOAUTOAUTOAUTOAUTOAUTO' >> Makefile.new
|
|
|
|
/user1/erikb/bin/mkdep `sources $(OBJ)` |\
|
|
|
|
sed 's/\.c:/\.o:/' >> Makefile.new
|
|
|
|
mv Makefile Makefile.old
|
|
|
|
mv Makefile.new Makefile
|
|
|
|
|
|
|
|
.SUFFIXES: .H .h .C
|
|
|
|
.H.h .C.c :
|
|
|
|
make.allocd < $< > $@
|
|
|
|
|
|
|
|
#AUTOAUTOAUTOAUTOAUTOAUTOAUTOAUTO
|
1986-03-26 15:11:02 +00:00
|
|
|
LLlex.o: LLlex.h Lpars.h class.h f_info.h idf.h input.h
|
|
|
|
LLmessage.o: LLlex.h Lpars.h idf.h
|
1986-03-20 14:52:03 +00:00
|
|
|
char.o: class.h
|
1986-04-03 17:41:26 +00:00
|
|
|
error.o: LLlex.h f_info.h input.h main.h
|
1986-04-03 00:44:39 +00:00
|
|
|
main.o: LLlex.h Lpars.h debug.h def.h f_info.h idf.h input.h main.h scope.h standards.h type.h
|
1986-03-20 14:52:03 +00:00
|
|
|
symbol2str.o: Lpars.h
|
|
|
|
tokenname.o: Lpars.h idf.h tokenname.h
|
|
|
|
idf.o: idf.h
|
|
|
|
input.o: f_info.h input.h
|
1986-03-29 01:04:49 +00:00
|
|
|
type.o: Lpars.h def.h def_sizes.h idf.h misc.h type.h
|
1986-04-03 00:44:39 +00:00
|
|
|
def.o: Lpars.h debug.h def.h idf.h main.h misc.h scope.h type.h
|
1986-03-27 17:37:41 +00:00
|
|
|
scope.o: LLlex.h debug.h def.h idf.h scope.h type.h
|
1986-03-26 15:11:02 +00:00
|
|
|
misc.o: LLlex.h f_info.h idf.h misc.h
|
1986-03-26 22:46:48 +00:00
|
|
|
enter.o: def.h idf.h misc.h scope.h type.h
|
1986-04-03 00:44:39 +00:00
|
|
|
defmodule.o: LLlex.h def.h f_info.h idf.h input.h scope.h
|
1986-03-20 14:52:03 +00:00
|
|
|
tokenfile.o: Lpars.h
|
1986-04-03 00:44:39 +00:00
|
|
|
program.o: LLlex.h Lpars.h debug.h def.h idf.h main.h misc.h scope.h type.h
|
1986-03-26 15:11:02 +00:00
|
|
|
declar.o: LLlex.h Lpars.h def.h idf.h misc.h scope.h type.h
|
1986-03-27 17:37:41 +00:00
|
|
|
expression.o: LLlex.h Lpars.h def.h idf.h scope.h
|
1986-03-20 14:52:03 +00:00
|
|
|
statement.o: Lpars.h
|
|
|
|
Lpars.o: Lpars.h
|