<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/8cee089e43fd06eb8464fcfd8210535e826e3326">https://github.com/macports/macports-ports/commit/8cee089e43fd06eb8464fcfd8210535e826e3326</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 8cee089e43fd06eb8464fcfd8210535e826e3326
</span>Author: usersxx <97012123+usersxx@users.noreply.github.com>
AuthorDate: Sun May 15 15:34:31 2022 +0530
<span style='display:block; white-space:pre;color:#404040;'> openjdkXX: update to new version
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> openjdk11: fix version
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> openjdk13: fix version
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> openjdk15: update to 15.0.7
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> openjdk17: update to 17.0.3
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> openjdk18: update to 18.0.1.1
</span>---
java/openjdk11/Portfile | 23 +++---
java/openjdk13/Portfile | 25 ++++---
java/openjdk15/Portfile | 86 ++++++++++++++--------
java/openjdk17/Portfile | 80 ++++++++++++--------
...OS-hotspot-arm64-bug-exposed-by-latest-cl.patch | 36 ---------
java/openjdk17/files/patch-openjdk17-build1.diff | 11 ---
java/openjdk18-bootstrap/Portfile | 42 +++++++++++
java/openjdk18/Portfile | 84 ++++++++++++---------
8 files changed, 221 insertions(+), 166 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk11/Portfile b/java/openjdk11/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 9e48f133488..c82e7e7a899 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/java/openjdk11/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk11/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,9 +5,9 @@ PortSystem 1.0
</span> name openjdk11
# https://github.com/openjdk/jdk11u/tags
# remove 'jdk-' from the latest tag without '-ga' that has commit that corresponds to the latest tag with '-ga'
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 11.0.15+10
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set ver [string map {+10 {}} ${version}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 11.0.15
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set build 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span> categories java devel
platforms darwin
supported_archs x86_64 arm64
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,18 +18,21 @@ long_description JDK 11 builds of Openjdk, the Open-Source implementation \
</span> of the Java Platform, Standard Edition, and related projects.
homepage https://openjdk.java.net/
master_sites https://git.openjdk.java.net/jdk11u/archive/refs/tags
<span style='display:block; white-space:pre;background:#ffe0e0;'>-distname jdk-11.0.15+10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname jdk-${version}+${build}
</span>
checksums rmd160 4e54be9b3a7ee2a0c7d8c5596f6b95396d30bb25 \
sha256 a125f0f2e34061ea1509c9f24caec51e6e23411552d6b660a6f60c054853dc63 \
size 122892672
<span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib port:freetype
</span> depends_build port:autoconf \
port:gmake \
port:bash \
port:openjdk11-bootstrap
pre-patch {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|libffi.so.?|libffi.?.dylib|g" ${worksrcpath}/make/autoconf/lib-ffi.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|xmacosx|xwindows|g" ${worksrcpath}/make/autoconf/lib-freetype.m4
</span> reinplace "s|assert|vmassert|g" ${worksrcpath}/src/hotspot/share/jfr/periodic/jfrNetworkUtilization.cpp
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -41,13 +44,16 @@ set bug_url "https://trac.macports.org/newticket?port=${name}"
</span> # default configure args
configure.args --with-debug-level=release \
--with-native-debug-symbols=none \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-version-string=${version} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-version-string=${version}+${build} \
</span> --with-target-bits=64 \
--with-sysroot=`xcrun --sdk macosx --show-sdk-path` \
--with-extra-cflags="${configure.cflags}" \
--with-extra-cxxflags="${configure.cxxflags}" \
--with-extra-ldflags="${configure.ldflags}" \
--with-boot-jdk=/Library/Java/JavaVirtualMachines/openjdk11-bootstrap/Contents/Home \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype=system \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype-include=${prefix}/include/freetype2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype-lib=${prefix}/lib \
</span> --disable-warnings-as-errors \
--disable-precompiled-headers \
--with-vendor-name="OpenJDK Porters Group" \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -102,9 +108,6 @@ variant core \
</span> variant zero \
conflicts client core minimal server \
description {JVM with C++ based interpreter only, no compiler} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|libffi.so.?|libffi.?.dylib|g" ${worksrcpath}/make/autoconf/lib-ffi.m4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span> configure.args-append --with-jvm-variants=zero \
--with-libffi=${prefix} \
--enable-libffi-bundling
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -125,14 +128,14 @@ if {![variant_isset client] && ![variant_isset core] && ![variant_isset minimal]
</span>
if {${configure.build_arch} eq "arm64"} {
configure.args-delete --with-target-bits=64
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.post_args --openjdk-target=aarch64-apple-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --openjdk-target=aarch64-apple-darwin
</span> } elseif {${configure.build_arch} eq "x86_64"} {
configure.post_args
}
build.type gnu
build.target images
use_parallel_build no
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set jdkn jdk-${ver}.jdk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set jdkn jdk-${version}.jdk
</span> set bundle_dir build/openjdk11/images/jdk-bundle/${jdkn}/Contents
test.run yes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk13/Portfile b/java/openjdk13/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 1830a95db83..44972d88195 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/java/openjdk13/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk13/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,8 +5,8 @@ PortSystem 1.0
</span> name openjdk13
# https://github.com/openjdk/jdk13u/tags
# remove 'jdk-' from the latest tag without '-ga' that has commit that corresponds to the latest tag with '-ga'
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 13.0.11+4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set ver [string map {+4 {}} ${version}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 13.0.11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set build 4
</span> revision 0
categories java devel
platforms darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,17 +18,23 @@ long_description JDK 13 builds of Openjdk, the Open-Source implementation \
</span> of the Java Platform, Standard Edition, and related projects.
homepage https://openjdk.java.net/
master_sites https://git.openjdk.java.net/jdk13u/archive/refs/tags
<span style='display:block; white-space:pre;background:#ffe0e0;'>-distname jdk-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname jdk-${version}+${build}
</span>
checksums rmd160 a3ed0636becbf434ae79232d75a466bd2a0e9085 \
sha256 acaaa1b86c6905926634e1a85d834aae703fa27b81a62622419e0553786339fc \
size 109265999
<span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib port:freetype
</span> depends_build port:autoconf \
port:gmake \
port:bash \
port:openjdk13-bootstrap
<span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|libffi.so.?|libffi.?.dylib|g" ${worksrcpath}/make/autoconf/lib-ffi.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|xmacosx|xwindows|g" ${worksrcpath}/make/autoconf/lib-freetype.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> set tpath /Library/Java
use_configure yes
configure.cmd ${prefix}/bin/bash configure
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -37,22 +43,22 @@ set bug_url "https://trac.macports.org/newticket?port=${name}"
</span> # default configure args
configure.args --with-debug-level=release \
--with-native-debug-symbols=none \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-version-pre=release \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-jvm-variants=server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-version-string=${version}+${build} \
</span> --with-target-bits=64 \
--with-sysroot=`xcrun --sdk macosx --show-sdk-path` \
--with-extra-cflags="${configure.cflags}" \
--with-extra-cxxflags="${configure.cxxflags}" \
--with-extra-ldflags="${configure.ldflags}" \
--with-boot-jdk=/Library/Java/JavaVirtualMachines/openjdk13-bootstrap/Contents/Home \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype=system \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype-include=${prefix}/include/freetype2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype-lib=${prefix}/lib \
</span> --disable-warnings-as-errors \
--disable-precompiled-headers \
--with-vendor-name="OpenJDK Porters Group" \
--with-vendor-url="${homepage}" \
--with-vendor-bug-url="${bug_url}" \
--with-vendor-vm-bug-url="${bug_url}" \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --without-version-opt \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --without-version-pre \
</span> --with-conf-name=openjdk13
variant server \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -101,9 +107,6 @@ variant core \
</span> variant zero \
conflicts client core minimal server \
description {JVM with C++ based interpreter only, no compiler} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|libffi.so.?|libffi.?.dylib|g" ${worksrcpath}/make/autoconf/lib-ffi.m4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span> configure.args-append --with-jvm-variants=zero \
--with-libffi=${prefix} \
--enable-libffi-bundling
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -125,7 +128,7 @@ if {![variant_isset client] && ![variant_isset core] && ![variant_isset minimal]
</span> build.type gnu
build.target images
use_parallel_build no
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set jdkn jdk-${ver}.jdk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set jdkn jdk-${version}.jdk
</span> set bundle_dir build/openjdk13/images/jdk-bundle/${jdkn}/Contents
test.run yes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk15/Portfile b/java/openjdk15/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 28bd704b56d..29b0632d221 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/java/openjdk15/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk15/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,8 +4,9 @@ PortSystem 1.0
</span>
name openjdk15
# https://github.com/openjdk/jdk15u/tags
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 15.0.6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 15.0.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set build 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span> categories java devel
platforms darwin
supported_archs x86_64
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,92 +16,113 @@ description Openjdk 15
</span> long_description JDK 15 builds of Openjdk, the Open-Source implementation \
of the Java Platform, Standard Edition, and related projects.
homepage https://openjdk.java.net/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-fetch.type git
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-git.url https://github.com/openjdk/jdk15u
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-git.branch jdk-${version}-ga
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites https://git.openjdk.java.net/jdk15u/archive/refs/tags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname jdk-${version}+${build}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 7034ea730935595dbcedfa3f1204adfc04bdffae \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 0f19c68aa6cfbfc566a83ed3a8fdaecd8fdb2eda0501e6bd2c0a081232fb0504 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 102124719
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> patchfiles patch-openjdk15-build1.diff
<span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib port:freetype
</span> depends_build port:autoconf \
port:gmake \
port:bash \
port:openjdk15-bootstrap
<span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|libffi.so.?|libffi.?.dylib|g" ${worksrcpath}/make/autoconf/lib-ffi.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|xmacosx|xwindows|g" ${worksrcpath}/make/autoconf/lib-freetype.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> set tpath /Library/Java
use_configure yes
configure.cmd ${prefix}/bin/bash configure
configure.pre_args --prefix=${tpath}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set extrachflags "-isysroot `xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set extracxxflags "-isysroot `xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set extraldflags "-Wl,-syslibroot,`xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jchflags "-Wno-implicit-function-declaration -Wno-unused-parameter"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jcxxflags "-Wno-implicit-function-declaration -Wno-unused-parameter"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jldflags "-L`xcrun --sdk macosx --show-sdk-path`/usr/lib -L`xcrun --sdk macosx --show-sdk-path`/usr/lib/system"
</span> set bug_url "https://trac.macports.org/newticket?port=${name}"
# default configure args
configure.args --with-debug-level=release \
--with-native-debug-symbols=none \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-version-pre=release \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-jvm-variants=server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-version-string=${version}+${build} \
</span> --with-target-bits=64 \
--with-sysroot=`xcrun --sdk macosx --show-sdk-path` \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-cflags="${configure.cflags} ${extrachflags} ${jchflags}" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-cxxflags="${configure.cxxflags} ${extracxxflags} ${jcxxflags}" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-ldflags="${configure.ldflags} ${extraldflags} ${jldflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-cflags="${configure.cflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-cxxflags="${configure.cxxflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-ldflags="${configure.ldflags}" \
</span> --with-boot-jdk=/Library/Java/JavaVirtualMachines/openjdk15-bootstrap/Contents/Home \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype=system \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype-include=${prefix}/include/freetype2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype-lib=${prefix}/lib \
</span> --disable-warnings-as-errors \
--disable-precompiled-headers \
--with-vendor-name="OpenJDK Porters Group" \
--with-vendor-url="${homepage}" \
--with-vendor-bug-url="${bug_url}" \
--with-vendor-vm-bug-url="${bug_url}" \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --without-version-opt \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --without-version-pre \
</span> --with-conf-name=release
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant server \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client core minimal \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- description {JVM with normal interpreter, and a tiered C1/C2 compiler} {}
</span>
variant release \
conflicts debug optimized \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- description {OpenJDK with no debug information, all optimizations and no asserts} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {OpenJDK with no debug information, all optimizations and no asserts} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
variant optimized \
conflicts debug release \
description {OpenJDK with no debug information, all optimizations, no asserts and HotSpot is 'optimized'} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-debug-level=release --with-debug-level=optimized
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=optimized
</span> }
variant debug \
conflicts optimized release \
description {OpenJDK with debug information, all optimizations and all asserts} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-debug-level=release --with-debug-level=fastdebug
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=fastdebug
</span> configure.args-delete --with-native-debug-symbols=none
}
variant client \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts core minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts core minimal server zero \
</span> description {JVM with normal interpreter, C1 and no C2 compiler} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=client
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=client
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core minimal zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {JVM with normal interpreter, and a tiered C1/C2 compiler} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=server
</span> }
variant minimal \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client core server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core server zero \
</span> description {JVM with reduced form of normal interpreter having C1, no C2 compiler and optional features stripped out} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=minimal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=minimal
</span> }
variant core \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client minimal server zero \
</span> description {JVM with normal interpreter only and no compiler} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=core
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=core
</span> }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+variant zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {JVM with C++ based interpreter only, no compiler} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-libffi=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-libffi-bundling
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libffi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> if {![variant_isset debug] && ![variant_isset optimized] && ![variant_isset release]} {
default_variants-append +release
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {![variant_isset client] && ![variant_isset core] && ![variant_isset minimal] && ![variant_isset server]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- default_variants-append +server
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![variant_isset client] && ![variant_isset core] && ![variant_isset minimal] && ![variant_isset server] && ![variant_isset zero]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.platform} eq "darwin" && ${os.major} < 16} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append +zero
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append +server
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
build.type gnu
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk17/Portfile b/java/openjdk17/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 5d4debcaa00..d3449594f80 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/java/openjdk17/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk17/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,8 +4,9 @@ PortSystem 1.0
</span>
name openjdk17
# https://github.com/openjdk/jdk17u/tags
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 17.0.2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 17.0.3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set build 7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span> categories java devel
platforms darwin
supported_archs x86_64 arm64
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,86 +16,101 @@ description Openjdk 17
</span> long_description JDK 17 builds of Openjdk, the Open-Source implementation \
of the Java Platform, Standard Edition, and related projects.
homepage https://openjdk.java.net/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-fetch.type git
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-git.url https://github.com/openjdk/jdk17u
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-git.branch jdk-${version}-ga
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites https://git.openjdk.java.net/jdk17u/archive/refs/tags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname jdk-${version}+${build}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 a26c6f077066279df9a9b5cb3cd1d4658e0c9584 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 22575340d080a396442658356583d9c7dc0c44cefa52842fbfcf23eef23c39a0 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 104797560
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib port:freetype
</span> depends_build port:autoconf \
port:gmake \
port:bash \
port:openjdk17-bootstrap
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles patch-openjdk17-build1.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 0001-8280476-macOS-hotspot-arm64-bug-exposed-by-latest-cl.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|libffi.so.?|libffi.?.dylib|g" ${worksrcpath}/make/autoconf/lib-ffi.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|xmacosx|xwindows|g" ${worksrcpath}/make/autoconf/lib-freetype.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
set tpath /Library/Java
use_xcode yes
use_configure yes
configure.cmd ${prefix}/bin/bash configure
configure.pre_args --prefix=${tpath}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set extrachflags "-isysroot `xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set extracxxflags "-isysroot `xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set extraldflags "-Wl,-syslibroot,`xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jchflags "-Wno-implicit-function-declaration -Wno-unused-parameter"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jcxxflags "-Wno-implicit-function-declaration -Wno-unused-parameter"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jldflags "-L`xcrun --sdk macosx --show-sdk-path`/usr/lib -L`xcrun --sdk macosx --show-sdk-path`/usr/lib/system"
</span> set bug_url "https://trac.macports.org/newticket?port=${name}"
# default configure args
configure.args --with-debug-level=release \
--with-native-debug-symbols=none \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-version-pre=release \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-jvm-variants=server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-version-string=${version}+${build} \
</span> --with-sysroot=`xcrun --sdk macosx --show-sdk-path` \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-cflags="${configure.cflags} ${extrachflags} ${jchflags}" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-cxxflags="${configure.cxxflags} ${extracxxflags} ${jcxxflags}" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-ldflags="${configure.ldflags} ${extraldflags} ${jldflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-cflags="${configure.cflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-cxxflags="${configure.cxxflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-ldflags="${configure.ldflags}" \
</span> --with-boot-jdk=/Library/Java/JavaVirtualMachines/openjdk17-bootstrap/Contents/Home \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype=system \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype-include=${prefix}/include/freetype2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-freetype-lib=${prefix}/lib \
</span> --disable-precompiled-headers \
--disable-warnings-as-errors \
--with-vendor-name="OpenJDK Porters Group" \
--with-vendor-url="${homepage}" \
--with-vendor-bug-url="${bug_url}" \
--with-vendor-vm-bug-url="${bug_url}" \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --without-version-opt \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --without-version-pre \
</span> --with-conf-name=release
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant server \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client core minimal \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- description {JVM with normal interpreter, and a tiered C1/C2 compiler} {}
</span>
variant release \
conflicts debug optimized \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- description {OpenJDK with no debug information, all optimizations and no asserts} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {OpenJDK with no debug information, all optimizations and no asserts} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
variant optimized \
conflicts debug release \
description {OpenJDK with no debug information, all optimizations, no asserts and HotSpot is 'optimized'} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-debug-level=release --with-debug-level=optimized
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=optimized
</span> }
variant debug \
conflicts optimized release \
description {OpenJDK with debug information, all optimizations and all asserts} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-debug-level=release --with-debug-level=fastdebug
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=fastdebug
</span> configure.args-delete --with-native-debug-symbols=none
}
variant client \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts core minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts core minimal server zero \
</span> description {JVM with normal interpreter, C1 and no C2 compiler} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=client
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=client
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core minimal zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {JVM with normal interpreter, and a tiered C1/C2 compiler} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=server
</span> }
variant minimal \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client core server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core server zero \
</span> description {JVM with reduced form of normal interpreter having C1, no C2 compiler and optional features stripped out} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=minimal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=minimal
</span> }
variant core \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client minimal server zero \
</span> description {JVM with normal interpreter only and no compiler} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=core
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=core
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {JVM with C++ based interpreter only, no compiler} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-libffi=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-libffi-bundling
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libffi
</span> }
if {![variant_isset debug] && ![variant_isset optimized] && ![variant_isset release]} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk17/files/0001-8280476-macOS-hotspot-arm64-bug-exposed-by-latest-cl.patch b/java/openjdk17/files/0001-8280476-macOS-hotspot-arm64-bug-exposed-by-latest-cl.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 93d194ae7d4..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/java/openjdk17/files/0001-8280476-macOS-hotspot-arm64-bug-exposed-by-latest-cl.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,36 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From f5d6fddc6df8c5c5456a2544b131833d5227292b Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: "Daniel D. Daugherty" <dcubed@openjdk.org>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Fri, 4 Feb 2022 17:37:01 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] 8280476: [macOS] : hotspot arm64 bug exposed by latest clang
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Reviewed-by: kbarrett, adinn
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/hotspot/cpu/aarch64/immediate_aarch64.cpp | 11 ++++++++++-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 1 file changed, 10 insertions(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git src/hotspot/cpu/aarch64/immediate_aarch64.cpp src/hotspot/cpu/aarch64/immediate_aarch64.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 3e38b7cca04..916494605bc 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/hotspot/cpu/aarch64/immediate_aarch64.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/hotspot/cpu/aarch64/immediate_aarch64.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -129,8 +129,17 @@ static inline uint32_t uimm(uint32_t val, int hi, int lo)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- uint64_t replicate(uint64_t bits, int nbits, int count)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ assert(count > 0, "must be");
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ assert(nbits > 0, "must be");
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ assert(count * nbits <= 64, "must be");
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ // Special case nbits == 64 since the shift below with that nbits value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ // would result in undefined behavior.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if (nbits == 64) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return bits;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- uint64_t result = 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- // nbits may be 64 in which case we want mask to be -1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- uint64_t mask = ones(nbits);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- for (int i = 0; i < count ; i++) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- result <<= nbits;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-2.35.1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk17/files/patch-openjdk17-build1.diff b/java/openjdk17/files/patch-openjdk17-build1.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 522052cc0d4..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/java/openjdk17/files/patch-openjdk17-build1.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,11 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- make/autoconf/toolchain.m4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ make/autoconf/toolchain.m4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -229,7 +229,7 @@ AC_DEFUN_ONCE([TOOLCHAIN_DETERMINE_TOOLCHAIN_TYPE],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if test "x$OPENJDK_TARGET_OS" = xmacosx; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if test -n "$XCODEBUILD"; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # On Mac OS X, default toolchain to clang after Xcode 5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- XCODE_VERSION_OUTPUT=`"$XCODEBUILD" -version 2>&1 | $HEAD -n 1`
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ XCODE_VERSION_OUTPUT=`"$XCODEBUILD" -version | $HEAD -n 1`
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- $ECHO "$XCODE_VERSION_OUTPUT" | $GREP "Xcode " > /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if test $? -ne 0; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- AC_MSG_ERROR([Failed to determine Xcode version.])
</span>\ No newline at end of file
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk18-bootstrap/Portfile b/java/openjdk18-bootstrap/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..2dda0e82955
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk18-bootstrap/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,42 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name openjdk17-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 18
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set build 36
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories java devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+supported_archs x86_64 arm64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license GPL-2+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {outlook.com:usersword123 @usersxx} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description OpenJDK 18 Boot JDK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description OpenJDK 18 Boot JDK to bootstrap Openjdk17 port
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://openjdk.java.net/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites https://download.java.net/java/GA/jdk${version}/43f95e8614114aeaa8e8a5fcf20a682d/${build}/GPL/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${configure.build_arch} eq "x86_64"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 7cfc98587bfc1d209cf58e973cf42b1af361d27b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 527b61b4265caf45cdcbacfcf8fbcd0b4b280bede1eff32a5b252d855ff0534b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 185375922
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ distname openjdk-18_macos-x64_bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} elseif {${configure.build_arch} eq "arm64"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 8d36e7f1f202ac7e998ad837b41d98e2d4ed9a60 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 6880a5b512d1c1df5013a04b2cef4e1261e881d7f246ea5483ffeb728b30b2f1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 183221810
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ distname openjdk-18_macos-aarch64_bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_xcode no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_configure no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+worksrcdir jdk-18.jdk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set path /Library/Java/JavaVirtualMachines/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 755 -d ${destroot}${path}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy ${worksrcpath}/Contents ${destroot}${path}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.violate_mtree yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk18/Portfile b/java/openjdk18/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index bb0c4f937d9..7e76b1cb00c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/java/openjdk18/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk18/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,8 +4,9 @@ PortSystem 1.0
</span>
name openjdk18
# https://github.com/openjdk/jdk18u/tags
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 18
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 18.0.1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set build 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span> categories java devel
platforms darwin
supported_archs x86_64 arm64
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,89 +16,104 @@ description Openjdk 18
</span> long_description JDK 18 builds of Openjdk, the Open-Source implementation \
of the Java Platform, Standard Edition, and related projects.
homepage https://openjdk.java.net/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-fetch.type git
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-git.url https://github.com/openjdk/jdk18u
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-git.branch jdk-${version}-ga
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build port:autoconf \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites https://git.openjdk.java.net/jdk18u/archive/refs/tags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname jdk-${version}+${build}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 16ac99fc5cfa368ec27613dfd90d56650026921f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 57ed6b990b24b1e8b50099a265841add596d2c82e73c7c82bb530a8f53a47732 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 105413077
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib port:freetype
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build port:openjdk18-bootstrap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:autoconf \
</span> port:gmake
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib port:openjdk17-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|libffi.so.?|libffi.?.dylib|g" ${worksrcpath}/make/autoconf/lib-ffi.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|xmacosx|xwindows|g" ${worksrcpath}/make/autoconf/lib-freetype.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
set tpath /Library/Java
use_xcode yes
use_configure yes
configure.cmd sh configure
configure.pre_args --prefix=${tpath}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set extrachflags "-isysroot `xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set extracxxflags "-isysroot `xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set extraldflags "-Wl,-syslibroot,`xcrun --sdk macosx --show-sdk-path` -arch ${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jchflags "-Wno-implicit-function-declaration -Wno-unused-parameter"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jcxxflags "-Wno-implicit-function-declaration -Wno-unused-parameter"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set jldflags "-L`xcrun --sdk macosx --show-sdk-path`/usr/lib -L`xcrun --sdk macosx --show-sdk-path`/usr/lib/system"
</span> set bug_url "https://trac.macports.org/newticket?port=${name}"
# default configure args
configure.args --with-debug-level=release \
--with-native-debug-symbols=none \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-version-pre=release \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-jvm-variants=server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-version-string=${version}+${build} \
</span> --with-sysroot=`xcrun --sdk macosx --show-sdk-path` \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-cflags="${configure.cflags} ${extrachflags} ${jchflags}" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-cxxflags="${configure.cxxflags} ${extracxxflags} ${jcxxflags}" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-extra-ldflags="${configure.ldflags} ${extraldflags} ${jldflags}" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --with-boot-jdk=/Library/Java/JavaVirtualMachines/openjdk17-bootstrap/Contents/Home \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-cflags="${configure.cflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-cxxflags="${configure.cxxflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-extra-ldflags="${configure.ldflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-boot-jdk=/Library/Java/JavaVirtualMachines/openjdk18-bootstrap/Contents/Home \
</span> --disable-warnings-as-errors \
--disable-precompiled-headers \
--with-vendor-name="OpenJDK Porters Group" \
--with-vendor-url="${homepage}" \
--with-vendor-bug-url="${bug_url}" \
--with-vendor-vm-bug-url="${bug_url}" \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --without-version-opt \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --without-version-pre \
</span> --with-conf-name=release
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant server \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client core minimal \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- description {JVM with normal interpreter, and a tiered C1/C2 compiler} {}
</span>
variant release \
conflicts debug optimized \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- description {OpenJDK with no debug information, all optimizations and no asserts} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {OpenJDK with no debug information, all optimizations and no asserts} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
variant optimized \
conflicts debug release \
description {OpenJDK with no debug information, all optimizations, no asserts and HotSpot is 'optimized'} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-debug-level=release --with-debug-level=optimized
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=optimized
</span> }
variant debug \
conflicts optimized release \
description {OpenJDK with debug information, all optimizations and all asserts} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-debug-level=release --with-debug-level=fastdebug
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-debug-level=fastdebug
</span> configure.args-delete --with-native-debug-symbols=none
}
variant client \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts core minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts core minimal server zero \
</span> description {JVM with normal interpreter, C1 and no C2 compiler} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=client
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=client
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core minimal zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {JVM with normal interpreter, and a tiered C1/C2 compiler} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=server
</span> }
variant minimal \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client core server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core server zero \
</span> description {JVM with reduced form of normal interpreter having C1, no C2 compiler and optional features stripped out} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=minimal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=minimal
</span> }
variant core \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- conflicts client minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client minimal server zero \
</span> description {JVM with normal interpreter only and no compiler} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-replace --with-jvm-variants=server --with-jvm-variants=core
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=core
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts client core minimal server \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description {JVM with C++ based interpreter only, no compiler} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-jvm-variants=zero \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-libffi=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-libffi-bundling
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libffi
</span> }
if {![variant_isset debug] && ![variant_isset optimized] && ![variant_isset release]} {
default_variants-append +release
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {![variant_isset client] && ![variant_isset core] && ![variant_isset minimal] && ![variant_isset server]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![variant_isset client] && ![variant_isset core] && ![variant_isset minimal] && ![variant_isset server] && ![variant_isset zero]} {
</span> default_variants-append +server
}
</pre><pre style='margin:0'>
</pre>