Last active
August 29, 2015 13:57
-
-
Save antonijn/9515926 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.TH aquac 1 "March 2014" "" "" | |
.SH NAME | |
.P | |
aquac - The "official" compiler for the Aqua programming language | |
.SH SYNOPSIS | |
.P | |
.RB aquac\ [ \-CDLnstw ] | |
.RB [ \-a | |
.IR assembler ] | |
.RB [ \-c | |
.IR compiler ] | |
.RB [ \-dl | |
.IR lib ] | |
.RB [ \-g | |
.IR generator ] | |
.RB [ \-o | |
.IR file ] | |
.RB [ \-O | |
.IR dir ] | |
.RB [ \-p | |
.IR parser ] | |
.IR infile ... | |
.SH DESCRIPTION | |
.P | |
When invoked, the Aqua compiler parses, compiles, assembles and links the input | |
files, unless specified otherwise by various command-line options. | |
.P | |
The list of input files may consist of files written in a number of programming | |
languages, and are compiled appropriately based on their filename extension. | |
This makes for easy cross-language development. | |
.P | |
The Aqua compiler is able to compile programs for a number of platforms, and it | |
will compile for Unix and Windows by default. To only compile for the platforms | |
the program is being compiled on, use the | |
.B | |
-t | |
switch. | |
.P | |
The | |
.B | |
aquac | |
program itself actually isn't very large; it combines functionality from a set of libraries to make | |
your programmer life easier, and allows for easy switching between various tools. | |
The program uses | |
.BR libaquacast , \ libaquacparsing , \ libaquacparsingdefault , \ libaquaccodegen \ and \ libaquaccodegenllvm . | |
.SH OPTIONS | |
.P | |
.BR \-a , \ \-\-assembler | |
.I assembler | |
.RS | |
Uses | |
.I | |
assembler | |
as the assembler for the generated assembly. | |
.RE | |
.P | |
.BR \-c , \ \-\-c\-compiler | |
.I | |
compiler | |
.RS | |
Uses | |
.I | |
compiler | |
as the compiler for the C input files. | |
.RE | |
.P | |
.BR \-C , \ \-\-unsafe\-casts | |
.RS | |
Disables type-checks before casting from more abstract to less abstract types. | |
.RE | |
.P | |
.BR \-d , \ \-l , \ \-\-dependency | |
.I | |
dependency | |
.RS | |
Adds | |
.BI (lib) dependency (.so|.dll|.exe) | |
to the dependency list. | |
.RE | |
.P | |
.BR \-D , \ \-\-debug | |
.RS | |
Compiles the program for debugging. Disables optimizations, enables debugging metadata. | |
.RE | |
.P | |
.BR \-g , \ \-\-generator | |
.I | |
generator | |
.RS | |
Uses either | |
.BI libaquaccodegen generator .so | |
or | |
.I | |
generator | |
as the assembly generator library for the AST generated by the parser. | |
.RE | |
.P | |
.BR \-L , \ \-\-library | |
.I lib | |
.RS | |
Compiles the program as a library instead of an executable. | |
.RE | |
.P | |
.BR \-n , \ \-\-unsafe\-null\-ptr | |
.RS | |
Disables null checks before dereferencing pointers, generating segmentation faults | |
instead of throwing | |
.IR NullPtrException s | |
when a null pointer was about to be dereferenced. | |
.RE | |
.P | |
.BR \-o , \ \-\-output | |
.I file | |
.RS | |
Makes | |
.I | |
file | |
the filename for the output assembly, without suffix (.exe, .so, .dll, or anything like that) or "lib" prefix. | |
If this option is omitted, | |
.I | |
app | |
is used as the output file. | |
.RE | |
.P | |
.BR \-O , \ \-\-output\-dir | |
.I dir | |
.RS | |
Makes | |
.I | |
dir | |
the directory to which the final result produced by the compiler is written. | |
If this option is omitted, | |
.I . | |
is used as the output directory. | |
.RE | |
.P | |
.BR \-p , \ \-\-parser | |
.I | |
parser | |
.RS | |
Uses either | |
.BI libaquacparsing parser .so | |
or | |
.I | |
parser | |
as the parser assembly generating the AST for the code generator. | |
.RE | |
.P | |
.BR \-s , \ \-\-no\-std | |
.RS | |
Doesn't add | |
.B | |
libaquastd | |
to the dependency list. | |
.RE | |
.P | |
.BR \-t , \ \-\-this\-machine | |
.RS | |
Only compiles the program for the host machine. | |
.RE | |
.P | |
.BR \-w , \ \-\-no\-warnings | |
.RS | |
Disables warnings. | |
.RE |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment