Skip to content

Commit

Permalink
Merge pull request #6028 from matthiasblaesing/javafx_update
Browse files Browse the repository at this point in the history
Enable modules to depend on CPU architecture, Update OpenJFX and support Aarch64 for Linux and mac OS
  • Loading branch information
matthiasblaesing authored Jun 21, 2023
2 parents fb9e029 + 0757aad commit 20a867a
Show file tree
Hide file tree
Showing 92 changed files with 1,461 additions and 210 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,9 @@ public void testNoUserDefinedFeaturesInStandardBuild() throws Exception {
// from a base installation:
moduleNames.removeAll(Arrays.asList(
"org.netbeans.libs.javafx.linux",
"org.netbeans.libs.javafx.linux.aarch64",
"org.netbeans.libs.javafx.macosx",
"org.netbeans.libs.javafx.macosx.aarch64",
"org.netbeans.libs.javafx.win"));

System.out.println(featureItem.getModuleCodeNames());
Expand Down
30 changes: 30 additions & 0 deletions extra/libs.javafx.linux.aarch64/build.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<project basedir="." default="build" name="extra/libs.javafx.linux.aarch64">
<description>Builds, tests, and runs the project org.netbeans.libs.javafx.linux.aarch64</description>
<import file="../../nbbuild/templates/projectized.xml"/>

<target name="createExternalFile">
<taskdef name="createExternalFile" classname="org.netbeans.nbbuild.extlibs.CreateExternalFile" classpath="${nbantext.jar}"/>
<createExternalFile manifest="external/binaries-list"/>
</target>
</project>
23 changes: 23 additions & 0 deletions extra/libs.javafx.linux.aarch64/external/binaries-list
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

149BA650844774EECE841E98549127B2B468C364 org.openjfx:javafx-base:17.0.7:linux-aarch64
BB43545BF1020672E299D9876167D761865E2D0B org.openjfx:javafx-controls:17.0.7:linux-aarch64
BC0034EB15A9A9D4BDE89027145F414241969BCD org.openjfx:javafx-graphics:17.0.7:linux-aarch64
2D0E71725CD814FE070CC85735C5706267847DDE org.openjfx:javafx-media:17.0.7:linux-aarch64
688B4E963DD67CF9B8EFA7B9EF61405315C0D02A org.openjfx:javafx-web:17.0.7:linux-aarch64
387F1ED3FC958FD2AD8FE8457F94AB81860D56B3 org.openjfx:javafx-swing:17.0.7:linux-aarch64
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 3071532237
URL: m2:/org.openjfx:javafx-base:17.0.7:jar:linux-aarch64
MessageDigest: SHA-256 e68f329926eaffadbc5c6d63fc6cbed7d4fc0a7f728bef4da8f7aa4e08382af8
MessageDigest: SHA-512 0521d99399697f4bf4713dfc6121a91fcb3a7e365533852d411d4786eaefb99ebeb73bb060e595ffd6851908307d502a18619b8d789d0300310aa1acd3e03c15
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 724537457
URL: m2:/org.openjfx:javafx-controls:17.0.7:jar:linux-aarch64
MessageDigest: SHA-256 2a191b5a7f30651204bc5a11a8bbbd85799ff7b1895086391d60671b52524569
MessageDigest: SHA-512 a35d4e7bcaac60a213a3b2052b8377b137a01044c3816185b95a6c6ee49234df410c6ad9a4505612b2fa73f0482e150d6000151319a60dc2b36155dc4e744abe
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 549017861
URL: m2:/org.openjfx:javafx-graphics:17.0.7:jar:linux-aarch64
MessageDigest: SHA-256 6b905505ae1ee0a0c9c7c359ffe287da314136d19bc9dd191508f0ed1ef901c8
MessageDigest: SHA-512 ac3f03cbbe5e9e4d8d1d4c785e6886a91bf949663521031a5883647813f08d5e2e70d306a0e5d8828eab26a89aeaafb24fb109638eb96cdeae06ccc92410ab35

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 2776851685
URL: m2:/org.openjfx:javafx-media:17.0.7:jar:linux-aarch64
MessageDigest: SHA-256 489415579418f97220d51c2cabd376e600137efc3583e10a27ba076f7411ff3e
MessageDigest: SHA-512 de81bb12d24b3abbad65358067f40ad13b82fdf08b5cea4f38e705937fd18a457a80c431e3139f894dee73f5266dd0d6250caf76703575726f6b4092f7258996
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 10036252
URL: m2:/org.openjfx:javafx-swing:17.0.7:jar:linux-aarch64
MessageDigest: SHA-256 dc5c8a716e6d6745369a195f832b07044161bcf4e83e54fdb49571736276039a
MessageDigest: SHA-512 3fa4866b86143482cce3d7054a7f0f9cc439f2047ad5f87c4f8d432af5fef6ced3b9c75eb00d8540cb7b5df510e138ae5d4db1fcc10733f2cca00bfdcc56ca29
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 2554164146
URL: m2:/org.openjfx:javafx-web:17.0.7:jar:linux-aarch64
MessageDigest: SHA-256 e1679dbee9ac7568d8153d720233f7e9cc213a75310ebb560fa33e8ab5d3dc50
MessageDigest: SHA-512 e5dca318cf68384cf146d59fa32263c359873c53211d46ec6d33eae5348a99a64229033ee7af489a355b622b62dd2c7c1a1cf32d0eb591870a4485847b141c19
33 changes: 33 additions & 0 deletions extra/libs.javafx.linux.aarch64/licenseinfo.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<licenseinfo>
<fileset>
<file>external/javafx-base-17.0.7-linux-aarch64.jar.external</file>
<file>external/javafx-controls-17.0.7-linux-aarch64.jar.external</file>
<file>external/javafx-graphics-17.0.7-linux-aarch64.jar.external</file>
<file>external/javafx-media-17.0.7-linux-aarch64.jar.external</file>
<file>external/javafx-swing-17.0.7-linux-aarch64.jar.external</file>
<file>external/javafx-web-17.0.7-linux-aarch64.jar.external</file>
<license ref="Apache-2.0-ASF" />
<comment type="COMMENT_UNSUPPORTED" />
</fileset>
</licenseinfo>
9 changes: 9 additions & 0 deletions extra/libs.javafx.linux.aarch64/manifest.mf
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Manifest-Version: 1.0
AutoUpdate-Show-In-Client: true
OpenIDE-Module: org.netbeans.libs.javafx.linux.aarch64
OpenIDE-Module-Localizing-Bundle: org/netbeans/libs/javafx/linux/aarch64/Bundle.properties
OpenIDE-Module-Fragment-Host: org.netbeans.libs.javafx
OpenIDE-Module-Specification-Version: 17.10
OpenIDE-Module-Java-Dependencies: Java > 11
OpenIDE-Module-Requires: org.openide.modules.os.Linux, org.openide.modules.arch.aarch64
OpenIDE-Module-Provides: org.openide.modules.jre.JavaFX
36 changes: 36 additions & 0 deletions extra/libs.javafx.linux.aarch64/nbproject/project.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

javac.source=1.8
javac.target=1.8
javac.compilerargs=-Xlint -Xlint:-serial
is.autoload=true

release.external/javafx-base-17.0.7-linux-aarch64.jar=modules/ext/javafx-base-17.0.7-linux-aarch64.jar
release.external/javafx-base-17.0.7-linux-aarch64.jar.external=modules/ext/javafx-base-17.0.7-linux-aarch64.jar.external
release.external/javafx-controls-17.0.7-linux-aarch64.jar=modules/ext/javafx-controls-17.0.7-linux-aarch64.jar
release.external/javafx-controls-17.0.7-linux-aarch64.jar.external=modules/ext/javafx-controls-17.0.7-linux-aarch64.jar.external
release.external/javafx-graphics-17.0.7-linux-aarch64.jar=modules/ext/javafx-graphics-17.0.7-linux-aarch64.jar
release.external/javafx-graphics-17.0.7-linux-aarch64.jar.external=modules/ext/javafx-graphics-17.0.7-linux-aarch64.jar.external
release.external/javafx-media-17.0.7-linux-aarch64.jar=modules/ext/javafx-media-17.0.7-linux-aarch64.jar
release.external/javafx-media-17.0.7-linux-aarch64.jar.external=modules/ext/javafx-media-17.0.7-linux-aarch64.jar.external
release.external/javafx-swing-17.0.7-linux-aarch64.jar=modules/ext/javafx-swing-17.0.7-linux-aarch64.jar
release.external/javafx-swing-17.0.7-linux-aarch64.jar.external=modules/ext/javafx-swing-17.0.7-linux-aarch64.jar.external
release.external/javafx-web-17.0.7-linux-aarch64.jar=modules/ext/javafx-web-17.0.7-linux-aarch64.jar
release.external/javafx-web-17.0.7-linux-aarch64.jar.external=modules/ext/javafx-web-17.0.7-linux-aarch64.jar.external

license.file.override=${nb_all}/nbbuild/licenses/GPL-2-CP
72 changes: 72 additions & 0 deletions extra/libs.javafx.linux.aarch64/nbproject/project.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<project xmlns="http://www.netbeans.org/ns/project/1">
<type>org.netbeans.modules.apisupport.project</type>
<configuration>
<data xmlns="http://www.netbeans.org/ns/nb-module-project/3">
<code-name-base>org.netbeans.libs.javafx.linux.aarch64</code-name-base>
<module-dependencies>
<dependency>
<code-name-base>org.openide.modules</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>7.40</specification-version>
</run-dependency>
</dependency>
<dependency>
<code-name-base>org.netbeans.libs.javafx</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
<specification-version>2.10</specification-version>
</run-dependency>
</dependency>
</module-dependencies>
<public-packages/>
<class-path-extension>
<runtime-relative-path>ext/javafx-base-17.0.7-linux-aarch64.jar</runtime-relative-path>
<binary-origin>external/javafx-base-17.0.7-linux-aarch64.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/javafx-controls-17.0.7-linux-aarch64.jar</runtime-relative-path>
<binary-origin>external/javafx-controls-17.0.7-linux-aarch64.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/javafx-graphics-17.0.7-linux-aarch64.jar</runtime-relative-path>
<binary-origin>external/javafx-graphics-17.0.7-linux-aarch64.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/javafx-media-17.0.7-linux-aarch64.jar</runtime-relative-path>
<binary-origin>external/javafx-media-17.0.7-linux-aarch64.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/javafx-swing-17.0.7-linux-aarch64.jar</runtime-relative-path>
<binary-origin>external/javafx-swing-17.0.7-linux-aarch64.jar</binary-origin>
</class-path-extension>
<class-path-extension>
<runtime-relative-path>ext/javafx-web-17.0.7-linux-aarch64.jar</runtime-relative-path>
<binary-origin>external/javafx-web-17.0.7-linux-aarch64.jar</binary-origin>
</class-path-extension>
</data>
</configuration>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
OpenIDE-Module-Name=JavaFX Implementation for Linux (aarch64)
OpenIDE-Module-Display-Category=Infrastructure
12 changes: 6 additions & 6 deletions extra/libs.javafx.linux/external/binaries-list
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
# specific language governing permissions and limitations
# under the License.

476C7640C2320244D3156EDBBC19A7EDA275C1ED org.openjfx:javafx-base:17:linux
851A1896FBD8548FB3671AA689B305B2CFAD956A org.openjfx:javafx-controls:17:linux
88DC59568C14EC37EA1C42B3BA472D78B4B1030A org.openjfx:javafx-graphics:17:linux
E3BB829CE1447A37A8B0B669A446E0414E54E5C7 org.openjfx:javafx-media:17:linux
BBD71BEAF561B72F0D3EB6268D3114573B7799C3 org.openjfx:javafx-web:17:linux
8DEE489B0FAECF27568BFE64EFDC7AA01410DEFA org.openjfx:javafx-swing:17:linux
9F27959208043D012B99019A0A9D53D63BF40C56 org.openjfx:javafx-base:17.0.7:linux
CAEB9696D8901C66C9990FF337DF884E1867D5B8 org.openjfx:javafx-controls:17.0.7:linux
C2029CF4A359DDB5FE0DEC9D11407EA97940E06A org.openjfx:javafx-graphics:17.0.7:linux
BDB52EF954971EE5FB0F5C57CD20ED2B61D4B241 org.openjfx:javafx-media:17.0.7:linux
C0816F87388EEE94DAC275482B3D66E17F17AEA8 org.openjfx:javafx-web:17.0.7:linux
662730E1BD365009256FF10B24F72D3F5FAC6B65 org.openjfx:javafx-swing:17.0.7:linux

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 3662033828
URL: m2:/org.openjfx:javafx-base:17.0.7:jar:linux
MessageDigest: SHA-256 564106d3c0ae51f6e0cfb1668ca2972b4fcfe575d351a682c9a4b3aacb71d3ce
MessageDigest: SHA-512 0a693de029f637880ad1af946435125e35660bef814e04cf450428bedcf67a6879b11971ee561a30f7e05e4219da0e4b810323b454cc6ebcfd4bc79f63b255cd

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 3792926776
URL: m2:/org.openjfx:javafx-controls:17.0.7:jar:linux
MessageDigest: SHA-256 d1080b607dc5ac44f11fef9cedb7faa4e9745763f4a034b0a13f128bea727a58
MessageDigest: SHA-512 c505a6b98a63831d9c62e610ad5117c952f6a8d804ad9795279149f91e1ebd13afbee8534b5eaf88c336af721688a25e23a82de3da919e3ff8ffff8b34490c0c

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 4149738688
URL: m2:/org.openjfx:javafx-graphics:17.0.7:jar:linux
MessageDigest: SHA-256 055d491ebdb4c788771744d37c0917a34f004816f2e2b99189110ec206439c2a
MessageDigest: SHA-512 aadbdd44d6885d822a007c7d1f33377c3cfd6bdcd5eb8d5197c72f28b012e4334182c472821dad2807139836ccad9c5ae4b9b516140ad8a3ad3f3c1173f4dfca
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
Name: JavaFX
Description: JavaFX API and Implementation
Version: 17
Version: 17.0.7
License: GPL-2-CP
Origin: https://github.com/openjdk/jfx
Source: https://github.com/openjdk/jfx/commit/14b23bcf69a321c44b09e584b30f39e1fa3e6948
Files: javafx-base-17-linux.jar, javafx-controls-17-linux.jar, javafx-graphics-17-linux.jar, javafx-media-17-linux.jar, javafx-swing-17-linux.jar, javafx-web-17-linux.jar
Source: https://github.com/openjdk/jfx17u/tree/17.0.7+2
Files: javafx-base-17.0.7-linux.jar, javafx-controls-17.0.7-linux.jar, javafx-graphics-17.0.7-linux.jar, javafx-media-17.0.7-linux.jar, javafx-swing-17.0.7-linux.jar, javafx-web-17.0.7-linux.jar
Type: compile-time,optional
Comment: Used at compile. Possibly downloaded later.

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 258621600
URL: m2:/org.openjfx:javafx-media:17.0.7:jar:linux
MessageDigest: SHA-256 7f7a7f352a1ea69fc6319e7fa5fb366550eb026f917c6ba29f998840a4c28294
MessageDigest: SHA-512 6557cc89ccc1b533648d397ba39b81c5869118d4737a6333aff285614cf6927d4dc5db6be1bc0014ceb1e683bb8f90026afed8ff012e36317404f9c7edc4dac6

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 931919013
URL: m2:/org.openjfx:javafx-swing:17.0.7:jar:linux
MessageDigest: SHA-256 80cb877601bdafaeab50859f73eeada0711e0558e700e858b5c0899127813c31
MessageDigest: SHA-512 543d438888353781a935d346f146cef099a88c64b3f14c87fa2f2635bbe48d26877845ba5f75e9cbcc90fed73b5b439c5e489b7f9bbd4bc592077672aea19d9d

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CRC: 3415262848
URL: m2:/org.openjfx:javafx-web:17.0.7:jar:linux
MessageDigest: SHA-256 1331f27fd70725f355647ce30409d0bf0a63b33be734d9d88f6465b73de4f265
MessageDigest: SHA-512 c65431ea55b2601a8c08c45cafc3d5e52522e70148de0459046e95f89e252a9a20b769b9821408a5041e60bb208c1aa598791ab877386a5b91d70312ad4a4df1
Loading

0 comments on commit 20a867a

Please sign in to comment.