# Makefile for the Moscow ML 1.42 version of Caml Light runtime system # (DOS/Windows) # Adapted 1994-08-21 for Moscow SML and the corresponding go32 1.12 # NOTE: compiling with gcc for the i386 (Linux or DOS/Windows), the # option "-fno-defer-pop" is extremely important; its absence causes # a space leak --- the C stack grows without bounds. PS 1994-09-01 BINDIR=C:\mosml\bin CC=gcc CFLAGS=-O -DANSI -DMSDOS -fno-defer-pop LIBS=-lgrx -lpc -lm RUNTIME32=go32t.exe OBJS=interp.o misc.o stacks.o fix_code.o main.o fail.o signals.o \ freelist.o major_gc.o minor_gc.o memory.o alloc.o roots.o \ compare.o ints.o floats.o str.o io.o \ extern.o externcp.o intern.o interncp.o \ hash.o sys.o meta.o parsing.o lexing.o gc_ctrl.o graph.o msdos.o mosml.o \ runtime.o md5sum.o DOBJS=debugger.o PRIMS=compare.c extern.c externcp.c floats.c gc_ctrl.c hash.c \ intern.c interncp.c interp.c ints.c io.c lexing.c meta.c parsing.c \ str.c sys.c graph.c mosml.c msdos.c md5sum.c all: camlrunm.exe camlrunm.exe: $(OBJS) prims.o $(RUNTIME32) $(CC) $(CFLAGS) -o camlrunm @&&! prims.o $(OBJS) $(LIBS) ! strip camlrunm coff2exe -s $(RUNTIME32) camlrunm camlrund.exe: opnames.h $(OBJS) prims.o $(DOBJS) $(RUNTIME32) $(CC) $(CFLAGS) -o camlrund @&&! prims.o $(OBJS) $(DOBJS) $(LIBS) ! coff2exe -s $(RUNTIME32) camlrund clean: del camlrunm.exe del camlrunm del camlrund.exe del camlrund del *.o del prims del prims.c del opnames.h del jumptbl.h del makefile.bak install: copy camlrunm.exe $(BINDIR) prims.c: $(PRIMS) perl ../tools/findprim prims < prims.c opnames.h : instruct.h perl ../tools/mkopnam instruct.h > opnames.h # jumptbl.h is required only if you have GCC 2.0 or later jumptbl.h : instruct.h perl ../tools/mkjumptbl instruct.h > jumptbl.h .c.o: $(CC) $(CFLAGS) -c {$< } depend : prims.c opnames.h jumptbl.h del makefile.bak rename makefile makefile.bak perl ../tools/cutdeps makefile.bak > makefile gcc -MM $(CFLAGS) *.c >> makefile ### EVERYTHING THAT GOES BEYOND THIS COMMENT WILL BE ERASED WITHOUT WARNING ### DO NOT DELETE THIS LINE alloc.o: alloc.c alloc.h misc.h config.h ../config/m.h ../config/s.h mlvalues.h \ debugger.h major_gc.h freelist.h memory.h gc.h minor_gc.h stacks.h compare.o: compare.c fail.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h memory.h gc.h major_gc.h freelist.h minor_gc.h str.h debugger.o: debugger.c extern.o: extern.c debugger.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h fail.h gc.h intext.h io.h memory.h major_gc.h freelist.h minor_gc.h externcp.o: externcp.c debugger.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h fail.h gc.h intext.h io.h memory.h major_gc.h freelist.h minor_gc.h \ reverse.h fail.o: fail.c alloc.h misc.h config.h ../config/m.h ../config/s.h mlvalues.h \ fail.h memory.h gc.h major_gc.h freelist.h minor_gc.h signals.h fix_code.o: fix_code.c config.h ../config/m.h ../config/s.h misc.h mlvalues.h \ instruct.h reverse.h floats.o: floats.c alloc.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h fail.h memory.h gc.h major_gc.h freelist.h minor_gc.h debugger.h freelist.o: freelist.c config.h ../config/m.h ../config/s.h debugger.h misc.h \ mlvalues.h freelist.h gc.h gc_ctrl.h major_gc.h gc_ctrl.o: gc_ctrl.c alloc.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h debugger.h gc.h gc_ctrl.h major_gc.h freelist.h minor_gc.h graph.o: graph.c mlvalues.h config.h ../config/m.h ../config/s.h misc.h alloc.h \ memory.h gc.h major_gc.h freelist.h minor_gc.h fail.h hash.o: hash.c mlvalues.h config.h ../config/m.h ../config/s.h misc.h memory.h \ gc.h major_gc.h freelist.h minor_gc.h str.h intern.o: intern.c debugger.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h fail.h gc.h intext.h io.h memory.h major_gc.h freelist.h minor_gc.h \ reverse.h interncp.o: interncp.c debugger.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h fail.h gc.h intext.h io.h memory.h major_gc.h freelist.h minor_gc.h \ reverse.h interp.o: interp.c alloc.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h debugger.h fail.h instruct.h memory.h gc.h major_gc.h freelist.h \ minor_gc.h prims.h signals.h stacks.h str.h unalignd.h jumptbl.h ints.o: ints.c alloc.h misc.h config.h ../config/m.h ../config/s.h mlvalues.h \ fail.h memory.h gc.h major_gc.h freelist.h minor_gc.h io.o: io.c alloc.h misc.h config.h ../config/m.h ../config/s.h mlvalues.h fail.h \ io.h memory.h gc.h major_gc.h freelist.h minor_gc.h signals.h sys.h lexing.o: lexing.c mlvalues.h config.h ../config/m.h ../config/s.h misc.h \ stacks.h memory.h gc.h major_gc.h freelist.h minor_gc.h str.h main.o: main.c version.h alloc.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h exec.h fail.h gc.h globals.h intext.h io.h stacks.h memory.h \ major_gc.h freelist.h minor_gc.h sys.h major_gc.o: major_gc.c config.h ../config/m.h ../config/s.h debugger.h misc.h \ mlvalues.h fail.h freelist.h gc.h gc_ctrl.h globals.h major_gc.h roots.h memory.o: memory.c debugger.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h fail.h freelist.h gc.h gc_ctrl.h major_gc.h memory.h minor_gc.h meta.o: meta.c alloc.h misc.h config.h ../config/m.h ../config/s.h mlvalues.h \ globals.h major_gc.h freelist.h memory.h gc.h minor_gc.h prims.h minor_gc.o: minor_gc.c config.h ../config/m.h ../config/s.h debugger.h misc.h \ mlvalues.h fail.h gc.h gc_ctrl.h major_gc.h freelist.h memory.h minor_gc.h \ roots.h misc.o: misc.c config.h ../config/m.h ../config/s.h debugger.h misc.h mlvalues.h mosml.o: mosml.c fail.h misc.h config.h ../config/m.h ../config/s.h mlvalues.h \ memory.h gc.h major_gc.h freelist.h minor_gc.h str.h msdos.o: msdos.c mlvalues.h config.h ../config/m.h ../config/s.h misc.h \ signals.h instruct.h fail.h parsing.o: parsing.c config.h ../config/m.h ../config/s.h mlvalues.h misc.h \ memory.h gc.h major_gc.h freelist.h minor_gc.h prims.o: prims.c mlvalues.h config.h ../config/m.h ../config/s.h misc.h prims.h roots.o: roots.c debugger.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h memory.h gc.h major_gc.h freelist.h minor_gc.h stacks.h signals.o: signals.c alloc.h misc.h config.h ../config/m.h ../config/s.h \ mlvalues.h signals.h stacks.h memory.h gc.h major_gc.h freelist.h minor_gc.h stacks.o: stacks.c config.h ../config/m.h ../config/s.h debugger.h misc.h \ mlvalues.h fail.h stacks.h memory.h gc.h major_gc.h freelist.h \ minor_gc.h str.o: str.c alloc.h misc.h config.h ../config/m.h ../config/s.h mlvalues.h \ debugger.h sys.o: sys.c config.h ../config/m.h ../config/s.h alloc.h misc.h mlvalues.h \ fail.h globals.h instruct.h signals.h stacks.h memory.h gc.h \ major_gc.h freelist.h minor_gc.h unix.o: unix.c