diff --git a/.circleci/config.yml b/.circleci/config.yml index 1e3348542..b302f6a87 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -9,6 +9,26 @@ jobs: - run: command: /usr/sbin/softwareupdate --install-rosetta --agree-to-license name: Installing Rosetta 2 + - run: + command: |- + # install jdk + curl -Lf \ + https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_x64_mac_hotspot_21.0.5_11.tar.gz -o /tmp/jdk.tar.gz + + mkdir $HOME/jdk \ + && cd $HOME/jdk \ + && cat /tmp/jdk.tar.gz | tar --strip-components=1 -xzC . + + export JAVA_ROOT="/Library/Java/JavaVirtualMachines/jdk-21.jdk" + export JAVA_HOME="$JAVA_ROOT/Contents/Home" + export PATH="$JAVA_HOME/bin:$PATH" + mv $HOME/jdk $JAVA_ROOT + /usr/libexec/java_home -V + java -version + mkdir -p $HOME/.gradle + echo "org.gradle.java.home=$JAVA_HOME" >> $HOME/.gradle/gradle.properties + name: Set up environment + shell: '#!/bin/bash -exo pipefail' - run: command: |- export PATH=~/staticdeps/bin:$PATH @@ -105,6 +125,26 @@ jobs: pkl-cli-macOS-aarch64-release: steps: - checkout + - run: + command: |- + # install jdk + curl -Lf \ + https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_aarch64_mac_hotspot_21.0.5_11.tar.gz -o /tmp/jdk.tar.gz + + mkdir $HOME/jdk \ + && cd $HOME/jdk \ + && cat /tmp/jdk.tar.gz | tar --strip-components=1 -xzC . + + export JAVA_ROOT="/Library/Java/JavaVirtualMachines/jdk-21.jdk" + export JAVA_HOME="$JAVA_ROOT/Contents/Home" + export PATH="$JAVA_HOME/bin:$PATH" + mv $HOME/jdk $JAVA_ROOT + /usr/libexec/java_home -V + java -version + mkdir -p $HOME/.gradle + echo "org.gradle.java.home=$JAVA_HOME" >> $HOME/.gradle/gradle.properties + name: Set up environment + shell: '#!/bin/bash -exo pipefail' - run: command: |- export PATH=~/staticdeps/bin:$PATH @@ -298,6 +338,26 @@ jobs: - run: command: /usr/sbin/softwareupdate --install-rosetta --agree-to-license name: Installing Rosetta 2 + - run: + command: |- + # install jdk + curl -Lf \ + https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_x64_mac_hotspot_21.0.5_11.tar.gz -o /tmp/jdk.tar.gz + + mkdir $HOME/jdk \ + && cd $HOME/jdk \ + && cat /tmp/jdk.tar.gz | tar --strip-components=1 -xzC . + + export JAVA_ROOT="/Library/Java/JavaVirtualMachines/jdk-21.jdk" + export JAVA_HOME="$JAVA_ROOT/Contents/Home" + export PATH="$JAVA_HOME/bin:$PATH" + mv $HOME/jdk $JAVA_ROOT + /usr/libexec/java_home -V + java -version + mkdir -p $HOME/.gradle + echo "org.gradle.java.home=$JAVA_HOME" >> $HOME/.gradle/gradle.properties + name: Set up environment + shell: '#!/bin/bash -exo pipefail' - run: command: |- export PATH=~/staticdeps/bin:$PATH @@ -394,6 +454,26 @@ jobs: pkl-cli-macOS-aarch64-snapshot: steps: - checkout + - run: + command: |- + # install jdk + curl -Lf \ + https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_aarch64_mac_hotspot_21.0.5_11.tar.gz -o /tmp/jdk.tar.gz + + mkdir $HOME/jdk \ + && cd $HOME/jdk \ + && cat /tmp/jdk.tar.gz | tar --strip-components=1 -xzC . + + export JAVA_ROOT="/Library/Java/JavaVirtualMachines/jdk-21.jdk" + export JAVA_HOME="$JAVA_ROOT/Contents/Home" + export PATH="$JAVA_HOME/bin:$PATH" + mv $HOME/jdk $JAVA_ROOT + /usr/libexec/java_home -V + java -version + mkdir -p $HOME/.gradle + echo "org.gradle.java.home=$JAVA_HOME" >> $HOME/.gradle/gradle.properties + name: Set up environment + shell: '#!/bin/bash -exo pipefail' - run: command: |- export PATH=~/staticdeps/bin:$PATH diff --git a/.circleci/jobs/BuildNativeJob.pkl b/.circleci/jobs/BuildNativeJob.pkl index b630587fb..a0eb72f4b 100644 --- a/.circleci/jobs/BuildNativeJob.pkl +++ b/.circleci/jobs/BuildNativeJob.pkl @@ -87,6 +87,34 @@ local setupLinuxEnvironment: Config.RunStep = }.join("\n\n") } +local setupMacEnvironment: Config.RunStep = + let (muslVersion = "1.2.2") + let (zlibVersion = "1.2.13") + new { + name = "Set up environment" + shell = "#!/bin/bash -exo pipefail" + command = new Listing { + #""" + # install jdk + curl -Lf \ + https://github.com/adoptium/temurin\#(module.majorJdkVersion)-binaries/releases/download/\#(module.jdkGitHubReleaseName)/OpenJDK\#(module.majorJdkVersion)U-jdk_\#(if (arch == "amd64") "x64" else "aarch64")_mac_hotspot_\#(module.jdkVersionAlt).tar.gz -o /tmp/jdk.tar.gz + + mkdir $HOME/jdk \ + && cd $HOME/jdk \ + && cat /tmp/jdk.tar.gz | tar --strip-components=1 -xzC . + + export JAVA_ROOT="/Library/Java/JavaVirtualMachines/jdk-\#(module.majorJdkVersion).jdk" + export JAVA_HOME="$JAVA_ROOT/Contents/Home" + export PATH="$JAVA_HOME/bin:$PATH" + mv $HOME/jdk $JAVA_ROOT + /usr/libexec/java_home -V + java -version + mkdir -p $HOME/.gradle + echo "org.gradle.java.home=$JAVA_HOME" >> $HOME/.gradle/gradle.properties + """# + }.join("\n\n") + } + steps { when (os == "linux") { new Config.RestoreCacheStep { @@ -102,13 +130,16 @@ steps { } } } - when (os == "macOS" && arch == "amd64") { - new Config.RunStep { - name = "Installing Rosetta 2" - command = """ - /usr/sbin/softwareupdate --install-rosetta --agree-to-license - """ + when (os == "macOS") { + when (arch == "amd64") { + new Config.RunStep { + name = "Installing Rosetta 2" + command = """ + /usr/sbin/softwareupdate --install-rosetta --agree-to-license + """ + } } + setupMacEnvironment } new Config.RunStep { name = "gradle buildNative" diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 95f819994..927551371 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -15,7 +15,7 @@ graalVmJdkVersion = "21.0.5" graalVmSha256-macos-x64 = "2d9b09e28bc1bb6ff219bf62eacc4626c7740b4f1829ede9ea4450f33e9c0826" graalVmSha256-macos-aarch64 = "cb68cb2c796f42f37a56fcd1385d8b86cca12e0b46c5618a5ed3ec7dd2260f6f" graalVmSha256-linux-x64 = "c1960d4f9d278458bde1cd15115ac2f0b3240cb427d51cfeceb79dab91a7f5c9" -graalVmSha256-linux-aarch64 = "771b308852853cf93f7a3fc429741dd17502b8c5fa91930de6af8ded461e2dc3" +graalVmSha256-linux-aarch64 = "3ad68fbb2d13da528dfa0aea9e9345383245ec9c31094dce3905cefba9aac01e" graalVmSha256-windows-x64 = "d5784cbdc87f84b5cbd6c9d09c6f1d4611954f139fcfc795005c58dffd7f6b41" ideaExtPlugin = "1.1.9" javaPoet = "0.+"