author | brutisso |
Tue, 19 Aug 2014 11:17:36 +0200 | |
changeset 28509 | 56efbcb555fb |
parent 23987 | 5afeaf4283ed |
child 28812 | 6c36bc1ccc0e |
permissions | -rw-r--r-- |
0 | 1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
2 |
<html> |
|
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
3 |
<head> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
4 |
<title>OpenJDK Build README</title> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
5 |
</head> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
6 |
<body style="background-color:aquamarine"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
7 |
|
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
8 |
<!-- ====================================================== --> |
1119
a39bfff7f8fb
6724787: OpenJDK README-builds.html suggested changes
ohair
parents:
876
diff
changeset
|
9 |
<table width="100%"> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
10 |
<tr> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
11 |
<td align="center"> |
819
1196fff6b3f6
6704966: OpenJDK README needs additional info on how to build freetype
ohair
parents:
333
diff
changeset
|
12 |
<img alt="OpenJDK" |
1196fff6b3f6
6704966: OpenJDK README needs additional info on how to build freetype
ohair
parents:
333
diff
changeset
|
13 |
src="http://openjdk.java.net/images/openjdk.png" |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
14 |
width=256> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
15 |
</td> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
16 |
</tr> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
17 |
<tr> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
18 |
<td align=center> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
19 |
<h1>OpenJDK Build README</h1> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
20 |
</td> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
21 |
</tr> |
0 | 22 |
</table> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
23 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
24 |
<!-- ====================================================== --> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
25 |
<hr> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
26 |
<h2><a name="introduction">Introduction</a></h2> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
27 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
28 |
This README file contains build instructions for the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
29 |
<a href="http://openjdk.java.net" target="_blank">OpenJDK</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
30 |
Building the source code for the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
31 |
OpenJDK |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
32 |
requires |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
33 |
a certain degree of technical expertise. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
34 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
35 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
36 |
<h3>!!!!!!!!!!!!!!! THIS IS A MAJOR RE-WRITE of this document. !!!!!!!!!!!!!</h3> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
37 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
38 |
Some Headlines: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
39 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
40 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
41 |
The build is now a "<code>configure && make</code>" style build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
42 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
43 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
44 |
Any GNU make 3.81 or newer should work |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
45 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
46 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
47 |
The build should scale, i.e. more processors should |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
48 |
cause the build to be done in less wall-clock time |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
49 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
50 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
51 |
Nested or recursive make invocations have been significantly |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
52 |
reduced, as has the total fork/exec or spawning |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
53 |
of sub processes during the build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
54 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
55 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
56 |
Windows MKS usage is no longer supported |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
57 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
58 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
59 |
Windows Visual Studio <code>vsvars*.bat</code> and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
60 |
<code>vcvars*.bat</code> files are run automatically |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
61 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
62 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
63 |
Ant is no longer used when building the OpenJDK |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
64 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
65 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
66 |
Use of ALT_* environment variables for configuring the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
67 |
build is no longer supported |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
68 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
69 |
</ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
70 |
</blockquote> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
71 |
</blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
72 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
73 |
<!-- ====================================================== --> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
74 |
<hr> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
75 |
<h2><a name="contents">Contents</a></h2> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
76 |
<blockquote> |
0 | 77 |
<ul> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
78 |
<li><a href="#introduction">Introduction</a></li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
79 |
|
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
80 |
<li><a href="#hg">Use of Mercurial</a> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
81 |
<ul> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
82 |
<li><a href="#get_source">Getting the Source</a></li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
83 |
<li><a href="#repositories">Repositories</a></li> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
84 |
</ul> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
85 |
</li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
86 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
87 |
<li><a href="#building">Building</a> |
1119
a39bfff7f8fb
6724787: OpenJDK README-builds.html suggested changes
ohair
parents:
876
diff
changeset
|
88 |
<ul> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
89 |
<li><a href="#setup">System Setup</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
90 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
91 |
<li><a href="#linux">Linux</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
92 |
<li><a href="#solaris">Solaris</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
93 |
<li><a href="#macosx">Mac OS X</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
94 |
<li><a href="#windows">Windows</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
95 |
</ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
96 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
97 |
<li><a href="#configure">Configure</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
98 |
<li><a href="#make">Make</a></li> |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
99 |
</ul> |
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
100 |
</li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
101 |
<li><a href="#testing">Testing</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
102 |
</ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
103 |
<hr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
104 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
105 |
<li><a href="#hints">Appendix A: Hints and Tips</a> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
106 |
<ul> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
107 |
<li><a href="#faq">FAQ</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
108 |
<li><a href="#performance">Build Performance Tips</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
109 |
<li><a href="#troubleshooting">Troubleshooting</a></li> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
110 |
</ul> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
111 |
</li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
112 |
<li><a href="#gmake">Appendix B: GNU Make Information</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
113 |
<li><a href="#buildenvironments">Appendix C: Build Environments</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
114 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
115 |
<!-- Leave out |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
116 |
<li><a href="#mapping">Appendix D: Mapping Old Builds to the New Builds</a></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
117 |
--> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
118 |
|
0 | 119 |
</ul> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
120 |
</blockquote> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
121 |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
122 |
<!-- ====================================================== --> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
123 |
<hr> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
124 |
<h2><a name="hg">Use of Mercurial</a></h2> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
125 |
<blockquote> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
126 |
The OpenJDK sources are maintained with the revision control system |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
127 |
<a href="http://mercurial.selenic.com/wiki/Mercurial">Mercurial</a>. |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
128 |
If you are new to Mercurial, please see the |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
129 |
<a href="http://mercurial.selenic.com/wiki/BeginnersGuides"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
130 |
Beginner Guides</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
131 |
or refer to the <a href="http://hgbook.red-bean.com/"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
132 |
Mercurial Book</a>. |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
133 |
The first few chapters of the book provide an excellent overview of |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
134 |
Mercurial, what it is and how it works. |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
135 |
<br> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
136 |
For using Mercurial with the OpenJDK refer to the |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
137 |
<a href="http://openjdk.java.net/guide/repositories.html#installConfig"> |
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
138 |
Developer Guide: Installing and Configuring Mercurial</a> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
139 |
section for more information. |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
140 |
|
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
141 |
<h3><a name="get_source">Getting the Source</a></h3> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
142 |
<blockquote> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
143 |
To get the entire set of OpenJDK Mercurial repositories |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
144 |
use the script <code>get_source.sh</code> located in the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
145 |
root repository: |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
146 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
147 |
<code> |
23987
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
148 |
hg clone http://hg.openjdk.java.net/jdk9/jdk9 |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
149 |
<i>YourOpenJDK</i> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
150 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
151 |
cd <i>YourOpenJDK</i> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
152 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
153 |
bash ./get_source.sh |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
154 |
</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
155 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
156 |
Once you have all the repositories, keep in mind that each |
19314 | 157 |
repository is its own independent repository. |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
158 |
You can also re-run <code>./get_source.sh</code> anytime to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
159 |
pull over all the latest changesets in all the repositories. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
160 |
This set of nested repositories has been given the term |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
161 |
"forest" and there are various ways to apply the same |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
162 |
<code>hg</code> command to each of the repositories. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
163 |
For example, the script <code>make/scripts/hgforest.sh</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
164 |
can be used to repeat the same <code>hg</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
165 |
command on every repository, e.g. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
166 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
167 |
<code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
168 |
cd <i>YourOpenJDK</i> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
169 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
170 |
bash ./make/scripts/hgforest.sh status |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
171 |
</code> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
172 |
</blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
173 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
174 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
175 |
<h3><a name="repositories">Repositories</a></h3> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
176 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
177 |
<p>The set of repositories and what they contain:</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
178 |
<table border="1"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
179 |
<thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
180 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
181 |
<th>Repository</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
182 |
<th>Contains</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
183 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
184 |
</thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
185 |
<tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
186 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
187 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
188 |
. (root) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
189 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
190 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
191 |
common configure and makefile logic |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
192 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
193 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
194 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
195 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
196 |
hotspot |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
197 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
198 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
199 |
source code and make files for building |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
200 |
the OpenJDK Hotspot Virtual Machine |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
201 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
202 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
203 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
204 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
205 |
langtools |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
206 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
207 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
208 |
source code for the OpenJDK javac and language tools |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
209 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
210 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
211 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
212 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
213 |
jdk |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
214 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
215 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
216 |
source code and make files for building |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
217 |
the OpenJDK runtime libraries and misc files |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
218 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
219 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
220 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
221 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
222 |
jaxp |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
223 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
224 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
225 |
source code for the OpenJDK JAXP functionality |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
226 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
227 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
228 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
229 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
230 |
jaxws |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
231 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
232 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
233 |
source code for the OpenJDK JAX-WS functionality |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
234 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
235 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
236 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
237 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
238 |
corba |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
239 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
240 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
241 |
source code for the OpenJDK Corba functionality |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
242 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
243 |
</tr> |
19314 | 244 |
<tr> |
245 |
<td> |
|
246 |
nashorn |
|
247 |
</td> |
|
248 |
<td> |
|
249 |
source code for the OpenJDK JavaScript implementation |
|
250 |
</td> |
|
251 |
</tr> |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
252 |
</tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
253 |
</table> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
254 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
255 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
256 |
<h3><a name="guidelines">Repository Source Guidelines</a></h3> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
257 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
258 |
There are some very basic guidelines: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
259 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
260 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
261 |
Use of whitespace in source files |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
262 |
(.java, .c, .h, .cpp, and .hpp files) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
263 |
is restricted. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
264 |
No TABs, no trailing whitespace on lines, and files |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
265 |
should not terminate in more than one blank line. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
266 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
267 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
268 |
Files with execute permissions should not be added |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
269 |
to the source repositories. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
270 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
271 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
272 |
All generated files need to be kept isolated from |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
273 |
the files |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
274 |
maintained or managed by the source control system. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
275 |
The standard area for generated files is the top level |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
276 |
<code>build/</code> directory. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
277 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
278 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
279 |
The default build process should be to build the product |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
280 |
and nothing else, in one form, e.g. a product (optimized), |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
281 |
debug (non-optimized, -g plus assert logic), or |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
282 |
fastdebug (optimized, -g plus assert logic). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
283 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
284 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
285 |
The <tt>.hgignore</tt> file in each repository |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
286 |
must exist and should |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
287 |
include <tt>^build/</tt>, <tt>^dist/</tt> and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
288 |
optionally any |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
289 |
<tt>nbproject/private</tt> directories. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
290 |
<strong>It should NEVER</strong> include |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
291 |
anything in the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
292 |
<tt>src/</tt> or <tt>test/</tt> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
293 |
or any managed directory area of a repository. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
294 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
295 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
296 |
Directory names and file names should never contain |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
297 |
blanks or |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
298 |
non-printing characters. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
299 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
300 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
301 |
Generated source or binary files should NEVER be added to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
302 |
the repository (that includes <tt>javah</tt> output). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
303 |
There are some exceptions to this rule, in particular |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
304 |
with some of the generated configure scripts. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
305 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
306 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
307 |
Files not needed for typical building |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
308 |
or testing of the repository |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
309 |
should not be added to the repository. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
310 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
311 |
</ul> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
312 |
</blockquote> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
313 |
|
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
314 |
</blockquote> |
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
315 |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
316 |
<!-- ====================================================== --> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
317 |
<hr> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
318 |
<h2><a name="building">Building</a></h2> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
319 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
320 |
The very first step in building the OpenJDK is making sure the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
321 |
system itself has everything it needs to do OpenJDK builds. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
322 |
Once a system is setup, it generally doesn't need to be done again. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
323 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
324 |
Building the OpenJDK is now done with running a |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
325 |
<a href="#configure"><code>configure</code></a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
326 |
script which will try and find and verify you have everything |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
327 |
you need, followed by running |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
328 |
<a href="#gmake"><code>make</code></a>, e.g. |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
329 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
330 |
<b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
331 |
<code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
332 |
bash ./configure<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
333 |
make all |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
334 |
</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
335 |
</b> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
336 |
</blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
337 |
Where possible the <code>configure</code> script will attempt to located the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
338 |
various components in the default locations or via component |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
339 |
specific variable settings. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
340 |
When the normal defaults fail or components cannot be found, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
341 |
additional <code>configure</code> options may be necessary to help <code>configure</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
342 |
find the necessary tools for the build, or you may need to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
343 |
re-visit the setup of your system due to missing software |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
344 |
packages. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
345 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
346 |
<strong>NOTE:</strong> The <code>configure</code> script |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
347 |
file does not have |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
348 |
execute permissions and will need to be explicitly run with |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
349 |
<code>bash</code>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
350 |
see the <a href="#guidelines">source guidelines</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
351 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
352 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
353 |
<hr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
354 |
<h3><a name="setup">System Setup</a></h3> |
1119
a39bfff7f8fb
6724787: OpenJDK README-builds.html suggested changes
ohair
parents:
876
diff
changeset
|
355 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
356 |
Before even attempting to use a system to build the OpenJDK |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
357 |
there are some very basic system setups needed. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
358 |
For all systems: |
1119
a39bfff7f8fb
6724787: OpenJDK README-builds.html suggested changes
ohair
parents:
876
diff
changeset
|
359 |
<ul> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
360 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
361 |
Be sure the GNU make utility is version 3.81 or newer, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
362 |
e.g. run "<code>make -version</code>" |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
363 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
364 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
365 |
Install a |
18049
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
366 |
<a name="bootjdk">Bootstrap JDK</a>. |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
367 |
All OpenJDK builds require access to a previously released |
18049
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
368 |
JDK called the <i>bootstrap JDK</i> or <i>boot JDK.</i> |
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
369 |
The general rule is that the bootstrap JDK |
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
370 |
must be an instance of the previous major |
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
371 |
release of the JDK. In addition, there may be |
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
372 |
a requirement to use a release at or beyond a |
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
373 |
particular update level. |
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
374 |
<br> <br> |
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
375 |
|
23987
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
376 |
<b><i>Building JDK 9 requires JDK 8. JDK 9 |
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
377 |
developers should not use JDK 9 as the boot |
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
378 |
JDK, to ensure that JDK 9 dependencies are |
18049
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
379 |
not introduced into the parts of the system |
23987
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
380 |
that are built with JDK 8.</i></b> |
18049
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
381 |
|
ab1fcd9738e8
8016780: README-builds.html misses crucial requirement on bootstrap JDK
smarks
parents:
15787
diff
changeset
|
382 |
<br> <br> |
23987
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
383 |
The JDK 8 binaries can be downloaded from Oracle's |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
384 |
<a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" |
23987
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
385 |
target="_blank">JDK 8 download site</a>. |
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
386 |
For build performance reasons it |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
387 |
is very important that this bootstrap JDK be made available |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
388 |
on the local disk of the machine doing the build. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
389 |
You should add its <code>bin</code> directory |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
390 |
to the <code>PATH</code> environment variable. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
391 |
If <code>configure</code> has any issues finding this JDK, you may |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
392 |
need to use the <code>configure</code> option |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
393 |
<code>--with-boot-jdk</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
394 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
395 |
<li> |
19314 | 396 |
Ensure that GNU make, the Bootstrap JDK, |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
397 |
and the compilers are all |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
398 |
in your PATH environment variable |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
399 |
</li> |
1119
a39bfff7f8fb
6724787: OpenJDK README-builds.html suggested changes
ohair
parents:
876
diff
changeset
|
400 |
</ul> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
401 |
And for specific systems: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
402 |
<table border="1"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
403 |
<thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
404 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
405 |
<th>Linux</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
406 |
<th>Solaris</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
407 |
<th>Windows</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
408 |
<th>Mac OS X</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
409 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
410 |
</thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
411 |
<tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
412 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
413 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
414 |
Install all the software development |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
415 |
packages needed including |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
416 |
<a href="#alsa">alsa</a>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
417 |
<a href="#freetype">freetype</a>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
418 |
<a href="#cups">cups</a>, and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
419 |
<a href="#xrender">xrender</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
420 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
421 |
See |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
422 |
<a href="#SDBE">specific system packages</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
423 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
424 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
425 |
Install all the software development |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
426 |
packages needed including |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
427 |
<a href="#studio">Studio Compilers</a>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
428 |
<a href="#freetype">freetype</a>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
429 |
<a href="#cups">cups</a>, and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
430 |
<a href="#xrender">xrender</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
431 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
432 |
See |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
433 |
<a href="#SDBE">specific system packages</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
434 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
435 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
436 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
437 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
438 |
Install one of |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
439 |
<a href="#cygwin">CYGWIN</a> or |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
440 |
<a href="#msys">MinGW/MSYS</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
441 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
442 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
443 |
Install |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
444 |
<a href="#vs2010">Visual Studio 2010</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
445 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
446 |
</ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
447 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
448 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
449 |
Install |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
450 |
<a href="https://developer.apple.com/xcode/">XCode 4.5.2</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
451 |
and also install the "Command line tools" found under the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
452 |
preferences pane "Downloads" |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
453 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
454 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
455 |
</tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
456 |
</table> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
457 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
458 |
<h4><a name="linux">Linux</a></h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
459 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
460 |
With Linux, try and favor the system packages over |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
461 |
building your own |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
462 |
or getting packages from other areas. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
463 |
Most Linux builds should be possible with the system's |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
464 |
available packages. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
465 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
466 |
Note that some Linux systems have a habit of pre-populating |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
467 |
your environment variables for you, for example <code>JAVA_HOME</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
468 |
might get pre-defined for you to refer to the JDK installed on |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
469 |
your Linux system. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
470 |
You will need to unset <code>JAVA_HOME</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
471 |
It's a good idea to run <code>env</code> and verify the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
472 |
environment variables you are getting from the default system |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
473 |
settings make sense for building the OpenJDK. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
474 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
475 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
476 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
477 |
<h4><a name="solaris">Solaris</a></h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
478 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
479 |
<h5><a name="studio">Studio Compilers</a></h5> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
480 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
481 |
At a minimum, the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
482 |
<a href="http://www.oracle.com/technetwork/server-storage/solarisstudio/downloads/index.htm" target="_blank"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
483 |
Studio 12 Update 1 Compilers</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
484 |
(containing version 5.10 of the C and C++ compilers) is required, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
485 |
including specific patches. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
486 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
487 |
The Solaris SPARC patch list is: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
488 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
489 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
490 |
118683-05: SunOS 5.10: Patch for profiling libraries and assembler |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
491 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
492 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
493 |
119963-21: SunOS 5.10: Shared library patch for C++ |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
494 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
495 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
496 |
120753-08: SunOS 5.10: Microtasking libraries (libmtsk) patch |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
497 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
498 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
499 |
128228-09: Sun Studio 12 Update 1: Patch for Sun C++ Compiler |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
500 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
501 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
502 |
141860-03: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C C++ F77 F95 |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
503 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
504 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
505 |
141861-05: Sun Studio 12 Update 1: Patch for Sun C Compiler |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
506 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
507 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
508 |
142371-01: Sun Studio 12.1 Update 1: Patch for dbx |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
509 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
510 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
511 |
143384-02: Sun Studio 12 Update 1: Patch for debuginfo handling |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
512 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
513 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
514 |
143385-02: Sun Studio 12 Update 1: Patch for Compiler Common patch for Sun C C++ F77 F95 |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
515 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
516 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
517 |
142369-01: Sun Studio 12.1: Patch for Performance Analyzer Tools |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
518 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
519 |
</ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
520 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
521 |
The Solaris X86 patch list is: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
522 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
523 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
524 |
119961-07: SunOS 5.10_x86, x64, Patch for profiling libraries and assembler |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
525 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
526 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
527 |
119964-21: SunOS 5.10_x86: Shared library patch for C++_x86 |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
528 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
529 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
530 |
120754-08: SunOS 5.10_x86: Microtasking libraries (libmtsk) patch |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
531 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
532 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
533 |
141858-06: Sun Studio 12 Update 1_x86: Sun Compiler Common patch for x86 backend |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
534 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
535 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
536 |
128229-09: Sun Studio 12 Update 1_x86: Patch for C++ Compiler |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
537 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
538 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
539 |
142363-05: Sun Studio 12 Update 1_x86: Patch for C Compiler |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
540 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
541 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
542 |
142368-01: Sun Studio 12.1_x86: Patch for Performance Analyzer Tools |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
543 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
544 |
</ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
545 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
546 |
Place the <code>bin</code> directory in <code>PATH</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
547 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
548 |
The Oracle Solaris Studio Express compilers at: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
549 |
<a href="http://www.oracle.com/technetwork/server-storage/solarisstudio/downloads/index-jsp-142582.html" target="_blank"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
550 |
Oracle Solaris Studio Express Download site</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
551 |
are also an option, although these compilers have not |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
552 |
been extensively used yet. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
553 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
554 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
555 |
</blockquote> <!-- Solaris --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
556 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
557 |
<h4><a name="windows">Windows</a></h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
558 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
559 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
560 |
<h5><a name="toolkit">Windows Unix Toolkit</a></h5> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
561 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
562 |
Building on Windows requires a Unix-like environment, notably a |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
563 |
Unix-like shell. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
564 |
There are several such environments available of which |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
565 |
<a href="http://www.cygwin.com/">Cygwin</a> and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
566 |
<a href="http://www.mingw.org/wiki/MSYS">MinGW/MSYS</a> are |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
567 |
currently supported for |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
568 |
the OpenJDK build. One of the differences of these |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
569 |
systems from standard Windows tools is the way |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
570 |
they handle Windows path names, particularly path names which contain |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
571 |
spaces, backslashes as path separators and possibly drive letters. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
572 |
Depending |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
573 |
on the use case and the specifics of each environment these path |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
574 |
problems can |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
575 |
be solved by a combination of quoting whole paths, translating |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
576 |
backslashes to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
577 |
forward slashes, escaping backslashes with additional backslashes and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
578 |
translating the path names to their |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
579 |
<a href="http://en.wikipedia.org/wiki/8.3_filename"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
580 |
"8.3" version</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
581 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
582 |
<h6><a name="cygwin">CYGWIN</a></h6> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
583 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
584 |
CYGWIN is an open source, Linux-like environment which tries to emulate |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
585 |
a complete POSIX layer on Windows. It tries to be smart about path names |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
586 |
and can usually handle all kinds of paths if they are correctly quoted |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
587 |
or escaped although internally it maps drive letters <code><drive>:</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
588 |
to a virtual directory <code>/cygdrive/<drive></code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
589 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
590 |
You can always use the <code>cygpath</code> utility to map pathnames with spaces |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
591 |
or the backslash character into the <code>C:/</code> style of pathname |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
592 |
(called 'mixed'), e.g. <code>cygpath -s -m "<i>path</i>"</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
593 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
594 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
595 |
Note that the use of CYGWIN creates a unique problem with regards to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
596 |
setting <a href="#path"><code>PATH</code></a>. Normally on Windows |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
597 |
the <code>PATH</code> variable contains directories |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
598 |
separated with the ";" character (Solaris and Linux use ":"). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
599 |
With CYGWIN, it uses ":", but that means that paths like "C:/path" |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
600 |
cannot be placed in the CYGWIN version of <code>PATH</code> and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
601 |
instead CYGWIN uses something like <code>/cygdrive/c/path</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
602 |
which CYGWIN understands, but only CYGWIN understands. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
603 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
604 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
605 |
The OpenJDK build requires CYGWIN version 1.7.16 or newer. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
606 |
Information about CYGWIN can |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
607 |
be obtained from the CYGWIN website at |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
608 |
<a href="http://www.cygwin.com" target="_blank">www.cygwin.com</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
609 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
610 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
611 |
By default CYGWIN doesn't install all the tools required for building |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
612 |
the OpenJDK. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
613 |
Along with the default installation, you need to install |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
614 |
the following tools. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
615 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
616 |
<table border="1"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
617 |
<thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
618 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
619 |
<td>Binary Name</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
620 |
<td>Category</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
621 |
<td>Package</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
622 |
<td>Description</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
623 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
624 |
</thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
625 |
<tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
626 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
627 |
<td>ar.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
628 |
<td>Devel</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
629 |
<td>binutils</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
630 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
631 |
The GNU assembler, linker and binary utilities |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
632 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
633 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
634 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
635 |
<td>make.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
636 |
<td>Devel</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
637 |
<td>make</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
638 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
639 |
The GNU version of the 'make' utility built for CYGWIN |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
640 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
641 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
642 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
643 |
<td>m4.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
644 |
<td>Interpreters</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
645 |
<td>m4</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
646 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
647 |
GNU implementation of the traditional Unix macro |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
648 |
processor |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
649 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
650 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
651 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
652 |
<td>cpio.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
653 |
<td>Utils</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
654 |
<td>cpio</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
655 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
656 |
A program to manage archives of files |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
657 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
658 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
659 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
660 |
<td>gawk.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
661 |
<td>Utils</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
662 |
<td>awk</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
663 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
664 |
Pattern-directed scanning and processing language |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
665 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
666 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
667 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
668 |
<td>file.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
669 |
<td>Utils</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
670 |
<td>file</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
671 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
672 |
Determines file type using 'magic' numbers |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
673 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
674 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
675 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
676 |
<td>zip.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
677 |
<td>Archive</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
678 |
<td>zip</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
679 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
680 |
Package and compress (archive) files |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
681 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
682 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
683 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
684 |
<td>unzip.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
685 |
<td>Archive</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
686 |
<td>unzip</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
687 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
688 |
Extract compressed files in a ZIP archive |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
689 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
690 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
691 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
692 |
<td>free.exe</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
693 |
<td>System</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
694 |
<td>procps</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
695 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
696 |
Display amount of free and used memory in the system |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
697 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
698 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
699 |
</tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
700 |
</table> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
701 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
702 |
Note that the CYGWIN software can conflict with other non-CYGWIN |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
703 |
software on your Windows system. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
704 |
CYGWIN provides a |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
705 |
<a href="http://cygwin.com/faq/faq.using.html" target="_blank">FAQ</a> for |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
706 |
known issues and problems, of particular interest is the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
707 |
section on |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
708 |
<a href="http://cygwin.com/faq/faq.using.html#faq.using.bloda" target="_blank"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
709 |
BLODA (applications that interfere with CYGWIN)</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
710 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
711 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
712 |
<h6><a name="msys">MinGW/MSYS</a></h6> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
713 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
714 |
MinGW ("Minimalist GNU for Windows") is a collection of free Windows |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
715 |
specific header files and import libraries combined with GNU toolsets that |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
716 |
allow one to produce native Windows programs that do not rely on any |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
717 |
3rd-party C runtime DLLs. MSYS is a supplement to MinGW which allows building |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
718 |
applications and programs which rely on traditional UNIX tools to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
719 |
be present. Among others this includes tools like <code>bash</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
720 |
and <code>make</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
721 |
See <a href="http://www.mingw.org/wiki/MSYS" target="_blank">MinGW/MSYS</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
722 |
for more information. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
723 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
724 |
Like Cygwin, MinGW/MSYS can handle different types of path formats. They |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
725 |
are internally converted to paths with forward slashes and drive letters |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
726 |
<code><drive>:</code> replaced by a virtual |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
727 |
directory <code>/<drive></code>. Additionally, MSYS automatically |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
728 |
detects binaries compiled for the MSYS environment and feeds them with the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
729 |
internal, Unix-style path names. If native Windows applications are called |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
730 |
from within MSYS programs their path arguments are automatically converted |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
731 |
back to Windows style path names with drive letters and backslashes as |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
732 |
path separators. This may cause problems for Windows applications which |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
733 |
use forward slashes as parameter separator (e.g. <code>cl /nologo /I</code>) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
734 |
because MSYS may wrongly <a href="http://mingw.org/wiki/Posix_path_conversion"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
735 |
replace such parameters by drive letters</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
736 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
737 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
738 |
In addition to the tools which will be installed |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
739 |
by default, you have |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
740 |
to manually install the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
741 |
<code>msys-zip</code> and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
742 |
<code>msys-unzip</code> packages. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
743 |
This can be easily done with the MinGW command line installer: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
744 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
745 |
<code>mingw-get.exe install msys-zip</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
746 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
747 |
<code>mingw-get.exe install msys-unzip</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
748 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
749 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
750 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
751 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
752 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
753 |
<h5><a name="vs2010">Visual Studio 2010 Compilers</a></h5> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
754 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
755 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
756 |
The 32-bit and 64-bit OpenJDK Windows build requires |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
757 |
Microsoft Visual Studio C++ 2010 (VS2010) Professional |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
758 |
Edition or Express compiler. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
759 |
The compiler and other tools are expected to reside |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
760 |
in the location defined by the variable |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
761 |
<code>VS100COMNTOOLS</code> which |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
762 |
is set by the Microsoft Visual Studio installer. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
763 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
764 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
765 |
Only the C++ part of VS2010 is needed. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
766 |
Try to let the installation go to the default |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
767 |
install directory. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
768 |
Always reboot your system after installing VS2010. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
769 |
The system environment variable VS100COMNTOOLS |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
770 |
should be |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
771 |
set in your environment. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
772 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
773 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
774 |
Make sure that TMP and TEMP are also set |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
775 |
in the environment |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
776 |
and refer to Windows paths that exist, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
777 |
like <code>C:\temp</code>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
778 |
not <code>/tmp</code>, not <code>/cygdrive/c/temp</code>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
779 |
and not <code>C:/temp</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
780 |
<code>C:\temp</code> is just an example, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
781 |
it is assumed that this area is |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
782 |
private to the user, so by default |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
783 |
after installs you should |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
784 |
see a unique user path in these variables. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
785 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
786 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
787 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
788 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
789 |
</blockquote> <!-- Windows --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
790 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
791 |
<h4><a name="macosx">Mac OS X</a></h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
792 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
793 |
Make sure you get the right XCode version. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
794 |
</blockquote> <!-- Mac OS X --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
795 |
|
1119
a39bfff7f8fb
6724787: OpenJDK README-builds.html suggested changes
ohair
parents:
876
diff
changeset
|
796 |
</blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
797 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
798 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
799 |
<hr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
800 |
<h3><a name="configure">Configure</a></h3> |
1119
a39bfff7f8fb
6724787: OpenJDK README-builds.html suggested changes
ohair
parents:
876
diff
changeset
|
801 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
802 |
The basic invocation of the <code>configure</code> script |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
803 |
looks like: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
804 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
805 |
<b><code>bash ./configure [<i>options</i>]</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
806 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
807 |
This will create an output directory containing the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
808 |
"configuration" and setup an area for the build result. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
809 |
This directory typically looks like: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
810 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
811 |
<b><code>build/linux-x64-normal-server-release</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
812 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
813 |
<code>configure</code> will try to figure out what system you are running on |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
814 |
and where all necessary build components are. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
815 |
If you have all prerequisites for building installed, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
816 |
it should find everything. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
817 |
If it fails to detect any component automatically, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
818 |
it will exit and inform you about the problem. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
819 |
When this happens, read more below in |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
820 |
<a href="#configureoptions">the <code>configure</code> options</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
821 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
822 |
Some examples: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
823 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
824 |
<table border="1"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
825 |
<thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
826 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
827 |
<th>Description</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
828 |
<th>Configure Command Line</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
829 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
830 |
</thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
831 |
<tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
832 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
833 |
<td>Windows 32bit build with freetype specified</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
834 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
835 |
<code>bash ./configure --with-freetype=/cygdrive/c/freetype-i586 --with-target-bits=32</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
836 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
837 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
838 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
839 |
<td>Debug 64bit Build</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
840 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
841 |
<code>bash ./configure --enable-debug --with-target-bits=64</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
842 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
843 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
844 |
</tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
845 |
</table> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
846 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
847 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
848 |
<h4><a name="configureoptions">Configure Options</a></h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
849 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
850 |
Complete details on all the OpenJDK <code>configure</code> options can |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
851 |
be seen with: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
852 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
853 |
<b><code>bash ./configure --help=short</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
854 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
855 |
Use <code>-help</code> to see all the <code>configure</code> options |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
856 |
available. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
857 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
858 |
You can generate any number of different configurations, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
859 |
e.g. debug, release, 32, 64, etc. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
860 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
861 |
Some of the more commonly used <code>configure</code> options are: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
862 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
863 |
<table border="1"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
864 |
<thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
865 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
866 |
<th width="300">OpenJDK Configure Option</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
867 |
<th>Description</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
868 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
869 |
</thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
870 |
<tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
871 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
872 |
<td><b><code>--enable-debug</code></b></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
873 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
874 |
set the debug level to fastdebug (this is a shorthand for |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
875 |
<code>--with-debug-level=fastdebug</code>) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
876 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
877 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
878 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
879 |
<td><b><code>--with-alsa=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
880 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
881 |
select the location of the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
882 |
<a name="alsa">Advanced Linux Sound Architecture (ALSA)</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
883 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
884 |
Version 0.9.1 or newer of the ALSA files are |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
885 |
required for building the OpenJDK on Linux. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
886 |
These Linux files are usually available from an "alsa" |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
887 |
of "libasound" |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
888 |
development package, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
889 |
and it's highly recommended that you try and use |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
890 |
the package provided by the particular version of Linux that |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
891 |
you are using. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
892 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
893 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
894 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
895 |
<td><b><code>--with-boot-jdk=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
896 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
897 |
select the <a href="#bootjdk">Bootstrap JDK</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
898 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
899 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
900 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
901 |
<td><b><code>--with-boot-jdk-jvmargs=</code></b>"<i>args</i>"</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
902 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
903 |
provide the JVM options to be used to run the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
904 |
<a href="#bootjdk">Bootstrap JDK</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
905 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
906 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
907 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
908 |
<td><b><code>--with-cacerts=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
909 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
910 |
select the path to the cacerts file. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
911 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
912 |
See <a href="http://en.wikipedia.org/wiki/Certificate_Authority" target="_blank"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
913 |
http://en.wikipedia.org/wiki/Certificate_Authority</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
914 |
for a better understanding of the Certificate Authority (CA). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
915 |
A certificates file named "cacerts" |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
916 |
represents a system-wide keystore with CA certificates. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
917 |
In JDK and JRE |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
918 |
binary bundles, the "cacerts" file contains root CA certificates from |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
919 |
several public CAs (e.g., VeriSign, Thawte, and Baltimore). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
920 |
The source contain a cacerts file |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
921 |
without CA root certificates. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
922 |
Formal JDK builders will need to secure |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
923 |
permission from each public CA and include the certificates into their |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
924 |
own custom cacerts file. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
925 |
Failure to provide a populated cacerts file |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
926 |
will result in verification errors of a certificate chain during runtime. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
927 |
By default an empty cacerts file is provided and that should be |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
928 |
fine for most JDK developers. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
929 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
930 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
931 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
932 |
<td><b><code>--with-cups=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
933 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
934 |
select the CUPS install location |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
935 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
936 |
The |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
937 |
<a name="cups">Common UNIX Printing System (CUPS) Headers</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
938 |
are required for building the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
939 |
OpenJDK on Solaris and Linux. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
940 |
The Solaris header files can be obtained by installing |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
941 |
the package <strong>SFWcups</strong> from the Solaris Software |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
942 |
Companion CD/DVD, these often will be installed into the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
943 |
directory <code>/opt/sfw/cups</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
944 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
945 |
The CUPS header files can always be downloaded from |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
946 |
<a href="http://www.cups.org" target="_blank">www.cups.org</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
947 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
948 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
949 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
950 |
<td><b><code>--with-cups-include=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
951 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
952 |
select the CUPS include directory location |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
953 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
954 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
955 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
956 |
<td><b><code>--with-debug-level=</code></b><i>level</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
957 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
958 |
select the debug information level of release, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
959 |
fastdebug, or slowdebug |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
960 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
961 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
962 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
963 |
<td><b><code>--with-dev-kit=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
964 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
965 |
select location of the compiler install or |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
966 |
developer install location |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
967 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
968 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
969 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
970 |
<td><b><code>--with-freetype=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
971 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
972 |
select the freetype files to use. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
973 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
974 |
Expecting the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
975 |
<a name="freetype">freetype</a> libraries under |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
976 |
<code>lib/</code> and the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
977 |
headers under <code>include/</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
978 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
979 |
Version 2.3 or newer of FreeType is required. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
980 |
On Unix systems required files can be available as part of your |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
981 |
distribution (while you still may need to upgrade them). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
982 |
Note that you need development version of package that |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
983 |
includes both the FreeType library and header files. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
984 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
985 |
You can always download latest FreeType version from the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
986 |
<a href="http://www.freetype.org" target="_blank">FreeType website</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
987 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
988 |
Building the freetype 2 libraries from scratch is also possible, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
989 |
however on Windows refer to the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
990 |
<a href="http://freetype.freedesktop.org/wiki/FreeType_DLL"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
991 |
Windows FreeType DLL build instructions</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
992 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
993 |
Note that by default FreeType is built with byte code hinting |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
994 |
support disabled due to licensing restrictions. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
995 |
In this case, text appearance and metrics are expected to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
996 |
differ from Sun's official JDK build. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
997 |
See |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
998 |
<a href="http://freetype.sourceforge.net/freetype2/index.html"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
999 |
the SourceForge FreeType2 Home Page |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1000 |
</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1001 |
for more information. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1002 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1003 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1004 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1005 |
<td><b><code>--with-import-hotspot=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1006 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1007 |
select the location to find hotspot |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1008 |
binaries from a previous build to avoid building |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1009 |
hotspot |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1010 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1011 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1012 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1013 |
<td><b><code>--with-target-bits=</code></b><i>arg</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1014 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1015 |
select 32 or 64 bit build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1016 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1017 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1018 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1019 |
<td><b><code>--with-jvm-variants=</code></b><i>variants</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1020 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1021 |
select the JVM variants to build from, comma |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1022 |
separated list that can include: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1023 |
server, client, kernel, zero and zeroshark |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1024 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1025 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1026 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1027 |
<td><b><code>--with-memory-size=</code></b><i>size</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1028 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1029 |
select the RAM size that GNU make will think |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1030 |
this system has |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1031 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1032 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1033 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1034 |
<td><a name="msvcrNN"><b><code>--with-msvcr-dll=</code></b><i>path</i></a></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1035 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1036 |
select the <code>msvcr100.dll</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1037 |
file to include in the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1038 |
Windows builds (C/C++ runtime library for |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1039 |
Visual Studio). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1040 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1041 |
This is usually picked up automatically |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1042 |
from the redist |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1043 |
directories of Visual Studio 2010. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1044 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1045 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1046 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1047 |
<td><b><code>--with-num-cores=</code></b><i>cores</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1048 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1049 |
select the number of cores to use (processor |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1050 |
count or CPU count) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1051 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1052 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1053 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1054 |
<td><b><code>--with-x=</code></b><i>path</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1055 |
<td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1056 |
select the location of the X11 and xrender files. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1057 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1058 |
The |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1059 |
<a name="xrender">XRender Extension Headers</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1060 |
are required for building the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1061 |
OpenJDK on Solaris and Linux. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1062 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1063 |
The Linux header files are usually available from a "Xrender" |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1064 |
development package, it's recommended that you try and use |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1065 |
the package provided by the particular distribution of Linux that |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1066 |
you are using. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1067 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1068 |
The Solaris XRender header files is |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1069 |
included with the other X11 header files |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1070 |
in the package <strong>SFWxwinc</strong> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1071 |
on new enough versions of |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1072 |
Solaris and will be installed in |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1073 |
<code>/usr/X11/include/X11/extensions/Xrender.h</code> or |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1074 |
<code>/usr/openwin/share/include/X11/extensions/Xrender.h</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1075 |
</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1076 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1077 |
</tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1078 |
</table> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1079 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1080 |
|
1119
a39bfff7f8fb
6724787: OpenJDK README-builds.html suggested changes
ohair
parents:
876
diff
changeset
|
1081 |
</blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1082 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1083 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1084 |
<hr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1085 |
<h3><a name="make">Make</a></h3> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
1086 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1087 |
The basic invocation of the <code>make</code> utility |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1088 |
looks like: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1089 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1090 |
<b><code>make all</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1091 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1092 |
This will start the build to the output directory containing the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1093 |
"configuration" that was created by the <code>configure</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1094 |
script. Run <code>make help</code> for more information on |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1095 |
the available targets. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1096 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1097 |
There are some of the make targets that |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1098 |
are of general interest: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1099 |
<table border="1"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1100 |
<thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1101 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1102 |
<th>Make Target</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1103 |
<th>Description</th> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1104 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1105 |
</thead> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1106 |
<tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1107 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1108 |
<td><i>empty</i></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1109 |
<td>build everything but no images</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1110 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1111 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1112 |
<td><b><code>all</code></b></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1113 |
<td>build everything including images</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1114 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1115 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1116 |
<td><b><code>all-conf</code></b></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1117 |
<td>build all configurations</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1118 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1119 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1120 |
<td><b><code>images</code></b></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1121 |
<td>create complete j2sdk and j2re images</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1122 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1123 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1124 |
<td><b><code>install</code></b></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1125 |
<td>install the generated images locally, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1126 |
typically in <code>/usr/local</code></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1127 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1128 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1129 |
<td><b><code>clean</code></b></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1130 |
<td>remove all files generated by make, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1131 |
but not those generated by <code>configure</code></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1132 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1133 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1134 |
<td><b><code>dist-clean</code></b></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1135 |
<td>remove all files generated by both |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1136 |
and <code>configure</code> (basically killing the configuration)</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1137 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1138 |
<tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1139 |
<td><b><code>help</code></b></td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1140 |
<td>give some help on using <code>make</code>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1141 |
including some interesting make targets</td> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1142 |
</tr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1143 |
</tbody> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1144 |
</table> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
1145 |
</blockquote> |
3793
9cc5500d129d
6872735: Further update build readme for new platforms
robilad
parents:
3668
diff
changeset
|
1146 |
</blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1147 |
|
3793
9cc5500d129d
6872735: Further update build readme for new platforms
robilad
parents:
3668
diff
changeset
|
1148 |
<!-- ====================================================== --> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1149 |
<hr> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1150 |
<h2><a name="testing">Testing</a></h2> |
3793
9cc5500d129d
6872735: Further update build readme for new platforms
robilad
parents:
3668
diff
changeset
|
1151 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1152 |
When the build is completed, you should see the generated |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1153 |
binaries and associated files in the <code>j2sdk-image</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1154 |
directory in the output directory. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1155 |
In particular, the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1156 |
<code>build/<i>*</i>/images/j2sdk-image/bin</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1157 |
directory should contain executables for the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1158 |
OpenJDK tools and utilities for that configuration. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1159 |
The testing tool <code>jtreg</code> will be needed |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1160 |
and can be found at: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1161 |
<a href="http://openjdk.java.net/jtreg/" target="_blank"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1162 |
the jtreg site</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1163 |
The provided regression tests in the repositories |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1164 |
can be run with the command: |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
1165 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1166 |
<code><b>cd test && make PRODUCT_HOME=`pwd`/../build/*/images/j2sdk-image all</b></code> |
7650
6a3a53d8eacc
7003845: README-builds document proper location of forest extension, provide alternatives
ohair
parents:
7360
diff
changeset
|
1167 |
</blockquote> |
3793
9cc5500d129d
6872735: Further update build readme for new platforms
robilad
parents:
3668
diff
changeset
|
1168 |
</blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1169 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1170 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1171 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1172 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1173 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1174 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1175 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1176 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1177 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1178 |
<!-- ====================================================== --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1179 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1180 |
<!-- ====================================================== --> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1181 |
<hr> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1182 |
<h2><a name="hints">Appendix A: Hints and Tips</a></h2> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1183 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1184 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1185 |
<h3><a name="faq">FAQ</a></h3> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1186 |
<blockquote> |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1187 |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1188 |
<p> |
19525 | 1189 |
<b>Q:</b> The <code>generated-configure.sh</code> file looks horrible! |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1190 |
How are you going to edit it? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1191 |
<br> |
19525 | 1192 |
<b>A:</b> The <code>generated-configure.sh</code> file is generated (think |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1193 |
"compiled") by the autoconf tools. The source code is |
19525 | 1194 |
in <code>configure.ac</code> and various .m4 files in common/autoconf, |
1195 |
which are much more readable. |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1196 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1197 |
|
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1198 |
<p> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1199 |
<b>Q:</b> |
19525 | 1200 |
Why is the <code>generated-configure.sh</code> file checked in, |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1201 |
if it is generated? |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1202 |
<br> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1203 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1204 |
If it was not generated, every user would need to have the autoconf |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1205 |
tools installed, and re-generate the <code>configure</code> file |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1206 |
as the first step. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1207 |
Our goal is to minimize the work needed to be done by the user |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1208 |
to start building OpenJDK, and to minimize |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1209 |
the number of external dependencies required. |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1210 |
</p> |
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1211 |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1212 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1213 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1214 |
Do you require a specific version of autoconf for regenerating |
19525 | 1215 |
<code>generated-configure.sh</code>? |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1216 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1217 |
<b>A:</b> |
19525 | 1218 |
Yes, version 2.69 is required and should be easy |
1219 |
enough to aquire on all supported operating |
|
1220 |
systems. The reason for this is to avoid |
|
1221 |
large spurious changes in <code>generated-configure.sh</code>. |
|
1222 |
</p> |
|
1223 |
||
1224 |
<p> |
|
1225 |
<b>Q:</b> |
|
1226 |
How do you regenerate <code>generated-configure.sh</code> |
|
1227 |
after making changes to the input files? |
|
1228 |
<br> |
|
1229 |
<b>A:</b> |
|
1230 |
Regnerating <code>generated-configure.sh</code> |
|
1231 |
should always be done using the |
|
1232 |
script <code>common/autoconf/autogen.sh</code> to |
|
1233 |
ensure that the correct files get updated. This |
|
1234 |
script should also be run after mercurial tries to |
|
1235 |
merge <code>generated-configure.sh</code> as a |
|
1236 |
merge of the generated file is not guaranteed to |
|
1237 |
be correct. |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1238 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1239 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1240 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1241 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1242 |
What are the files in <code>common/makefiles/support/*</code> for? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1243 |
They look like gibberish. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1244 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1245 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1246 |
They are a somewhat ugly hack to compensate for command line length |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1247 |
limitations on certain platforms (Windows, Solaris). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1248 |
Due to a combination of limitations in make and the shell, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1249 |
command lines containing too many files will not work properly. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1250 |
These |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1251 |
helper files are part of an elaborate hack that will compress the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1252 |
command line in the makefile and then uncompress it safely. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1253 |
We're |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1254 |
not proud of it, but it does fix the problem. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1255 |
If you have any better suggestions, we're all ears! :-) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1256 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1257 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1258 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1259 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1260 |
I want to see the output of the commands that make runs, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1261 |
like in the old build. How do I do that? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1262 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1263 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1264 |
You specify the <code>LOG</code> variable to make. There are |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1265 |
several log levels: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1266 |
</p> |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1267 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1268 |
<ul> |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1269 |
<li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1270 |
<b><code>warn</code></b> — Default and very quiet. |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1271 |
</li> |
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1272 |
<li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1273 |
<b><code>info</code></b> — Shows more progress information |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1274 |
than warn. |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1275 |
</li> |
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1276 |
<li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1277 |
<b><code>debug</code></b> — Echos all command lines and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1278 |
prints all macro calls for compilation definitions. |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1279 |
</li> |
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1280 |
<li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1281 |
<b><code>trace</code></b> — Echos all $(shell) command |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1282 |
lines as well. |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1283 |
</li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1284 |
</ul> |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1285 |
</blockquote> |
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1286 |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1287 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1288 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1289 |
When do I have to re-run <code>configure</code>? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1290 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1291 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1292 |
Normally you will run <code>configure</code> only once for creating a |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1293 |
configuration. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1294 |
You need to re-run configuration only if you want to change any |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1295 |
configuration options, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1296 |
or if you pull down changes to the <code>configure</code> script. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1297 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1298 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1299 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1300 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1301 |
I have added a new source file. Do I need to modify the makefiles? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1302 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1303 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1304 |
Normally, no. If you want to create e.g. a new native |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1305 |
library, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1306 |
you will need to modify the makefiles. But for normal file |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1307 |
additions or removals, no changes are needed. There are certan |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1308 |
exceptions for some native libraries where the source files are spread |
19314 | 1309 |
over many directories which also contain sources for other |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1310 |
libraries. In these cases it was simply easier to create include lists |
19314 | 1311 |
rather than excludes. |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1312 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1313 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1314 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1315 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1316 |
When I run <code>configure --help</code>, I see many strange options, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1317 |
like <code>--dvidir</code>. What is this? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1318 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1319 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1320 |
Configure provides a slew of options by default, to all projects |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1321 |
that use autoconf. Most of them are not used in OpenJDK, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1322 |
so you can safely ignore them. To list only OpenJDK specific features, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1323 |
use <code>configure --help=short</code> instead. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1324 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1325 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1326 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1327 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1328 |
<code>configure</code> provides OpenJDK-specific features such as |
19314 | 1329 |
<code>--with-builddeps-server</code> that are not |
1330 |
described in this document. What about those? |
|
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1331 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1332 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1333 |
Try them out if you like! But be aware that most of these are |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1334 |
experimental features. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1335 |
Many of them don't do anything at all at the moment; the option |
19314 | 1336 |
is just a placeholder. Others depend on |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1337 |
pieces of code or infrastructure that is currently |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1338 |
not ready for prime time. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1339 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1340 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1341 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1342 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1343 |
How will you make sure you don't break anything? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1344 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1345 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1346 |
We have a script that compares the result of the new build system |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1347 |
with the result of the old. For most part, we aim for (and achieve) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1348 |
byte-by-byte identical output. There are however technical issues |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1349 |
with e.g. native binaries, which might differ in a byte-by-byte |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1350 |
comparison, even |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1351 |
when building twice with the old build system. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1352 |
For these, we compare relevant aspects |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1353 |
(e.g. the symbol table and file size). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1354 |
Note that we still don't have 100% |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1355 |
equivalence, but we're close. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1356 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1357 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1358 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1359 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1360 |
I noticed this thing X in the build that looks very broken by design. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1361 |
Why don't you fix it? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1362 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1363 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1364 |
Our goal is to produce a build output that is as close as |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1365 |
technically possible to the old build output. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1366 |
If things were weird in the old build, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1367 |
they will be weird in the new build. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1368 |
Often, things were weird before due to obscurity, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1369 |
but in the new build system the weird stuff comes up to the surface. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1370 |
The plan is to attack these things at a later stage, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1371 |
after the new build system is established. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1372 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1373 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1374 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1375 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1376 |
The code in the new build system is not that well-structured. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1377 |
Will you fix this? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1378 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1379 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1380 |
Yes! The new build system has grown bit by bit as we converted |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1381 |
the old system. When all of the old build system is converted, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1382 |
we can take a step back and clean up the structure of the new build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1383 |
system. Some of this we plan to do before replacing the old build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1384 |
system and some will need to wait until after. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1385 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1386 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1387 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1388 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1389 |
Is anything able to use the results of the new build's default make target? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1390 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1391 |
<b>A:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1392 |
Yes, this is the minimal (or roughly minimal) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1393 |
set of compiled output needed for a developer to actually |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1394 |
execute the newly built JDK. The idea is that in an incremental |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1395 |
development fashion, when doing a normal make, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1396 |
you should only spend time recompiling what's changed |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1397 |
(making it purely incremental) and only do the work that's |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1398 |
needed to actually run and test your code. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1399 |
The packaging stuff that is part of the <code>images</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1400 |
target is not needed for a normal developer who wants to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1401 |
test his new code. Even if it's quite fast, it's still unnecessary. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1402 |
We're targeting sub-second incremental rebuilds! ;-) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1403 |
(Or, well, at least single-digit seconds...) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1404 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1405 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1406 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1407 |
<b>Q:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1408 |
I usually set a specific environment variable when building, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1409 |
but I can't find the equivalent in the new build. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1410 |
What should I do? |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1411 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1412 |
<b>A:</b> |
19314 | 1413 |
It might very well be that we have neglected to add support for |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1414 |
an option that was actually used from outside the build system. |
19314 | 1415 |
Email us and we will add support for it! |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1416 |
</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1417 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1418 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1419 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1420 |
<h3><a name="performance">Build Performance Tips</a></h3> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1421 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1422 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1423 |
<p>Building OpenJDK requires a lot of horsepower. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1424 |
Some of the build tools can be adjusted to utilize more or less |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1425 |
of resources such as |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1426 |
parallel threads and memory. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1427 |
The <code>configure</code> script analyzes your system and selects reasonable |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1428 |
values for such options based on your hardware. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1429 |
If you encounter resource problems, such as out of memory conditions, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1430 |
you can modify the detected values with:</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1431 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1432 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1433 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1434 |
<b><code>--with-num-cores</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1435 |
— |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1436 |
number of cores in the build system, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1437 |
e.g. <code>--with-num-cores=8</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1438 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1439 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1440 |
<b><code>--with-memory-size</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1441 |
— memory (in MB) available in the build system, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1442 |
e.g. <code>--with-memory-size=1024</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1443 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1444 |
</ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1445 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1446 |
<p>It might also be necessary to specify the JVM arguments passed |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1447 |
to the Bootstrap JDK, using e.g. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1448 |
<code>--with-boot-jdk-jvmargs="-Xmx8G -enableassertions"</code>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1449 |
Doing this will override the default JVM arguments |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1450 |
passed to the Bootstrap JDK.</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1451 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1452 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1453 |
<p>One of the top goals of the new build system is to improve the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1454 |
build performance and decrease the time needed to build. This will |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1455 |
soon also apply to the java compilation when the Smart Javac wrapper |
23987
5afeaf4283ed
8041593: Update README-builds.html to refer to jdk9
erikj
parents:
19758
diff
changeset
|
1456 |
is fully supported.</p> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1457 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1458 |
<p>At the end of a successful execution of <code>configure</code>, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1459 |
you will get a performance summary, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1460 |
indicating how well the build will perform. Here you will |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1461 |
also get performance hints. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1462 |
If you want to build fast, pay attention to those!</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1463 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1464 |
<h4>Building with ccache</h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1465 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1466 |
<p>A simple way to radically speed up compilation of native code |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1467 |
(typically hotspot and native libraries in JDK) is to install |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1468 |
ccache. This will cache and reuse prior compilation results, if the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1469 |
source code is unchanged. However, ccache versions prior to 3.1.4 |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1470 |
does not work correctly with the precompiled headers used in |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1471 |
OpenJDK. So if your platform supports ccache at 3.1.4 or later, we |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1472 |
highly recommend installing it. This is currently only supported on |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1473 |
linux.</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1474 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1475 |
<h4>Building on local disk</h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1476 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1477 |
<p>If you are using network shares, e.g. via NFS, for your source code, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1478 |
make sure the build directory is situated on local disk. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1479 |
The performance |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1480 |
penalty is extremely high for building on a network share, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1481 |
close to unusable.</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1482 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1483 |
<h4>Building only one JVM</h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1484 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1485 |
<p>The old build builds multiple JVMs on 32-bit systems (client and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1486 |
server; and on Windows kernel as well). In the new build we have |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1487 |
changed this default to only build server when it's available. This |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1488 |
improves build times for those not interested in multiple JVMs. To |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1489 |
mimic the old behavior on platforms that support it, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1490 |
use <code>--with-jvm-variants=client,server</code>.</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1491 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1492 |
<h4>Selecting the number of cores to build on</h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1493 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1494 |
<p>By default, <code>configure</code> will analyze your machine and run the make |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1495 |
process in parallel with as many threads as you have cores. This |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1496 |
behavior can be overridden, either "permanently" (on a <code>configure</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1497 |
basis) using <code>--with-num-cores=N</code> or for a single build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1498 |
only (on a make basis), using <code>make JOBS=N</code>.</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1499 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1500 |
<p>If you want to make a slower build just this time, to save some CPU |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1501 |
power for other processes, you can run |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1502 |
e.g. <code>make JOBS=2</code>. This will force the makefiles |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1503 |
to only run 2 parallel processes, or even <code>make JOBS=1</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1504 |
which will disable parallelism.</p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1505 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1506 |
<p>If you want to have it the other way round, namely having slow |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1507 |
builds default and override with fast if you're |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1508 |
impatient, you should call <code>configure</code> with |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1509 |
<code>--with-num-cores=2</code>, making 2 the default. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1510 |
If you want to run with more |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1511 |
cores, run <code>make JOBS=8</code></p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1512 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1513 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1514 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1515 |
<h3><a name="troubleshooting">Troubleshooting</a></h3> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1516 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1517 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1518 |
<h4>Solving build problems</h4> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1519 |
|
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1520 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1521 |
If the build fails (and it's not due to a compilation error in |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1522 |
a source file you've changed), the first thing you should do |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1523 |
is to re-run the build with more verbosity. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1524 |
Do this by adding <code>LOG=debug</code> to your make command line. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1525 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1526 |
The build log (with both stdout and stderr intermingled, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1527 |
basically the same as you see on your console) can be found as |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1528 |
<code>build.log</code> in your build directory. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1529 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1530 |
You can ask for help on build problems with the new build system |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1531 |
on either the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1532 |
<a href="http://mail.openjdk.java.net/mailman/listinfo/build-dev"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1533 |
build-dev</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1534 |
or the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1535 |
<a href="http://mail.openjdk.java.net/mailman/listinfo/build-infra-dev"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1536 |
build-infra-dev</a> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1537 |
mailing lists. Please include the relevant parts |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1538 |
of the build log. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1539 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1540 |
A build can fail for any number of reasons. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1541 |
Most failures |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1542 |
are a result of trying to build in an environment in which all the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1543 |
pre-build requirements have not been met. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1544 |
The first step in |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1545 |
troubleshooting a build failure is to recheck that you have satisfied |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1546 |
all the pre-build requirements for your platform. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1547 |
Scanning the <code>configure</code> log is a good first step, making |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1548 |
sure that what it found makes sense for your system. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1549 |
Look for strange error messages or any difficulties that |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1550 |
<code>configure</code> had in finding things. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1551 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1552 |
Some of the more common problems with builds are briefly |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1553 |
described |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1554 |
below, with suggestions for remedies. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1555 |
<ul> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1556 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1557 |
<b>Corrupted Bundles on Windows:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1558 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1559 |
Some virus scanning software has been known to |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1560 |
corrupt the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1561 |
downloading of zip bundles. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1562 |
It may be necessary to disable the 'on access' or |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1563 |
'real time' |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1564 |
virus scanning features to prevent this corruption. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1565 |
This type of "real time" virus scanning can also |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1566 |
slow down the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1567 |
build process significantly. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1568 |
Temporarily disabling the feature, or excluding the build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1569 |
output directory may be necessary to get correct and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1570 |
faster builds. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1571 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1572 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1573 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1574 |
<b>Slow Builds:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1575 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1576 |
If your build machine seems to be overloaded from too many |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1577 |
simultaneous C++ compiles, try setting the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1578 |
<code>JOBS=1</code> on the <code>make</code> command line. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1579 |
Then try increasing the count slowly to an acceptable |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1580 |
level for your system. Also: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1581 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1582 |
Creating the javadocs can be very slow, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1583 |
if you are running |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1584 |
javadoc, consider skipping that step. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1585 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1586 |
Faster CPUs, more RAM, and a faster DISK usually helps. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1587 |
The VM build tends to be CPU intensive |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1588 |
(many C++ compiles), |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1589 |
and the rest of the JDK will often be disk intensive. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1590 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1591 |
Faster compiles are possible using a tool called |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1592 |
<a href="http://ccache.samba.org/" target="_blank">ccache</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1593 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1594 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1595 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1596 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1597 |
<b>File time issues:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1598 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1599 |
If you see warnings that refer to file time stamps, e.g. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1600 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1601 |
<i>Warning message:</i><code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1602 |
File `xxx' has modification time in |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1603 |
the future.</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1604 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1605 |
<i>Warning message:</i> <code> Clock skew detected. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1606 |
Your build may |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1607 |
be incomplete.</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1608 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1609 |
These warnings can occur when the clock on the build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1610 |
machine is out of |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1611 |
sync with the timestamps on the source files. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1612 |
Other errors, apparently |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1613 |
unrelated but in fact caused by the clock skew, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1614 |
can occur along with |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1615 |
the clock skew warnings. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1616 |
These secondary errors may tend to obscure the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1617 |
fact that the true root cause of the problem |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1618 |
is an out-of-sync clock. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1619 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1620 |
If you see these warnings, reset the clock on the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1621 |
build |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1622 |
machine, run "<code><i>gmake</i> clobber</code>" |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1623 |
or delete the directory |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1624 |
containing the build output, and restart the |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1625 |
build from the beginning. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1626 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1627 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1628 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1629 |
<b>Error message: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1630 |
<code>Trouble writing out table to disk</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1631 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1632 |
Increase the amount of swap space on your build machine. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1633 |
This could be caused by overloading the system and |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1634 |
it may be necessary to use: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1635 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1636 |
<code>make JOBS=1</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1637 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1638 |
to reduce the load on the system. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1639 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1640 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1641 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1642 |
<b>Error Message: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1643 |
<code>libstdc++ not found:</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1644 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1645 |
This is caused by a missing libstdc++.a library. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1646 |
This is installed as part of a specific package |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1647 |
(e.g. libstdc++.so.devel.386). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1648 |
By default some 64-bit Linux versions (e.g. Fedora) |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1649 |
only install the 64-bit version of the libstdc++ package. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1650 |
Various parts of the JDK build require a static |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1651 |
link of the C++ runtime libraries to allow for maximum |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1652 |
portability of the built images. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1653 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1654 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1655 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1656 |
<b>Linux Error Message: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1657 |
<code>cannot restore segment prot after reloc</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1658 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1659 |
This is probably an issue with SELinux (See |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1660 |
<a href="http://en.wikipedia.org/wiki/SELinux" target="_blank"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1661 |
http://en.wikipedia.org/wiki/SELinux</a>). |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1662 |
Parts of the VM is built without the <code>-fPIC</code> for |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1663 |
performance reasons. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1664 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1665 |
To completely disable SELinux: |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1666 |
<ol> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1667 |
<li><code>$ su root</code></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1668 |
<li><code># system-config-securitylevel</code></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1669 |
<li><code>In the window that appears, select the SELinux tab</code></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1670 |
<li><code>Disable SELinux</code></li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1671 |
</ol> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1672 |
<p> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1673 |
Alternatively, instead of completely disabling it you could |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1674 |
disable just this one check. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1675 |
<ol> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1676 |
<li>Select System->Administration->SELinux Management</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1677 |
<li>In the SELinux Management Tool which appears, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1678 |
select "Boolean" from the menu on the left</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1679 |
<li>Expand the "Memory Protection" group</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1680 |
<li>Check the first item, labeled |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1681 |
"Allow all unconfined executables to use |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1682 |
libraries requiring text relocation ..."</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1683 |
</ol> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1684 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1685 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1686 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1687 |
<b>Windows Error Messages:</b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1688 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1689 |
<code>*** fatal error - couldn't allocate heap, ... </code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1690 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1691 |
<code>rm fails with "Directory not empty"</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1692 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1693 |
<code>unzip fails with "cannot create ... Permission denied"</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1694 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1695 |
<code>unzip fails with "cannot create ... Error 50"</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1696 |
<br> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1697 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1698 |
The CYGWIN software can conflict with other non-CYGWIN |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1699 |
software. See the CYGWIN FAQ section on |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1700 |
<a href="http://cygwin.com/faq/faq.using.html#faq.using.bloda" target="_blank"> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1701 |
BLODA (applications that interfere with CYGWIN)</a>. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1702 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1703 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1704 |
<li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1705 |
<b>Windows Error Message: <code>spawn failed</code></b> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1706 |
<blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1707 |
Try rebooting the system, or there could be some kind of |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1708 |
issue with the disk or disk partition being used. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1709 |
Sometimes it comes with a "Permission Denied" message. |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1710 |
</blockquote> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1711 |
</li> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1712 |
</ul> |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1713 |
</blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1714 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1715 |
</blockquote> <!-- Troubleshooting --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1716 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1717 |
</blockquote> <!-- Appendix A --> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1718 |
|
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1719 |
<!-- ====================================================== --> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1720 |
<hr> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1721 |
<h2><a name="gmake">Appendix B: GNU make</a></h2> |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1722 |
<blockquote> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1723 |
|
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1724 |
The Makefiles in the OpenJDK are only valid when used with the |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1725 |
GNU version of the utility command <code>make</code> |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1726 |
(usually called <code>gmake</code> on Solaris). |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1727 |
A few notes about using GNU make: |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1728 |
<ul> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1729 |
<li> |
8646
f07e5ed381a8
6896934: README: Document how the drop source bundles work for jaxp/jaxws
ohair
parents:
8057
diff
changeset
|
1730 |
You need GNU make version 3.81 or newer. |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1731 |
If the GNU make utility on your systems is not |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1732 |
3.81 or newer, |
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|
1733 |
see <a href="#buildgmake">"Building GNU make"</a>. |
333
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1734 |
</li> |
d4540117530e
6563616: Clarify instructions for unpacking openjdk binary "plug"
ohair
parents:
15
diff
changeset
|
1735 |
<li> |
15787
496cd89abcc5
8004712: build-infra: Move user guide from web pages to repository
ohair
parents:
14069
diff
changeset
|