summaryrefslogtreecommitdiff
path: root/src/rtt/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'src/rtt/Makefile')
-rw-r--r--src/rtt/Makefile87
1 files changed, 87 insertions, 0 deletions
diff --git a/src/rtt/Makefile b/src/rtt/Makefile
new file mode 100644
index 0000000..db6445e
--- /dev/null
+++ b/src/rtt/Makefile
@@ -0,0 +1,87 @@
+# Makefile for the Icon run-time translator, rtt,
+# which is used to build the Icon run-time system.
+
+include ../../Makedefs
+
+
+ROBJS = rttparse.o rttmain.o rttlex.o rttsym.o rttnode.o rttout.o rttmisc.o\
+ rttdb.o rttinlin.o rttilc.o
+
+PP_DIR = ../preproc/
+P_DOT_H = $(PP_DIR)preproc.h $(PP_DIR)pproto.h ltoken.h ../h/mproto.h\
+ ../h/define.h ../h/config.h ../h/typedefs.h\
+ ../h/cstructs.h ../h/cpuconf.h
+POBJS = pout.o pchars.o perr.o pmem.o bldtok.o macro.o preproc.o\
+ evaluate.o files.o gettok.o pinit.o
+
+COBJS = ../common/getopt.o ../common/time.o ../common/filepart.o \
+ ../common/identify.o ../common/strtbl.o ../common/alloc.o \
+ ../common/rtdb.o ../common/munix.o ../common/literals.o
+
+OBJ = $(ROBJS) $(POBJS) $(COBJS)
+
+
+rtt: $(OBJ)
+ $(CC) $(LDFLAGS) -o rtt $(OBJ)
+ cp rtt ../../bin
+ strip ../../bin/rtt$(EXE)
+
+library: $(OBJ)
+ rm -rf rtt.a
+ ar qc rtt.a $(OBJ)
+
+$(COBJS):
+ cd ../common; $(MAKE)
+
+$(ROBJS): rtt.h rtt1.h rttproto.h $(P_DOT_H)
+
+rttdb.o: ../h/version.h
+rttparse.o : ../h/gsupport.h ../h/config.h ../h/cstructs.h \
+ ../h/mproto.h ../h/typedefs.h ../h/cpuconf.h ../h/define.h
+
+pout.o: $(PP_DIR)pout.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)pout.c
+
+pchars.o: $(PP_DIR)pchars.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)pchars.c
+
+perr.o: $(PP_DIR)perr.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)perr.c
+
+pmem.o: $(PP_DIR)pmem.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)pmem.c
+
+bldtok.o: $(PP_DIR)bldtok.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)bldtok.c
+
+macro.o: $(PP_DIR)macro.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)macro.c
+
+preproc.o: $(PP_DIR)preproc.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)preproc.c
+
+evaluate.o: $(PP_DIR)evaluate.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)evaluate.c
+
+files.o: $(PP_DIR)files.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)files.c
+
+gettok.o: $(PP_DIR)gettok.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)gettok.c
+
+pinit.o: $(PP_DIR)pinit.c $(P_DOT_H)
+ $(CC) -c $(CFLAGS) $(PP_DIR)pinit.c
+
+#
+# The following entry is commented out because it is not normally
+# necessary to recreate rttparse.c and ltoken.h unless the grammar
+# in rttgram.y for the run-time langauge is changed. Recreating these
+# files is not normally a part of the installation process. Note that
+# on some systems, yacc may not have large enough internal tables to
+# translate this grammar.
+#
+#rttparse.c ltoken.h: rttgram.y
+# yacc -d rttgram.y
+# fgrep -v -x "extern char *malloc(), *realloc();" y.tab.c > rttparse.c
+# rm y.tab.c
+# mv y.tab.h ltoken.h