| This release does not support separate compilation of Moby modules, so the only MBI files are either hand written or generated by tools like charon and moby-idl. |
| FileMap | |||
| ::= | Entry* | ||
| Entry | |||
| ::= | include String ; | ||
| | | library LibraryName ; | ||
| | | signature UnitId ; | ||
| | | module UnitId (: UnitId)opt ; | ||
| | | module UnitId ( (UnitId (, UnitId)*)opt ) (: UnitId)opt ; | ||
| LibraryName | |||
| ::= | LibraryId | ||
| | | String | ||
| UnitId | |||
| ::= | Id (@ String)opt | ||
The first line specifies that the console-io library is being used, the next line specifies the source code location for the UTIL signature, the third line specifies the signature and source-cde location for the Util module, and the last line specifies the source-code location for the Main module (which we assume has an anonymous or implicit signature).library console-io; module Util @ "util.mby : UTIL @ "util-sig.mby"; module Main @ "main.mby";
Figure 1: A sample FILEMAP
SOURCES = main.mby util.mby util-sig.mby OBJECTS = main.o util.o prog : $(OBJECTS) mobyc -o prog $(OBJECTS) main.o : main.mby util.mbi util-sig.mbi FILEMAP mobyc -c main.mby util.mbi : util.o util.o : util.mby util-sig.mbi FILEMAP mobyc -c util.mby util-sig.mbi : util-sig.mby FILEMAP mobyc -c util-sig.mby
Figure 2: A sample Makefile