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