From fa5f0aa973398a0669aaae37860a32e8046f607f Mon Sep 17 00:00:00 2001 From: stepan Date: Tue, 5 May 2026 17:13:57 +0200 Subject: [PATCH] Support graalpy-extensions Maven bundle repo --- mx.graalpython/mx_graalpython.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/mx.graalpython/mx_graalpython.py b/mx.graalpython/mx_graalpython.py index ffed9df2d0..f7df19070a 100644 --- a/mx.graalpython/mx_graalpython.py +++ b/mx.graalpython/mx_graalpython.py @@ -1071,6 +1071,18 @@ def abortCallback(msg): mx.run(['git', 'clone', '--depth=1', 'https://github.com/oracle/graalpy-extensions.git', graalpy_extensions_path]) local_repo_path = os.path.join(SUITE.get_mx_output_dir(), 'public-maven-repo') + + # setup symlink .mvn/maven-bundle -> local repo path + maven_dir = os.path.join(graalpy_extensions_path, '.mvn') + bundle_path = os.path.join(maven_dir, 'maven-bundle') + if os.path.lexists(bundle_path): + mx.abort(f"Refusing to override existing '{bundle_path}' when building graalpy-extensions.") + os.makedirs(maven_dir, exist_ok=True) + try: + os.symlink(os.path.abspath(local_repo_path), bundle_path, target_is_directory=True) + except OSError as e: + mx.abort(f"Could not create {bundle_path} -> {local_repo_path}: {e}") + version = GRAAL_VERSION common_args = [ '-DskipJavainterfacegen', @@ -1097,7 +1109,7 @@ def abortCallback(msg): def deploy_graalpy_extensions_to_local_maven_repo_wrapper(*args): deploy_graalpy_extensions_to_local_maven_repo() -def deploy_local_maven_repo_wrapper(*args): +def deploy_local_maven_repo_wrapper(args): p, _, _ = deploy_local_maven_repo() if '--with-extensions' in args: deploy_graalpy_extensions_to_local_maven_repo()