git: a0c13b4a90b8 - main - java/eclipse: update 4.16 -> 4.21

From: Kurt Jaeger <pi_at_FreeBSD.org>
Date: Fri, 03 Jun 2022 10:08:49 UTC
The branch main has been updated by pi:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a0c13b4a90b805807864f484d8ade07906198dbf

commit a0c13b4a90b805807864f484d8ade07906198dbf
Author:     Jonathan Chen <jonc@chen.org.nz>
AuthorDate: 2022-06-03 10:06:36 +0000
Commit:     Kurt Jaeger <pi@FreeBSD.org>
CommitDate: 2022-06-03 10:06:36 +0000

    java/eclipse: update 4.16 -> 4.21
    
    This release is 1.5 years overdue and 6 months out-of-date, but is
    an important interim step to the 4.24 release due in June 2022.
    
    Massive thanks go to Patrick Mackinlay who resolved the 2 critical
    bugs preventing update from coming out sooner!
    
    Author: Jonathan Chen <jonc@chen.org.nz>
    PR:     264400
---
 java/eclipse/Makefile                              |  30 +-
 java/eclipse/Makefile.plugins                      |   1 +
 java/eclipse/distinfo                              | 108 ++--
 java/eclipse/files/cef-patch                       |  24 +
 java/eclipse/files/eclipse.in                      |   9 +
 java/eclipse/files/patch-eclipse-platform-parent   |  39 +-
 java/eclipse/files/patch-eclipse.pde.build         |   4 +-
 java/eclipse/files/patch-eclipse.pde.ui            |   7 +-
 java/eclipse/files/patch-eclipse.platform.releng   |  70 ++-
 ...tch-eclipse.platform.releng.tychoeclipsebuilder | 283 ++++++-----
 .../eclipse/files/patch-eclipse.platform.resources | 152 +++++-
 java/eclipse/files/patch-eclipse.platform.runtime  |   6 +-
 java/eclipse/files/patch-eclipse.platform.swt      | 560 ++++++++++++++++-----
 .../files/patch-eclipse.platform.swt.binaries      | 214 ++++++--
 java/eclipse/files/patch-eclipse.platform.team     | 184 ++++---
 java/eclipse/files/patch-eclipse.platform.text     |   2 +-
 java/eclipse/files/patch-eclipse.platform.ua       |  15 +-
 java/eclipse/files/patch-eclipse.platform.ui       | 101 ++--
 java/eclipse/files/patch-rt.equinox.bundles        | 153 +++---
 java/eclipse/files/patch-rt.equinox.framework      | 271 ++++++----
 java/eclipse/files/patch-rt.equinox.p2             |  42 +-
 java/eclipse/scripts/pre-build                     |   2 +-
 java/eclipse/scripts/pre-patch                     |   8 +-
 23 files changed, 1486 insertions(+), 799 deletions(-)

diff --git a/java/eclipse/Makefile b/java/eclipse/Makefile
index d564b94ae541..2cdfd8398c6b 100644
--- a/java/eclipse/Makefile
+++ b/java/eclipse/Makefile
@@ -1,13 +1,13 @@
 # Created by: Jonathan Chen <jonc@chen.org.nz>
+# $FreeBSD$
 
 PORTNAME=	eclipse
-PORTVERSION=	4.16
-PORTREVISION=	1
+PORTVERSION=	4.21
 CATEGORIES=	java devel
 
 # Update to eclipse.platform.releng.aggregator.git git-tag on git.eclipse.org
-ECLIPSE_TAG=	R4_16
-ECLIPSE_TSTAMP=	20200617-1404
+ECLIPSE_TAG=	R4_21
+ECLIPSE_TSTAMP=	20210915-1206
 
 ECLIPSE_SUFX=	${ECLIPSE_TAG}.tar.xz
 ECLIPSE_MODULES=jdt/eclipse.jdt \
@@ -42,14 +42,19 @@ MASTER_SITES+=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/releases/download/
 DISTFILES+=	${M:C/.*\///}-${ECLIPSE_SUFX}:${M:C/[\.\/]//g}
 .endfor
 
+CEF_FILE=	cef_binary_3.3071.1649.g98725e6_linux64_minimal
+MASTER_SITES+=	https://cef-builds.spotifycdn.com/:spotify \
+		https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/releases/download/${PORTVERSION}/:github
+DISTFILES+=	${CEF_FILE}.tar.bz2:spotify
+
 DIST_SUBDIR=	${PORTNAME}
 
 MAINTAINER=	jonc@chen.org.nz
-COMMENT=	Eclipse IDE 2020-06
+COMMENT=	Eclipse IDE 2020-09
 
 LICENSE=	EPL
 
-ONLY_FOR_ARCHS=	amd64 powerpc64 powerpc64le
+ONLY_FOR_ARCHS=	aarch64 amd64 powerpc64 powerpc64le
 
 BUILD_DEPENDS=	git:devel/git@lite \
 		${LOCALBASE}/share/java/maven/bin/mvn:devel/maven \
@@ -74,17 +79,20 @@ DESKTOP_ENTRIES="Eclipse" \
 
 SUB_FILES=	${PORTNAME}
 
-MAVEN_ENV=	MAVEN_OPTS=-Xmx1024m CC=${CC} JAVA_HOME=${JAVA_HOME}
-MAVEN_REPO=	-Dmaven.repo.local=${WRKDIR}/${GH_PROJECT}-${PORTVERSION}
-MAVEN_ECLIPSE=	-Dnative=gtk.freebsd.${ARCH} -DforceContextQualifier=v${ECLIPSE_TSTAMP}
+MAVEN_ENV=	MAVEN_OPTS=-Xmx1024m CC=${CC} JAVA_HOME=${JAVA_HOME} HOME=${WRKDIR}/githome
+MAVEN_ECLIPSE=	-Dmaven.repo.local=${WRKDIR}/${GH_PROJECT}-${PORTVERSION} \
+		-Dlocal.cefsource=${WRKDIR}/${CEF_FILE} \
+		-Dlocal.patchfiles=${FILESDIR} \
+		-Dnative=gtk.freebsd.${ARCH} \
+		-DforceContextQualifier=v${ECLIPSE_TSTAMP}
 
-ECLIPSE_RESULT=	eclipse.platform.releng.tychoeclipsebuilder/sdk/target/products/org.eclipse.sdk.ide-freebsd.gtk.${ARCH}.tar.gz
+ECLIPSE_RESULT=	eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/target/products/org.eclipse.sdk.ide-freebsd.gtk.${ARCH}.tar.gz
 
 # Let's abuse this to get to the right place.
 WRKSRC_SUBDIR=	../eclipse.platform.releng.aggregator-${ECLIPSE_TAG}
 
 do-build:
-	cd ${WRKSRC} && ${SETENV} ${MAVEN_ENV} mvn --offline ${MAVEN_REPO} ${MAVEN_ECLIPSE} -DskipTests clean verify
+	cd ${WRKSRC} && ${SETENV} ${MAVEN_ENV} mvn --offline ${MAVEN_ECLIPSE} -DskipTests clean verify
 
 do-install:
 	${MKDIR} ${STAGEDIR}${DATADIR}
diff --git a/java/eclipse/Makefile.plugins b/java/eclipse/Makefile.plugins
index 52b6c47b35a9..2b4e9ce21dfe 100644
--- a/java/eclipse/Makefile.plugins
+++ b/java/eclipse/Makefile.plugins
@@ -1,3 +1,4 @@
+# $FreeBSD$
 NO_BUILD=	yes
 USE_JAVA=	yes
 JAVA_VERSION=	1.8+
diff --git a/java/eclipse/distinfo b/java/eclipse/distinfo
index 339279a64557..1cd0b55da1db 100644
--- a/java/eclipse/distinfo
+++ b/java/eclipse/distinfo
@@ -1,53 +1,55 @@
-TIMESTAMP = 1592448357
-SHA256 (eclipse/eclipse.jdt-R4_16.tar.xz) = 9f93c368bf782ad8d3e4124f0ec11087b1b462052139165cec7aa4fa9bcc7050
-SIZE (eclipse/eclipse.jdt-R4_16.tar.xz) = 29304
-SHA256 (eclipse/eclipse.jdt.core-R4_16.tar.xz) = 1b734dfa8ddd40e09efa37303c099ad2dd11633474e7270a9c043dc625d93728
-SIZE (eclipse/eclipse.jdt.core-R4_16.tar.xz) = 8650672
-SHA256 (eclipse/eclipse.jdt.core.binaries-R4_16.tar.xz) = 9cb0d7c97a46191ff60738a8da327552786293f05392bd0be10c30ecbf78b637
-SIZE (eclipse/eclipse.jdt.core.binaries-R4_16.tar.xz) = 34416600
-SHA256 (eclipse/eclipse.jdt.debug-R4_16.tar.xz) = 845eedbf3a424f4cc7a138028bfaea74a4e6f93871903603bb886b6bc9c96d23
-SIZE (eclipse/eclipse.jdt.debug-R4_16.tar.xz) = 1462764
-SHA256 (eclipse/eclipse.jdt.ui-R4_16.tar.xz) = 08ea5e36ea0279bd86d2a2fb877664becfd043e4f37291ee4f173f7f41246e0b
-SIZE (eclipse/eclipse.jdt.ui-R4_16.tar.xz) = 15771884
-SHA256 (eclipse/eclipse.pde.build-R4_16.tar.xz) = e56ac953b3722de9a40d6b1759f5da78bf369dc49bcce47435ce9fdec6e89fea
-SIZE (eclipse/eclipse.pde.build-R4_16.tar.xz) = 868696
-SHA256 (eclipse/eclipse.pde.ui-R4_16.tar.xz) = 7db5936fc6d7cbc2f02dea114c00099837af6f37120d6a10da2b8ef2b7ded4c1
-SIZE (eclipse/eclipse.pde.ui-R4_16.tar.xz) = 29819796
-SHA256 (eclipse/eclipse.platform-R4_16.tar.xz) = 3d5d3e6b3968c744c4a94e968ae7f29ef8229f93556351007e054922c751f82e
-SIZE (eclipse/eclipse.platform-R4_16.tar.xz) = 1446740
-SHA256 (eclipse/eclipse.platform.common-R4_16.tar.xz) = a1fbec04f8b1bc28082ca23d8850efe44e3bbe1fa7bd38c8cc7a8b5536cd9c99
-SIZE (eclipse/eclipse.platform.common-R4_16.tar.xz) = 35851024
-SHA256 (eclipse/eclipse.platform.debug-R4_16.tar.xz) = 649b547351db7acafad225e90915b1bd96cb3ae1964b4c420956030b5979e431
-SIZE (eclipse/eclipse.platform.debug-R4_16.tar.xz) = 1372776
-SHA256 (eclipse/eclipse.platform.releng-R4_16.tar.xz) = 3b9016785fc52e75462c69222c0855228b23a8eac3184e615f6a045a13dda643
-SIZE (eclipse/eclipse.platform.releng-R4_16.tar.xz) = 406928
-SHA256 (eclipse/eclipse.platform.releng.aggregator-R4_16.tar.xz) = bdbc90306a3dabaf3be6c01ca090f7da6434eada0a2137935acc2aa11fd3c0c1
-SIZE (eclipse/eclipse.platform.releng.aggregator-R4_16.tar.xz) = 605404
-SHA256 (eclipse/eclipse.platform.resources-R4_16.tar.xz) = f443677069d43b444b17627f0a593cf6fbb82eb86a69f37c9c331267d1d51d33
-SIZE (eclipse/eclipse.platform.resources-R4_16.tar.xz) = 813528
-SHA256 (eclipse/eclipse.platform.runtime-R4_16.tar.xz) = 69d32fc771c293c33d1adb0bbf480cb4b79116d23f8ec5ebf8f3b243894b59ce
-SIZE (eclipse/eclipse.platform.runtime-R4_16.tar.xz) = 431312
-SHA256 (eclipse/eclipse.platform.swt-R4_16.tar.xz) = d864f1d3a275d93118be35a360c92d8943c3eb9d67cc72916bab5ecd85dc7262
-SIZE (eclipse/eclipse.platform.swt-R4_16.tar.xz) = 6236756
-SHA256 (eclipse/eclipse.platform.swt.binaries-R4_16.tar.xz) = b875dba475ed19f2b55cbade3a54b4b9afe522037efeb42909e1e9d89dd84dc0
-SIZE (eclipse/eclipse.platform.swt.binaries-R4_16.tar.xz) = 563508
-SHA256 (eclipse/eclipse.platform.team-R4_16.tar.xz) = 180590b0a7516e246c7343298506f62f29c853e4090899891c6c301d4be801a7
-SIZE (eclipse/eclipse.platform.team-R4_16.tar.xz) = 4633900
-SHA256 (eclipse/eclipse.platform.text-R4_16.tar.xz) = 1d243c92c8eb67a9aef9de7c87bf228f4d057b380b7b60ac9ca77fa64363f0f9
-SIZE (eclipse/eclipse.platform.text-R4_16.tar.xz) = 1319632
-SHA256 (eclipse/eclipse.platform.ua-R4_16.tar.xz) = 8c3ca5fe144588f2d994906461779fa782b257f3643b7686a9606bcf7b907c75
-SIZE (eclipse/eclipse.platform.ua-R4_16.tar.xz) = 4621924
-SHA256 (eclipse/eclipse.platform.ui-R4_16.tar.xz) = fd232ac1fddaec771ec895b995fb0c47813577e3b5a87f72b29b01363e08eeca
-SIZE (eclipse/eclipse.platform.ui-R4_16.tar.xz) = 5967112
-SHA256 (eclipse/eclipse.platform.ui.tools-R4_16.tar.xz) = 43a75d63cb4f294fa39b749dfe4e6751493ffbc5c45e8009099bb8683290009b
-SIZE (eclipse/eclipse.platform.ui.tools-R4_16.tar.xz) = 328668
-SHA256 (eclipse/rt.equinox.binaries-R4_16.tar.xz) = e7e198a3ffa5f0392277e4f648ca59469ec8bbaeafe553620b023f287d9fb8f1
-SIZE (eclipse/rt.equinox.binaries-R4_16.tar.xz) = 299708
-SHA256 (eclipse/rt.equinox.bundles-R4_16.tar.xz) = 7a91d247020b62cb5d2fe9886e9ae5693b60aa0d3d1331f88b83070d65285637
-SIZE (eclipse/rt.equinox.bundles-R4_16.tar.xz) = 1161164
-SHA256 (eclipse/rt.equinox.framework-R4_16.tar.xz) = c1f2d3410c546e09adbed2eb97880d7f109890a6abcb625291271e776224e780
-SIZE (eclipse/rt.equinox.framework-R4_16.tar.xz) = 2827340
-SHA256 (eclipse/rt.equinox.p2-R4_16.tar.xz) = ef8216e3013688a5f2bd62128a10f19c420bfc587345d47810f25e1d254c4bf1
-SIZE (eclipse/rt.equinox.p2-R4_16.tar.xz) = 48490416
-SHA256 (eclipse/daemonblade-eclipse-maven-repo-4.16_GH0.tar.gz) = 73355577a36e6ee976464ab16416fc966d91763f20dfa70ff4d4fd7ff460cfc5
-SIZE (eclipse/daemonblade-eclipse-maven-repo-4.16_GH0.tar.gz) = 198477770
+TIMESTAMP = 1653887228
+SHA256 (eclipse/eclipse.jdt-R4_21.tar.xz) = 8b1af3b43f76d3cc74fb44b15574fe2744bd5282e7e1c2290b779eeebfc94dfc
+SIZE (eclipse/eclipse.jdt-R4_21.tar.xz) = 29324
+SHA256 (eclipse/eclipse.jdt.core-R4_21.tar.xz) = 5df3da6d88d68c433cc3ed0b8de62a7ccc481b6bbe7434e156230747a8611c46
+SIZE (eclipse/eclipse.jdt.core-R4_21.tar.xz) = 8815900
+SHA256 (eclipse/eclipse.jdt.core.binaries-R4_21.tar.xz) = d9632f5086217d780d8eebea0da75607272002fee5cd22f3cec8c08fee00c6c6
+SIZE (eclipse/eclipse.jdt.core.binaries-R4_21.tar.xz) = 34416428
+SHA256 (eclipse/eclipse.jdt.debug-R4_21.tar.xz) = 7910a349bb0afaa3a98b65be959d0ae47da745f3c96a183f2b2e2e5eb585dd04
+SIZE (eclipse/eclipse.jdt.debug-R4_21.tar.xz) = 1469208
+SHA256 (eclipse/eclipse.jdt.ui-R4_21.tar.xz) = cb6d963ab0422523897fade2f79be0807f7abe709a4a9bdbd5d027694179daea
+SIZE (eclipse/eclipse.jdt.ui-R4_21.tar.xz) = 16293416
+SHA256 (eclipse/eclipse.pde.build-R4_21.tar.xz) = ff32409190bcaa29b8fda76eee98cfa3e3e117ec73e8043f9d2c56209108f033
+SIZE (eclipse/eclipse.pde.build-R4_21.tar.xz) = 847516
+SHA256 (eclipse/eclipse.pde.ui-R4_21.tar.xz) = 92e4305b0d2de70c1c866ba35f2c5d79f6335d4c8d5b828926ea20a729e7b6ae
+SIZE (eclipse/eclipse.pde.ui-R4_21.tar.xz) = 25742828
+SHA256 (eclipse/eclipse.platform-R4_21.tar.xz) = 7b3cc0234f4dc9d4a9d56dc4550dd0cfa21263eb89ca221ce2eb22c258795535
+SIZE (eclipse/eclipse.platform-R4_21.tar.xz) = 1314336
+SHA256 (eclipse/eclipse.platform.common-R4_21.tar.xz) = 38e7a3e41977037d74ab14c9c5e5a471a6a9f593f133f72981b7850d199d6f53
+SIZE (eclipse/eclipse.platform.common-R4_21.tar.xz) = 33482124
+SHA256 (eclipse/eclipse.platform.debug-R4_21.tar.xz) = fd4d24ad9ab36a9d8c9a17492608156508862596f304a21a32a877adf9133493
+SIZE (eclipse/eclipse.platform.debug-R4_21.tar.xz) = 1524768
+SHA256 (eclipse/eclipse.platform.releng-R4_21.tar.xz) = 63fb661948e191ed0c96a7149f4e4c6f7b9536360fced8321d5d208c500fe1ed
+SIZE (eclipse/eclipse.platform.releng-R4_21.tar.xz) = 154672
+SHA256 (eclipse/eclipse.platform.releng.aggregator-R4_21.tar.xz) = 2774ce3870d27d95bcecc3e9ab04de649a27b3bbcf9111c828b17a80fc639d9a
+SIZE (eclipse/eclipse.platform.releng.aggregator-R4_21.tar.xz) = 611344
+SHA256 (eclipse/eclipse.platform.resources-R4_21.tar.xz) = 643f2ac4bd62f1747f3e30ffe09043d96cb92f32b7e943dddad0fd24f87dc370
+SIZE (eclipse/eclipse.platform.resources-R4_21.tar.xz) = 826960
+SHA256 (eclipse/eclipse.platform.runtime-R4_21.tar.xz) = 8ea6339fa54edf08cb0c66e4a1e664f3ddcd688fd05453e7d202373c29b4898d
+SIZE (eclipse/eclipse.platform.runtime-R4_21.tar.xz) = 431772
+SHA256 (eclipse/eclipse.platform.swt-R4_21.tar.xz) = d6f2c36267809c04717e5951cdcceaf102892580e0a5e887eb79e0b49d5c9113
+SIZE (eclipse/eclipse.platform.swt-R4_21.tar.xz) = 6395368
+SHA256 (eclipse/eclipse.platform.swt.binaries-R4_21.tar.xz) = d43e8322b90af3bebdd9ed19b318e760915d7ce8f59d9c530397c7e7b4d40b29
+SIZE (eclipse/eclipse.platform.swt.binaries-R4_21.tar.xz) = 2250692
+SHA256 (eclipse/eclipse.platform.team-R4_21.tar.xz) = fe57896e30e148938547fc0fc4cf23033ce9fdf6db1a9192dbd6b7b49af8c963
+SIZE (eclipse/eclipse.platform.team-R4_21.tar.xz) = 4564772
+SHA256 (eclipse/eclipse.platform.text-R4_21.tar.xz) = 6e2b1c4252786c995d79d14504195a64a46a4a335e2f4a27b3ddb9e9cfeadaf9
+SIZE (eclipse/eclipse.platform.text-R4_21.tar.xz) = 1333172
+SHA256 (eclipse/eclipse.platform.ua-R4_21.tar.xz) = 53fb7f58195767221cc7ef579a0d758fd5cc4c4627d722b60122afff5565a5f4
+SIZE (eclipse/eclipse.platform.ua-R4_21.tar.xz) = 4654924
+SHA256 (eclipse/eclipse.platform.ui-R4_21.tar.xz) = 45f7abbb7546f009ac7b85935ed3f0f713ab64cd43c39fba4919bae3c62c8c42
+SIZE (eclipse/eclipse.platform.ui-R4_21.tar.xz) = 5816708
+SHA256 (eclipse/eclipse.platform.ui.tools-R4_21.tar.xz) = ad9d54fc2f7b0c87e73edf142310647cc81aebfa08e40263b949a57a337aeab4
+SIZE (eclipse/eclipse.platform.ui.tools-R4_21.tar.xz) = 329028
+SHA256 (eclipse/rt.equinox.binaries-R4_21.tar.xz) = 6dcebfcbf005d49f60b153ec256dacaf199acda3e6c627b0aac03f241a1738b7
+SIZE (eclipse/rt.equinox.binaries-R4_21.tar.xz) = 446104
+SHA256 (eclipse/rt.equinox.bundles-R4_21.tar.xz) = 69e9af9d8e297fe19d1c5a0a624d8f5c6fe81f53614f8cbdb42b4f78eb3097c6
+SIZE (eclipse/rt.equinox.bundles-R4_21.tar.xz) = 1154508
+SHA256 (eclipse/rt.equinox.framework-R4_21.tar.xz) = 5b2de266aba0fe7a6245c34357f163b9156806697ded80ecd59611b77bf5990c
+SIZE (eclipse/rt.equinox.framework-R4_21.tar.xz) = 1438564
+SHA256 (eclipse/rt.equinox.p2-R4_21.tar.xz) = be31e8cff1af6703c283c0df1c0902e8b8efff07d4dd9d9fa3bccc0773c28b1a
+SIZE (eclipse/rt.equinox.p2-R4_21.tar.xz) = 48558608
+SHA256 (eclipse/cef_binary_3.3071.1649.g98725e6_linux64_minimal.tar.bz2) = 7eea540d122ceb35a0ce1970e72077b861e23ffbbe55288522b57141934f86f2
+SIZE (eclipse/cef_binary_3.3071.1649.g98725e6_linux64_minimal.tar.bz2) = 143099195
+SHA256 (eclipse/daemonblade-eclipse-maven-repo-4.21_GH0.tar.gz) = 6c9267690fedd16d5b6ff069759cff74206643f51db79e2ad469d4c2bb60c4ed
+SIZE (eclipse/daemonblade-eclipse-maven-repo-4.21_GH0.tar.gz) = 226452400
diff --git a/java/eclipse/files/cef-patch b/java/eclipse/files/cef-patch
new file mode 100644
index 000000000000..7ffd86d8053d
--- /dev/null
+++ b/java/eclipse/files/cef-patch
@@ -0,0 +1,24 @@
+diff -ruN ../cef_binary_3.3071.1649.g98725e6_linux64_minimal.orig/cmake/cef_variables.cmake ./cmake/cef_variables.cmake
+--- ../cef_binary_3.3071.1649.g98725e6_linux64_minimal.orig/cmake/cef_variables.cmake	2017-07-19 17:50:42.000000000 +1200
++++ ./cmake/cef_variables.cmake	2020-10-02 14:38:13.438964000 +1300
+@@ -16,7 +16,7 @@
+ if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
+   set(OS_MACOSX 1)
+   set(OS_POSIX 1)
+-elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
++elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD")
+   set(OS_LINUX 1)
+   set(OS_POSIX 1)
+ elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Windows")
+diff -ruN ../cef_binary_3.3071.1649.g98725e6_linux64_minimal.orig/include/base/cef_build.h ./include/base/cef_build.h
+--- ../cef_binary_3.3071.1649.g98725e6_linux64_minimal.orig/include/base/cef_build.h	2017-07-19 17:50:42.000000000 +1200
++++ ./include/base/cef_build.h	2020-10-02 14:43:29.023692000 +1300
+@@ -47,7 +47,7 @@
+ #ifndef OS_MACOSX
+ #define OS_MACOSX 1
+ #endif
+-#elif defined(__linux__)
++#elif defined(__linux__) || defined(__FreeBSD__)
+ #ifndef OS_LINUX
+ #define OS_LINUX 1
+ #endif
diff --git a/java/eclipse/files/eclipse.in b/java/eclipse/files/eclipse.in
index f3196355d1aa..756e4a5fbd8f 100644
--- a/java/eclipse/files/eclipse.in
+++ b/java/eclipse/files/eclipse.in
@@ -3,5 +3,14 @@
 # FreeBSD-specific startup script for Eclipse Platform
 #
 # See: http://www.eclipse.org
+#
+
+# Create required Webkit communication directories removed by:
+# https://git.eclipse.org/r/c/platform/eclipse.platform.swt/+/163641/
+for D in SWT-GDBusServer SWT-WebExtensionGDBusServer
+do
+	mkdir -p /tmp/${D}
+	chmod -f 1777 /tmp/${D}
+done
 
 JAVA_VERSION="%%JAVA_VERSION%%" exec %%DATADIR%%/eclipse "$@"
diff --git a/java/eclipse/files/patch-eclipse-platform-parent b/java/eclipse/files/patch-eclipse-platform-parent
index 707ccebc555b..be14b1964bd7 100644
--- a/java/eclipse/files/patch-eclipse-platform-parent
+++ b/java/eclipse/files/patch-eclipse-platform-parent
@@ -1,18 +1,19 @@
---- eclipse-platform-parent/pom.xml.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse-platform-parent/pom.xml	2021-03-08 19:09:17.636105000 +0100
-@@ -80,9 +80,9 @@
+diff -ru eclipse-platform-parent/pom.xml eclipse-platform-parent/pom.xml
+--- eclipse-platform-parent/pom.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse-platform-parent/pom.xml	0000-00-00 00:00:00.000000000 +0000
+@@ -81,9 +81,9 @@
        'eclipiserun-repo' repository, such as for computing .api-descriptions and
        generating API Tools reports.
      -->
--    <eclipserun-repo>https://download.eclipse.org/eclipse/updates/4.16-I-builds/</eclipserun-repo>
-+    <eclipserun-repo>https://download.eclipse.org/eclipse/updates/4.16/</eclipserun-repo>
+-    <eclipserun-repo>https://download.eclipse.org/eclipse/updates/4.21-I-builds/</eclipserun-repo>
++    <eclipserun-repo>https://download.eclipse.org/eclipse/updates/4.21/</eclipserun-repo>
      
--    <comparator.repo>https://download.eclipse.org/eclipse/updates/4.16-I-builds</comparator.repo>
-+    <comparator.repo>https://download.eclipse.org/eclipse/updates/4.16</comparator.repo>
+-    <comparator.repo>https://download.eclipse.org/eclipse/updates/4.21-I-builds</comparator.repo>
++    <comparator.repo>https://download.eclipse.org/eclipse/updates/4.21</comparator.repo>
  
-     <!--
-       NOTE: this EMF and ECF URL must match exactly what is in the eclipse-sdk-prereqs.target file.
-@@ -254,16 +254,21 @@
+     <!-- only used when Tycho snapshot repo is enabled in <pluginRepositories> further down -->
+     <tycho-snapshot-repo.url>https://repo.eclipse.org/content/repositories/tycho-snapshots/</tycho-snapshot-repo.url>
+@@ -257,17 +257,22 @@
            </target>
            <environments>
              <environment>
@@ -29,21 +30,23 @@
 -              <arch>ppc64le</arch>
 +              <arch>powerpc64</arch>
              </environment>
-             <environment>
++            <environment>
 +              <os>freebsd</os>
 +              <ws>gtk</ws>
 +              <arch>powerpc64le</arch>
 +            </environment>
-+            <environment>
-               <os>win32</os>
-               <ws>win32</ws>
-               <arch>x86_64</arch>
-@@ -626,7 +631,7 @@
+              <environment>
+-              <os>linux</os>
++              <os>freebsd</os>
+               <ws>gtk</ws>
+               <arch>aarch64</arch>
+             </environment>
+@@ -624,7 +629,7 @@
            For maintenance streams should always be "M-builds".
            Ideally, this value would be provided by the environment, see bug 489789.
          -->
--        <eclipse-p2-repo.url>https://download.eclipse.org/eclipse/updates/4.16-I-builds</eclipse-p2-repo.url>
-+        <eclipse-p2-repo.url>https://download.eclipse.org/eclipse/updates/4.16</eclipse-p2-repo.url>
+-        <eclipse-p2-repo.url>https://download.eclipse.org/eclipse/updates/4.21-I-builds</eclipse-p2-repo.url>
++        <eclipse-p2-repo.url>https://download.eclipse.org/eclipse/updates/4.21</eclipse-p2-repo.url>
        </properties>
        <repositories>
          <repository>
diff --git a/java/eclipse/files/patch-eclipse.pde.build b/java/eclipse/files/patch-eclipse.pde.build
index 142c7a3206fc..212fdd5a956a 100644
--- a/java/eclipse/files/patch-eclipse.pde.build
+++ b/java/eclipse/files/patch-eclipse.pde.build
@@ -18,7 +18,7 @@ diff -ru eclipse.pde.build/org.eclipse.pde.build/scripts/productBuild/allElement
 diff -ru eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/Utils.java eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/Utils.java
 --- eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/Utils.java	0000-00-00 00:00:00.000000000 +0000
 +++ eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/Utils.java	0000-00-00 00:00:00.000000000 +0000
-@@ -704,7 +704,7 @@
+@@ -694,7 +694,7 @@
  			arguments.add("-sf"); //$NON-NLS-1$
  			arguments.add(links[i]);
  			arguments.add(links[i + 1]);
@@ -30,7 +30,7 @@ diff -ru eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/bu
 diff -ru eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/builder/ModelBuildScriptGenerator.java eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/builder/ModelBuildScriptGenerator.java
 --- eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/builder/ModelBuildScriptGenerator.java	0000-00-00 00:00:00.000000000 +0000
 +++ eclipse.pde.build/org.eclipse.pde.build/src/org/eclipse/pde/internal/build/builder/ModelBuildScriptGenerator.java	0000-00-00 00:00:00.000000000 +0000
-@@ -922,7 +922,7 @@
+@@ -912,7 +912,7 @@
  		for (int i = 0; i < links.length; i += 2) {
  			arguments.add(links[i]);
  			arguments.add(links[i + 1]);
diff --git a/java/eclipse/files/patch-eclipse.pde.ui b/java/eclipse/files/patch-eclipse.pde.ui
index 889c3a6ffb59..9a9ec2111d40 100644
--- a/java/eclipse/files/patch-eclipse.pde.ui
+++ b/java/eclipse/files/patch-eclipse.pde.ui
@@ -1,6 +1,7 @@
---- eclipse.pde.ui/ui/org.eclipse.pde.ui.templates/templates_3.5/E4Application/$pluginId$.product.orig	2020-05-14 19:49:48.000000000 +0200
-+++ eclipse.pde.ui/ui/org.eclipse.pde.ui.templates/templates_3.5/E4Application/$pluginId$.product	2021-03-08 19:10:46.275610000 +0100
-@@ -80,8 +80,9 @@
+diff -ru eclipse.pde.ui/ui/org.eclipse.pde.ui.templates/templates_3.5/E4Application/$pluginId$.product eclipse.pde.ui/ui/org.eclipse.pde.ui.templates/templates_3.5/E4Application/$pluginId$.product
+--- eclipse.pde.ui/ui/org.eclipse.pde.ui.templates/templates_3.5/E4Application/$pluginId$.product	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.pde.ui/ui/org.eclipse.pde.ui.templates/templates_3.5/E4Application/$pluginId$.product	0000-00-00 00:00:00.000000000 +0000
+@@ -82,8 +82,9 @@
        <plugin id="org.eclipse.osgi.util"/>
        <plugin id="org.eclipse.swt"/>
        <plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/>
diff --git a/java/eclipse/files/patch-eclipse.platform.releng b/java/eclipse/files/patch-eclipse.platform.releng
index 017656a17a42..99d130993e82 100644
--- a/java/eclipse/files/patch-eclipse.platform.releng
+++ b/java/eclipse/files/patch-eclipse.platform.releng
@@ -1,8 +1,20 @@
---- eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml.orig	2020-05-28 13:29:36.000000000 +0200
-+++ eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml	2021-03-08 19:12:31.612581000 +0100
-@@ -96,9 +96,9 @@
+diff -ru eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml
+--- eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng/features/org.eclipse.platform-feature/feature.xml	0000-00-00 00:00:00.000000000 +0000
+@@ -96,8 +96,8 @@
           unpack="false"/>
  
+    <plugin
+-         id="org.eclipse.core.net.linux"
+-         os="linux"
++         id="org.eclipse.core.net.freebsd"
++         os="freebsd"
+          download-size="0"
+          install-size="0"
+          version="0.0.0"
+@@ -105,9 +105,9 @@
+          unpack="false"/>
+    
     <plugin
 -         id="org.eclipse.core.net.linux.x86_64"
 -         os="linux"
@@ -13,7 +25,7 @@
           download-size="0"
           install-size="0"
           version="0.0.0"
-@@ -362,9 +362,9 @@
+@@ -371,9 +371,9 @@
           unpack="false"/>
  
     <plugin
@@ -26,7 +38,7 @@
           download-size="0"
           install-size="0"
           version="0.0.0"
-@@ -401,9 +401,9 @@
+@@ -410,18 +410,28 @@
           unpack="false"/>
  
     <plugin
@@ -39,10 +51,10 @@
           download-size="0"
           install-size="0"
           version="0.0.0"
-@@ -411,6 +411,16 @@
+          fragment="true"
           unpack="false"/>
- 
-    <plugin
++
++   <plugin
 +         id="org.eclipse.core.filesystem.freebsd.powerpc64le"
 +         os="freebsd"
 +         arch="powerpc64le"
@@ -51,14 +63,29 @@
 +         version="0.0.0"
 +         fragment="true"
 +         unpack="false"/>
-+
-+   <plugin
-          id="org.eclipse.core.variables"
+          
+    <plugin
+-         id="org.eclipse.core.filesystem.linux.aarch64"
+-         os="linux"
++         id="org.eclipse.core.filesystem.freebsd.aarch64"
++         os="freebsd"
+          arch="aarch64"
           download-size="0"
           install-size="0"
-@@ -465,9 +475,9 @@
+@@ -484,8 +494,8 @@
           unpack="false"/>
  
+    <plugin
+-         id="org.eclipse.equinox.security.linux"
+-         os="linux"
++         id="org.eclipse.equinox.security.freebsd"
++         os="freebsd"
+          download-size="0"
+          install-size="0"
+          version="0.0.0"
+@@ -493,9 +503,9 @@
+          unpack="false"/>
+    
     <plugin
 -         id="org.eclipse.equinox.security.linux.x86_64"
 -         os="linux"
@@ -69,9 +96,10 @@
           download-size="0"
           install-size="0"
           version="0.0.0"
---- eclipse.platform.releng/features/org.eclipse.platform-feature/pom.xml.orig	2020-05-28 13:29:36.000000000 +0200
-+++ eclipse.platform.releng/features/org.eclipse.platform-feature/pom.xml	2021-03-08 19:12:49.804474000 +0100
-@@ -55,10 +55,11 @@
+diff -ru eclipse.platform.releng/features/org.eclipse.platform-feature/pom.xml eclipse.platform.releng/features/org.eclipse.platform-feature/pom.xml
+--- eclipse.platform.releng/features/org.eclipse.platform-feature/pom.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng/features/org.eclipse.platform-feature/pom.xml	0000-00-00 00:00:00.000000000 +0000
+@@ -56,10 +56,11 @@
                </plugins>
                <excludes>
                  <plugin id="org.eclipse.platform.doc.user"/>
@@ -85,15 +113,3 @@
                  <plugin id="org.eclipse.core.resources.win32.x86_64"/>
                </excludes>
              </configuration>
---- eclipse.platform.releng/pom.xml.orig	2020-05-28 13:29:36.000000000 +0200
-+++ eclipse.platform.releng/pom.xml	2021-03-08 19:05:06.938707000 +0100
-@@ -66,7 +66,9 @@
-     <module>features/org.eclipse.releng.tools</module>
-     <module>features/org.eclipse.sdk</module>
-     <module>features/org.eclipse.sdk.examples-feature</module>
-+<!--
-     <module>features/org.eclipse.sdk.tests</module>
-+-->
-     <module>features/org.eclipse.test-feature</module>
-   </modules>
- 
diff --git a/java/eclipse/files/patch-eclipse.platform.releng.tychoeclipsebuilder b/java/eclipse/files/patch-eclipse.platform.releng.tychoeclipsebuilder
index cec8e46a6b7b..c06c267fd507 100644
--- a/java/eclipse/files/patch-eclipse.platform.releng.tychoeclipsebuilder
+++ b/java/eclipse/files/patch-eclipse.platform.releng.tychoeclipsebuilder
@@ -1,6 +1,7 @@
---- eclipse.platform.releng.tychoeclipsebuilder/eclipse/publishingFiles/testManifest.xml.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/eclipse/publishingFiles/testManifest.xml	2021-03-08 19:15:45.372727000 +0100
-@@ -8,12 +8,16 @@
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/eclipse/publishingFiles/testManifest.xml eclipse.platform.releng.tychoeclipsebuilder/eclipse/publishingFiles/testManifest.xml
+--- eclipse.platform.releng.tychoeclipsebuilder/eclipse/publishingFiles/testManifest.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/eclipse/publishingFiles/testManifest.xml	0000-00-00 00:00:00.000000000 +0000
+@@ -8,16 +8,20 @@
          fileName="eclipse-SDK-${BUILD_ID}-win32-x86_64.zip"></platform>
        <platform
          id="SLG264"
@@ -9,19 +10,25 @@
 +        name="FreeBSD (64 bit version)"
 +        fileName="eclipse-SDK-${BUILD_ID}-freebsd-gtk-amd64.tar.gz"></platform>
        <platform
-+        id="SLG2PPC64BE"
-+        name="FreeBSD (64 bit version for Power PC)"
-+        fileName="eclipse-SDK-${BUILD_ID}-freebsd-gtk-powerpc64.tar.gz"></platform>
-+      <platform
          id="SLG2PPC64LE"
 -        name="Linux (64 bit version for Power PC)"
 -        fileName="eclipse-SDK-${BUILD_ID}-linux-gtk-ppc64le.tar.gz"></platform>
-+        name="FreeBSD (64 bit little-endian version for Power PC)"
++        name="FreeBSD (64 bit version for Power PC)"
++        fileName="eclipse-SDK-${BUILD_ID}-freebsd-gtk-powerpc64.tar.gz"></platform>
+       <platform
++        id="SLG2PPC64BE"
++        name="FreeBSD (64 bit version for Power PC LE)"
 +        fileName="eclipse-SDK-${BUILD_ID}-freebsd-gtk-powerpc64le.tar.gz"></platform>
++      <platform
+         id="SLG2AARCH64"
+-        name="Linux (64 bit version for AArch64)"
+-        fileName="eclipse-SDK-${BUILD_ID}-linux-gtk-aarch64.tar.gz"></platform>
++        name="FreeBSD (64 bit version for AArch64)"
++        fileName="eclipse-SDK-${BUILD_ID}-freebsd-gtk-aarch64.tar.gz"></platform>
        <platform
          id="SMCC64"
          name="Mac OSX (64 bit version)"
-@@ -70,12 +74,16 @@
+@@ -71,16 +75,16 @@
          fileName="eclipse-platform-${BUILD_ID}-win32-x86_64.zip"></platform>
        <platform
          id="PLG264"
@@ -30,19 +37,21 @@
 +        name="FreeBSD (64 bit version)"
 +        fileName="eclipse-platform-${BUILD_ID}-freebsd-gtk-amd64.tar.gz"></platform>
        <platform
-+        id="PLG2PPC64BE"
-+        name="FreeBSD (64 bit version for Power PC)"
-+        fileName="eclipse-platform-${BUILD_ID}-freebsd-gtk-powerpc64.tar.gz"></platform>
-+      <platform
          id="PLG2PPC64LE"
 -        name="Linux (64 bit version for Power PC)"
 -        fileName="eclipse-platform-${BUILD_ID}-linux-gtk-ppc64le.tar.gz"></platform>
-+        name="FreeBSD (64 bit little-endian version for Power PC)"
-+        fileName="eclipse-platform-${BUILD_ID}-freebsd-gtk-powerpc64le.tar.gz"></platform>
++        name="FreeBSD (64 bit version for Power PC)"
++        fileName="eclipse-platform-${BUILD_ID}-freebsd-gtk-powerpc64.tar.gz"></platform>
+       <platform
+         id="PLG2AARCH64"
+-        name="Linux (64 bit version for AArch64)"
+-        fileName="eclipse-platform-${BUILD_ID}-linux-gtk-aarch64.tar.gz"></platform>
++        name="FreeBSD (64 bit version for AArch64)"
++        fileName="eclipse-platform-${BUILD_ID}-freebsd-gtk-aarch64.tar.gz"></platform>
        <platform
          id="PMCC64"
          name="Mac OSX (64 bit version)"
-@@ -150,12 +158,16 @@
+@@ -113,16 +117,16 @@
          fileName="swt-${BUILD_ID}-win32-win32-x86_64.zip"></platform>
        <platform
          id="SWTLG64"
@@ -51,20 +60,23 @@
 +        name="FreeBSD (64 bit version)"
 +        fileName="swt-${BUILD_ID}-gtk-freebsd-amd64.zip"></platform>
        <platform
-+        id="SWTLG2PPC64BE"
-+        name="FreeBSD (64 bit version for Power PC)"
-+        fileName="swt-${BUILD_ID}-gtk-freebsd-powerpc64.zip"></platform>
-+      <platform
          id="SWTLG2PPC64LE"
 -        name="Linux (64 bit version for Power PC)"
 -        fileName="swt-${BUILD_ID}-gtk-linux-ppc64le.zip"></platform>
-+        name="FreeBSD (64 bit little-endian version for Power PC)"
-+        fileName="swt-${BUILD_ID}-gtk-freebsd-powerpc64le.zip"></platform>
++        name="FreeBSD (64 bit version for Power PC)"
++        fileName="swt-${BUILD_ID}-gtk-freebsd-powerpc64.zip"></platform>
+       <platform
+         id="SWTLG2AARCH64"
+-        name="Linux (64 bit version for AArch64)"
+-        fileName="swt-${BUILD_ID}-gtk-linux-aarch64.zip"></platform>
++        name="FreeBSD (64 bit version for AArch64)"
++        fileName="swt-${BUILD_ID}-gtk-freebsd-aarch64.zip"></platform>
        <platform
          id="SWTMCC64"
          name="Mac OSX (64 bit version)"
---- eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml	2021-03-08 19:05:06.948454000 +0100
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml
+--- eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/pom.xml	0000-00-00 00:00:00.000000000 +0000
 @@ -138,9 +138,9 @@
            <resolver>p2</resolver>
            <environments>
@@ -77,22 +89,110 @@
              </environment>
              <environment>
                <os>win32</os>
---- eclipse.platform.releng.tychoeclipsebuilder/equinox/buildConfigs/equinox-launchers/build.xml.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/equinox/buildConfigs/equinox-launchers/build.xml	2021-03-08 19:16:10.708519000 +0100
-@@ -14,8 +14,9 @@
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/platform.product eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/platform.product
+--- eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/platform.product	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/platform.product	0000-00-00 00:00:00.000000000 +0000
+@@ -18,7 +18,7 @@
+    <splash
+       location="org.eclipse.platform" />
+    <launcher name="eclipse">
+-      <linux icon="icons/icon.xpm"/>
++      <freebsd icon="icons/icon.xpm"/>
+       <macosx icon="icons/Eclipse.icns"/>
+       <win useIco="false">
+          <bmp/>
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/platform.sdk.product eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/platform.sdk.product
+--- eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/platform.sdk.product	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/platform.sdk.product	0000-00-00 00:00:00.000000000 +0000
+@@ -18,7 +18,7 @@
+    <splash
+       location="org.eclipse.platform" />
+    <launcher name="eclipse">
+-      <linux icon="icons/icon.xpm"/>
++      <freebsd icon="icons/icon.xpm"/>
+       <macosx icon="icons/Eclipse.icns"/>
+       <win useIco="false">
+          <bmp/>
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/pom.xml eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/pom.xml
+--- eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/pom.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/pom.xml	0000-00-00 00:00:00.000000000 +0000
+@@ -117,9 +117,11 @@
+           <execution>
+             <id>mirror-build</id>
+             <phase>generate-resources</phase>
++<!-- Ignore eclipse-junit-tests artifacts for FreeBSD build
+             <goals>
+               <goal>mirror</goal>
+             </goals>
++-->
+             <configuration>
+               <source>
+                 <!-- source repositories to mirror from -->
+@@ -402,7 +404,7 @@
+             <configuration>
+               <formats>
+                 <win32>zip</win32>
+-                <linux>tar.gz</linux>
++                <freebsd>tar.gz</freebsd>
+                 <macosx>tar.gz</macosx>
+               </formats>
+             </configuration>
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/rcp.product eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/rcp.product
+--- eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/rcp.product	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/rcp.product	0000-00-00 00:00:00.000000000 +0000
+@@ -16,7 +16,7 @@
+    </launcherArgs>
+ 
+    <launcher name="eclipse">
+-      <linux icon="icons/icon.xpm"/>
++      <freebsd icon="icons/icon.xpm"/>
+       <macosx icon="icons/Eclipse.icns"/>
+       <win useIco="false">
+          <bmp/>
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/rcp.sdk.product eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/rcp.sdk.product
+--- eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/rcp.sdk.product	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/rcp.sdk.product	0000-00-00 00:00:00.000000000 +0000
+@@ -18,7 +18,7 @@
+    <windowImages/>
+ 
+    <launcher name="eclipse">
+-      <linux icon="icons/icon.xpm"/>
++      <freebsd icon="icons/icon.xpm"/>
+       <macosx icon="icons/Eclipse.icns"/>
+       <win useIco="false">
+          <bmp/>
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/sdk.product eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/sdk.product
+--- eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/sdk.product	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/eclipse.platform.repository/sdk.product	0000-00-00 00:00:00.000000000 +0000
+@@ -18,7 +18,7 @@
+    <splash
+       location="org.eclipse.platform" />
+    <launcher name="eclipse">
+-      <linux icon="icons/icon.xpm"/>
++      <freebsd icon="icons/icon.xpm"/>
+       <macosx icon="icons/Eclipse.icns"/>
+       <win useIco="false">
+          <bmp/>
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/equinox/buildConfigs/equinox-launchers/build.xml eclipse.platform.releng.tychoeclipsebuilder/equinox/buildConfigs/equinox-launchers/build.xml
+--- eclipse.platform.releng.tychoeclipsebuilder/equinox/buildConfigs/equinox-launchers/build.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/equinox/buildConfigs/equinox-launchers/build.xml	0000-00-00 00:00:00.000000000 +0000
+@@ -14,9 +14,10 @@
    <target name="equinoxlaunchers">
      <property name="archiveRoot" value="launchers" />
      <buildRepos os="win32" ws="win32" arch="x86_64" archiveName="${archiveRoot}-win32.win32.x86_64.${buildId}.zip" />
 -    <buildRepos os="linux" ws="gtk" arch="x86_64" archiveName="${archiveRoot}-linux.gtk.x86_64.${buildId}.tar.gz" />
 -    <buildRepos os="linux" ws="gtk" arch="ppc64le" archiveName="${archiveRoot}-linux.gtk.ppc64le.${buildId}.tar.gz" />
+-  	<buildRepos os="linux" ws="gtk" arch="aarch64" archiveName="${archiveRoot}-linux.gtk.aarch64.${buildId}.tar.gz" />
 +    <buildRepos os="freebsd" ws="gtk" arch="amd64" archiveName="${archiveRoot}-freebsd.gtk.amd64.${buildId}.tar.gz" />
 +    <buildRepos os="freebsd" ws="gtk" arch="powerpc64" archiveName="${archiveRoot}-freebsd.gtk.powerpc64.${buildId}.tar.gz" />
 +    <buildRepos os="freebsd" ws="gtk" arch="powerpc64le" archiveName="${archiveRoot}-freebsd.gtk.powerpc64le.${buildId}.tar.gz" />
++  	<buildRepos os="freebsd" ws="gtk" arch="aarch64" archiveName="${archiveRoot}-freebsd.gtk.aarch64.${buildId}.tar.gz" />
      <buildRepos os="macosx" ws="cocoa" arch="x86_64" archiveName="${archiveRoot}-macosx.cocoa.x86_64.${buildId}.tar.gz" />
+     <buildRepos os="macosx" ws="cocoa" arch="aarch64" archiveName="${archiveRoot}-macosx.cocoa.aarch64.${buildId}.tar.gz" />
    </target>
- 
---- eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product	2021-03-08 19:05:06.949169000 +0100
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product
+--- eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product	0000-00-00 00:00:00.000000000 +0000
 @@ -18,7 +18,7 @@
     <windowImages/>
  
@@ -100,10 +200,11 @@
 -      <linux icon="icon.xpm"/>
 +      <freebsd icon="icon.xpm"/>
        <macosx icon="rt.icns"/>
-       <win useIco="false">
-          <bmp/>
---- eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/pom.xml.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/pom.xml	2021-03-08 19:05:06.949519000 +0100
+       <win useIco="true">
+          <ico path="rt.ico"/>
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/pom.xml eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/pom.xml
+--- eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/pom.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/pom.xml	0000-00-00 00:00:00.000000000 +0000
 @@ -43,9 +43,9 @@
            <resolver>p2</resolver>
            <environments>
@@ -116,29 +217,7 @@
              </environment>
              <environment>
                <os>win32</os>
-@@ -91,7 +91,7 @@
-             <configuration>
-               <formats>
-                 <win32>zip</win32>
--                <linux>tar.gz</linux>
-+                <freebsd>tar.gz</freebsd>
-                 <macosx>tar.gz</macosx>
-               </formats>
-             </configuration>
---- eclipse.platform.releng.tychoeclipsebuilder/platform/platform.product.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/platform/platform.product	2021-03-08 19:05:06.949844000 +0100
-@@ -18,7 +18,7 @@
-    <splash
-       location="org.eclipse.platform" />
-    <launcher name="eclipse">
--      <linux icon="icons/icon.xpm"/>
-+      <freebsd icon="icons/icon.xpm"/>
-       <macosx icon="icons/Eclipse.icns"/>
-       <win useIco="false">
-          <bmp/>
---- eclipse.platform.releng.tychoeclipsebuilder/platform/pom.xml.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/platform/pom.xml	2021-03-08 19:05:06.950147000 +0100
-@@ -79,7 +79,7 @@
+@@ -97,7 +97,7 @@
              <configuration>
                <formats>
                  <win32>zip</win32>
@@ -147,43 +226,23 @@
                  <macosx>tar.gz</macosx>
                </formats>
              </configuration>
---- eclipse.platform.releng.tychoeclipsebuilder/platform.sdk/platform.sdk.product.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/platform.sdk/platform.sdk.product	2021-03-08 19:05:06.950497000 +0100
-@@ -18,7 +18,7 @@
-    <splash
-       location="org.eclipse.platform" />
-    <launcher name="eclipse">
--      <linux icon="icons/icon.xpm"/>
-+      <freebsd icon="icons/icon.xpm"/>
-       <macosx icon="icons/Eclipse.icns"/>
-       <win useIco="false">
-          <bmp/>
---- eclipse.platform.releng.tychoeclipsebuilder/pom.xml.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/pom.xml	2021-03-08 19:05:06.950798000 +0100
-@@ -36,7 +36,9 @@
-     <module>platform</module>
-     <module>platform.sdk</module>
-     <module>sdk</module>
-+	<!-- disabled
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/pom.xml eclipse.platform.releng.tychoeclipsebuilder/pom.xml
+--- eclipse.platform.releng.tychoeclipsebuilder/pom.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/pom.xml	0000-00-00 00:00:00.000000000 +0000
+@@ -31,7 +31,9 @@
+     <module>rcp.config</module>
+     <module>equinox.starterkit.product</module>
+     <module>equinox-sdk</module>
++<!-- disabled
      <module>eclipse-junit-tests</module>
++-->
      <module>eclipse.platform.repository</module>
-+	  -->
    </modules>
  </project>
---- eclipse.platform.releng.tychoeclipsebuilder/rcp/rcp.product.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/rcp/rcp.product	2021-03-08 19:05:06.951141000 +0100
-@@ -16,7 +16,7 @@
-    </launcherArgs>
- 
-    <launcher name="eclipse">
--      <linux icon="icons/icon.xpm"/>
-+      <freebsd icon="icons/icon.xpm"/>
-       <macosx icon="icons/Eclipse.icns"/>
-       <win useIco="false">
-          <bmp/>
---- eclipse.platform.releng.tychoeclipsebuilder/rcp.config/build.properties.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/rcp.config/build.properties	2021-03-08 19:16:52.873764000 +0100
-@@ -29,11 +29,14 @@
+diff -ru eclipse.platform.releng.tychoeclipsebuilder/rcp.config/build.properties eclipse.platform.releng.tychoeclipsebuilder/rcp.config/build.properties
+--- eclipse.platform.releng.tychoeclipsebuilder/rcp.config/build.properties	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.releng.tychoeclipsebuilder/rcp.config/build.properties	0000-00-00 00:00:00.000000000 +0000
+@@ -32,14 +32,17 @@
  #root.win32.win32.x86=file:executables/win32.win32.x86/eclipsec.exe
  #root.win32.win32.x86_64=file:executables/win32.win32.x86_64/eclipsec.exe
  
@@ -192,46 +251,18 @@
 +root.freebsd.gtk.powerpc64=rootfiles/freebsd.gtk.powerpc64,../../rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/freebsd/powerpc64
 +root.freebsd.gtk.powerpc64.permissions.755=eclipse
  
--root.linux.gtk.x86_64=rootfiles/linux.gtk.x86_64,../../rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/linux/x86_64
--root.linux.gtk.x86_64.permissions.755=eclipse
+-root.linux.gtk.aarch64=rootfiles/linux.gtk.aarch64,../../rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/linux/aarch64
+-root.linux.gtk.aarch64.permissions.755=eclipse
 +root.freebsd.gtk.powerpc64le=rootfiles/freebsd.gtk.powerpc64le,../../rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/freebsd/powerpc64le
 +root.freebsd.gtk.powerpc64le.permissions.755=eclipse
+ 
+-root.linux.gtk.x86_64=rootfiles/linux.gtk.x86_64,../../rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/linux/x86_64
+-root.linux.gtk.x86_64.permissions.755=eclipse
++root.freebsd.gtk.aarch64=rootfiles/freebsd.gtk.aarch64,../../rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/freebsd/aarch64
++root.freebsd.gtk.aarch64.permissions.755=eclipse
 +
-+root.freebsd.gtk.amd64=rootfiles/freebsd.gtk.x86_64,../../rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/freebsd/amd64
++root.freebsd.gtk.amd64=rootfiles/freebsd.gtk.amd64,../../rt.equinox.binaries/org.eclipse.equinox.executable/bin/gtk/freebsd/amd64
 +root.freebsd.gtk.amd64.permissions.755=eclipse
  
  bin.includes = feature.properties
  
---- eclipse.platform.releng.tychoeclipsebuilder/rcp.sdk/rcp.sdk.product.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/rcp.sdk/rcp.sdk.product	2021-03-08 19:05:06.951767000 +0100
-@@ -18,7 +18,7 @@
-    <windowImages/>
- 
-    <launcher name="eclipse">
--      <linux icon="icons/icon.xpm"/>
-+      <freebsd icon="icons/icon.xpm"/>
-       <macosx icon="icons/Eclipse.icns"/>
-       <win useIco="false">
-          <bmp/>
---- eclipse.platform.releng.tychoeclipsebuilder/sdk/pom.xml.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/sdk/pom.xml	2021-03-08 19:05:06.952089000 +0100
-@@ -77,7 +77,7 @@
-             <configuration>
-               <formats>
-                 <win32>zip</win32>
--                <linux>tar.gz</linux>
-+                <freebsd>tar.gz</freebsd>
-                 <macosx>tar.gz</macosx>
-               </formats>
-             </configuration>
---- eclipse.platform.releng.tychoeclipsebuilder/sdk/sdk.product.orig	2020-06-04 12:00:14.000000000 +0200
-+++ eclipse.platform.releng.tychoeclipsebuilder/sdk/sdk.product	2021-03-08 19:05:06.952429000 +0100
-@@ -18,7 +18,7 @@
-    <splash
-       location="org.eclipse.platform" />
-    <launcher name="eclipse">
--      <linux icon="icons/icon.xpm"/>
-+      <freebsd icon="icons/icon.xpm"/>
-       <macosx icon="icons/Eclipse.icns"/>
-       <win useIco="false">
-          <bmp/>
diff --git a/java/eclipse/files/patch-eclipse.platform.resources b/java/eclipse/files/patch-eclipse.platform.resources
index 37330bb44e0a..0cc9c1752db8 100644
--- a/java/eclipse/files/patch-eclipse.platform.resources
+++ b/java/eclipse/files/patch-eclipse.platform.resources
@@ -1,5 +1,6 @@
---- eclipse.platform.resources/bundles/org.eclipse.core.filesystem/natives/unix/freebsd/Makefile.orig	2020-05-14 17:23:06.000000000 +0200
-+++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem/natives/unix/freebsd/Makefile	2021-03-08 20:18:47.266872000 +0100
+diff -ru eclipse.platform.resources/bundles/org.eclipse.core.filesystem/natives/unix/freebsd/Makefile eclipse.platform.resources/bundles/org.eclipse.core.filesystem/natives/unix/freebsd/Makefile
+--- eclipse.platform.resources/bundles/org.eclipse.core.filesystem/natives/unix/freebsd/Makefile	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem/natives/unix/freebsd/Makefile	0000-00-00 00:00:00.000000000 +0000
 @@ -20,7 +20,7 @@
  LIB_NAME_FULL = libunixfile_1_0_0.so
  
@@ -28,8 +29,55 @@
 -install: core
 -	rm -f ../../../../org.eclipse.core.filesystem.linux.x86/os/linux/x86/libunixfile_1_0_0.so
 -	mv libunixfile_1_0_0.so ../../../../org.eclipse.core.filesystem.linux.x86/os/linux/x86/
---- eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/.project.orig	2020-05-14 17:23:06.000000000 +0200
-+++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/.project	2021-03-08 20:18:47.267280000 +0100
+diff -ru eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/META-INF/MANIFEST.MF eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/META-INF/MANIFEST.MF
+--- eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/META-INF/MANIFEST.MF	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/META-INF/MANIFEST.MF	0000-00-00 00:00:00.000000000 +0000
+@@ -1,9 +1,9 @@
+ Manifest-Version: 1.0
+ Bundle-ManifestVersion: 2
+ Bundle-Name: %fragmentName
+-Bundle-SymbolicName: org.eclipse.core.filesystem.linux.aarch64;singleton:=true
++Bundle-SymbolicName: org.eclipse.core.filesystem.freebsd.aarch64;singleton:=true
+ Bundle-Version: 1.4.100.qualifier
+ Bundle-Vendor: %providerName
+ Fragment-Host: org.eclipse.core.filesystem;bundle-version="[1.1.0,2.0.0)"
+ Bundle-Localization: fragment
+-Eclipse-PlatformFilter: (& (osgi.os=linux) (osgi.arch=aarch64))
++Eclipse-PlatformFilter: (& (osgi.os=freebsd) (osgi.arch=aarch64))
+diff -ru eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/fragment.properties eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/fragment.properties
+--- eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/fragment.properties	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/fragment.properties	0000-00-00 00:00:00.000000000 +0000
+@@ -11,5 +11,5 @@
+ # Contributors:
+ #     IBM Corporation - initial API and implementation
+ ###############################################################################
+-fragmentName = Core File System for Linux Aarch64 bit
++fragmentName = Core File System for FreeBSD Aarch64 bit
+ providerName = Eclipse.org
+diff -ru eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/pom.xml eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/pom.xml
+--- eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/pom.xml	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.aarch64/pom.xml	0000-00-00 00:00:00.000000000 +0000
+@@ -18,7 +18,7 @@
+     <relativePath>../../</relativePath>
+   </parent>
+   <groupId>org.eclipse.core</groupId>
+-  <artifactId>org.eclipse.core.filesystem.linux.aarch64</artifactId>
++  <artifactId>org.eclipse.core.filesystem.freebsd.aarch64</artifactId>
+   <version>1.4.100-SNAPSHOT</version>
+   <packaging>eclipse-plugin</packaging>
+ 
+@@ -37,7 +37,7 @@
+           <resolver>p2</resolver>
+           <environments>
+             <environment>
+-              <os>linux</os>
++              <os>freebsd</os>
+               <ws>gtk</ws>
+               <arch>aarch64</arch>
+             </environment>
+diff -ru eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/.project eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/.project
+--- eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/.project	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/.project	0000-00-00 00:00:00.000000000 +0000
 @@ -1,6 +1,6 @@
  <?xml version="1.0" encoding="UTF-8"?>
  <projectDescription>
@@ -38,8 +86,9 @@
  	<comment></comment>
  	<projects>
  	</projects>
---- eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/META-INF/MANIFEST.MF.orig	2020-05-14 17:23:06.000000000 +0200
-+++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/META-INF/MANIFEST.MF	2021-03-08 20:18:47.267678000 +0100
+diff -ru eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/META-INF/MANIFEST.MF eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/META-INF/MANIFEST.MF
+--- eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/META-INF/MANIFEST.MF	0000-00-00 00:00:00.000000000 +0000
++++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/META-INF/MANIFEST.MF	0000-00-00 00:00:00.000000000 +0000
 @@ -1,9 +1,9 @@
  Manifest-Version: 1.0
  Bundle-ManifestVersion: 2
@@ -52,8 +101,19 @@
  Bundle-Localization: fragment
 -Eclipse-PlatformFilter: (& (osgi.os=linux) (osgi.arch=x86_64))
 +Eclipse-PlatformFilter: (& (osgi.os=freebsd) (osgi.arch=amd64))
---- eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/pom.xml.orig	2020-05-14 17:23:06.000000000 +0200
-+++ eclipse.platform.resources/bundles/org.eclipse.core.filesystem.freebsd.amd64/pom.xml	2021-03-08 20:18:47.268150000 +0100
*** 2581 LINES SKIPPED ***