# HG changeset patch # User Gilles Duboscq # Date 1392302358 -3600 # Node ID 69928d77bc0a76b6d4e93a496f275792957b5e1b # Parent 1ea1566100bf00c02d9a546516499e57b68b5677 mx jmh: avoid mx crash if JMH_BENCHMARKS is not defined at all and skip suites that do not contain the correct jar diff -r 1ea1566100bf -r 69928d77bc0a mx/mx_graal.py --- a/mx/mx_graal.py Thu Feb 13 14:43:07 2014 +0100 +++ b/mx/mx_graal.py Thu Feb 13 15:39:18 2014 +0100 @@ -1272,12 +1272,12 @@ vmArgs, benchmarks = _extract_VM_args(args) jmhPath = mx.get_env('JMH_BENCHMARKS', None) - if not exists(jmhPath): + if not jmhPath or not exists(jmhPath): mx.abort("$JMH_BENCHMARKS not properly definied") def _blackhole(x): mx.logv(x[:-1]) - + mx.log("Building benchmarks...") mx.run(['mvn', 'package'], cwd = jmhPath, out = _blackhole) matchedSuites = set() @@ -1289,6 +1289,10 @@ mx.logv('JMH: ignored ' + absoluteMicro + " because it doesn't start with 'micros-'") continue + microJar = os.path.join(absoluteMicro, "target", "microbenchmarks.jar") + if not exists(microJar): + mx.logv('JMH: ignored ' + absoluteMicro + " because it doesn't contain the expected jar file ('" + microJar + "')") + continue if benchmarks: def _addBenchmark(x): if x.startswith("Benchmark:"): @@ -1300,7 +1304,8 @@ if match: matchedSuites.add(micros) - mx.run_java(['-jar', os.path.join(absoluteMicro, "target", "microbenchmarks.jar"), "-l"], cwd = jmhPath, out = _addBenchmark) + + mx.run_java(['-jar', microJar, "-l"], cwd = jmhPath, out = _addBenchmark) else: matchedSuites.add(micros)