Skip to content

Commit d25b03e

Browse files
committed
8253616: Change to GCC 10.2 for building on Linux at Oracle
Reviewed-by: erikj
1 parent 821bd08 commit d25b03e

File tree

4 files changed

+33
-13
lines changed

4 files changed

+33
-13
lines changed

doc/building.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ <h2 id="native-compiler-toolchain-requirements">Native Compiler (Toolchain) Requ
265265
<tbody>
266266
<tr class="odd">
267267
<td style="text-align: left;">Linux</td>
268-
<td style="text-align: left;">gcc 9.2.0</td>
268+
<td style="text-align: left;">gcc 10.2.0</td>
269269
</tr>
270270
<tr class="even">
271271
<td style="text-align: left;">macOS</td>
@@ -280,7 +280,7 @@ <h2 id="native-compiler-toolchain-requirements">Native Compiler (Toolchain) Requ
280280
<p>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.</p>
281281
<h3 id="gcc">gcc</h3>
282282
<p>The minimum accepted version of gcc is 5.0. Older versions will generate a warning by <code>configure</code> and are unlikely to work.</p>
283-
<p>The JDK is currently known to be able to compile with at least version 9.2 of gcc.</p>
283+
<p>The JDK is currently known to be able to compile with at least version 10.2 of gcc.</p>
284284
<p>In general, any version between these two should be usable.</p>
285285
<h3 id="clang">clang</h3>
286286
<p>The minimum accepted version of clang is 3.5. Older versions will not be accepted by <code>configure</code>.</p>

doc/building.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@ issues.
302302

303303
Operating system Toolchain version
304304
------------------ -------------------------------------------------------
305-
Linux gcc 9.2.0
305+
Linux gcc 10.2.0
306306
macOS Apple Xcode 10.1 (using clang 10.0.0)
307307
Windows Microsoft Visual Studio 2019 update 16.7.2
308308

@@ -316,7 +316,7 @@ features that it does support.
316316
The minimum accepted version of gcc is 5.0. Older versions will generate a warning
317317
by `configure` and are unlikely to work.
318318

319-
The JDK is currently known to be able to compile with at least version 9.2 of
319+
The JDK is currently known to be able to compile with at least version 10.2 of
320320
gcc.
321321

322322
In general, any version between these two should be usable.

make/conf/jib-profiles.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -959,10 +959,10 @@ var getJibProfilesProfiles = function (input, common, data) {
959959
var getJibProfilesDependencies = function (input, common) {
960960

961961
var devkit_platform_revisions = {
962-
linux_x64: "gcc9.2.0-OL6.4+1.0",
962+
linux_x64: "gcc10.2.0-OL6.4+1.0",
963963
macosx_x64: "Xcode11.3.1-MacOSX10.15+1.0",
964964
windows_x64: "VS2019-16.7.2+1.0",
965-
linux_aarch64: "gcc9.2.0-OL7.6+1.0",
965+
linux_aarch64: "gcc10.2.0-OL7.6+1.0",
966966
linux_arm: "gcc8.2.0-Fedora27+1.0",
967967
linux_ppc64le: "gcc8.2.0-Fedora27+1.0",
968968
linux_s390x: "gcc8.2.0-Fedora27+1.0"

make/devkit/Tools.gmk

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -87,35 +87,44 @@ endif
8787
# Define external dependencies
8888

8989
# Latest that could be made to work.
90-
GCC_VER := 9.2.0
91-
ifeq ($(GCC_VER), 9.2.0)
90+
GCC_VER := 10.2.0
91+
ifeq ($(GCC_VER), 10.2.0)
92+
gcc_ver := gcc-10.2.0
93+
binutils_ver := binutils-2.35
94+
ccache_ver := ccache-3.7.11
95+
mpfr_ver := mpfr-4.1.0
96+
gmp_ver := gmp-6.2.0
97+
mpc_ver := mpc-1.1.0
98+
gdb_ver := gdb-9.2
99+
REQUIRED_MIN_MAKE_MAJOR_VERSION := 4
100+
else ifeq ($(GCC_VER), 9.2.0)
92101
gcc_ver := gcc-9.2.0
93102
binutils_ver := binutils-2.34
94-
ccache_ver := 3.7.3
103+
ccache_ver := ccache-3.7.3
95104
mpfr_ver := mpfr-3.1.5
96105
gmp_ver := gmp-6.1.2
97106
mpc_ver := mpc-1.0.3
98107
gdb_ver := gdb-8.3
99108
else ifeq ($(GCC_VER), 8.3.0)
100109
gcc_ver := gcc-8.3.0
101110
binutils_ver := binutils-2.32
102-
ccache_ver := 3.7.3
111+
ccache_ver := ccache-3.7.3
103112
mpfr_ver := mpfr-3.1.5
104113
gmp_ver := gmp-6.1.2
105114
mpc_ver := mpc-1.0.3
106115
gdb_ver := gdb-8.3
107116
else ifeq ($(GCC_VER), 7.3.0)
108117
gcc_ver := gcc-7.3.0
109118
binutils_ver := binutils-2.30
110-
ccache_ver := 3.3.6
119+
ccache_ver := ccache-3.3.6
111120
mpfr_ver := mpfr-3.1.5
112121
gmp_ver := gmp-6.1.2
113122
mpc_ver := mpc-1.0.3
114123
gdb_ver := gdb-8.1
115124
else ifeq ($(GCC_VER), 4.9.2)
116125
gcc_ver := gcc-4.9.2
117126
binutils_ver := binutils-2.25
118-
ccache_ver := 3.2.1
127+
ccache_ver := ccache-3.2.1
119128
mpfr_ver := mpfr-3.0.1
120129
gmp_ver := gmp-4.3.2
121130
mpc_ver := mpc-1.0.1
@@ -124,9 +133,20 @@ else
124133
$(error Unsupported GCC version)
125134
endif
126135

136+
ifneq ($(REQUIRED_MIN_MAKE_MAJOR_VERSION),)
137+
MAKE_MAJOR_VERSION := $(word 1,$(subst ., ,$(MAKE_VERSION)))
138+
SUPPORTED_MAKE_VERSION := $(shell [ $(MAKE_MAJOR_VERSION) -ge $(REQUIRED_MIN_MAKE_MAJOR_VERSION) ] && echo true)
139+
ifneq ($(SUPPORTED_MAKE_VERSION),true)
140+
$(error "Make v$(MAKE_VERSION) is too old, must use v$(REQUIRED_MIN_MAKE_MAJOR_VERSION) or above")
141+
endif
142+
endif
143+
144+
ccache_ver_only := $(patsubst ccache-%,%,$(ccache_ver))
145+
146+
127147
GCC := http://ftp.gnu.org/pub/gnu/gcc/$(gcc_ver)/$(gcc_ver).tar.xz
128148
BINUTILS := http://ftp.gnu.org/pub/gnu/binutils/$(binutils_ver).tar.gz
129-
CCACHE := https://github.com/ccache/ccache/releases/download/v$(ccache_ver)/ccache-$(ccache_ver).tar.xz
149+
CCACHE := https://github.com/ccache/ccache/releases/download/v$(ccache_ver_only)/$(ccache_ver).tar.xz
130150
MPFR := https://www.mpfr.org/${mpfr_ver}/${mpfr_ver}.tar.bz2
131151
GMP := http://ftp.gnu.org/pub/gnu/gmp/${gmp_ver}.tar.bz2
132152
MPC := http://ftp.gnu.org/pub/gnu/mpc/${mpc_ver}.tar.gz

0 commit comments

Comments
 (0)