# HG changeset patch # User Gilles Duboscq # Date 1442332906 -7200 # Node ID ba4ef98ae535807ba8cd9eb8270f8d94ea5dada6 # Parent 9665bbd976c81d40e147a9ac14ce333b9b44db3e Add mx_jvmci API to prepend ClasspathDependencies to the bootclasspath of the jvmci JDK diff -r 9665bbd976c8 -r ba4ef98ae535 mx.jvmci/mx_jvmci.py --- a/mx.jvmci/mx_jvmci.py Mon Sep 14 09:43:01 2015 -0700 +++ b/mx.jvmci/mx_jvmci.py Tue Sep 15 18:01:46 2015 +0200 @@ -1736,6 +1736,12 @@ _jvmci_bootstrap_jdk = mx.get_jdk(_versionCheck, versionDescription=versionDesc, tag='default') return _jvmci_bootstrap_jdk +_jvmci_bootclasspath_prepends = [] + +def add_bootclasspath_prepend(dep): + assert isinstance(dep, mx.ClasspathDependency) + _jvmci_bootclasspath_prepends.append(dep) + class JVMCIJDKConfig(mx.JDKConfig): def __init__(self, vmbuild): # Ignore the deployable distributions here - they are only deployed during building. @@ -1768,6 +1774,8 @@ mx.abort('defining jvmci.option property is incompatible with defining one or more -G: options: ' + existingJvmciOptionsProperty) args = ['-Djvmci.options=' + ' '.join(jvmciArgs)] + nonJvmciArgs + args = ['-Xbootclasspath/p:' + dep.classpath_repr() for dep in _jvmci_bootclasspath_prepends] + args + if '-version' in args: ignoredArgs = args[args.index('-version') + 1:] if len(ignoredArgs) > 0: