Skip to content

Commit 287d7ec

Browse files
committed
Merge remote-tracking branch 'upstream/master' into combined
2 parents e595634 + f2f5639 commit 287d7ec

File tree

13,807 files changed

+675628
-376990
lines changed

Some content is hidden

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

13,807 files changed

+675628
-376990
lines changed

.github/workflows/submit.yml

+125-40
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2020, 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2020, 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
@@ -25,14 +25,16 @@
2525

2626
#
2727
# This GitHub actions YAML file runs a build and test on each of the three primary platforms:
28-
# Linux, macOS, Windows. The jobs are run using the default (latest) OS platform for each OS.
28+
# Linux, macOS (both x64 and aarch64), Windows. The jobs are run using the default (latest) OS platform for each OS.
2929
# We download a specific version the boot JDK and gradle. We use the default versions
3030
# of all other build tools (e.g., compilers and ant) that are available on each platform.
3131
#
3232
# The build step is run in the default mode without building the native media or webkit libraries.
3333
# The test is run with web tests excluded. As a follow-up enhancement, we might consider optionally
3434
# building the media and webkit libraries.
3535
#
36+
# NOTE: much of the build logic is duplicated for each platform. Keep this in mind when making changes.
37+
#
3638

3739
name: JavaFX pre-submit tests
3840

@@ -56,48 +58,48 @@ jobs:
5658
name: "Gradle Wrapper Validation"
5759
runs-on: ubuntu-latest
5860
steps:
59-
- uses: actions/checkout@v2
61+
- uses: actions/checkout@v4
6062
- uses: gradle/wrapper-validation-action@v1
6163

6264

6365
linux_x64_build:
6466
name: Linux x64
6567
needs: validation
66-
runs-on: "ubuntu-22.04"
68+
runs-on: "ubuntu-24.04"
6769

6870
env:
6971
# FIXME: read this information from a property file
7072
# BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
7173
# BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
7274
# BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
7375
# BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_SHA256 }}"
74-
BOOT_JDK_VERSION: "19.0.2"
75-
BOOT_JDK_FILENAME: "jdk-19.0.2_linux-x64_bin.tar.gz"
76-
BOOT_JDK_URL: "https://download.oracle.com/java/19/archive/jdk-19.0.2_linux-x64_bin.tar.gz"
77-
ANT_DIR: "apache-ant-1.10.5"
78-
ANT_FILENAME: "apache-ant-1.10.5.tar.gz"
79-
ANT_URL: "https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.5-bin.tar.gz"
76+
BOOT_JDK_VERSION: "23"
77+
BOOT_JDK_FILENAME: "jdk-23_linux-x64_bin.tar.gz"
78+
BOOT_JDK_URL: "https://download.oracle.com/java/23/archive/jdk-23_linux-x64_bin.tar.gz"
79+
# ANT_DIR: "apache-ant-1.10.5"
80+
# ANT_FILENAME: "apache-ant-1.10.5.tar.gz"
81+
# ANT_URL: "https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.5-bin.tar.gz"
8082

8183
steps:
8284
- name: Checkout the source
83-
uses: actions/checkout@v2
85+
uses: actions/checkout@v4
8486
with:
8587
path: jfx
8688

8789
- name: Install dependencies
8890
run: |
8991
set -x
9092
sudo apt-get update
91-
sudo apt-get install libgl1-mesa-dev libx11-dev libxxf86vm-dev libxt-dev pkg-config libgtk2.0-dev libgtk-3-dev libxtst-dev gcc-12 g++-12
92-
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 100 --slave /usr/bin/g++ g++ /usr/bin/g++-12
93+
sudo apt-get install ant libgl1-mesa-dev libx11-dev libxxf86vm-dev libxt-dev pkg-config libgtk2.0-dev libgtk-3-dev libxtst-dev gcc-13 g++-13
94+
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 100 --slave /usr/bin/g++ g++ /usr/bin/g++-13
9395
mkdir -p "${HOME}/build-tools"
94-
wget -O "${HOME}/build-tools/${ANT_FILENAME}" "${ANT_URL}"
95-
tar -zxf "${HOME}/build-tools/${ANT_FILENAME}" -C "${HOME}/build-tools"
96+
# wget -O "${HOME}/build-tools/${ANT_FILENAME}" "${ANT_URL}"
97+
# tar -zxf "${HOME}/build-tools/${ANT_FILENAME}" -C "${HOME}/build-tools"
9698
9799
# FIXME: enable cache for boot JDK
98100
# - name: Restore boot JDK from cache
99101
# id: bootjdk
100-
# uses: actions/cache@v2
102+
# uses: actions/cache@v4
101103
# with:
102104
# path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
103105
# key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -116,9 +118,10 @@ jobs:
116118
set -x
117119
export JAVA_HOME="${HOME}/bootjdk/jdk-${BOOT_JDK_VERSION}"
118120
echo "JAVA_HOME=${JAVA_HOME}" >> "${GITHUB_ENV}"
119-
export ANT_HOME="${HOME}/build-tools/${ANT_DIR}"
120-
echo "ANT_HOME=${ANT_HOME}" >> "${GITHUB_ENV}"
121-
export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
121+
# export ANT_HOME="${HOME}/build-tools/${ANT_DIR}"
122+
# echo "ANT_HOME=${ANT_HOME}" >> "${GITHUB_ENV}"
123+
# export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
124+
export PATH="$JAVA_HOME/bin:$PATH"
122125
env | sort
123126
which java
124127
java -version
@@ -130,15 +133,17 @@ jobs:
130133
working-directory: jfx
131134
run: |
132135
set -x
133-
export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
136+
# export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
137+
export PATH="$JAVA_HOME/bin:$PATH"
134138
bash gradlew -version
135139
bash gradlew --info all
136140
137141
- name: Run JavaFX headless tests
138142
working-directory: jfx
139143
run: |
140144
set -x
141-
export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
145+
# export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
146+
export PATH="$JAVA_HOME/bin:$PATH"
142147
bash gradlew --info --continue -PTEST_ONLY=true test -x :web:test
143148
144149
@@ -153,17 +158,103 @@ jobs:
153158
# BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
154159
# BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
155160
# BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_SHA256 }}"
156-
BOOT_JDK_VERSION: "19.0.2"
157-
BOOT_JDK_FILENAME: "jdk-19.0.2_macos-x64_bin.tar.gz"
158-
BOOT_JDK_URL: "https://download.oracle.com/java/19/archive/jdk-19.0.2_macos-x64_bin.tar.gz"
161+
BOOT_JDK_VERSION: "23"
162+
BOOT_JDK_FILENAME: "jdk-23_macos-x64_bin.tar.gz"
163+
BOOT_JDK_URL: "https://download.oracle.com/java/23/archive/jdk-23_macos-x64_bin.tar.gz"
164+
# Disabled due to timeout downloading ant; use ant installed on system
165+
#ANT_DIR: "apache-ant-1.10.5"
166+
#ANT_FILENAME: "apache-ant-1.10.5.tar.gz"
167+
#ANT_URL: "https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.5-bin.tar.gz"
168+
169+
steps:
170+
- name: Checkout the source
171+
uses: actions/checkout@v4
172+
with:
173+
path: jfx
174+
175+
- name: Install dependencies
176+
run: |
177+
set -x
178+
echo "NOT NEEDED: brew install make"
179+
echo "NOT NEEDED: wget ... ant"
180+
#mkdir -p "${HOME}/build-tools"
181+
#wget -O "${HOME}/build-tools/${ANT_FILENAME}" "${ANT_URL}"
182+
#tar -zxf "${HOME}/build-tools/${ANT_FILENAME}" -C "${HOME}/build-tools"
183+
184+
# FIXME: enable cache for boot JDK
185+
# - name: Restore boot JDK from cache
186+
# id: bootjdk
187+
# uses: actions/cache@v4
188+
# with:
189+
# path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
190+
# key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
191+
192+
- name: Download boot JDK
193+
run: |
194+
set -x
195+
mkdir -p "${HOME}/bootjdk"
196+
wget -O "${HOME}/bootjdk/${BOOT_JDK_FILENAME}" "${BOOT_JDK_URL}"
197+
# FIXME: sha256sum
198+
tar -xf "${HOME}/bootjdk/${BOOT_JDK_FILENAME}" -C "${HOME}/bootjdk"
199+
# FIXME: enable cache for boot JDK
200+
201+
- name: Setup environment
202+
run: |
203+
set -x
204+
export JAVA_HOME="${HOME}/bootjdk/jdk-${BOOT_JDK_VERSION}.jdk/Contents/Home"
205+
echo "JAVA_HOME=${JAVA_HOME}" >> "${GITHUB_ENV}"
206+
#export ANT_HOME="${HOME}/build-tools/${ANT_DIR}"
207+
#echo "ANT_HOME=${ANT_HOME}" >> "${GITHUB_ENV}"
208+
#export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
209+
export PATH="$JAVA_HOME/bin:$PATH"
210+
env | sort
211+
which java
212+
java -version
213+
which ant
214+
ant -version
215+
sudo xcode-select --switch /Applications/Xcode_14.3.1.app/Contents/Developer
216+
xcodebuild -version
217+
218+
- name: Build JavaFX artifacts
219+
working-directory: jfx
220+
run: |
221+
set -x
222+
#export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
223+
export PATH="$JAVA_HOME/bin:$PATH"
224+
bash gradlew -version
225+
bash gradlew --info all
226+
227+
- name: Run JavaFX headless tests
228+
working-directory: jfx
229+
run: |
230+
set -x
231+
#export PATH="$JAVA_HOME/bin:$ANT_HOME/bin:$PATH"
232+
export PATH="$JAVA_HOME/bin:$PATH"
233+
bash gradlew --info --continue -PTEST_ONLY=true test -x :web:test
234+
235+
236+
macos_aarch64_build:
237+
name: macOS aarch64
238+
needs: validation
239+
runs-on: "macos-14"
240+
241+
env:
242+
# FIXME: read this information from a property file
243+
# BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
244+
# BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
245+
# BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
246+
# BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_SHA256 }}"
247+
BOOT_JDK_VERSION: "23"
248+
BOOT_JDK_FILENAME: "jdk-23_macos-aarch64_bin.tar.gz"
249+
BOOT_JDK_URL: "https://download.oracle.com/java/23/archive/jdk-23_macos-aarch64_bin.tar.gz"
159250
# Disabled due to timeout downloading ant; use ant installed on system
160251
#ANT_DIR: "apache-ant-1.10.5"
161252
#ANT_FILENAME: "apache-ant-1.10.5.tar.gz"
162253
#ANT_URL: "https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.5-bin.tar.gz"
163254

164255
steps:
165256
- name: Checkout the source
166-
uses: actions/checkout@v2
257+
uses: actions/checkout@v4
167258
with:
168259
path: jfx
169260

@@ -179,7 +270,7 @@ jobs:
179270
# FIXME: enable cache for boot JDK
180271
# - name: Restore boot JDK from cache
181272
# id: bootjdk
182-
# uses: actions/cache@v2
273+
# uses: actions/cache@v4
183274
# with:
184275
# path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
185276
# key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -207,7 +298,8 @@ jobs:
207298
java -version
208299
which ant
209300
ant -version
210-
sudo xcode-select --switch /Applications/Xcode_14.3.app/Contents/Developer
301+
# We want to use Xcode 14, but GHA removed it from the macOS 14 runners
302+
# sudo xcode-select --switch /Applications/Xcode_14.3.1.app/Contents/Developer
211303
xcodebuild -version
212304
213305
- name: Build JavaFX artifacts
@@ -239,25 +331,23 @@ jobs:
239331
# BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
240332
# BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
241333
# BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_SHA256 }}"
242-
BOOT_JDK_VERSION: "19.0.2"
243-
BOOT_JDK_FILENAME: "jdk-19.0.2_windows-x64_bin.zip"
244-
BOOT_JDK_URL: "https://download.oracle.com/java/19/archive/jdk-19.0.2_windows-x64_bin.zip"
334+
BOOT_JDK_VERSION: "23"
335+
BOOT_JDK_FILENAME: "jdk-23_windows-x64_bin.zip"
336+
BOOT_JDK_URL: "https://download.oracle.com/java/23/archive/jdk-23_windows-x64_bin.zip"
245337
ANT_DIR: "apache-ant-1.10.5"
246338
ANT_FILENAME: "apache-ant-1.10.5.tar.gz"
247339
ANT_URL: "https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.5-bin.tar.gz"
248-
# FIXME: hard-code the location of VS 2022 for now
249-
VS150COMNTOOLS: "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Auxiliary\\Build"
250340

251341
steps:
252342
- name: Checkout the source
253-
uses: actions/checkout@v2
343+
uses: actions/checkout@v4
254344
with:
255345
path: jfx
256346

257347
# FIXME: enable cache for boot JDK
258348
# - name: Restore boot JDK from cache
259349
# id: bootjdk
260-
# uses: actions/cache@v2
350+
# uses: actions/cache@v4
261351
# with:
262352
# path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
263353
# key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -272,7 +362,7 @@ jobs:
272362
273363
- name: Restore cygwin packages from cache
274364
id: cygwin
275-
uses: actions/cache@v2
365+
uses: actions/cache@v4
276366
with:
277367
path: ~/cygwin/packages
278368
key: cygwin-packages-${{ runner.os }}-v1
@@ -291,15 +381,10 @@ jobs:
291381
292382
- name: Setup environment
293383
run: |
294-
echo "VS150COMNTOOLS=$env:VS150COMNTOOLS"
295384
echo "dir ...\VC\Tools\MSVC"
296385
dir "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC"
297-
echo "dir VS150COMNTOOLS"
298-
dir "$env:VS150COMNTOOLS"
299386
# echo "dir ...\VC\Tools\MSVC"
300387
# dir "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC"
301-
# echo "dir VS150COMNTOOLS"
302-
# dir "$env:VS150COMNTOOLS"
303388
304389
$env:Path = "$HOME\cygwin\cygwin64\bin;$HOME\cygwin\cygwin64\bin;$env:Path" ;
305390
$env:JAVA_HOME = "$HOME\bootjdk\jdk-$env:BOOT_JDK_VERSION" ;

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ testbin/
1111
**/Ensemble8/lib/
1212
**/Ensemble8/src/generated/resources/ensemble/search/index/write.lock
1313
**/nbproject/private/
14+
hs_err_pid*
1415

1516
# Ignore webrevs
1617
/webrev/

.jcheck/conf

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
;
2-
; Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
2+
; Copyright (c) 2019, 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
@@ -24,13 +24,14 @@
2424
[general]
2525
project=openjfx
2626
jbs=jdk
27-
version=jfx22
27+
version=jfx25
2828

2929
[repository]
3030
tags=(jdk-){0,1}([1-9]([0-9]*)(\.(0|[1-9][0-9]*)){0,3})(\+(([0-9]+))|(-ga))|[1-9]((\.\d{1,3}){0,2})-((b\d{2,3})|(ga))|[1-9]u(\d{1,3})-((b\d{2,3})|(ga))
3131

3232
[checks]
3333
error=author,reviewers,merge,message,issues,whitespace,executable
34+
warning=issuestitle,binary
3435

3536
[census]
3637
version=0
@@ -40,7 +41,7 @@ domain=openjdk.org
4041
files=.*\.java$|.*\.c$|.*\.h$|.*\.cpp$|.*\.hpp$|.*\.cc$|.*\.jsl$|.*\.fxml$|.*\.css$|.*\.m$|.*\.mm$|.*\.frag$|.*\.vert$|.*\.hlsl$|.*\.metal$|.*\.gradle$|.*\.groovy$|.*\.g4$|.*\.stg$
4142

4243
[checks "reviewers"]
43-
minimum=1
44+
reviewers=1
4445

4546
[checks "merge"]
4647
message=Merge

.project

-8
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,5 @@
44
<projects>
55
</projects>
66
<buildSpec>
7-
<buildCommand>
8-
<name>org.eclipse.buildship.core.gradleprojectbuilder</name>
9-
<arguments>
10-
</arguments>
11-
</buildCommand>
127
</buildSpec>
13-
<natures>
14-
<nature>org.eclipse.buildship.core.gradleprojectnature</nature>
15-
</natures>
168
</projectDescription>

0 commit comments

Comments
 (0)