From e3e1b2799cbb65e0a849988f824743d6cff2e9a1 Mon Sep 17 00:00:00 2001 From: Zdenek Zambersky Date: Tue, 20 Feb 2024 15:49:42 +0100 Subject: [PATCH] Backport 26755a968665545a151adce79a5227c79724bb6b --- doc/building.html | 177 +++++++++++++++++++++++----------------------- doc/building.md | 82 ++++++++++----------- 2 files changed, 129 insertions(+), 130 deletions(-) diff --git a/doc/building.html b/doc/building.html index 81c8d30efff..13ee9b7b6fc 100644 --- a/doc/building.html +++ b/doc/building.html @@ -175,26 +175,26 @@

Operating System Requirements

- - + + - - + + - - + + - - + + - - + +
Operating systemVendor/version usedOperating systemVendor/version used
LinuxOracle Enterprise Linux 6.4 / 7.1 (using kernel 3.8.13)LinuxOracle Enterprise Linux 6.4 / 7.1 (using kernel 3.8.13)
SolarisSolaris 11.1 SRU 21.4.1 / 11.2 SRU 5.5SolarisSolaris 11.1 SRU 21.4.1 / 11.2 SRU 5.5
macOSMac OS X 10.9 (Mavericks) / 10.10 (Yosemite)macOSMac OS X 10.9 (Mavericks) / 10.10 (Yosemite)
WindowsWindows Server 2012 R2WindowsWindows Server 2012 R2
@@ -296,7 +296,6 @@

Native Compiler (Toolchain) Requ -

All compilers are expected to be able to compile to the C99 language standard, as some C99 features are used in the source code. Microsoft Visual Studio doesn't fully support C99 so in practice shared code is limited to using C99 features that it does support.

gcc

The minimum accepted version of gcc is 4.8. Older versions will generate a warning by configure and are unlikely to work.

The JDK is currently known to be able to compile with at least version 7.4 of gcc.

@@ -320,50 +319,50 @@

Oracle Solaris Studio

- - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + +
PackageVersionPackageVersion
developer/solarisstudio-124/backend12.4-1.0.6.0developer/solarisstudio-124/backend12.4-1.0.6.0
developer/solarisstudio-124/c++12.4-1.0.10.0developer/solarisstudio-124/c++12.4-1.0.10.0
developer/solarisstudio-124/cc12.4-1.0.4.0developer/solarisstudio-124/cc12.4-1.0.4.0
developer/solarisstudio-124/library/c++-libs12.4-1.0.10.0developer/solarisstudio-124/library/c++-libs12.4-1.0.10.0
developer/solarisstudio-124/library/math-libs12.4-1.0.0.1developer/solarisstudio-124/library/math-libs12.4-1.0.0.1
developer/solarisstudio-124/library/studio-gccrt12.4-1.0.0.1developer/solarisstudio-124/library/studio-gccrt12.4-1.0.0.1
developer/solarisstudio-124/studio-common12.4-1.0.0.1developer/solarisstudio-124/studio-common12.4-1.0.0.1
developer/solarisstudio-124/studio-ja12.4-1.0.0.1developer/solarisstudio-124/studio-ja12.4-1.0.0.1
developer/solarisstudio-124/studio-legal12.4-1.0.0.1developer/solarisstudio-124/studio-legal12.4-1.0.0.1
developer/solarisstudio-124/studio-zhCN12.4-1.0.0.1developer/solarisstudio-124/studio-zhCN12.4-1.0.0.1
@@ -747,103 +746,103 @@

Cross compiling with Debian sysroo - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + diff --git a/doc/building.md b/doc/building.md index 60d4d73a638..648be30b4af 100644 --- a/doc/building.md +++ b/doc/building.md @@ -151,12 +151,12 @@ This table lists the OS versions used by Oracle when building the JDK. Such information is always subject to change, but this table is up to date at the time of writing. - Operating system Vendor/version used - ----------------- ------------------------------------------------------- - Linux Oracle Enterprise Linux 6.4 / 7.1 (using kernel 3.8.13) - Solaris Solaris 11.1 SRU 21.4.1 / 11.2 SRU 5.5 - macOS Mac OS X 10.9 (Mavericks) / 10.10 (Yosemite) - Windows Windows Server 2012 R2 +| Operating system | Vendor/version used | +| ----------------- | ------------------------------------------------------- | +| Linux | Oracle Enterprise Linux 6.4 / 7.1 (using kernel 3.8.13) | +| Solaris | Solaris 11.1 SRU 21.4.1 / 11.2 SRU 5.5 | +| macOS | Mac OS X 10.9 (Mavericks) / 10.10 (Yosemite) | +| Windows | Windows Server 2012 R2 | The double version numbers for Linux, Solaris and macOS is due to the hybrid model used at Oracle, where header files and external libraries from an older @@ -363,18 +363,18 @@ configure. The Solaris Studio installation should contain at least these packages: - Package Version - -------------------------------------------------- ------------- - developer/solarisstudio-124/backend 12.4-1.0.6.0 - developer/solarisstudio-124/c++ 12.4-1.0.10.0 - developer/solarisstudio-124/cc 12.4-1.0.4.0 - developer/solarisstudio-124/library/c++-libs 12.4-1.0.10.0 - developer/solarisstudio-124/library/math-libs 12.4-1.0.0.1 - developer/solarisstudio-124/library/studio-gccrt 12.4-1.0.0.1 - developer/solarisstudio-124/studio-common 12.4-1.0.0.1 - developer/solarisstudio-124/studio-ja 12.4-1.0.0.1 - developer/solarisstudio-124/studio-legal 12.4-1.0.0.1 - developer/solarisstudio-124/studio-zhCN 12.4-1.0.0.1 +| Package | Version | +| -------------------------------------------------- | ------------- | +| developer/solarisstudio-124/backend | 12.4-1.0.6.0 | +| developer/solarisstudio-124/c++ | 12.4-1.0.10.0 | +| developer/solarisstudio-124/cc | 12.4-1.0.4.0 | +| developer/solarisstudio-124/library/c++-libs | 12.4-1.0.10.0 | +| developer/solarisstudio-124/library/math-libs | 12.4-1.0.0.1 | +| developer/solarisstudio-124/library/studio-gccrt | 12.4-1.0.0.1 | +| developer/solarisstudio-124/studio-common | 12.4-1.0.0.1 | +| developer/solarisstudio-124/studio-ja | 12.4-1.0.0.1 | +| developer/solarisstudio-124/studio-legal | 12.4-1.0.0.1 | +| developer/solarisstudio-124/studio-zhCN | 12.4-1.0.0.1 | Compiling with Solaris Studio can sometimes be finicky. This is the exact version used by Oracle, which worked correctly at the time of writing: @@ -965,14 +965,14 @@ https://sourceware.org/autobook/autobook/autobook_17.html). If no targets are given, a native toolchain for the current platform will be created. Currently, at least the following targets are known to work: - Supported devkit targets - ------------------------ - x86_64-linux-gnu - aarch64-linux-gnu - arm-linux-gnueabihf - ppc64-linux-gnu - ppc64le-linux-gnu - s390x-linux-gnu +| Supported devkit targets | +| ------------------------ | +| x86_64-linux-gnu | +| aarch64-linux-gnu | +| arm-linux-gnueabihf | +| ppc64-linux-gnu | +| ppc64le-linux-gnu | +| s390x-linux-gnu | `BASE_OS` must be one of "OEL6" for Oracle Enterprise Linux 6 or "Fedora" (if not specified "OEL6" will be the default). If the base OS @@ -1199,21 +1199,21 @@ it might require a little nudge with: Architectures that are known to successfully cross-compile like this are: - Target Debian tree Debian arch `--openjdk-target=...` `--with-jvm-variants=...` - ------------ ------------ ------------- ------------------------ -------------- - x86 buster i386 i386-linux-gnu (all) - arm buster armhf arm-linux-gnueabihf (all) - aarch64 buster arm64 aarch64-linux-gnu (all) - ppc64le buster ppc64el powerpc64le-linux-gnu (all) - s390x buster s390x s390x-linux-gnu (all) - mipsle buster mipsel mipsel-linux-gnu zero - mips64le buster mips64el mips64el-linux-gnueabi64 zero - armel buster arm arm-linux-gnueabi zero - ppc sid powerpc powerpc-linux-gnu zero - ppc64be sid ppc64 powerpc64-linux-gnu (all) - m68k sid m68k m68k-linux-gnu zero - alpha sid alpha alpha-linux-gnu zero - sh4 sid sh4 sh4-linux-gnu zero +| Target | Debian tree | Debian arch | `--openjdk-target=...` | `--with-jvm-variants=...` | +| ------------ | ------------ | ------------- | ------------------------ | ------------------------- | +| x86 | buster | i386 | i386-linux-gnu | (all) | +| arm | buster | armhf | arm-linux-gnueabihf | (all) | +| aarch64 | buster | arm64 | aarch64-linux-gnu | (all) | +| ppc64le | buster | ppc64el | powerpc64le-linux-gnu | (all) | +| s390x | buster | s390x | s390x-linux-gnu | (all) | +| mipsle | buster | mipsel | mipsel-linux-gnu | zero | +| mips64le | buster | mips64el | mips64el-linux-gnueabi64 | zero | +| armel | buster | arm | arm-linux-gnueabi | zero | +| ppc | sid | powerpc | powerpc-linux-gnu | zero | +| ppc64be | sid | ppc64 | powerpc64-linux-gnu | (all) | +| m68k | sid | m68k | m68k-linux-gnu | zero | +| alpha | sid | alpha | alpha-linux-gnu | zero | +| sh4 | sid | sh4 | sh4-linux-gnu | zero | ### Building for ARM/aarch64
TargetDebian treeDebian arch--openjdk-target=...TargetDebian treeDebian arch--openjdk-target=... --with-jvm-variants=...
x86busteri386i386-linux-gnux86busteri386i386-linux-gnu (all)
armbusterarmhfarm-linux-gnueabihfarmbusterarmhfarm-linux-gnueabihf (all)
aarch64busterarm64aarch64-linux-gnuaarch64busterarm64aarch64-linux-gnu (all)
ppc64lebusterppc64elpowerpc64le-linux-gnuppc64lebusterppc64elpowerpc64le-linux-gnu (all)
s390xbusters390xs390x-linux-gnus390xbusters390xs390x-linux-gnu (all)
mipslebustermipselmipsel-linux-gnumipslebustermipselmipsel-linux-gnu zero
mips64lebustermips64elmips64el-linux-gnueabi64mips64lebustermips64elmips64el-linux-gnueabi64 zero
armelbusterarmarm-linux-gnueabiarmelbusterarmarm-linux-gnueabi zero
ppcsidpowerpcpowerpc-linux-gnuppcsidpowerpcpowerpc-linux-gnu zero
ppc64besidppc64powerpc64-linux-gnuppc64besidppc64powerpc64-linux-gnu (all)
m68ksidm68km68k-linux-gnum68ksidm68km68k-linux-gnu zero
alphasidalphaalpha-linux-gnualphasidalphaalpha-linux-gnu zero
sh4sidsh4sh4-linux-gnush4sidsh4sh4-linux-gnu zero