ARCH-OS=x86-linux
MKDIR=mkdir -p
INSTALL=cp -p
RUNTIME_FLAGS=
COMP_FLAGS=

bootstrap:
	cd src; make genopcodes
	cd src; ../bin/mlkit -gc $(COMP_FLAGS) sources.pm
	$(MKDIR) $(INSTDIR)
	$(MKDIR) $(INSTDIR)/bin
	$(INSTALL) bin/runtimeSystem.o $(INSTDIR)/bin
	$(INSTALL) bin/runtimeSystemGC.o $(INSTDIR)/bin
	$(INSTALL) bin/runtimeSystemGCProf.o $(INSTDIR)/bin
	$(INSTALL) bin/runtimeSystemProf.o $(INSTDIR)/bin
	$(INSTALL) bin/rp2ps $(INSTDIR)/bin
	$(INSTALL) src/run $(INSTDIR)/bin/mlkit.img
	echo -e '#!/bin/sh' >> $(INSTDIR)/bin/mlkit
	echo -e '$(INSTDIR)/bin/mlkit.img $(RUNTIME_FLAGS) $(INSTDIR) $$*' >> $(INSTDIR)/bin/mlkit
	chmod a+x $(INSTDIR)/bin/mlkit
	$(INSTALL) bin/kittester.$(ARCH-OS) $(INSTDIR)/bin
	echo -e 'sml @SMLload=$(INSTDIR)/bin/kittester.$(ARCH-OS) $$*' >> $(INSTDIR)/bin/kittester
	chmod a+x $(INSTDIR)/bin/kittester
	$(INSTALL) copyright $(INSTDIR)
	$(INSTALL) README $(INSTDIR)
	$(INSTALL) -a kitdemo $(INSTDIR)/kitdemo 
	$(INSTALL) -a test $(INSTDIR)/test
	$(INSTALL) -a src $(INSTDIR)/src
	cd $(INSTDIR)/src; make clean
	$(INSTALL) -a ml-yacc-lib $(INSTDIR)/ml-yacc-lib
	$(INSTALL) -a basislib $(INSTDIR)/basislib
	chown -R `whoami`.`whoami` $(INSTDIR)
	chmod -R ug+rw $(INSTDIR)
	chmod -R o+r $(INSTDIR)
	chmod a+x $(INSTDIR)/bin/mlkit.img
	$(INSTALL) test/Makefile_bootstrap $(INSTDIR)/Makefile

all_test:
	cd test; ../bin/kittester ../bin/mlkit all.tst

all: all_test bootstrap
