Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Apr 2026 20:18:19 +0000
From:      Rene Ladan <rene@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: cf689b5bfea2 - main - java/openjdk22: Remove expired port
Message-ID:  <69dbfe0b.440ef.18eb05c0@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by rene:

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

commit cf689b5bfea2f476ddff46bf6c5f7556922f53ce
Author:     Rene Ladan <rene@FreeBSD.org>
AuthorDate: 2026-04-12 20:15:28 +0000
Commit:     Rene Ladan <rene@FreeBSD.org>
CommitDate: 2026-04-12 20:18:07 +0000

    java/openjdk22: Remove expired port
    
    2026-04-12 java/openjdk22: No longer supported by upstream
---
 MOVED                                              |   1 +
 java/Makefile                                      |   1 -
 java/openjdk22/Makefile                            | 191 -------------------
 java/openjdk22/distinfo                            |  13 --
 java/openjdk22/files/patch-configure               |  14 --
 .../files/patch-make_autoconf_flags-cflags.m4      |  13 --
 java/openjdk22/files/patch-make_autoconf_help.m4   |  11 --
 .../files/patch-make_autoconf_libraries.m4         |  15 --
 ...ake_modules_java.desktop_lib_Awt2dLibraries.gmk |  11 --
 .../files/patch-src_hotspot_os_bsd_os__bsd.cpp     |  11 --
 ...op_share_native_libfontmanager_freetypeScaler.c | 209 ---------------------
 ...native_libmanagement__ext_OperatingSystemImpl.c |  89 ---------
 java/openjdk22/pkg-descr                           |   1 -
 java/openjdk22/pkg-message                         |  16 --
 14 files changed, 1 insertion(+), 595 deletions(-)

diff --git a/MOVED b/MOVED
index 604cd0ad2480..cf6b8a470519 100644
--- a/MOVED
+++ b/MOVED
@@ -5234,3 +5234,4 @@ net-mgmt/argus3-clients|net-mgmt/argus-clients|2026-04-06|Update to latest versi
 textproc/py-asciinema|textproc/asciinema|2026-04-06|No longer based on python, use textproc/asciinema instead
 multimedia/jellyfin-media-player|multimedia/jellyfin-desktop|2026-04-08|Project has been renamed
 databases/movine||2026-04-11|Remove: abandoned upstream
+java/openjdk22||2026-04-12|Has expired: No longer supported by upstream
diff --git a/java/Makefile b/java/Makefile
index a4a2e0fd6188..be255edd110d 100644
--- a/java/Makefile
+++ b/java/Makefile
@@ -84,7 +84,6 @@
     SUBDIR += openjdk17-jre
     SUBDIR += openjdk21
     SUBDIR += openjdk21-jre
-    SUBDIR += openjdk22
     SUBDIR += openjdk23
     SUBDIR += openjdk24
     SUBDIR += openjdk25
diff --git a/java/openjdk22/Makefile b/java/openjdk22/Makefile
deleted file mode 100644
index ec094df130f4..000000000000
--- a/java/openjdk22/Makefile
+++ /dev/null
@@ -1,191 +0,0 @@
-PORTNAME=	openjdk
-DISTVERSIONPREFIX=	jdk-
-DISTVERSION=	${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_PATCH_VERSION}+${JDK_BUILD_NUMBER}-${BSD_JDK_VERSION}
-PORTREVISION=	3
-CATEGORIES=	java devel
-PKGNAMESUFFIX?=	${JDK_MAJOR_VERSION}
-MASTER_SITES=	LOCAL/openjdk:boot
-DISTFILES=	${BOOTSTRAPJDKFILE}:boot
-
-MAINTAINER=	java@FreeBSD.org
-COMMENT?=	Java Development Kit ${JDK_MAJOR_VERSION}
-WWW=		https://openjdk.java.net/projects/jdk/22/
-
-LICENSE=	GPLv2
-
-DEPRECATED=	No longer supported by upstream
-EXPIRATION_DATE=	2026-04-12
-
-ONLY_FOR_ARCHS=	aarch64 amd64 i386 powerpc64 powerpc64le
-
-BUILD_DEPENDS=	zip:archivers/zip \
-		autoconf>0:devel/autoconf \
-		${LOCALBASE}/include/cups/cups.h:print/cups \
-		bash:shells/bash \
-		gsed:textproc/gsed
-LIB_DEPENDS=	libasound.so:audio/alsa-lib \
-		libfontconfig.so:x11-fonts/fontconfig \
-		libfreetype.so:print/freetype2 \
-		libgif.so:graphics/giflib \
-		libharfbuzz.so:print/harfbuzz \
-		liblcms2.so:graphics/lcms2 \
-		libpng.so:graphics/png
-RUN_DEPENDS=	javavm:java/javavmwrapper \
-		xorg-fonts-truetype>0:x11-fonts/xorg-fonts-truetype
-
-USES=		compiler:features cpe gmake iconv jpeg pkgconfig xorg
-USE_XORG=	x11 xext xi xrandr xrender xt xtst
-
-CPE_VENDOR=	oracle
-
-USE_GITHUB=	yes
-GH_ACCOUNT=	battleblow
-GH_PROJECT=	jdk22u
-
-NO_CCACHE=	yes
-
-# Suppress passing -j to do-build target via Mk/bsd.port.mk
-# In the JDK build the number of parallel jobs is passed in via configure --with-num-cores=N
-_MAKE_JOBS=	#
-MAKE_ENV=	LANG="C" \
-		LC_ALL="C" \
-		CLASSPATH="" \
-		JAVA_HOME="" \
-		LD_LIBRARY_PATH="" \
-		CC=${CC} \
-		CXX=${CXX} \
-		CPP=${CPP} \
-		LOG=cmdlines \
-		MAKEFLAGS=""
-
-JDK_ARCH=	${ARCH:S/amd64/x86_64/:S/i386/x86/:S/powerpc64/ppc64/}
-BOOTSTRAPJDKFILE=	openjdk22-22.0.2+9.1_2.${JDK_ARCH}.tar.xz
-JDK_OSARCH=	bsd-${JDK_ARCH}
-JDK_BUILDDIR=	${WRKSRC}/build/${JDK_OSARCH}-${JDK_BUILD_JVM}-${JDK_BUILD_TYPE}
-.if defined(BUILD_JRE)
-JDK_IMAGEDIR=	${JDK_BUILDDIR}/images/jre
-.else
-JDK_IMAGEDIR=	${JDK_BUILDDIR}/images/jdk
-.endif
-INSTALLDIR=	${PREFIX}/${PKGBASE}
-BOOTSTRAPJDKDIR=	${WRKDIR}/boot-jdk
-
-NOPRECIOUSMAKEVARS=	yes
-
-JDK_MAJOR_VERSION=	22
-JDK_MINOR_VERSION=	0
-JDK_PATCH_VERSION=	2
-JDK_BUILD_NUMBER=	9
-BSD_JDK_VERSION=	1
-
-JDK_BUG_URL=	https://bugs.freebsd.org/bugzilla/enter_bug.cgi?product=Ports%20%26%20Packages&component=Individual%20Port(s)&short_desc=java/${PORTNAME}${JDK_MAJOR_VERSION}%3A%20
-
-GNU_CONFIGURE=	yes
-CONFIGURE_ENV=	CC=${CC} \
-		CXX=${CXX} \
-		CPP=${CPP} \
-		ac_cv_path_SED=${LOCALBASE}/bin/gsed
-CONFIGURE_ARGS=	--with-boot-jdk=${BOOTSTRAPJDKDIR} \
-		--disable-ccache \
-		--disable-javac-server \
-		--with-alsa=${LOCALBASE} \
-		--with-cups=${LOCALBASE} \
-		--with-fontconfig=${LOCALBASE} \
-		--with-freetype=system \
-		--with-freetype-include=${LOCALBASE}/include/freetype2 \
-		--with-freetype-lib=${LOCALBASE}/lib \
-		--with-libjpeg=system \
-		--with-giflib=system \
-		--with-giflib-include=${LOCALBASE}/include \
-		--with-giflib-lib=${LOCALBASE}/lib \
-		--with-harfbuzz=system \
-		--with-libpng=system \
-		--with-num-cores=${MAKE_JOBS_NUMBER} \
-		--with-zlib=system \
-		--with-lcms=system \
-		--x-includes=${LOCALBASE}/include \
-		--x-libraries=${LOCALBASE}/lib \
-		--with-version-string=${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_PATCH_VERSION}+${JDK_BUILD_NUMBER}-${BSD_JDK_VERSION} \
-		--with-native-debug-symbols=none \
-		--with-debug-level=release \
-		--with-vendor-name="OpenJDK BSD Porting Team" \
-		--with-vendor-url="https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/" \
-		--with-vendor-bug-url="${JDK_BUG_URL}" \
-		--with-vendor-vm-bug-url="${JDK_BUG_URL}"
-
-JAVAVMS_COMMENT=	OpenJDK${JDK_MAJOR_VERSION}
-
-.if defined(BUILD_JRE)
-ALL_TARGET=		legacy-images
-.else
-ALL_TARGET=		images
-.endif
-JDK_BUILD_TYPE=		release
-
-.include <bsd.port.pre.mk>
-
-JDK_BUILD_JVM=	server
-
-MAKE_ENV+=		--with-toolchain-type=${COMPILER_TYPE}
-CONFIGURE_ARGS+=	--with-toolchain-type=${COMPILER_TYPE}
-CONFIGURE_ARGS+=	--disable-warnings-as-errors
-
-.if ${COMPILER_TYPE} == gcc
-USE_GCC=	yes
-CONFIGURE_ARGS+=	--with-extra-ldflags="-Wl,-rpath=${LOCALBASE}/lib/gcc${GCC_DEFAULT} -L${LOCALBASE}/lib/gcc${GCC_DEFAULT}" \
-			--with-extra-cflags="-Wl,-rpath=${LOCALBASE}/lib/gcc${GCC_DEFAULT}" \
-			--with-extra-cxxflags="-Wl,-rpath=${LOCALBASE}/lib/gcc${GCC_DEFAULT}"
-.else
-MAKE_ENV+=	USE_CLANG=true
-EXTRA_CFLAGS+=		-Wno-unused-but-set-parameter
-EXTRA_CFLAGS+=		-Wno-bitwise-instead-of-logical
-EXTRA_CFLAGS+=		-Wno-error=deprecated-non-prototype
-CONFIGURE_ARGS+=	--with-extra-cflags="${EXTRA_CFLAGS}"
-CONFIGURE_ARGS+=	--with-extra-cxxflags="${EXTRA_CFLAGS}"
-.endif
-
-.if ${ARCH} == aarch64
-CONFIGURE_ARGS+=	--with-boot-jdk-jvmargs=-XX:-UseCompressedClassPointers --disable-dtrace
-MAKE_ENV+=		JAVA_TOOL_OPTIONS="-XX:-UseCompressedClassPointers"
-.endif
-
-.if empty(ICONV_LIB)
-ICONV_CFLAGS=	-DLIBICONV_PLUG
-.else
-ICONV_CFLAGS=	-I${LOCALBASE}/include
-ICONV_LDFLAGS=	-L${LOCALBASE}/lib
-ICONV_LIBS=	${ICONV_LIB}
-.endif
-
-post-patch:
-	@${RM} ${WRKSRC}/src/hotspot/os_cpu/bsd_ppc/thread_bsd_ppc.cpp
-	@${MV} ${WRKSRC}/src/hotspot/os_cpu/bsd_ppc/thread_bsd_ppc.hpp \
-		${WRKSRC}/src/hotspot/os_cpu/bsd_ppc/javaThread_bsd_ppc.hpp
-
-	@${FIND} ${WRKSRC} -name '*.orig' -delete
-	@${CHMOD} 755 ${WRKSRC}/configure
-	@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' \
-		${WRKSRC}/configure \
-		${WRKSRC}/src/hotspot/os/bsd/os_bsd.cpp
-	@${REINPLACE_CMD} -e 's|%%ICONV_CFLAGS%%|${ICONV_CFLAGS}|' \
-		-e 's|%%ICONV_LDFLAGS%%|${ICONV_LDFLAGS}|' \
-		-e 's|%%ICONV_LIBS%%|${ICONV_LIBS}|' \
-		${WRKSRC}/make/autoconf/libraries.m4
-
-post-build:
-.if defined(OPENJDK_SYMLINK_CACERTS)
-	@${RM} ${JDK_IMAGEDIR}/lib/security/cacerts
-	@${LN} -sf ${OPENJDK_SYMLINK_CACERTS} ${JDK_IMAGEDIR}/lib/security/cacerts
-.endif
-
-do-install:
-	@${MKDIR} ${STAGEDIR}${INSTALLDIR}
-	@cd ${JDK_IMAGEDIR} && ${COPYTREE_SHARE} . ${STAGEDIR}${INSTALLDIR}
-	@cd ${STAGEDIR}${INSTALLDIR} && \
-		${FIND} bin -type f -exec ${CHMOD} ${BINMODE} {} \;
-	@${CHMOD} ${BINMODE} ${STAGEDIR}${INSTALLDIR}/lib/jspawnhelper
-	@${ECHO} "@javavm ${INSTALLDIR}/bin/java" >> ${TMPPLIST}
-	@${FIND} ${STAGEDIR}${INSTALLDIR} -not -type d | ${SORT} | \
-		${SED} -e 's|^${STAGEDIR}${PREFIX}/||' >> ${TMPPLIST}
-
-.include <bsd.port.post.mk>
diff --git a/java/openjdk22/distinfo b/java/openjdk22/distinfo
deleted file mode 100644
index e8332114080f..000000000000
--- a/java/openjdk22/distinfo
+++ /dev/null
@@ -1,13 +0,0 @@
-TIMESTAMP = 1722138875
-SHA256 (openjdk22-22.0.2+9.1_2.aarch64.tar.xz) = 887281b7b4fe8f29d3dae1f537e91f52ceda8003aa1c7f36368885c43ae96515
-SIZE (openjdk22-22.0.2+9.1_2.aarch64.tar.xz) = 169326232
-SHA256 (openjdk22-22.0.2+9.1_2.ppc64.tar.xz) = 23873f8e3a82b94c974831a293768ce0c30c3a2ddd366c2287b72cec8975f920
-SIZE (openjdk22-22.0.2+9.1_2.ppc64.tar.xz) = 168129156
-SHA256 (openjdk22-22.0.2+9.1_2.ppc64le.tar.xz) = 5413106ff0906f1cc21d3ca88bf0919b443fc8168364f3e4b803e00757b37777
-SIZE (openjdk22-22.0.2+9.1_2.ppc64le.tar.xz) = 169066748
-SHA256 (openjdk22-22.0.2+9.1_2.x86.tar.xz) = 6c4bd9fd60d21ed0b4c9d13a72391e9a09f0f9654a5ef7cf8443a41562d9e231
-SIZE (openjdk22-22.0.2+9.1_2.x86.tar.xz) = 165259492
-SHA256 (openjdk22-22.0.2+9.1_2.x86_64.tar.xz) = 35df03be023f64176d5f3dc1ff4dfc8b70863f9ae0cd1fd4057b703a837444cf
-SIZE (openjdk22-22.0.2+9.1_2.x86_64.tar.xz) = 171246324
-SHA256 (battleblow-jdk22u-jdk-22.0.2+9-1_GH0.tar.gz) = 5e2731b979cab49d5004cf0aca58c642c94c1808c48278bff6c440945874f24c
-SIZE (battleblow-jdk22u-jdk-22.0.2+9-1_GH0.tar.gz) = 112154344
diff --git a/java/openjdk22/files/patch-configure b/java/openjdk22/files/patch-configure
deleted file mode 100644
index 4bc4479f5e4a..000000000000
--- a/java/openjdk22/files/patch-configure
+++ /dev/null
@@ -1,14 +0,0 @@
---- configure.orig	2019-03-12 12:38:39.648907000 -0700
-+++ configure	2019-03-12 12:39:04.275572000 -0700
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!%%LOCALBASE%%/bin/bash
- #
- # Copyright (c) 2012, 2023, Oracle and/or its affiliates. All rights reserved.
- # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-@@ -32,4 +32,4 @@
- # Delegate to wrapper, forcing wrapper to believe $0 is this script by using -c.
- # This trick is needed to get autoconf to co-operate properly.
- # The ${-:+-$-} construction passes on bash options.
--bash ${-:+-$-} -c ". $this_script_dir/make/autoconf/configure" $this_script_dir/configure CHECKME $this_script_dir "$@"
-+%%LOCALBASE%%/bin/bash ${-:+-$-} -c ". $this_script_dir/make/autoconf/configure" $this_script_dir/configure CHECKME $this_script_dir "$@"
diff --git a/java/openjdk22/files/patch-make_autoconf_flags-cflags.m4 b/java/openjdk22/files/patch-make_autoconf_flags-cflags.m4
deleted file mode 100644
index 5156c18515da..000000000000
--- a/java/openjdk22/files/patch-make_autoconf_flags-cflags.m4
+++ /dev/null
@@ -1,13 +0,0 @@
---- make/autoconf/flags-cflags.m4.orig	2020-01-08 09:12:31 UTC
-+++ make/autoconf/flags-cflags.m4
-@@ -770,6 +770,10 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
-         # for all archs except arm and ppc, prevent gcc to omit frame pointer
-         $1_CFLAGS_CPU_JDK="${$1_CFLAGS_CPU_JDK} -fno-omit-frame-pointer"
-       fi
-+    elif test "x$OPENJDK_TARGET_OS_ENV" = xbsd.freebsd; then
-+        if test "x$FLAGS_CPU" = xppc64; then
-+            $1_CFLAGS_CPU_JVM="${$1_CFLAGS_CPU_JVM} -DABI_ELFv2 -mcpu=powerpc64 -mtune=power5"
-+        fi
-     fi
- 
-   elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then
diff --git a/java/openjdk22/files/patch-make_autoconf_help.m4 b/java/openjdk22/files/patch-make_autoconf_help.m4
deleted file mode 100644
index 6581b3fef247..000000000000
--- a/java/openjdk22/files/patch-make_autoconf_help.m4
+++ /dev/null
@@ -1,11 +0,0 @@
---- make/autoconf/help.m4.orig	2025-05-24 21:54:30 UTC
-+++ make/autoconf/help.m4
-@@ -269,7 +269,7 @@ AC_DEFUN_ONCE([HELP_PRINT_SUMMARY_AND_WARNINGS],
-     fi
-   fi
-   if test "x$CONFIGURE_COMMAND_LINE" != x; then
--    printf "using configure arguments '$CONFIGURE_COMMAND_LINE'.\n"
-+    printf "using configure arguments '%s'.\n" "$CONFIGURE_COMMAND_LINE"
-   else
-     printf "using default settings.\n"
-   fi
diff --git a/java/openjdk22/files/patch-make_autoconf_libraries.m4 b/java/openjdk22/files/patch-make_autoconf_libraries.m4
deleted file mode 100644
index 0911464a6522..000000000000
--- a/java/openjdk22/files/patch-make_autoconf_libraries.m4
+++ /dev/null
@@ -1,15 +0,0 @@
---- make/autoconf/libraries.m4~	2019-08-12 19:10:36.292217000 -0700
-+++ make/autoconf/libraries.m4	2019-08-12 19:18:15.523606000 -0700
-@@ -188,9 +188,9 @@
-       ICONV_LDFLAGS="-L/usr/local/lib"
-       ICONV_LIBS=-liconv
-     elif test "x$OPENJDK_TARGET_OS_ENV" = "xbsd.freebsd"; then
--      ICONV_CFLAGS=-DLIBICONV_PLUG
--      ICONV_LDFLAGS=
--      ICONV_LIBS=
-+      ICONV_CFLAGS=%%ICONV_CFLAGS%%
-+      ICONV_LDFLAGS=%%ICONV_LDFLAGS%%
-+      ICONV_LIBS=%%ICONV_LIBS%%
-     else
-       ICONV_CFLAGS=
-       ICONV_LDFLAGS=
diff --git a/java/openjdk22/files/patch-make_modules_java.desktop_lib_Awt2dLibraries.gmk b/java/openjdk22/files/patch-make_modules_java.desktop_lib_Awt2dLibraries.gmk
deleted file mode 100644
index 65f66318255d..000000000000
--- a/java/openjdk22/files/patch-make_modules_java.desktop_lib_Awt2dLibraries.gmk
+++ /dev/null
@@ -1,11 +0,0 @@
---- make/modules/java.desktop/lib/Awt2dLibraries.gmk.orig	2021-09-18 15:30:22.109237000 -0700
-+++ make/modules/java.desktop/lib/Awt2dLibraries.gmk	2021-09-18 15:31:02.024314000 -0700
-@@ -530,7 +530,7 @@
-     LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
-     LDFLAGS_aix := -Wl$(COMMA)-berok, \
-     LIBS := $(BUILD_LIBFONTMANAGER_FONTLIB), \
--    LIBS_unix := -lawt -ljava -ljvm $(LIBM) $(LIBCXX), \
-+    LIBS_unix := -lfontconfig -lawt -ljava -ljvm $(LIBM) $(LIBCXX), \
-     LIBS_macosx := -lawt_lwawt -framework CoreText -framework CoreFoundation -framework CoreGraphics, \
-     LIBS_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
-         $(WIN_AWT_LIB), \
diff --git a/java/openjdk22/files/patch-src_hotspot_os_bsd_os__bsd.cpp b/java/openjdk22/files/patch-src_hotspot_os_bsd_os__bsd.cpp
deleted file mode 100644
index 402f0f475bc3..000000000000
--- a/java/openjdk22/files/patch-src_hotspot_os_bsd_os__bsd.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/hotspot/os/bsd/os_bsd.cpp.orig	2021-09-29 21:25:10 UTC
-+++ src/hotspot/os/bsd/os_bsd.cpp
-@@ -361,7 +361,7 @@
-     #elif defined(__NetBSD__)
-       #define DEFAULT_LIBPATH "/usr/lib:/usr/pkg/lib"
-     #else
--      #define DEFAULT_LIBPATH "/usr/lib:/usr/local/lib"
-+      #define DEFAULT_LIBPATH "/usr/lib:%%LOCALBASE%%/lib"
-     #endif
-   #else
-     #define DEFAULT_LIBPATH OVERRIDE_LIBPATH
diff --git a/java/openjdk22/files/patch-src_java.desktop_share_native_libfontmanager_freetypeScaler.c b/java/openjdk22/files/patch-src_java.desktop_share_native_libfontmanager_freetypeScaler.c
deleted file mode 100644
index 537ecdc3047c..000000000000
--- a/java/openjdk22/files/patch-src_java.desktop_share_native_libfontmanager_freetypeScaler.c
+++ /dev/null
@@ -1,209 +0,0 @@
---- src/java.desktop/share/native/libfontmanager/freetypeScaler.c.orig	2020-07-08 21:34:01 UTC
-+++ src/java.desktop/share/native/libfontmanager/freetypeScaler.c
-@@ -43,6 +43,7 @@
- #include FT_SYNTHESIS_H
- #include FT_LCD_FILTER_H
- #include FT_MODULE_H
-+#include <fontconfig/fontconfig.h>
- 
- #include "fontscaler.h"
- 
-@@ -87,6 +88,133 @@ typedef struct FTScalerContext {
-     int        ptsz;          /* size in points */
- } FTScalerContext;
- 
-+typedef struct {
-+    FT_Render_Mode ftRenderMode;
-+    int ftLoadFlags;
-+    FT_LcdFilter ftLcdFilter;
-+} RenderingProperties;
-+
-+static FcPattern* matchedPattern(const FcChar8* family, double ptSize) {
-+    FcPattern* pattern = FcPatternCreate();
-+    if (!pattern)
-+        return 0;
-+
-+    FcPatternAddString(pattern, FC_FAMILY, family);
-+    FcPatternAddBool(pattern, FC_SCALABLE, FcTrue);
-+    FcPatternAddDouble(pattern, FC_SIZE, ptSize);
-+
-+    FcConfigSubstitute(0, pattern, FcMatchPattern);
-+    FcDefaultSubstitute(pattern);
-+
-+    FcResult res;
-+    FcPattern *match = FcFontMatch(0, pattern, &res);
-+    FcPatternDestroy(pattern);
-+    return (res == FcResultMatch) ? match : NULL;
-+}
-+
-+static void readFontconfig(const FcChar8* family, double ptSize, jint aaType, RenderingProperties* rp) {
-+    FcPattern *pattern = matchedPattern(family, ptSize);
-+
-+    FT_Render_Mode ftRenderMode = FT_RENDER_MODE_NORMAL;
-+    int ftLoadFlags = FT_LOAD_DEFAULT;
-+    FT_LcdFilter ftLcdFilter = FT_LCD_FILTER_DEFAULT;
-+    FcBool fcAntialias = 0;
-+    char horizontal = 1;
-+
-+    // subpixel order
-+    if (aaType == TEXT_AA_ON)
-+        ftRenderMode = FT_RENDER_MODE_NORMAL;
-+    else if (aaType == TEXT_AA_OFF)
-+        ftRenderMode = FT_RENDER_MODE_MONO;
-+    else {
-+        int fcRGBA = FC_RGBA_UNKNOWN;
-+        if (pattern)
-+            FcPatternGetInteger(pattern, FC_RGBA, 0, &fcRGBA);
-+        switch (fcRGBA) {
-+        case FC_RGBA_NONE:
-+            ftRenderMode = FT_RENDER_MODE_NORMAL;
-+            break;
-+        case FC_RGBA_RGB:
-+        case FC_RGBA_BGR:
-+            ftRenderMode = FT_RENDER_MODE_LCD;
-+            horizontal = 1;
-+            break;
-+        case FC_RGBA_VRGB:
-+        case FC_RGBA_VBGR:
-+            ftRenderMode = FT_RENDER_MODE_LCD_V;
-+            horizontal = 0;
-+            break;
-+        default:
-+            ftRenderMode = FT_RENDER_MODE_NORMAL;
-+            break;
-+        }
-+    }
-+
-+    // loading mode
-+    if (aaType == TEXT_AA_OFF)
-+        ftLoadFlags |= FT_LOAD_TARGET_MONO;
-+    else {
-+        int fcHintStyle = FC_HINT_NONE;
-+        if (pattern)
-+            FcPatternGetInteger(pattern, FC_HINT_STYLE, 0, &fcHintStyle);
-+        switch (fcHintStyle) {
-+        case FC_HINT_NONE:
-+            ftLoadFlags |= FT_LOAD_NO_HINTING;
-+            break;
-+        case FC_HINT_SLIGHT:
-+            ftLoadFlags |= FT_LOAD_TARGET_LIGHT;
-+            break;
-+        case FC_HINT_MEDIUM:
-+            ftLoadFlags |= FT_LOAD_TARGET_NORMAL;
-+            break;
-+        case FC_HINT_FULL:
-+            if (aaType == TEXT_AA_ON)
-+                ftLoadFlags |= FT_LOAD_TARGET_NORMAL;
-+            else
-+                ftLoadFlags |= horizontal ? FT_LOAD_TARGET_LCD : FT_LOAD_TARGET_LCD_V;
-+            break;
-+        default:
-+            ftLoadFlags |= FT_LOAD_TARGET_NORMAL;
-+            break;
-+        }
-+    }
-+
-+    // autohinting
-+    FcBool fcAutohint = 0;
-+    if (pattern && FcPatternGetBool(pattern, FC_AUTOHINT, 0, &fcAutohint) == FcResultMatch)
-+        if (fcAutohint)
-+            ftLoadFlags |= FT_LOAD_FORCE_AUTOHINT;
-+
-+    // LCD filter
-+    int fcLCDFilter = FC_LCD_DEFAULT;
-+    if (pattern)
-+        FcPatternGetInteger(pattern, FC_LCD_FILTER, 0, &fcLCDFilter);
-+    switch (fcLCDFilter) {
-+    case FC_LCD_NONE:
-+        ftLcdFilter = FT_LCD_FILTER_NONE;
-+        break;
-+    case FC_LCD_DEFAULT:
-+        ftLcdFilter = FT_LCD_FILTER_DEFAULT;
-+        break;
-+    case FC_LCD_LIGHT:
-+        ftLcdFilter = FT_LCD_FILTER_LIGHT;
-+        break;
-+    case FC_LCD_LEGACY:
-+        ftLcdFilter = FT_LCD_FILTER_LEGACY;
-+        break;
-+    default:
-+        ftLcdFilter = FT_LCD_FILTER_DEFAULT;
-+        break;
-+    }
-+
-+    if (pattern)
-+        FcPatternDestroy(pattern);
-+
-+    rp->ftRenderMode = ftRenderMode;
-+    rp->ftLoadFlags = ftLoadFlags;
-+    rp->ftLcdFilter = ftLcdFilter;
-+}
-+
- #ifdef DEBUG
- /* These are referenced in the freetype sources if DEBUG macro is defined.
-    To simplify work with debuging version of freetype we define
-@@ -868,29 +996,12 @@ static jlong
-          renderFlags |= FT_LOAD_NO_HINTING;
-      }
- 
--    if (!context->useSbits) {
--        renderFlags |= FT_LOAD_NO_BITMAP;
--    }
-+    RenderingProperties renderingProperties;
-+    readFontconfig((const FcChar8 *) scalerInfo->face->family_name,
-+                   context->ptsz, context->aaType, &renderingProperties);
- 
--    /* NB: in case of non identity transform
--     we might also prefer to disable transform before hinting,
--     and apply it explicitly after hinting is performed.
--     Or we can disable hinting. */
--
--    /* select appropriate hinting mode */
--    if (context->aaType == TEXT_AA_OFF) {
--        target = FT_LOAD_TARGET_MONO;
--    } else if (context->aaType == TEXT_AA_ON) {
--        target = FT_LOAD_TARGET_NORMAL;
--    } else if (context->aaType == TEXT_AA_LCD_HRGB ||
--               context->aaType == TEXT_AA_LCD_HBGR) {
--        target = FT_LOAD_TARGET_LCD;
--    } else {
--        target = FT_LOAD_TARGET_LCD_V;
--    }
--    renderFlags |= target;
--
--    error = FT_Load_Glyph(scalerInfo->face, glyphCode, renderFlags);
-+    FT_Library_SetLcdFilter(scalerInfo->library, renderingProperties.ftLcdFilter);
-+    error = FT_Load_Glyph(scalerInfo->face, glyphCode, renderingProperties.ftLoadFlags);
-     if (error) {
-         //do not destroy scaler yet.
-         //this can be problem of particular context (e.g. with bad transform)
-@@ -915,11 +1026,11 @@ static jlong
-             glyphInfo = getNullGlyphImage();
-             return ptr_to_jlong(glyphInfo);
-         }
--        error = FT_Render_Glyph(ftglyph, FT_LOAD_TARGET_MODE(target));
--        if (error != 0) {
--            return ptr_to_jlong(getNullGlyphImage());
--        }
-     }
-+    error = FT_Render_Glyph(ftglyph, renderingProperties.ftRenderMode);
-+    if (error != 0) {
-+        return ptr_to_jlong(getNullGlyphImage());
-+    }
- 
-     if (renderImage) {
-         width  = (UInt16) ftglyph->bitmap.width;
-@@ -1134,9 +1245,11 @@ static FT_Outline* getFTOutline(JNIEnv* env, jobject f
-         return NULL;
-     }
- 
--    renderFlags = FT_LOAD_NO_HINTING | FT_LOAD_NO_BITMAP;
-+    RenderingProperties renderingProperties;
-+    readFontconfig((const FcChar8 *) scalerInfo->face->family_name,
-+                   context->ptsz, context->aaType, &renderingProperties);
- 
--    error = FT_Load_Glyph(scalerInfo->face, glyphCode, renderFlags);
-+    error = FT_Load_Glyph(scalerInfo->face, glyphCode, renderingProperties.ftLoadFlags);
-     if (error) {
-         return NULL;
-     }
diff --git a/java/openjdk22/files/patch-src_jdk.management_unix_native_libmanagement__ext_OperatingSystemImpl.c b/java/openjdk22/files/patch-src_jdk.management_unix_native_libmanagement__ext_OperatingSystemImpl.c
deleted file mode 100644
index 421548d0f4a5..000000000000
--- a/java/openjdk22/files/patch-src_jdk.management_unix_native_libmanagement__ext_OperatingSystemImpl.c
+++ /dev/null
@@ -1,89 +0,0 @@
---- src/jdk.management/unix/native/libmanagement_ext/OperatingSystemImpl.c.orig	2023-10-01 03:54:04 UTC
-+++ src/jdk.management/unix/native/libmanagement_ext/OperatingSystemImpl.c
-@@ -58,6 +58,7 @@
- #include <unistd.h>
- 
- #ifdef __FreeBSD__
-+#include <sys/user.h>
- #include <vm/vm_param.h>
- #endif
- 
-@@ -177,23 +178,43 @@ Java_com_sun_management_internal_OperatingSystemImpl_g
-     }
-     return t_info.virtual_size;
- #elif defined(__FreeBSD__)
--    FILE *fp;
--    unsigned long end, start;
--    jlong total = 0;
-+    int mib[4];
-+    struct kinfo_vmentry *kve;
-+    long total = 0;
-+    size_t len = 0;
-+    int error;
-+    char *buf, *bp, *eb;
- 
--    if ((fp = fopen("/proc/curproc/map", "r")) == NULL) {
--        throw_internal_error(env, "Unable to open /proc/curproc/map");
-+    mib[0] = CTL_KERN;
-+    mib[1] = KERN_PROC;
-+    mib[2] = KERN_PROC_VMMAP;
-+    mib[3] = getpid();
-+    error = sysctl(mib, 4, NULL, &len, NULL, 0);
-+    if (error) {
-+        throw_internal_error(env, "Cannot sysctl(kern.proc.vvmap)");
-         return -1;
-     }
--
--    for (;;) {
--       // Ignore everything except start and end entries
--       if (fscanf(fp, "0x%lx 0x%lx %*[^\n]\n", &start, &end) != 2 || start > end)
--           break;
--       total += end - start;
-+    len = len * 4 / 3;
-+    buf = malloc(len);
-+    if (buf == NULL) {
-+        throw_internal_error(env, "Fail to allocate memory");
-+        return -1;
-     }
--
--    fclose(fp);
-+    error = sysctl(mib, 4, buf, &len, NULL, 0);
-+    if (error) {
-+        throw_internal_error(env, "Cannot sysctl(kern.proc.vvmap)");
-+        return -1;
-+    }
-+    bp = buf;
-+    eb = buf + len;
-+    while (bp < eb) {
-+        kve = (struct kinfo_vmentry *)(uintptr_t)bp;
-+        if (kve->kve_structsize == 0)
-+            break;
-+        bp += kve->kve_structsize;
-+        total += kve->kve_end - kve->kve_start;
-+    }
-+    free(buf);
-     return total;
- #else /* _ALLBSD_SOURCE */
-     /*
-@@ -403,6 +424,21 @@ Java_com_sun_management_internal_OperatingSystemImpl_g
-     return nfiles;
- #elif defined(__OpenBSD__)
-     return getdtablecount();
-+#elif defined(__FreeBSD__)
-+    int mib[4];
-+    int error;
-+    int nfds;
-+    size_t len;
-+
-+    len = sizeof(nfds);
-+    mib[0] = CTL_KERN;
-+    mib[1] = KERN_PROC;
-+    mib[2] = KERN_PROC_NFDS;
-+    mib[3] = 0;
-+
-+    if (sysctl(mib, 4, &nfds, &len, NULL, 0) == -1)
-+        return -1;
-+    return nfds;
- #else /* solaris/linux */
-     DIR *dirp;
-     struct dirent* dentp;
diff --git a/java/openjdk22/pkg-descr b/java/openjdk22/pkg-descr
deleted file mode 100644
index bbc3e1c1edc7..000000000000
--- a/java/openjdk22/pkg-descr
+++ /dev/null
@@ -1 +0,0 @@
-An open-source implementation of the Java Platform, Standard Edition,
diff --git a/java/openjdk22/pkg-message b/java/openjdk22/pkg-message
deleted file mode 100644
index 811dcb1e3b58..000000000000
--- a/java/openjdk22/pkg-message
+++ /dev/null
@@ -1,16 +0,0 @@
-[
-{ type: install
-  message: <<EOM
-This OpenJDK implementation may require procfs(5) mounted on /proc for some
-applications.
-
-If you have not done it yet, please do the following:
-
-	mount -t procfs proc /proc
-
-To make it permanent, you need the following lines in /etc/fstab:
-
-	proc	/proc		procfs		rw	0	0
-EOM
-}
-]


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69dbfe0b.440ef.18eb05c0>