CFLAGS = -O 
CC = cc
OBJS = util/pathnames.sig.o \
util/pathnames.sml.o \
util/errormsg.sig.o \
util/errormsg.sml.o \
util/dynamic.sml.o \
util/sort.sml.o \
util/sortedlist.sml.o \
util/list2.sml.o \
util/intmap.sig.o \
util/intmap.sml.o \
util/intstrmap.sig.o \
util/intstrmap.sml.o \
util/intset.sml.o \
util/strghash.sml.o \
util/union.sml.o \
util/arrayext.sml.o \
util/ascii.sml.o \
basics/symbol.sig.o \
env/env.sig.o \
env/env.sml.o \
basics/fixity.sig.o \
basics/fixity.sml.o \
basics/printutil.sig.o \
basics/printutil.sml.o \
basics/primop.sig.o \
basics/access.sig.o \
basics/access.sml.o \
basics/stamps.sig.o \
basics/stamps.sml.o \
basics/types.sig.o \
basics/types.sml.o \
basics/variables.sig.o \
basics/variables.sml.o \
basics/tuples.sml.o \
basics/basictypes.sig.o \
basics/basictypes.sml.o \
basics/typesutil.sig.o \
basics/typesutil.sml.o \
basics/unify.sig.o \
basics/unify.sml.o \
basics/conrep.sig.o \
basics/conrep.sml.o \
modules/modules.sig.o \
modules/modules.sml.o \
modules/moduleutil.sig.o \
modules/moduleutil.sml.o \
basics/eqtypes.sig.o \
basics/eqtypes.sml.o \
env/prim.sml.o \
env/coreinfo.sig.o \
env/coreinfo.sml.o \
basics/printtype.sml.o \
basics/printbas.sml.o \
modules/instantiate.sml.o \
modules/sigmatch.sig.o \
modules/sigmatch.sml.o \
modules/abstractfct.sml.o \
modules/applyfct.sml.o \
basics/lambda.sml.o \
absyn/bareabsyn.sig.o \
absyn/bareabsyn.sml.o \
absyn/absyn.sml.o \
absyn/printabsyn.sml.o \
build/index.sml.o \
typing/overload.sig.o \
typing/overload.sml.o \
typing/typecheck.sig.o \
typing/typecheck.sml.o \
print/printval.sig.o \
print/printval.sml.o \
print/printdec.sig.o \
print/printdec.sml.o \
parse/tyvarset.sml.o \
parse/misc.sig.o \
parse/misc.sml.o \
parse/corelang.sml.o \
parse/normalize.sml.o \
parse/signs.sml.o \
parse/strs.sml.o \
parse/base.sml.o \
parse/ml.grm.sig.o \
parse/ml.grm.sml.o \
lex/ml.lex.sml.o \
parse/parse.sml.o \
codegen/opt.sml.o \
translate/mcprint.sml.o \
translate/mcopt.sml.o \
translate/mc.sml.o \
translate/nonrec.sml.o \
translate/equal.sml.o \
translate/unboxed.sml.o \
translate/inlineops.sig.o \
translate/inlineops.sml.o \
translate/translate.sml.o \
cps/cps.sml.o \
cps/reorder.sml.o \
cps/convert.sml.o \
build/prof.sml.o \
sepcomp/filepaths.sig.o \
sepcomp/filepaths.sml.o \
cps/size.sml.o \
cps/profile.sml.o \
cps/cpsprint.sml.o \
cps/freemap.sml.o \
cps/hoist.sml.o \
cps/cpsopt.sml.o \
cps/globalfix.sml.o \
cps/spill.sml.o \
cps/closure.sml.o \
c/cbignum.sml.o \
c/bitset.sml.o \
c/integrate.sml.o \
c/cfreemap.sml.o \
c/cimporter.sml.o \
c/codegen.sig.o \
c/machine.sig.o \
c/c.sig.o \
c/control.sig.o \
c/cprint.sig.o \
c/used.sig.sml.o \
c/used.sml.o \
c/file.sml.o \
c/machine.sml.o \
c/cprint.sml.o \
c/c.sml.o \
c/control.sml.o \
c/cpstoc.sml.o \
c/cpscompc.sml.o \
c/cprocess.sml.o \
c/hookup.sml.o \
c/cglue.sml.o

sml2c-comp:	$(OBJS)
	$(CC) $(CFLAGS) -o $@ $(OBJS) -lsml2c -lm

util/pathnames.sig.o:	util/pathnames.sig.c
	$(CC) $(CFLAGS) -c -o $@ util/pathnames.sig.c

util/pathnames.sml.o:	util/pathnames.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/pathnames.sml.c

util/errormsg.sig.o:	util/errormsg.sig.c
	$(CC) $(CFLAGS) -c -o $@ util/errormsg.sig.c

util/errormsg.sml.o:	util/errormsg.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/errormsg.sml.c

util/dynamic.sml.o:	util/dynamic.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/dynamic.sml.c

util/sort.sml.o:	util/sort.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/sort.sml.c

util/sortedlist.sml.o:	util/sortedlist.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/sortedlist.sml.c

util/list2.sml.o:	util/list2.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/list2.sml.c

util/intmap.sig.o:	util/intmap.sig.c
	$(CC) $(CFLAGS) -c -o $@ util/intmap.sig.c

util/intmap.sml.o:	util/intmap.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/intmap.sml.c

util/intstrmap.sig.o:	util/intstrmap.sig.c
	$(CC) $(CFLAGS) -c -o $@ util/intstrmap.sig.c

util/intstrmap.sml.o:	util/intstrmap.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/intstrmap.sml.c

util/intset.sml.o:	util/intset.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/intset.sml.c

util/strghash.sml.o:	util/strghash.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/strghash.sml.c

util/union.sml.o:	util/union.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/union.sml.c

util/arrayext.sml.o:	util/arrayext.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/arrayext.sml.c

util/ascii.sml.o:	util/ascii.sml.c
	$(CC) $(CFLAGS) -c -o $@ util/ascii.sml.c

basics/symbol.sig.o:	basics/symbol.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/symbol.sig.c

env/env.sig.o:	env/env.sig.c
	$(CC) $(CFLAGS) -c -o $@ env/env.sig.c

env/env.sml.o:	env/env.sml.c
	$(CC) $(CFLAGS) -c -o $@ env/env.sml.c

basics/fixity.sig.o:	basics/fixity.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/fixity.sig.c

basics/fixity.sml.o:	basics/fixity.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/fixity.sml.c

basics/printutil.sig.o:	basics/printutil.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/printutil.sig.c

basics/printutil.sml.o:	basics/printutil.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/printutil.sml.c

basics/primop.sig.o:	basics/primop.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/primop.sig.c

basics/access.sig.o:	basics/access.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/access.sig.c

basics/access.sml.o:	basics/access.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/access.sml.c

basics/stamps.sig.o:	basics/stamps.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/stamps.sig.c

basics/stamps.sml.o:	basics/stamps.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/stamps.sml.c

basics/types.sig.o:	basics/types.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/types.sig.c

basics/types.sml.o:	basics/types.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/types.sml.c

basics/variables.sig.o:	basics/variables.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/variables.sig.c

basics/variables.sml.o:	basics/variables.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/variables.sml.c

basics/tuples.sml.o:	basics/tuples.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/tuples.sml.c

basics/basictypes.sig.o:	basics/basictypes.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/basictypes.sig.c

basics/basictypes.sml.o:	basics/basictypes.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/basictypes.sml.c

basics/typesutil.sig.o:	basics/typesutil.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/typesutil.sig.c

basics/typesutil.sml.o:	basics/typesutil.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/typesutil.sml.c

basics/unify.sig.o:	basics/unify.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/unify.sig.c

basics/unify.sml.o:	basics/unify.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/unify.sml.c

basics/conrep.sig.o:	basics/conrep.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/conrep.sig.c

basics/conrep.sml.o:	basics/conrep.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/conrep.sml.c

modules/modules.sig.o:	modules/modules.sig.c
	$(CC) $(CFLAGS) -c -o $@ modules/modules.sig.c

modules/modules.sml.o:	modules/modules.sml.c
	$(CC) $(CFLAGS) -c -o $@ modules/modules.sml.c

modules/moduleutil.sig.o:	modules/moduleutil.sig.c
	$(CC) $(CFLAGS) -c -o $@ modules/moduleutil.sig.c

modules/moduleutil.sml.o:	modules/moduleutil.sml.c
	$(CC) $(CFLAGS) -c -o $@ modules/moduleutil.sml.c

basics/eqtypes.sig.o:	basics/eqtypes.sig.c
	$(CC) $(CFLAGS) -c -o $@ basics/eqtypes.sig.c

basics/eqtypes.sml.o:	basics/eqtypes.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/eqtypes.sml.c

env/prim.sml.o:	env/prim.sml.c
	$(CC) $(CFLAGS) -c -o $@ env/prim.sml.c

env/coreinfo.sig.o:	env/coreinfo.sig.c
	$(CC) $(CFLAGS) -c -o $@ env/coreinfo.sig.c

env/coreinfo.sml.o:	env/coreinfo.sml.c
	$(CC) $(CFLAGS) -c -o $@ env/coreinfo.sml.c

basics/printtype.sml.o:	basics/printtype.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/printtype.sml.c

basics/printbas.sml.o:	basics/printbas.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/printbas.sml.c

modules/instantiate.sml.o:	modules/instantiate.sml.c
	$(CC) $(CFLAGS) -c -o $@ modules/instantiate.sml.c

modules/sigmatch.sig.o:	modules/sigmatch.sig.c
	$(CC) $(CFLAGS) -c -o $@ modules/sigmatch.sig.c

modules/sigmatch.sml.o:	modules/sigmatch.sml.c
	$(CC) $(CFLAGS) -c -o $@ modules/sigmatch.sml.c

modules/abstractfct.sml.o:	modules/abstractfct.sml.c
	$(CC) $(CFLAGS) -c -o $@ modules/abstractfct.sml.c

modules/applyfct.sml.o:	modules/applyfct.sml.c
	$(CC) $(CFLAGS) -c -o $@ modules/applyfct.sml.c

basics/lambda.sml.o:	basics/lambda.sml.c
	$(CC) $(CFLAGS) -c -o $@ basics/lambda.sml.c

absyn/bareabsyn.sig.o:	absyn/bareabsyn.sig.c
	$(CC) $(CFLAGS) -c -o $@ absyn/bareabsyn.sig.c

absyn/bareabsyn.sml.o:	absyn/bareabsyn.sml.c
	$(CC) $(CFLAGS) -c -o $@ absyn/bareabsyn.sml.c

absyn/absyn.sml.o:	absyn/absyn.sml.c
	$(CC) $(CFLAGS) -c -o $@ absyn/absyn.sml.c

absyn/printabsyn.sml.o:	absyn/printabsyn.sml.c
	$(CC) $(CFLAGS) -c -o $@ absyn/printabsyn.sml.c

build/index.sml.o:	build/index.sml.c
	$(CC) $(CFLAGS) -c -o $@ build/index.sml.c

typing/overload.sig.o:	typing/overload.sig.c
	$(CC) $(CFLAGS) -c -o $@ typing/overload.sig.c

typing/overload.sml.o:	typing/overload.sml.c
	$(CC) $(CFLAGS) -c -o $@ typing/overload.sml.c

typing/typecheck.sig.o:	typing/typecheck.sig.c
	$(CC) $(CFLAGS) -c -o $@ typing/typecheck.sig.c

typing/typecheck.sml.o:	typing/typecheck.sml.c
	$(CC) $(CFLAGS) -c -o $@ typing/typecheck.sml.c

print/printval.sig.o:	print/printval.sig.c
	$(CC) $(CFLAGS) -c -o $@ print/printval.sig.c

print/printval.sml.o:	print/printval.sml.c
	$(CC) $(CFLAGS) -c -o $@ print/printval.sml.c

print/printdec.sig.o:	print/printdec.sig.c
	$(CC) $(CFLAGS) -c -o $@ print/printdec.sig.c

print/printdec.sml.o:	print/printdec.sml.c
	$(CC) $(CFLAGS) -c -o $@ print/printdec.sml.c

parse/tyvarset.sml.o:	parse/tyvarset.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/tyvarset.sml.c

parse/misc.sig.o:	parse/misc.sig.c
	$(CC) $(CFLAGS) -c -o $@ parse/misc.sig.c

parse/misc.sml.o:	parse/misc.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/misc.sml.c

parse/corelang.sml.o:	parse/corelang.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/corelang.sml.c

parse/normalize.sml.o:	parse/normalize.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/normalize.sml.c

parse/signs.sml.o:	parse/signs.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/signs.sml.c

parse/strs.sml.o:	parse/strs.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/strs.sml.c

parse/base.sml.o:	parse/base.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/base.sml.c

parse/ml.grm.sig.o:	parse/ml.grm.sig.c
	$(CC) $(CFLAGS) -c -o $@ parse/ml.grm.sig.c

parse/ml.grm.sml.o:	parse/ml.grm.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/ml.grm.sml.c

lex/ml.lex.sml.o:	lex/ml.lex.sml.c
	$(CC) $(CFLAGS) -c -o $@ lex/ml.lex.sml.c

parse/parse.sml.o:	parse/parse.sml.c
	$(CC) $(CFLAGS) -c -o $@ parse/parse.sml.c

codegen/opt.sml.o:	codegen/opt.sml.c
	$(CC) $(CFLAGS) -c -o $@ codegen/opt.sml.c

translate/mcprint.sml.o:	translate/mcprint.sml.c
	$(CC) $(CFLAGS) -c -o $@ translate/mcprint.sml.c

translate/mcopt.sml.o:	translate/mcopt.sml.c
	$(CC) $(CFLAGS) -c -o $@ translate/mcopt.sml.c

translate/mc.sml.o:	translate/mc.sml.c
	$(CC) $(CFLAGS) -c -o $@ translate/mc.sml.c

translate/nonrec.sml.o:	translate/nonrec.sml.c
	$(CC) $(CFLAGS) -c -o $@ translate/nonrec.sml.c

translate/equal.sml.o:	translate/equal.sml.c
	$(CC) $(CFLAGS) -c -o $@ translate/equal.sml.c

translate/unboxed.sml.o:	translate/unboxed.sml.c
	$(CC) $(CFLAGS) -c -o $@ translate/unboxed.sml.c

translate/inlineops.sig.o:	translate/inlineops.sig.c
	$(CC) $(CFLAGS) -c -o $@ translate/inlineops.sig.c

translate/inlineops.sml.o:	translate/inlineops.sml.c
	$(CC) $(CFLAGS) -c -o $@ translate/inlineops.sml.c

translate/translate.sml.o:	translate/translate.sml.c
	$(CC) $(CFLAGS) -c -o $@ translate/translate.sml.c

cps/cps.sml.o:	cps/cps.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/cps.sml.c

cps/reorder.sml.o:	cps/reorder.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/reorder.sml.c

cps/convert.sml.o:	cps/convert.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/convert.sml.c

build/prof.sml.o:	build/prof.sml.c
	$(CC) $(CFLAGS) -c -o $@ build/prof.sml.c

sepcomp/filepaths.sig.o:	sepcomp/filepaths.sig.c
	$(CC) $(CFLAGS) -c -o $@ sepcomp/filepaths.sig.c

sepcomp/filepaths.sml.o:	sepcomp/filepaths.sml.c
	$(CC) $(CFLAGS) -c -o $@ sepcomp/filepaths.sml.c

cps/size.sml.o:	cps/size.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/size.sml.c

cps/profile.sml.o:	cps/profile.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/profile.sml.c

cps/cpsprint.sml.o:	cps/cpsprint.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/cpsprint.sml.c

cps/freemap.sml.o:	cps/freemap.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/freemap.sml.c

cps/hoist.sml.o:	cps/hoist.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/hoist.sml.c

cps/cpsopt.sml.o:	cps/cpsopt.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/cpsopt.sml.c

cps/globalfix.sml.o:	cps/globalfix.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/globalfix.sml.c

cps/spill.sml.o:	cps/spill.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/spill.sml.c

cps/closure.sml.o:	cps/closure.sml.c
	$(CC) $(CFLAGS) -c -o $@ cps/closure.sml.c

c/cbignum.sml.o:	c/cbignum.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/cbignum.sml.c

c/bitset.sml.o:	c/bitset.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/bitset.sml.c

c/integrate.sml.o:	c/integrate.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/integrate.sml.c

c/cfreemap.sml.o:	c/cfreemap.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/cfreemap.sml.c

c/cimporter.sml.o:	c/cimporter.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/cimporter.sml.c

c/codegen.sig.o:	c/codegen.sig.c
	$(CC) $(CFLAGS) -c -o $@ c/codegen.sig.c

c/machine.sig.o:	c/machine.sig.c
	$(CC) $(CFLAGS) -c -o $@ c/machine.sig.c

c/c.sig.o:	c/c.sig.c
	$(CC) $(CFLAGS) -c -o $@ c/c.sig.c

c/control.sig.o:	c/control.sig.c
	$(CC) $(CFLAGS) -c -o $@ c/control.sig.c

c/cprint.sig.o:	c/cprint.sig.c
	$(CC) $(CFLAGS) -c -o $@ c/cprint.sig.c

c/used.sig.sml.o:	c/used.sig.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/used.sig.sml.c

c/used.sml.o:	c/used.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/used.sml.c

c/file.sml.o:	c/file.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/file.sml.c

c/machine.sml.o:	c/machine.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/machine.sml.c

c/cprint.sml.o:	c/cprint.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/cprint.sml.c

c/c.sml.o:	c/c.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/c.sml.c

c/control.sml.o:	c/control.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/control.sml.c

c/cpstoc.sml.o:	c/cpstoc.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/cpstoc.sml.c

c/cpscompc.sml.o:	c/cpscompc.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/cpscompc.sml.c

c/cprocess.sml.o:	c/cprocess.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/cprocess.sml.c

c/hookup.sml.o:	c/hookup.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/hookup.sml.c

c/cglue.sml.o:	c/cglue.sml.c
	$(CC) $(CFLAGS) -c -o $@ c/cglue.sml.c


