# HG changeset patch # User Doug Simon # Date 1329428332 -3600 # Node ID ade18666f2be60b4d61eb98dd25f8ad8602e92c8 # Parent 7e5d8d1c74a105c9e0b9bf8aca92bc0e48665c51 Added --omit-native-build to gate command so that native cleaning and building can be omitted for changesets that made no changes to the C/C++ code. diff -r 7e5d8d1c74a1 -r ade18666f2be mx/commands.py --- a/mx/commands.py Tue Feb 14 12:29:11 2012 +0100 +++ b/mx/commands.py Thu Feb 16 22:38:52 2012 +0100 @@ -580,12 +580,17 @@ mx.abort(codeOrMessage) return self + parser = ArgumentParser(prog='mx gate'); + parser.add_argument('--omit-native-build', action='store_false', dest='buildNative', help='omit cleaning and building native code') + + args = parser.parse_args(args) + tasks = [] total = Task('Gate') try: t = Task('Clean') - clean([]) + clean([] if args.buildNative else ['--no-native']) tasks.append(t.stop()) t = Task('Checkstyle') @@ -608,17 +613,19 @@ tasks.append(t.stop()) # Prevent Graal modifications from breaking the standard builds - t = Task('BuildHotSpotVarieties') - buildvms(['--vms', 'client,server', '--builds', 'fastdebug,product']) - tasks.append(t.stop()) + if args.buildNative: + t = Task('BuildHotSpotVarieties') + buildvms(['--vms', 'client,server', '--builds', 'fastdebug,product']) + tasks.append(t.stop()) for vmbuild in ['fastdebug', 'product']: global _vmbuild _vmbuild = vmbuild - t = Task('BuildHotSpotGraal:' + vmbuild) - buildvms(['--vms', 'graal', '--builds', vmbuild]) - tasks.append(t.stop()) + if args.buildNative: + t = Task('BuildHotSpotGraal:' + vmbuild) + buildvms(['--vms', 'graal', '--builds', vmbuild]) + tasks.append(t.stop()) t = Task('BootstrapWithSystemAssertions:' + vmbuild) vm(['-esa', '-version']) @@ -759,7 +766,7 @@ _vmbuild = 'product' commands = { 'build': [build, '[-options]'], - 'buildvms': [buildvms, ''], + 'buildvms': [buildvms, '[-options]'], 'clean': [clean, ''], 'copyrightcheck': [copyrightcheck, ''], 'hsdis': [hsdis, '[att]'], @@ -767,7 +774,7 @@ 'scaladacapo': [scaladacapo, '[[n] benchmark] [VM options|@Scala DaCapo options]'], 'specjvm2008': [specjvm2008, '[VM options|@specjvm2008 options]'], 'example': [example, '[-v] example names...'], - 'gate' : [gate, ''], + 'gate' : [gate, '[-options]'], 'gv' : [gv, ''], 'bench' : [bench, '[-resultfile file] [all(default)|dacapo|specjvm2008|bootstrap]'], 'unittest' : [unittest, '[filters...]'],