summaryrefslogtreecommitdiff
path: root/doc/muse.1
diff options
context:
space:
mode:
authorOri Bernstein <ori@eigenstate.org>2012-08-19 12:35:21 -0400
committerOri Bernstein <ori@eigenstate.org>2012-08-19 12:35:21 -0400
commitfa9b8ec335f027943f5757503b2c2ebb283cc502 (patch)
tree95a7203f8b8bd568e5ed194fa3297c3c99e8a752 /doc/muse.1
parent8fc0919576234ccc15a9f66e43a326fd15f9ca79 (diff)
downloadmc-fa9b8ec335f027943f5757503b2c2ebb283cc502.tar.gz
Add to the manpages.
Diffstat (limited to 'doc/muse.1')
-rw-r--r--doc/muse.192
1 files changed, 92 insertions, 0 deletions
diff --git a/doc/muse.1 b/doc/muse.1
new file mode 100644
index 0000000..24f7323
--- /dev/null
+++ b/doc/muse.1
@@ -0,0 +1,92 @@
+.TH MUSE 1
+.SH NAME
+muse
+.SH SYNOPSIS
+.B muse
+.I -[hmidos]
+.I [file...]
+.br
+.SH DESCRIPTION
+.PP
+The 'muse' tool takes as input a Myrddin source file and generates
+a usefile from it. A usefile collects definitions exported from the
+package specifications in Myrddin source code, and makes them available
+for other programs to include with a 'use' statement.
+.PP
+It can also merge together a number of usefiles into one larger usefile
+including all of the exported symbols. If an output file name is not given,
+and we are not merging usefiles, then an input file named
+.I filename.myr
+will have a usefile named
+.I filename.use
+generated.
+
+If the filename does not end with the suffix
+.I .myr
+then the suffix
+.I .o
+will simply be appended to it.
+
+.PP
+The muse program is architecture independent, and a usefile generated
+on one architecture will work with another. However, the format of the
+generated file is not stable, and is not guaranteed to work across
+compiler versions.
+
+.PP
+The muse options are:
+
+.TP
+.B -d [flTri]
+Prints debugging dumps. Additional options may be given to give more
+debugging information for specific intermediate states of the compilation.
+
+.TP
+.B -h
+Prints a summary of the available options.
+
+.TP
+.B -I path
+Add 'path' to the search path for unquoted use statments. This option
+does not affect the search path for local usefiles, which are always
+searched relative to the compiler's current working directory. Without
+any options, the search path defaults to /usr/include/myr.
+
+.TP
+.B -o output-file
+Specifies that the generated usefile should be named
+.I output-file
+
+.TP
+.B -s
+Print a summary of the symbols exported from the usefile that is specified.
+
+.SH EXAMPLE
+.EX
+ muse foo.myr
+ muse -o bar.use bar-system-version.myr
+ muse -mo library foo.use bar.use
+.EE
+
+.SH FILES
+The source for muse is available from
+.B git://git.eigenstate.org/git/ori/mc2.git
+and lives in the
+.I util/
+directory within the source tree.
+
+.SH SEE ALSO
+.IR mc(1)
+.IR ld(1)
+.IR as(1)
+
+.SH BUGS
+.PP
+There is insufficient checking and validation done on usefiles.
+.PP
+The file format is unstable, and not at all compact.
+.PP
+This utility should not exist. Instead, the compiler should put the
+exported symbol information into the object file or library directly.
+.PP
+The file format is not closed under concatentation.