<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/7f75b0f9792a79db3db367cb07d546ecec27a5ad">https://github.com/macports/macports-ports/commit/7f75b0f9792a79db3db367cb07d546ecec27a5ad</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 7f75b0f9792 openjdk24-graalvm: new port
</span>7f75b0f9792 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 7f75b0f9792a79db3db367cb07d546ecec27a5ad
</span>Author: Christopher Nielsen <mascguy@github.com>
AuthorDate: Fri May 9 12:39:12 2025 -0400
<span style='display:block; white-space:pre;color:#404040;'> openjdk24-graalvm: new port
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> CC: @breun
</span>---
java/openjdk24-graalvm/Portfile | 94 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 94 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/java/openjdk24-graalvm/Portfile b/java/openjdk24-graalvm/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..812322901a7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/java/openjdk24-graalvm/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,94 @@
</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 openjdk24-graalvm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories java devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {breun.nl:nils @breun} {mascguy @mascguy} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms {darwin any}
</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/graalvm/graalvm-ce-builds/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;'>+version 24.0.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set build 9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set port_ver_major [lindex [split ${version} .] 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description GraalVM Community Edition based on OpenJDK ${port_ver_major}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R,\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ JVM-based languages like Java, Scala, Groovy, Kotlin, Clojure, and LLVM-based languages such as C and C++.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${version}/
</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;'>+ distname graalvm-community-jdk-${version}_macos-x64_bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 b7d1d45d3bb1f05e2eeeea6ebc94419b3255cc37 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 452615d870ac9a6bf0fac09ff859d6c1a78e14d6f2a1937d610e7c6e470359e2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 304963827
</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;'>+ distname graalvm-community-jdk-${version}_macos-aarch64_bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 183b2c921258a5190591c518614b542826171c49 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 0e18661fb350d76c7d4905484b72b90ecda38a0910b3a9a2856573086678cead \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 318629584
</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;'>+worksrcdir graalvm-community-openjdk-${version}+${build}.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://www.graalvm.org
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.type none
</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 Applets \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description { Advertise the JVM capability "Applets".} {}
</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;'>+variant WebStart \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description { Advertise the JVM capability "WebStart".} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach var { Applets BundledApp JNI WebStart } {
</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 jvms /Library/Java/JavaVirtualMachines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set jdk ${jvms}/jdk-${port_ver_major}-oracle-graalvm-community.jdk
</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 -d ${destroot}${prefix}${jdk}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy ${worksrcpath}/Contents ${destroot}${prefix}${jdk}
</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, so let's create a symlink there
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${jvms}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ${prefix}${jdk} ${destroot}${jdk}
</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=${jdk}/Contents/Home
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+"
</span></pre><pre style='margin:0'>
</pre>