This repository has been archived by the owner on Jun 6, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
INSTALL
88 lines (59 loc) · 2.68 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
== MCI: Managed Compiler Infrastructure ==
-- Installation --
Installation works through the Waf build system. You can obtain Waf by
running the included bootstrap script:
$ ./bootstrap.py
Once installed, you must configure the project like so:
$ ./waf configure
You can use the --prefix option to specify where to install to. This
defaults to "/usr/local" normally. The --check-d-compiler switch can be
used to specify which compiler to build with. This will typically be
"dmd", "gdc", or "ldc2".
The MCI Waf script also supports some additional options:
* --lp64 (= "true")
- Whether to build for 64-bit pointers.
* --mode (= "debug")
- Which mode to build in. Building in "debug" disables any and
all optimizations, while "release" enables optimization and
inlining. Note that both modes will generate debug information
and emit array bounds checks.
* --vim (= <none>)
- Where to install Vim syntax files for IAL files. If you wish
to enable this, you should probably set this value to "~/.vim"
or similar.
* --gtksourceview (= <none>)
- Where to install GtkSourceView syntax files for IAL files. If
you wish to enable this, you should probably set this value to
"~/.local/share/gtksourceview-3.0/language-specs" or similar.
* --valgrind (= "false")
- Whether to run the unit test suite with Valgrind.
You will need to have libffi, libgc and libdl installed for the build
to succeed. Your libffi installation must support the closure API. Your
libgc installation must support the typed GC API.
For example, to build for a 32-bit CPU, do:
$ ./waf configure --lp64=false
Or to include Vim syntax files:
$ ./waf configure --vim=~/.vim
You will likely want to build a release version if you're not a
contributor to the project, so:
$ ./waf configure --mode=release
With the project configured, you can execute a build by doing:
$ ./waf build
To install the project:
$ ./waf install
Should you wish to uninstall the installed files at a later point,
simply execute:
$ ./waf uninstall
You can optionally build the documentation, which includes a guide
to the compiler infrastructure and a framework reference:
$ ./waf docs
The documentation will be placed in 'docs/_build'. You'll probably
be interested in 'docs/_build/html/index.html' primarily.
API documentation can be generated from the MCI sources by running:
$ ./waf ddoc
This documentation will end up in 'docs/_ddoc', and you can access
it via 'docs/_ddoc/index.html'.
Finally, you can run the test suite to ensure everything is working
as it should:
$ ./waf unittest
$ ./waf test