annotate README.html @ 13919:9d70445ea369

mx: set correct permissions for graal.jar
author Bernhard Urban <bernhard.urban@jku.at>
date Mon, 10 Feb 2014 13:51:20 +0100
parents 64b9375246e4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
13878
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
1 <h2>Building Graal</h2>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
2 <p>There is a Python script in mxtool/mx.py that simplifies working with the code
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
3 base. It requires Python 2.7. While you can run this script by using an absolute path,
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
4 it's more convenient to add graal/mxtool to your PATH environment variable so that the
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
5 'mx' helper script can be used. The following instructions in this file assume this
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
6 setup.</p>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
7
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
8 <p>Building both the Java and C++ source code comprising the Graal VM
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
9 can be done with the following simple command.</p>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
10
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
11 <pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
12 % mx build
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
13 </pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
14
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
15 <p>There are a number of VM configurations supported by mx which can
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
16 be explicitly specified using the --vm option. However, you'll typically
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
17 want one of these VM configurations:</p>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
18
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
19 <ol>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
20 <li> The 'server' configuration is a standard HotSpot VM that includes the
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
21 runtime support for Graal but uses the existing compilers for normal
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
22 compilation (e.g., when the interpreter threshold is hit for a method).
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
23 Compilation with Graal is only done by explicit requests to the
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
24 Graal API. This is how Truffle uses Graal.</li>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
25
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
26 <li> The 'graal' configuration is a VM where all compilation is performed
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
27 by Graal and no other compilers are built into the VM binary. This
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
28 VM will bootstrap Graal itself at startup unless the -XX:-BootstrapGraal
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
29 VM option is given. </li>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
30 </ol>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
31
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
32 <p>Unless you use the --vm option with the build command, you will be presented
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
33 with a dialogue to choose one of the above VM configurations for the build
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
34 as well as have the option to make it your default for subsequent commands
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
35 that need a VM specified.</p>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
36
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
37 <p>To build the debug or fastdebug builds:</p>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
38
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
39 <pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
40 % mx --vmbuild debug build
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
41 % mx --vmbuild fastdebug build
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
42 </pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
43
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
44 <h2>Running Graal</h2>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
45
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
46 <p>To run the VM, use 'mx vm' in place of the standard 'java' command:</p>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
47
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
48 <pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
49 % mx vm ...
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
50 </pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
51
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
52 <p>To select the fastdebug or debug builds of the VM:</p>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
53
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
54 <pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
55 % mx --vmbuild fastdebug vm ...
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
56 % mx --vmbuild debug vm ...
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
57 </pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
58
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
59 <h2>Other VM Configurations</h2>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
60
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
61 <p>In addition to the VM configurations described above, there are
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
62 VM configurations that omit all VM support for Graal:</p>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
63
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
64 <pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
65 % mx --vm server-nograal build
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
66 % mx --vm server-nograal vm -version
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
67 java version "1.7.0_25"
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
68 Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
69 OpenJDK 64-Bit Server VM (build 25.0-b43-internal, mixed mode)
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
70 </pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
71
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
72 <pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
73 % mx --vm client-nograal build
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
74 % mx --vm client-nograal vm -version
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
75 java version "1.7.0_25"
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
76 Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
77 OpenJDK 64-Bit Cleint VM (build 25.0-b43-internal, mixed mode)
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
78 </pre>
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
79
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
80 <p>These configurations aim to match as closely as possible the
64b9375246e4 Update README and AUTHORS. Move to HTML format.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
81 VM(s) included in the OpenJDK binaries one can download.</p>