<pre style='margin:0'>
Dan Villiom Podlaski Christiansen (danchr) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/7503b16f74a3e9978e587fd6239f17315e0835bd">https://github.com/macports/macports-ports/commit/7503b16f74a3e9978e587fd6239f17315e0835bd</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 7503b16f74a3e9978e587fd6239f17315e0835bd
</span>Author: Dan Villiom Podlaski Christiansen <danchr@macports.org>
AuthorDate: Mon Jun 17 16:41:43 2024 +0200
<span style='display:block; white-space:pre;color:#404040;'> openjdk{17,21}-jetbrains: add port
</span>---
java/openjdk17-jetbrains/Portfile | 91 +++++++++++++++++++++++++++++++++++++++
java/openjdk21-jetbrains/Portfile | 91 +++++++++++++++++++++++++++++++++++++++
2 files changed, 182 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk17-jetbrains/Portfile b/java/openjdk17-jetbrains/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b8f5dfe6edf
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk17-jetbrains/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,91 @@
</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;'>+PortGroup github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup JetBrains JetBrainsRuntime 17.0.11-b1325.1 jbr-release-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name openjdk17-jetbrains
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories java devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {danchr @danchr} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms {darwin}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This port uses prebuilt binaries; 'NoMirror' makes sure MacPorts doesn't mirror/distribute these third-party binaries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license GPL-2 NoMirror
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This port uses prebuilt binaries for a particular architecture; they are not universal binaries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+universal_variant no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/JetBrains/JetBrainsRuntime/releases
</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;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description JetBrains Runtime on OpenJDK 17
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description JetBrains Runtime is a fork of OpenJDK available for \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Windows, Mac OS X, and Linux. It supports enhanced \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ class redefinition (DCEVM), features optional JCEF, a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ framework for embedding Chromium-based browsers, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ includes a number of improvements in font rendering, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ keyboards support, windowing/focus subsystems, HiDPI, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ accessibility, and performance, provides better \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ desktop integration and bugfixes not yet present in \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OpenJDK.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites https://cache-redirector.jetbrains.com/intellij-jbr
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_bzip2 no
</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;'>+ set jbr_arch x64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 07f38b875058bbae5a19da17c2be10157c04c935 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 11fae12a36531a7e03e93c86c666a8f44acab63de38759a37980ecdfaeae3958 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 72484839
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set jbr_arch aarch64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 1b088454f5f98a6633480061eaa6bb4720bf97a8 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 aac2f33eadb017f2dce58af394d654aa6e4dd3ea377f981aac6304e79e99a9a0 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 71439114
</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;'>+distname jbr-[lindex [split ${version} -] 0]-osx-${jbr_arch}-[lindex [split ${version} -] 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+extract.rename yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_configure no
</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;'>+variant BundledApp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description { Advertise the JVM capability "BundledApp". This is required by some java-based app bundles to recognize and use the JVM.} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant JNI \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description { Advertise the JVM capability "JNI". This is required by some java-based app bundles to recognize and use the JVM.} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach var { BundledApp JNI } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset ${var}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -E "s|^(\[\[:space:\]\]*<string>)CommandLine(</string>)|\\1${var}\\2\\\n\\1CommandLine\\2|" ${worksrcpath}/Contents/Info.plist
</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;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.run yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.cmd Contents/Home/bin/java
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.target
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.args -version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# macOS Java tools expect to find Java virtual machines under /Library/Java/JavaVirtualMachines, which is not under ${prefix}.
</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;background:#e0ffe0;'>+set target /Library/Java/JavaVirtualMachines/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set destroot_target ${destroot}${target}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</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_target}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy ${worksrcpath}/Contents ${destroot_target}
</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;'>+livecheck.type regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url ${github.homepage}/releases.atom
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex <title>jb\([lindex [split ${version} .] 0]\.\[^<\]*\)</title>
</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;'>+notes "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+If you have more than one JDK installed you can make ${name} the default\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+by adding the following line to your shell profile:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ export JAVA_HOME=${target}/Contents/Home
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk21-jetbrains/Portfile b/java/openjdk21-jetbrains/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..5dc9ea8e9a5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk21-jetbrains/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,91 @@
</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;'>+PortGroup github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup JetBrains JetBrainsRuntime 21.0.3-b517.1 jbr-release-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name openjdk21-jetbrains
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories java devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {danchr @danchr} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms {darwin}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This port uses prebuilt binaries; 'NoMirror' makes sure MacPorts doesn't mirror/distribute these third-party binaries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license GPL-2 NoMirror
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This port uses prebuilt binaries for a particular architecture; they are not universal binaries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+universal_variant no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/JetBrains/JetBrainsRuntime/releases
</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;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description JetBrains Runtime on OpenJDK 21
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description JetBrains Runtime is a fork of OpenJDK available for \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Windows, Mac OS X, and Linux. It supports enhanced \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ class redefinition (DCEVM), features optional JCEF, a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ framework for embedding Chromium-based browsers, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ includes a number of improvements in font rendering, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ keyboards support, windowing/focus subsystems, HiDPI, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ accessibility, and performance, provides better \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ desktop integration and bugfixes not yet present in \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OpenJDK.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites https://cache-redirector.jetbrains.com/intellij-jbr
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_bzip2 no
</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;'>+ set jbr_arch x64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 93c7675ee367629dfb3c039118e8196b1fec1e8e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 89409bad19a3a548eb23c1b48526850fb30c1e975b5c7588200801fbbc78a8aa \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 78650092
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set jbr_arch aarch64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 0485fb3f4d03379e6069c1c0929a7c5adead2f08 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 3e24b5a1cbfab9d69b3f28018e68dbf67d2f05062d78f3df64e54bfaafa52b5b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 77440212
</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;'>+distname jbr-[lindex [split ${version} -] 0]-osx-${jbr_arch}-[lindex [split ${version} -] 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+extract.rename yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_configure no
</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;'>+variant BundledApp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description { Advertise the JVM capability "BundledApp". This is required by some java-based app bundles to recognize and use the JVM.} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant JNI \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description { Advertise the JVM capability "JNI". This is required by some java-based app bundles to recognize and use the JVM.} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach var { BundledApp JNI } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset ${var}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -E "s|^(\[\[:space:\]\]*<string>)CommandLine(</string>)|\\1${var}\\2\\\n\\1CommandLine\\2|" ${worksrcpath}/Contents/Info.plist
</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;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.run yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.cmd Contents/Home/bin/java
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.target
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.args -version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# macOS Java tools expect to find Java virtual machines under /Library/Java/JavaVirtualMachines, which is not under ${prefix}.
</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;background:#e0ffe0;'>+set target /Library/Java/JavaVirtualMachines/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set destroot_target ${destroot}${target}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</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_target}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy ${worksrcpath}/Contents ${destroot_target}
</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;'>+livecheck.type regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url ${github.homepage}/releases.atom
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex <title>jb\([lindex [split ${version} .] 0]\.\[^<\]*\)</title>
</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;'>+notes "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+If you have more than one JDK installed you can make ${name} the default\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+by adding the following line to your shell profile:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ export JAVA_HOME=${target}/Contents/Home
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+"
</span></pre><pre style='margin:0'>
</pre>