Make Targets (Building, Testing, and Installing)
The make targets available in the Makefile at the root of the Miking
repository provides a number of conveniences for working on the code
base. This page provides a brief summary of the more important ones.
Building the Compiler
bootstrap: run the full bootstrapping procedure, creatingbuild/mi. This is the default target, i.e., runningmakeis equivalent withmake bootstrap.cheat: use anmicompiler available in your$PATH(i.e., installed on your system) to build a compiler in one step, placing it atbuild/mi-cheat. This is significantly faster than full bootstrapping, and is often useful while working, as long as the new compiler requires no new features.
Working with boot
boot: build the bootstrapping interpreter and thebootlibrary, placing the former atbuild/mi-boot.lint,fix: check code formatting of the OCaml code implementingboot. Note thatlintwill merely show incorrect formatting, whilefixautomatically corrects it.
Installing and Uninstalling
install-boot/uninstall-boot: install/uninstall thebootlibrary on the system.install/uninstall: install/uninstall themicompiler and standard library. Note thatinstallalso runsinstall-boot, since it's required, butuninstallwill leaveboot.
Testing
For more information about testing Miking, see here.
test: detects which dependencies you have install and runs all tests whose dependencies are satisfied using the bootstrapped compiler.test-all: liketest, except assumes all possible dependencies are installed. Note that tests requiring specialized hardware will still not run if that hardware is absent.test-quick: run a smaller set of tests, turning off all optional test collections.