Skip to content

8300805: Update autoconf build-aux files with latest from 2022-09-17#3206

Open
gnu-andrew wants to merge 1 commit into
openjdk:masterfrom
gnu-andrew:autoconf-update
Open

8300805: Update autoconf build-aux files with latest from 2022-09-17#3206
gnu-andrew wants to merge 1 commit into
openjdk:masterfrom
gnu-andrew:autoconf-update

Conversation

@gnu-andrew

@gnu-andrew gnu-andrew commented May 27, 2026

Copy link
Copy Markdown
Member

I came across this patch when trying to work out how to backport JDK-8285630 to fix the RISC-V Zero build. That fix is only available in 17u as part of a huge patch to bring in the RISC-V JIT port. It turns out that this autoconf update supersedes both that change and JDK-8265192, an additional MacOS on AArch64 fix, by updating the over a decade old autoconf files to new versions which natively support architectures like AArch64, RISC-V and LoongArch which the JDK has had to add overrides for.

The backport is not clean because of those two earlier fixes being absent in 11u and the lack of Windows WSL support added by JDK-8215445 and JDK-8257679



Progress

  • Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • JDK-8285630 needs maintainer approval
  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • JDK-8265192 needs maintainer approval
  • JDK-8300805 needs maintainer approval

Issues

  • JDK-8300805: Update autoconf build-aux files with latest from 2022-09-17 (Enhancement - P3 - Requested)
  • JDK-8285630: Fix a configure error in RISC-V cross build (Bug - P4 - Requested)
  • JDK-8265192: [macos_aarch64] configure script fails if GNU uname in PATH (Bug - P4 - Requested)

Reviewers

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk11u-dev.git pull/3206/head:pull/3206
$ git checkout pull/3206

Update a local copy of the PR:
$ git checkout pull/3206
$ git pull https://git.openjdk.org/jdk11u-dev.git pull/3206/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 3206

View PR using the GUI difftool:
$ git pr show -t 3206

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jdk11u-dev/pull/3206.diff

Using Webrev

Link to Webrev Comment

@bridgekeeper

bridgekeeper Bot commented May 27, 2026

Copy link
Copy Markdown

👋 Welcome back andrew! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk

openjdk Bot commented May 27, 2026

Copy link
Copy Markdown

❗ This change is not yet ready to be integrated.
See the Progress checklist in the description for automated requirements.

@openjdk openjdk Bot changed the title Backport f279c751a5b2132c11aa3a31084ee37f1a349150 8300805: Update autoconf build-aux files with latest from 2022-09-17 May 27, 2026
@openjdk

openjdk Bot commented May 27, 2026

Copy link
Copy Markdown

This backport pull request has now been updated with issue from the original commit.

@openjdk openjdk Bot added the backport Port of a pull request already in a different code base label May 27, 2026
@gnu-andrew

Copy link
Copy Markdown
Member Author

/issue add 8285630,8265192

@openjdk

openjdk Bot commented May 27, 2026

Copy link
Copy Markdown

@gnu-andrew
Adding additional issue to issue list: 8285630: Fix a configure error in RISC-V cross build.

Adding additional issue to issue list: 8265192: [macos_aarch64] configure script fails if GNU uname in PATH.

@gnu-andrew gnu-andrew marked this pull request as ready for review May 27, 2026 05:55
@openjdk openjdk Bot added the rfr Pull request is ready for review label May 27, 2026
@mlbridge

mlbridge Bot commented May 27, 2026

Copy link
Copy Markdown

Webrevs

@vieiro

vieiro commented May 27, 2026

Copy link
Copy Markdown
Contributor

FWIW, this builds fine in rhel-8.10 / gcc 8.5.0 / autoconf 2.69.

@gnu-andrew

Copy link
Copy Markdown
Member Author

/issue add 8285630,8265192

FWIW, this builds fine in rhel-8.10 / gcc 8.5.0 / autoconf 2.69.

Thanks. I appreciate the testing.

@openjdk

openjdk Bot commented May 27, 2026

Copy link
Copy Markdown

@gnu-andrew
Updating description of additional solved issue: 8285630: Fix a configure error in RISC-V cross build.

Updating description of additional solved issue: 8265192: [macos_aarch64] configure script fails if GNU uname in PATH.

@zzambers

zzambers commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

I have tested risc-v cross-build of this PR (x86_64 debian trixie build OS + risc-v debian trixie sysroot + temurin boot jdk). Configured with:
bash configure --with-jvm-variants=zero --openjdk-target=riscv64-linux-gnu --with-sysroot=$SYSROOT --with-boot-jdk=$BOOT_JDK --with-zlib=bundled --enable-debug

Build finished successfully. Resulting binary works on risc-v board (also debian trixie, done just --version test).

@bridgekeeper

bridgekeeper Bot commented Jul 1, 2026

Copy link
Copy Markdown

@gnu-andrew This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply issue a /touch or /keepalive command to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

@tstuefe tstuefe left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, skipping this for 17 is fine?

I checked this manually and let claude run over the patch too. Its fine.

esac ; set_cc_for_build= ;'
tmp=
# shellcheck disable=SC2172
trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

... lets hope $tmp is never wrong, right :-/

@openjdk

openjdk Bot commented Jul 2, 2026

Copy link
Copy Markdown

⚠️ @gnu-andrew This change is now ready for you to apply for maintainer approval. This can be done directly in each associated issue or by using the /approval command.

@gnu-andrew

Copy link
Copy Markdown
Member Author

So, skipping this for 17 is fine?

Ah, good catch. I started this with the intention of backporting JDK-8285630 - which is in 17 - and then realised I couldn't easily do that because it was part of a mega RISC-V patch in 17. I then spotted this follow-on change and I guess I missed that it wasn't yet in 17. I should open a PR for that too and make sure that goes in before pushing this, but I don't see that it will change this patch.

I checked this manually and let claude run over the patch too. Its fine.

Thanks. I appreciate the review.

@gnu-andrew

Copy link
Copy Markdown
Member Author

Backport to 17u-dev too now: openjdk/jdk17u-dev#4558 :)

@gnu-andrew

Copy link
Copy Markdown
Member Author

/approval request autoconf upstream update which allows us to remove a number of hacks that have accumulated for architectures that didn't exist when the original autoconf files were added (e.g. AArch64, RISC-V, LoongArch). I was looking at backporting JDK-8285630 to fix the RISC-V Zero build, but that fix is only available in 17u as part of a huge patch to bring in the RISC-V JIT port. It turns out that this autoconf update supersedes both that change and JDK-8265192, an additional MacOS on AArch64 fix. Backport is not clean, due to the absence of the fixes it supersedes and WSL support (JDK-8215445 and JDK-8257679). The patch was reviewed by Thomas Stuefe. This should be low risk, especially this early in the next release cycle, with any issues being picked up during build. Backport of the follow-on fix JDK-8301267 is believed not needed here due to no WSL.

@openjdk

openjdk Bot commented Jul 6, 2026

Copy link
Copy Markdown

@gnu-andrew
8300805: The approval request has been created successfully.
8285630: The approval request has been created successfully.
8265192: The approval request has been created successfully.

@openjdk openjdk Bot added the approval Requires approval; will be removed when approval is received label Jul 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approval Requires approval; will be removed when approval is received backport Port of a pull request already in a different code base rfr Pull request is ready for review

Development

Successfully merging this pull request may close these issues.

4 participants