From 6202dbb6765ffcb321131d5e97b7c2b5dde465e5 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Mon, 18 Aug 2025 13:34:43 +0200 Subject: [PATCH 1/6] Be consistent with the order in ci/ci_common/common.jsonnet --- ci/ci_common/common.jsonnet | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ci/ci_common/common.jsonnet b/ci/ci_common/common.jsonnet index deab1b038b5d..1a9944718ce0 100644 --- a/ci/ci_common/common.jsonnet +++ b/ci/ci_common/common.jsonnet @@ -138,8 +138,8 @@ common + common.frequencies + { linux_amd64: common.linux_amd64 + graal_common_extras + linux_deps_extras, linux_amd64_ol9: common.linux_amd64_ol9 + graal_common_extras + linux_deps_extras, linux_amd64_ubuntu: common.linux_amd64_ubuntu + graal_common_extras, - linux_aarch64: linux_deps_extras + common.linux_aarch64 + graal_common_extras, - linux_aarch64_ol9: linux_deps_extras + common.linux_aarch64_ol9 + graal_common_extras, + linux_aarch64: common.linux_aarch64 + graal_common_extras + linux_deps_extras, + linux_aarch64_ol9: common.linux_aarch64_ol9 + graal_common_extras + linux_deps_extras, darwin_amd64: common.darwin_amd64 + graal_common_extras, darwin_aarch64: common.darwin_aarch64 + graal_common_extras, windows_amd64: common.windows_amd64 + graal_common_extras, From bd85d305991eb65d827ccbe3ee4436a5f04f3a97 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Mon, 4 Aug 2025 17:03:39 +0200 Subject: [PATCH 2/6] Add `mx maven-deploy-public-repo-dir` --- sdk/mx.sdk/mx_sdk.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sdk/mx.sdk/mx_sdk.py b/sdk/mx.sdk/mx_sdk.py index b7b810dbaa50..6e82ed907bb5 100644 --- a/sdk/mx.sdk/mx_sdk.py +++ b/sdk/mx.sdk/mx_sdk.py @@ -341,6 +341,10 @@ def description(self): def maven_deploy_public_repo_dir(): return os.path.join(_suite.get_mx_output_dir(), 'public-maven-repo') +@mx.command(_suite.name, 'maven-deploy-public-repo-dir') +def print_maven_deploy_public_repo_dir(args): + print(maven_deploy_public_repo_dir()) + @mx.command(_suite.name, 'maven-deploy-public') def maven_deploy_public(args, licenses=None, deploy_snapshots=True): """Helper to simplify deploying all public Maven dependendencies into the mxbuild directory""" From 9b8fa02a165576ace41fd767a3b7e86e7f146868 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Wed, 6 Aug 2025 20:24:07 +0200 Subject: [PATCH 3/6] `mx maven-deploy-public` must not return otherwise mx will consider it a failure and exit with exit code 1 --- sdk/mx.sdk/mx_sdk.py | 1 - 1 file changed, 1 deletion(-) diff --git a/sdk/mx.sdk/mx_sdk.py b/sdk/mx.sdk/mx_sdk.py index 6e82ed907bb5..3c7a68511d89 100644 --- a/sdk/mx.sdk/mx_sdk.py +++ b/sdk/mx.sdk/mx_sdk.py @@ -377,7 +377,6 @@ def maven_deploy_public(args, licenses=None, deploy_snapshots=True): mx.log(f'mx maven-deploy {" ".join(deploy_args)}') mx.maven_deploy(deploy_args) mx.log(f'Deployed Maven artefacts to {path}') - return path @mx.command(_suite.name, 'nativebridge-benchmark') def nativebridge_benchmark(args): From 3ee1fd5e7181b9269e0ec5993d7ae711eb0c7102 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Mon, 18 Aug 2025 12:49:09 +0200 Subject: [PATCH 4/6] [GR-68313] Add deps.maven in ci/common.jsonnet * Needed for many jobs and quite tricky. --- ci/common.jsonnet | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/ci/common.jsonnet b/ci/common.jsonnet index 4272ca2d1516..85db915f3ab5 100644 --- a/ci/common.jsonnet +++ b/ci/common.jsonnet @@ -239,6 +239,19 @@ local common_json = import "../common.json"; } else {}, }, + maven:: { + packages+: (if self.os == "linux" && self.arch == "amd64" then { + maven: '==3.9.10', + } else {}), + # no maven package available on other platforms + downloads+: (if self.os != "linux" || self.arch != "amd64" then { + MAVEN_HOME: {name: 'maven', version: '3.9.10', platformspecific: false}, + } else {}), + setup+: (if self.os != "linux" || self.arch != "amd64" then [ + ['set-export', 'PATH', (if self.os == "windows" then '$MAVEN_HOME\\bin;$PATH' else '$MAVEN_HOME/bin:$PATH')], + ] else []), + }, + sulong:: self.cmake + { packages+: if self.os == "windows" then { msvc_source: "==14.0", @@ -275,12 +288,11 @@ local common_json = import "../common.json"; } else {}, }, - graalpy:: self.gradle + self.cmake + { + graalpy:: self.gradle + self.cmake + self.maven + { packages+: if (self.os == "linux") then { libffi: '==3.2.1', bzip2: '==1.0.6', zlib: '==1.2.11', - maven: "==3.6.3", } else {}, }, From e24767b963cfd85020eb930ba164ef9de8f196c0 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Mon, 18 Aug 2025 13:46:04 +0200 Subject: [PATCH 5/6] Add deps.windows_devkit in ci/common.jsonnet --- ci/common.jsonnet | 9 ++++++++- sulong/ci/ci_common/sulong-common.jsonnet | 5 +---- tools/ci/ci.jsonnet | 5 ++--- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/ci/common.jsonnet b/ci/common.jsonnet index 85db915f3ab5..791b2d14529e 100644 --- a/ci/common.jsonnet +++ b/ci/common.jsonnet @@ -109,7 +109,8 @@ local common_json = import "../common.json"; oraclejdkLatest: self["oraclejdk-latest"], }, - # The devkits versions reflect those used to build the JVMCI JDKs (e.g., see devkit_platform_revisions in /make/conf/jib-profiles.js) + # The devkits versions reflect those used to build the JVMCI JDKs (e.g., see devkit_platform_revisions in /make/conf/jib-profiles.js). + # See deps.windows_devkit to add a devkit on windows conveniently. devkits: { "windows-jdk17": { packages+: { "devkit:VS2022-17.1.0+1": "==0" }}, "windows-jdk19": { packages+: { "devkit:VS2022-17.1.0+1": "==0" }}, @@ -174,6 +175,12 @@ local common_json = import "../common.json"; # These dependencies are not included by default in any platform object + # Not included by default in $.windows_amd64 and $.windows_server_2016_amd64 because it needs jdk_name. + # As a note, Native Image needs this to build. + windows_devkit:: { + packages+: if self.os == "windows" then $.devkits["windows-" + self.jdk_name].packages else {}, + }, + eclipse: { downloads+: { ECLIPSE: { diff --git a/sulong/ci/ci_common/sulong-common.jsonnet b/sulong/ci/ci_common/sulong-common.jsonnet index a0f78af6b51e..e1f2f8da5dae 100644 --- a/sulong/ci/ci_common/sulong-common.jsonnet +++ b/sulong/ci/ci_common/sulong-common.jsonnet @@ -80,10 +80,7 @@ local sulong_deps = common.deps.sulong; linux_aarch64:: linux_aarch64 + sulong_deps, darwin_amd64:: darwin_amd64 + sulong_deps, darwin_aarch64:: darwin_aarch64 + sulong_deps, - windows_amd64:: windows_amd64 + sulong_deps + { - local jdk = if self.jdk_name == "jdk-latest" then "jdkLatest" else self.jdk_name, - packages+: common.devkits["windows-" + jdk].packages - }, + windows_amd64:: windows_amd64 + sulong_deps + common.deps.windows_devkit, sulong_notifications:: { notify_groups:: ["sulong"], diff --git a/tools/ci/ci.jsonnet b/tools/ci/ci.jsonnet index fa3e96448120..0334f96e0a3d 100644 --- a/tools/ci/ci.jsonnet +++ b/tools/ci/ci.jsonnet @@ -2,7 +2,6 @@ local common = import '../../ci/ci_common/common.jsonnet', local utils = import '../../ci/ci_common/common-utils.libsonnet', local top_level_ci = utils.top_level_ci, - local devkits = common.devkits, local tools_common = { setup+: [ @@ -90,8 +89,8 @@ common.linux_aarch64 + common.labsjdkLatest + tools_weekly, common.linux_aarch64 + common.labsjdk21 + tools_weekly, - common.windows_amd64 + common.oraclejdkLatest + tools_weekly + devkits["windows-jdkLatest"], - common.windows_amd64 + common.oraclejdk21 + tools_weekly + devkits["windows-jdk21"], + common.windows_amd64 + common.oraclejdkLatest + tools_weekly + common.deps.windows_devkit, + common.windows_amd64 + common.oraclejdk21 + tools_weekly + common.deps.windows_devkit, common.darwin_amd64 + common.oraclejdkLatest + tools_weekly, common.darwin_amd64 + common.oraclejdk21 + tools_weekly, From 413e7c96ed45182e148ab288d6ec690a1b144762 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Wed, 20 Aug 2025 18:07:47 +0200 Subject: [PATCH 6/6] [GR-68921] Use Maven 3.3.9 on Windows, Maven 3.9.10 does not work on Windows --- ci/common.jsonnet | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ci/common.jsonnet b/ci/common.jsonnet index 791b2d14529e..d544988360ec 100644 --- a/ci/common.jsonnet +++ b/ci/common.jsonnet @@ -247,12 +247,14 @@ local common_json = import "../common.json"; }, maven:: { + local this = self, packages+: (if self.os == "linux" && self.arch == "amd64" then { maven: '==3.9.10', } else {}), # no maven package available on other platforms downloads+: (if self.os != "linux" || self.arch != "amd64" then { - MAVEN_HOME: {name: 'maven', version: '3.9.10', platformspecific: false}, + # GR-68921: 3.9.10 does not work on Windows + MAVEN_HOME: {name: 'maven', version: (if this.os == "windows" then '3.3.9' else '3.9.10'), platformspecific: false}, } else {}), setup+: (if self.os != "linux" || self.arch != "amd64" then [ ['set-export', 'PATH', (if self.os == "windows" then '$MAVEN_HOME\\bin;$PATH' else '$MAVEN_HOME/bin:$PATH')],