@@ -49,7 +49,7 @@ <h1 class="title">Building the JDK</h1>
4949< li > < a href ="#building-on-aarch64 " id ="toc-building-on-aarch64 "> Building
5050on aarch64</ a > </ li >
5151< li > < a href ="#building-on-32-bit-arm "
52- id ="toc-building-on-32-bit-arm "> Building on 32-bit arm </ a > </ li >
52+ id ="toc-building-on-32-bit-arm "> Building on 32-bit ARM </ a > </ li >
5353</ ul > </ li >
5454< li > < a href ="#operating-system-requirements "
5555id ="toc-operating-system-requirements "> Operating System Requirements</ a >
@@ -74,7 +74,7 @@ <h1 class="title">Building the JDK</h1>
7474JDK Requirements</ a >
7575< ul >
7676< li > < a href ="#getting-jdk-binaries "
77- id ="toc-getting-jdk-binaries "> Getting JDK binaries </ a > </ li >
77+ id ="toc-getting-jdk-binaries "> Getting JDK Binaries </ a > </ li >
7878</ ul > </ li >
7979< li > < a href ="#external-library-requirements "
8080id ="toc-external-library-requirements "> External Library Requirements</ a >
@@ -116,7 +116,7 @@ <h1 class="title">Building the JDK</h1>
116116< li > < a href ="#macos-1 " id ="toc-macos-1 "> macOS</ a > </ li >
117117</ ul > </ li >
118118< li > < a href ="#cross-compiling "
119- id ="toc-cross-compiling "> Cross-compiling </ a >
119+ id ="toc-cross-compiling "> Cross-Compiling </ a >
120120< ul >
121121< li > < a href ="#specifying-the-target-platform "
122122id ="toc-specifying-the-target-platform "> Specifying the Target
@@ -130,11 +130,11 @@ <h1 class="title">Building the JDK</h1>
130130< li > < a href ="#verifying-the-build "
131131id ="toc-verifying-the-build "> Verifying the Build</ a > </ li >
132132< li > < a href ="#cross-compiling-the-easy-way "
133- id ="toc-cross-compiling-the-easy-way "> Cross compiling the easy
134- way </ a > </ li >
133+ id ="toc-cross-compiling-the-easy-way "> Cross-Compiling the Easy
134+ Way </ a > </ li >
135135< li > < a href ="#considerations-for-specific-targets "
136- id ="toc-considerations-for-specific-targets "> Considerations for specific
137- targets </ a > </ li >
136+ id ="toc-considerations-for-specific-targets "> Considerations for Specific
137+ Targets </ a > </ li >
138138</ ul > </ li >
139139< li > < a href ="#build-performance " id ="toc-build-performance "> Build
140140Performance</ a >
@@ -146,9 +146,9 @@ <h1 class="title">Building the JDK</h1>
146146< li > < a href ="#precompiled-headers "
147147id ="toc-precompiled-headers "> Precompiled Headers</ a > </ li >
148148< li > < a href ="#icecc-icecream " id ="toc-icecc-icecream "> Icecc /
149- icecream </ a > </ li >
149+ Icecream </ a > </ li >
150150< li > < a href ="#using-the-javac-server "
151- id ="toc-using-the-javac-server "> Using the javac server </ a > </ li >
151+ id ="toc-using-the-javac-server "> Using the javac Server </ a > </ li >
152152< li > < a href ="#building-the-right-target "
153153id ="toc-building-the-right-target "> Building the Right Target</ a > </ li >
154154</ ul > </ li >
@@ -202,7 +202,7 @@ <h1 class="title">Building the JDK</h1>
202202< li > < a href ="#contributing-to-the-jdk "
203203id ="toc-contributing-to-the-jdk "> Contributing to the JDK</ a > </ li >
204204< li > < a href ="#editing-this-document "
205- id ="toc-editing-this-document "> Editing this document </ a > </ li >
205+ id ="toc-editing-this-document "> Editing This Document </ a > </ li >
206206</ ul >
207207</ nav >
208208< h2 id ="tldr-instructions-for-the-impatient "> TL;DR (Instructions for the
@@ -341,7 +341,7 @@ <h4 id="branch-protection">Branch Protection</h4>
341341build can be run on both machines with and without support for branch
342342protection in hardware. Branch Protection is only supported for Linux
343343targets.</ p >
344- < h3 id ="building-on-32-bit-arm "> Building on 32-bit arm </ h3 >
344+ < h3 id ="building-on-32-bit-arm "> Building on 32-bit ARM </ h3 >
345345< p > This is not recommended. Instead, see the section on < a
346346href ="#cross-compiling "> Cross-compiling</ a > .</ p >
347347< h2 id ="operating-system-requirements "> Operating System
@@ -698,7 +698,7 @@ <h2 id="boot-jdk-requirements">Boot JDK Requirements</h2>
698698locations on most platforms, this heuristics has a high likelihood to
699699fail. If the boot JDK is not automatically detected, or the wrong JDK is
700700picked, use < code > --with-boot-jdk</ code > to point to the JDK to use.</ p >
701- < h3 id ="getting-jdk-binaries "> Getting JDK binaries </ h3 >
701+ < h3 id ="getting-jdk-binaries "> Getting JDK Binaries </ h3 >
702702< p > An overview of common ways to download and install prebuilt JDK
703703binaries can be found on https://openjdk.org/install. An alternative is
704704to download the < a
@@ -1233,7 +1233,7 @@ <h3 id="macos-1">macOS</h3>
12331233or the specified identity is valid. If hardened isn't possible, then
12341234< code > debug</ code > signing is chosen if it works. If nothing works, the
12351235codesign build step is disabled.</ p >
1236- < h2 id ="cross-compiling "> Cross-compiling </ h2 >
1236+ < h2 id ="cross-compiling "> Cross-Compiling </ h2 >
12371237< p > Cross-compiling means using one platform (the < em > build</ em >
12381238platform) to generate output that can ran on another platform (the
12391239< em > target</ em > platform).</ p >
@@ -1399,7 +1399,7 @@ <h3 id="verifying-the-build">Verifying the Build</h3>
13991399contain the newly built JDK, for your < em > target</ em > system.</ p >
14001400< p > Copy these folders to your < em > target</ em > system. Then you can run
14011401e.g. < code > images/jdk/bin/java -version</ code > .</ p >
1402- < h3 id ="cross-compiling-the-easy-way "> Cross compiling the easy way </ h3 >
1402+ < h3 id ="cross-compiling-the-easy-way "> Cross-Compiling the Easy Way </ h3 >
14031403< p > Setting up a proper cross-compilation environment can be a lot of
14041404work. Fortunately there are ways that more or less automate this
14051405process. Here are two recommended methods, using the "devkits" that can
@@ -1409,7 +1409,7 @@ <h3 id="cross-compiling-the-easy-way">Cross compiling the easy way</h3>
14091409solution only work for gcc.</ p >
14101410< p > The devkit method is regularly used for testing by Oracle, and the
14111411debootstrap method is regularly used in GitHub Actions testing.</ p >
1412- < h4 id ="using-openjdk-devkits "> Using OpenJDK devkits </ h4 >
1412+ < h4 id ="using-openjdk-devkits "> Using OpenJDK Devkits </ h4 >
14131413< p > The JDK build system provides out-of-the box support for creating and
14141414using so called devkits. A < code > devkit</ code > is basically a collection
14151415of a cross-compiling toolchain and a sysroot environment which can
@@ -1660,8 +1660,8 @@ <h4 id="using-debian-debootstrap">Using Debian debootstrap</h4>
16601660</ tr >
16611661</ tbody >
16621662</ table >
1663- < h3 id ="considerations-for-specific-targets "> Considerations for specific
1664- targets </ h3 >
1663+ < h3 id ="considerations-for-specific-targets "> Considerations for Specific
1664+ Targets </ h3 >
16651665< h4 id ="building-for-arm32 "> Building for ARM32</ h4 >
16661666< p > A common cross-compilation target is the ARM CPU. When building for
16671667ARM, it is recommended to set the ABI profile. A number of pre-defined
@@ -1772,15 +1772,15 @@ <h3 id="precompiled-headers">Precompiled Headers</h3>
17721772circumstances, it can actually slow things down.</ p >
17731773< p > You can experiment by disabling pre-compiled headers using
17741774< code > --disable-precompiled-headers</ code > .</ p >
1775- < h3 id ="icecc-icecream "> Icecc / icecream </ h3 >
1775+ < h3 id ="icecc-icecream "> Icecc / Icecream </ h3 >
17761776< p > < a href ="https://github.com/icecc/icecream "> icecc/icecream</ a > is a
17771777simple way to setup a distributed compiler network. If you have multiple
17781778machines available for building the JDK, you can drastically cut
17791779individual build times by utilizing it.</ p >
17801780< p > To use, setup an icecc network, and install icecc on the build
17811781machine. Then run < code > configure</ code > using
17821782< code > --enable-icecc</ code > .</ p >
1783- < h3 id ="using-the-javac-server "> Using the javac server </ h3 >
1783+ < h3 id ="using-the-javac-server "> Using the javac Server </ h3 >
17841784< p > To speed up compilation of Java code, especially during incremental
17851785compilations, the javac server is automatically enabled in the
17861786configuration step by default. To explicitly enable or disable the javac
@@ -2456,7 +2456,7 @@ <h2 id="contributing-to-the-jdk">Contributing to the JDK</h2>
24562456your contribution.</ p >
24572457< p > The official place to start is the < a
24582458href ="https://openjdk.org/guide/ "> OpenJDK Developers’ Guide</ a > .</ p >
2459- < h2 id ="editing-this-document "> Editing this document </ h2 >
2459+ < h2 id ="editing-this-document "> Editing This Document </ h2 >
24602460< p > If you want to contribute changes to this document, edit
24612461< code > doc/building.md</ code > and then run
24622462< code > make update-build-docs</ code > to generate the same changes in
0 commit comments