Skip to content

Commit fdf1a90

Browse files
committed
Merge master jdk-17.0.13+1 into openj9-staging
Signed-off-by: J9 Build <[email protected]>
2 parents d497b5b + e29b3ca commit fdf1a90

File tree

737 files changed

+33213
-12662
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

737 files changed

+33213
-12662
lines changed

.github/actions/get-gtest/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2022, 2023, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -43,7 +43,7 @@ runs:
4343
uses: actions/checkout@v4
4444
with:
4545
repository: google/googletest
46-
ref: 'release-${{ steps.version.outputs.value }}'
46+
ref: 'v${{ steps.version.outputs.value }}'
4747
path: gtest
4848

4949
- name: 'Export path to where GTest is installed'

.github/actions/get-jtreg/action.yml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2023, 2024, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -56,8 +56,14 @@ runs:
5656

5757
- name: 'Build JTReg'
5858
run: |
59+
# If runner architecture is x64 set JAVA_HOME_17_X64 otherwise set to JAVA_HOME_17_arm64
60+
if [[ '${{ runner.arch }}' == 'X64' ]]; then
61+
JDK="$JAVA_HOME_17_X64"
62+
else
63+
JDK="$JAVA_HOME_17_arm64"
64+
fi
5965
# Build JTReg and move files to the proper locations
60-
bash make/build.sh --jdk "$JAVA_HOME_11_X64"
66+
bash make/build.sh --jdk "$JDK"
6167
mkdir ../installed
6268
mv build/images/jtreg/* ../installed
6369
working-directory: jtreg/src

.github/workflows/build-macos.yml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2022, 2024, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,9 @@ on:
3131
platform:
3232
required: true
3333
type: string
34+
runs-on:
35+
required: true
36+
type: string
3437
extra-conf-options:
3538
required: false
3639
type: string
@@ -55,7 +58,7 @@ on:
5558
jobs:
5659
build-macos:
5760
name: build
58-
runs-on: macos-11
61+
runs-on: ${{ inputs.runs-on }}
5962

6063
strategy:
6164
fail-fast: false
@@ -74,7 +77,7 @@ jobs:
7477
id: bootjdk
7578
uses: ./.github/actions/get-bootjdk
7679
with:
77-
platform: macos-x64
80+
platform: ${{ inputs.platform }}
7881

7982
- name: 'Get JTReg'
8083
id: jtreg
@@ -87,7 +90,7 @@ jobs:
8790
- name: 'Install toolchain and dependencies'
8891
run: |
8992
# Run Homebrew installation and xcode-select
90-
brew install make
93+
brew install autoconf make
9194
sudo xcode-select --switch /Applications/Xcode_${{ inputs.xcode-toolset-version }}.app/Contents/Developer
9295
# This will make GNU make available as 'make' and not only as 'gmake'
9396
echo '/usr/local/opt/make/libexec/gnubin' >> $GITHUB_PATH

.github/workflows/main.yml

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2022, 2024, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -223,7 +223,8 @@ jobs:
223223
uses: ./.github/workflows/build-macos.yml
224224
with:
225225
platform: macos-x64
226-
xcode-toolset-version: '12.5.1'
226+
runs-on: 'macos-13'
227+
xcode-toolset-version: '14.3.1'
227228
configure-arguments: ${{ github.event.inputs.configure-arguments }}
228229
make-arguments: ${{ github.event.inputs.make-arguments }}
229230
if: needs.select.outputs.macos-x64 == 'true'
@@ -234,8 +235,8 @@ jobs:
234235
uses: ./.github/workflows/build-macos.yml
235236
with:
236237
platform: macos-aarch64
237-
xcode-toolset-version: '12.5.1'
238-
extra-conf-options: '--openjdk-target=aarch64-apple-darwin'
238+
runs-on: 'macos-14'
239+
xcode-toolset-version: '14.3.1'
239240
configure-arguments: ${{ github.event.inputs.configure-arguments }}
240241
make-arguments: ${{ github.event.inputs.make-arguments }}
241242
if: needs.select.outputs.macos-aarch64 == 'true'
@@ -298,7 +299,17 @@ jobs:
298299
with:
299300
platform: macos-x64
300301
bootjdk-platform: macos-x64
301-
runs-on: macos-11
302+
runs-on: macos-13
303+
304+
test-macos-aarch64:
305+
name: macos-aarch64
306+
needs:
307+
- build-macos-aarch64
308+
uses: ./.github/workflows/test.yml
309+
with:
310+
platform: macos-aarch64
311+
bootjdk-platform: macos-aarch64
312+
runs-on: macos-14
302313

303314
test-windows-x64:
304315
name: windows-x64

.github/workflows/test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2022, 2023, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -147,7 +147,7 @@ jobs:
147147
run: |
148148
# On macOS we need to install some dependencies for testing
149149
brew install make
150-
sudo xcode-select --switch /Applications/Xcode_11.7.app/Contents/Developer
150+
sudo xcode-select --switch /Applications/Xcode_14.3.1.app/Contents/Developer
151151
# This will make GNU make available as 'make' and not only as 'gmake'
152152
echo '/usr/local/opt/make/libexec/gnubin' >> $GITHUB_PATH
153153
if: runner.os == 'macOS'

.jcheck/conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[general]
22
project=jdk-updates
33
jbs=JDK
4-
version=17.0.12
4+
version=17.0.13
55

66
[checks]
77
error=author,committer,reviewers,merge,issues,executable,symlink,message,hg-tag,whitespace,problemlists

doc/building.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -514,10 +514,10 @@ <h4 id="advanced-make-control-variables">Advanced Make Control Variables</h4>
514514
<h2 id="running-tests">Running Tests</h2>
515515
<p>Most of the JDK tests are using the <a href="http://openjdk.java.net/jtreg">JTReg</a> test framework. Make sure that your configuration knows where to find your installation of JTReg. If this is not picked up automatically, use the <code>--with-jtreg=&lt;path to jtreg home&gt;</code> option to point to the JTReg framework. Note that this option should point to the JTReg home, i.e. the top directory, containing <code>lib/jtreg.jar</code> etc.</p>
516516
<p>The <a href="https://wiki.openjdk.java.net/display/Adoption">Adoption Group</a> provides recent builds of jtreg <a href="https://ci.adoptium.net/view/Dependencies/job/dependency_pipeline/lastSuccessfulBuild/artifact/jtreg/">here</a>. Download the latest <code>.tar.gz</code> file, unpack it, and point <code>--with-jtreg</code> to the <code>jtreg</code> directory that you just unpacked.</p>
517-
<p>Building of Hotspot Gtest suite requires the source code of Google Test framework. The top directory, which contains both <code>googletest</code> and <code>googlemock</code> directories, should be specified via <code>--with-gtest</code>. The supported version of Google Test is 1.8.1, whose source code can be obtained:</p>
517+
<p>Building of Hotspot Gtest suite requires the source code of Google Test framework. The top directory, which contains both <code>googletest</code> and <code>googlemock</code> directories, should be specified via <code>--with-gtest</code>. The supported version of Google Test is 1.13.0, whose source code can be obtained:</p>
518518
<ul>
519-
<li>by downloading and unpacking the source bundle from <a href="https://github.com/google/googletest/releases/tag/release-1.8.1">here</a></li>
520-
<li>or by checking out <code>release-1.8.1</code> tag of <code>googletest</code> project: <code>git clone -b release-1.8.1 https://github.com/google/googletest</code></li>
519+
<li>by downloading and unpacking the source bundle from <a href="https://github.com/google/googletest/releases/tag/v1.13.0">here</a></li>
520+
<li>or by checking out <code>v1.13.0</code> tag of <code>googletest</code> project: <code>git clone -b v1.13.0 https://github.com/google/googletest</code></li>
521521
</ul>
522522
<p>To execute the most basic tests (tier 1), use:</p>
523523
<pre><code>make run-test-tier1</code></pre>

doc/building.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -852,13 +852,14 @@ https://ci.adoptium.net/view/Dependencies/job/dependency_pipeline/lastSuccessful
852852
Download the latest `.tar.gz` file, unpack it, and point `--with-jtreg` to the
853853
`jtreg` directory that you just unpacked.
854854
855-
Building of Hotspot Gtest suite requires the source code of Google Test framework.
856-
The top directory, which contains both `googletest` and `googlemock`
857-
directories, should be specified via `--with-gtest`.
858-
The supported version of Google Test is 1.8.1, whose source code can be obtained:
859-
860-
* by downloading and unpacking the source bundle from [here](https://github.com/google/googletest/releases/tag/release-1.8.1)
861-
* or by checking out `release-1.8.1` tag of `googletest` project: `git clone -b release-1.8.1 https://github.com/google/googletest`
855+
Building of Hotspot Gtest suite requires the source code of Google
856+
Test framework. The top directory, which contains both `googletest`
857+
and `googlemock` directories, should be specified via `--with-gtest`.
858+
The minimum supported version of Google Test is 1.13.0, whose source
859+
code can be obtained:
860+
861+
* by downloading and unpacking the source bundle from [here](https://github.com/google/googletest/releases/tag/v1.13.0)
862+
* or by checking out `v1.13.0` tag of `googletest` project: `git clone -b v1.13.0 https://github.com/google/googletest`
862863
863864
To execute the most basic tests (tier 1), use:
864865
```

doc/testing.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ <h3 id="configuration">Configuration</h3>
6767
<h2 id="test-selection">Test selection</h2>
6868
<p>All functionality is available using the <code>test</code> make target. In this use case, the test or tests to be executed is controlled using the <code>TEST</code> variable. To speed up subsequent test runs with no source code changes, <code>test-only</code> can be used instead, which do not depend on the source and test image build.</p>
6969
<p>For some common top-level tests, direct make targets have been generated. This includes all JTReg test groups, the hotspot gtest, and custom tests (if present). This means that <code>make test-tier1</code> is equivalent to <code>make test TEST=&quot;tier1&quot;</code>, but the latter is more tab-completion friendly. For more complex test runs, the <code>test TEST=&quot;x&quot;</code> solution needs to be used.</p>
70-
<p>The test specifications given in <code>TEST</code> is parsed into fully qualified test descriptors, which clearly and unambigously show which tests will be run. As an example, <code>:tier1</code> will expand to <code>jtreg:$(TOPDIR)/test/hotspot/jtreg:tier1 jtreg:$(TOPDIR)/test/jdk:tier1 jtreg:$(TOPDIR)/test/langtools:tier1 jtreg:$(TOPDIR)/test/nashorn:tier1 jtreg:$(TOPDIR)/test/jaxp:tier1</code>. You can always submit a list of fully qualified test descriptors in the <code>TEST</code> variable if you want to shortcut the parser.</p>
70+
<p>The test specifications given in <code>TEST</code> is parsed into fully qualified test descriptors, which clearly and unambigously show which tests will be run. As an example, <code>:tier1</code> will expand to include all subcomponent test directories that define `tier1`, for example: <code>jtreg:$(TOPDIR)/test/hotspot/jtreg:tier1 jtreg:$(TOPDIR)/test/jdk:tier1 jtreg:$(TOPDIR)/test/langtools:tier1 ...</code>. You can always submit a list of fully qualified test descriptors in the <code>TEST</code> variable if you want to shortcut the parser.</p>
7171
<h3 id="common-test-groups">Common Test Groups</h3>
7272
<p>Ideally, all tests are run for every change but this may not be practical due to the limited testing resources, the scope of the change, etc.</p>
7373
<p>The source tree currently defines a few common test groups in the relevant <code>TEST.groups</code> files. There are test groups that cover a specific component, for example <code>hotspot_gc</code>. It is a good idea to look into <code>TEST.groups</code> files to get a sense what tests are relevant to a particular JDK component.</p>

doc/testing.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,11 @@ test runs, the `test TEST="x"` solution needs to be used.
5858

5959
The test specifications given in `TEST` is parsed into fully qualified test
6060
descriptors, which clearly and unambigously show which tests will be run. As an
61-
example, `:tier1` will expand to `jtreg:$(TOPDIR)/test/hotspot/jtreg:tier1
62-
jtreg:$(TOPDIR)/test/jdk:tier1 jtreg:$(TOPDIR)/test/langtools:tier1
63-
jtreg:$(TOPDIR)/test/nashorn:tier1 jtreg:$(TOPDIR)/test/jaxp:tier1`. You can
64-
always submit a list of fully qualified test descriptors in the `TEST` variable
65-
if you want to shortcut the parser.
61+
example, `:tier1` will expand to include all subcomponent test directories
62+
that define `tier1`, for example: `jtreg:$(TOPDIR)/test/hotspot/jtreg:tier1
63+
jtreg:$(TOPDIR)/test/jdk:tier1 jtreg:$(TOPDIR)/test/langtools:tier1 ...`. You
64+
can always submit a list of fully qualified test descriptors in the `TEST`
65+
variable if you want to shortcut the parser.
6666

6767
### Common Test Groups
6868

0 commit comments

Comments
 (0)