Skip to content

Commit d6cb55a

Browse files
committed
Escape pipes in MAVEN_OPTS on Windows
1 parent d10869e commit d6cb55a

File tree

1 file changed

+9
-13
lines changed

1 file changed

+9
-13
lines changed

mx.graalpython/mx_graalpython.py

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -943,16 +943,20 @@ def get_maven_cache():
943943
# don't worry about maven.repo.local if not running on gate
944944
return os.path.join(SUITE.get_mx_output_dir(), 'm2_cache_' + buildnr) if buildnr else None
945945

946-
def deploy_local_maven_repo(env=None):
947-
env = {**os.environ.copy(), **(env or {})}
946+
def update_maven_opts(env):
948947
m2_cache = get_maven_cache()
949948
if m2_cache:
950949
mvn_repo_local = f'-Dmaven.repo.local={m2_cache}'
951950
maven_opts = env.get('MAVEN_OPTS')
952951
maven_opts = maven_opts + " " + mvn_repo_local if maven_opts else mvn_repo_local
952+
if mx.is_windows():
953+
maven_opts = maven_opts.replace("|", "^|")
953954
env['MAVEN_OPTS'] = maven_opts
954-
mx.log(f'Added {mvn_repo_local} to MAVEN_OPTS={maven_opts}')
955+
mx.log(f"Added '{mvn_repo_local}' to MAVEN_OPTS={maven_opts}")
956+
return env
955957

958+
def deploy_local_maven_repo(env=None):
959+
env = update_maven_opts({**os.environ.copy(), **(env or {})})
956960
run_mx_args = [
957961
'-p',
958962
os.path.join(mx.suite('truffle').dir, '..', 'vm'),
@@ -989,14 +993,7 @@ def deploy_local_maven_repo(env=None):
989993

990994

991995
def deploy_graalpy_extensions_to_local_maven_repo(env=None):
992-
env = {**os.environ.copy(), **(env or {})}
993-
m2_cache = get_maven_cache()
994-
if m2_cache:
995-
mvn_repo_local = f'-Dmaven.repo.local={m2_cache}'
996-
maven_opts = env.get('MAVEN_OPTS')
997-
maven_opts = maven_opts + " " + mvn_repo_local if maven_opts else mvn_repo_local
998-
env['MAVEN_OPTS'] = maven_opts
999-
mx.log(f'Added {mvn_repo_local} to MAVEN_OPTS={maven_opts}')
996+
env = update_maven_opts({**os.environ.copy(), **(env or {})})
1000997

1001998
gradle_java_home = os.environ.get('GRADLE_JAVA_HOME')
1002999
if not gradle_java_home:
@@ -1015,8 +1012,7 @@ def abortCallback(msg):
10151012

10161013
local_repo_path = os.path.join(SUITE.get_mx_output_dir(), 'public-maven-repo')
10171014
version = GRAAL_VERSION
1018-
# Note: running the maven wrapper causes some issues in the CI around MAVEN_OPTS
1019-
mx.run_maven(['-f', os.path.join(graalpy_extensions_path, 'pom.xml'),
1015+
mx.run([os.path.join(graalpy_extensions_path, mx.cmd_suffix('mvnw')),
10201016
'-Pmxurlrewrite', '-DskipJavainterfacegen', '-DskipTests', '-DdeployAtEnd=true',
10211017
f'-Drevision={version}',
10221018
f'-Dlocal.repo.url=' + pathlib.Path(local_repo_path).as_uri(),

0 commit comments

Comments
 (0)