8344093: Implement JEP 501: Deprecate the 32-bit x86 Port for Removal

Reviewed-by: ihse, simonis, dholmes
This commit is contained in:
Aleksey Shipilev 2024-11-28 09:35:51 +00:00
parent d791f4b98d
commit 56f1e4ef05
4 changed files with 14 additions and 37 deletions

View File

@ -36,7 +36,7 @@ on:
platforms: platforms:
description: 'Platform(s) to execute on (comma separated, e.g. "linux-x64, macos, aarch64")' description: 'Platform(s) to execute on (comma separated, e.g. "linux-x64, macos, aarch64")'
required: true required: true
default: 'linux-x64, linux-x86-hs, linux-x64-variants, linux-cross-compile, alpine-linux-x64, macos-x64, macos-aarch64, windows-x64, windows-aarch64, docs' default: 'linux-x64, linux-x64-variants, linux-cross-compile, alpine-linux-x64, macos-x64, macos-aarch64, windows-x64, windows-aarch64, docs'
configure-arguments: configure-arguments:
description: 'Additional configure arguments' description: 'Additional configure arguments'
required: false required: false
@ -62,7 +62,6 @@ jobs:
EXCLUDED_PLATFORMS: 'alpine-linux-x64' EXCLUDED_PLATFORMS: 'alpine-linux-x64'
outputs: outputs:
linux-x64: ${{ steps.include.outputs.linux-x64 }} linux-x64: ${{ steps.include.outputs.linux-x64 }}
linux-x86-hs: ${{ steps.include.outputs.linux-x86-hs }}
linux-x64-variants: ${{ steps.include.outputs.linux-x64-variants }} linux-x64-variants: ${{ steps.include.outputs.linux-x64-variants }}
linux-cross-compile: ${{ steps.include.outputs.linux-cross-compile }} linux-cross-compile: ${{ steps.include.outputs.linux-cross-compile }}
alpine-linux-x64: ${{ steps.include.outputs.alpine-linux-x64 }} alpine-linux-x64: ${{ steps.include.outputs.alpine-linux-x64 }}
@ -145,7 +144,6 @@ jobs:
} }
echo "linux-x64=$(check_platform linux-x64 linux x64)" >> $GITHUB_OUTPUT echo "linux-x64=$(check_platform linux-x64 linux x64)" >> $GITHUB_OUTPUT
echo "linux-x86-hs=$(check_platform linux-x86-hs linux x86)" >> $GITHUB_OUTPUT
echo "linux-x64-variants=$(check_platform linux-x64-variants variants)" >> $GITHUB_OUTPUT echo "linux-x64-variants=$(check_platform linux-x64-variants variants)" >> $GITHUB_OUTPUT
echo "linux-cross-compile=$(check_platform linux-cross-compile cross-compile)" >> $GITHUB_OUTPUT echo "linux-cross-compile=$(check_platform linux-cross-compile cross-compile)" >> $GITHUB_OUTPUT
echo "alpine-linux-x64=$(check_platform alpine-linux-x64 alpine-linux x64)" >> $GITHUB_OUTPUT echo "alpine-linux-x64=$(check_platform alpine-linux-x64 alpine-linux x64)" >> $GITHUB_OUTPUT
@ -170,24 +168,6 @@ jobs:
make-arguments: ${{ github.event.inputs.make-arguments }} make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.prepare.outputs.linux-x64 == 'true' if: needs.prepare.outputs.linux-x64 == 'true'
build-linux-x86-hs:
name: linux-x86-hs
needs: prepare
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x86
make-target: 'hotspot'
gcc-major-version: '10'
gcc-package-suffix: '-multilib'
apt-architecture: 'i386'
# Some multilib libraries do not have proper inter-dependencies, so we have to
# install their dependencies manually.
apt-extra-packages: 'libfreetype-dev:i386 libtiff-dev:i386 libcupsimage2-dev:i386 libffi-dev:i386'
extra-conf-options: '--with-target-bits=32 --enable-fallback-linker --enable-libffi-bundling'
configure-arguments: ${{ github.event.inputs.configure-arguments }}
make-arguments: ${{ github.event.inputs.make-arguments }}
if: needs.prepare.outputs.linux-x86-hs == 'true'
build-linux-x64-hs-nopch: build-linux-x64-hs-nopch:
name: linux-x64-hs-nopch name: linux-x64-hs-nopch
needs: prepare needs: prepare

View File

@ -329,8 +329,8 @@ GB of free disk space is required.</p>
<p>Even for 32-bit builds, it is recommended to use a 64-bit build <p>Even for 32-bit builds, it is recommended to use a 64-bit build
machine, and instead create a 32-bit target using machine, and instead create a 32-bit target using
<code>--with-target-bits=32</code>.</p> <code>--with-target-bits=32</code>.</p>
<p>Note: The Windows 32-bit x86 port is deprecated and may be removed in <p>Note: The 32-bit x86 port is deprecated and may be removed in a
a future release.</p> future release.</p>
<h3 id="building-on-aarch64">Building on aarch64</h3> <h3 id="building-on-aarch64">Building on aarch64</h3>
<p>At a minimum, a machine with 8 cores is advisable, as well as 8 GB of <p>At a minimum, a machine with 8 cores is advisable, as well as 8 GB of
RAM. (The more cores to use, the more memory you need.) At least 6 GB of RAM. (The more cores to use, the more memory you need.) At least 6 GB of
@ -393,8 +393,7 @@ Build Platforms</a>. From time to time, this is updated by contributors
to list successes or failures of building on different platforms.</p> to list successes or failures of building on different platforms.</p>
<h3 id="windows">Windows</h3> <h3 id="windows">Windows</h3>
<p>Windows XP is not a supported platform, but all newer Windows should <p>Windows XP is not a supported platform, but all newer Windows should
be able to build the JDK. (Note: The Windows 32-bit x86 port is be able to build the JDK.</p>
deprecated and may be removed in a future release.)</p>
<p>On Windows, it is important that you pay attention to the <p>On Windows, it is important that you pay attention to the
instructions in the <a href="#special-considerations">Special instructions in the <a href="#special-considerations">Special
Considerations</a>.</p> Considerations</a>.</p>

View File

@ -134,8 +134,7 @@ space is required.
Even for 32-bit builds, it is recommended to use a 64-bit build machine, and Even for 32-bit builds, it is recommended to use a 64-bit build machine, and
instead create a 32-bit target using `--with-target-bits=32`. instead create a 32-bit target using `--with-target-bits=32`.
Note: The Windows 32-bit x86 port is deprecated and may be removed in a future Note: The 32-bit x86 port is deprecated and may be removed in a future release.
release.
### Building on aarch64 ### Building on aarch64
@ -191,8 +190,7 @@ on different platforms.
### Windows ### Windows
Windows XP is not a supported platform, but all newer Windows should be able to Windows XP is not a supported platform, but all newer Windows should be able to
build the JDK. (Note: The Windows 32-bit x86 port is deprecated and may be build the JDK.
removed in a future release.)
On Windows, it is important that you pay attention to the instructions in the On Windows, it is important that you pay attention to the instructions in the
[Special Considerations](#special-considerations). [Special Considerations](#special-considerations).

View File

@ -666,14 +666,14 @@ AC_DEFUN([PLATFORM_CHECK_DEPRECATION],
[ [
AC_ARG_ENABLE(deprecated-ports, [AS_HELP_STRING([--enable-deprecated-ports@<:@=yes/no@:>@], AC_ARG_ENABLE(deprecated-ports, [AS_HELP_STRING([--enable-deprecated-ports@<:@=yes/no@:>@],
[Suppress the error when configuring for a deprecated port @<:@no@:>@])]) [Suppress the error when configuring for a deprecated port @<:@no@:>@])])
# if test "x$OPENJDK_TARGET_CPU" = xx86; then if test "x$OPENJDK_TARGET_CPU" = xx86; then
# if test "x$enable_deprecated_ports" = "xyes"; then if test "x$enable_deprecated_ports" = "xyes"; then
# AC_MSG_WARN([The x86 port is deprecated and may be removed in a future release.]) AC_MSG_WARN([The 32-bit x86 port is deprecated and may be removed in a future release.])
# else else
# AC_MSG_ERROR(m4_normalize([The 32-bit x86 port is deprecated and may be removed in a future release. AC_MSG_ERROR(m4_normalize([The 32-bit x86 port is deprecated and may be removed in a future release.
# Use --enable-deprecated-ports=yes to suppress this error.])) Use --enable-deprecated-ports=yes to suppress this error.]))
# fi fi
# fi fi
]) ])
AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_BUILD_OS_VERSION], AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_BUILD_OS_VERSION],