| Index: tools/clean_output_directory.py
|
| diff --git a/tools/clean_output_directory.py b/tools/clean_output_directory.py
|
| index 485a5c4d295607a223d73080fe91b3f87b586101..4cece01a61743f6f43d0b07676dda5ef307b686a 100755
|
| --- a/tools/clean_output_directory.py
|
| +++ b/tools/clean_output_directory.py
|
| @@ -22,15 +22,29 @@ def BuildOptions():
|
| help='Target architectures (comma-separated).',
|
| metavar='[all,ia32,x64,simarm,arm]',
|
| default=utils.GuessArchitecture())
|
| + result.add_option("--os",
|
| + help='Target OSs (comma-separated).',
|
| + metavar='[all,host,android]',
|
| + default='all')
|
| return result
|
|
|
| +
|
| +def ProcessOsOption(os):
|
| + if os == 'host':
|
| + return HOST_OS
|
| + return os
|
| +
|
| +
|
| def ProcessOptions(options):
|
| if options.arch == 'all':
|
| options.arch = 'ia32,x64'
|
| if options.mode == 'all':
|
| options.mode = 'release,debug'
|
| + if options.os == 'all':
|
| + options.os = 'host,android'
|
| options.mode = options.mode.split(',')
|
| options.arch = options.arch.split(',')
|
| + options.os = options.os.split(',')
|
| for mode in options.mode:
|
| if not mode in ['debug', 'release']:
|
| print "Unknown mode %s" % mode
|
| @@ -39,6 +53,11 @@ def ProcessOptions(options):
|
| if not arch in ['ia32', 'x64', 'simarm', 'arm']:
|
| print "Unknown arch %s" % arch
|
| return False
|
| + options.os = [ProcessOsOption(os) for os in options.os]
|
| + for os in options.os:
|
| + if not os in ['android', 'freebsd', 'linux', 'macos', 'win32']:
|
| + print "Unknown os %s" % os
|
| + return False
|
| return True
|
|
|
| def Main():
|
| @@ -51,14 +70,16 @@ def Main():
|
| # Delete the output for the targets for each requested configuration.
|
| for mode in options.mode:
|
| for arch in options.arch:
|
| - build_root = utils.GetBuildRoot(HOST_OS, mode=mode, arch=arch)
|
| - print "Deleting %s" % (build_root)
|
| - shutil.rmtree(build_root, ignore_errors=True)
|
| - # On windows we have additional object files within the runtime library.
|
| - if HOST_OS == 'win32':
|
| - runtime_root = 'runtime/' + build_root
|
| - print "Deleting %s" % (runtime_root)
|
| - shutil.rmtree(runtime_root, ignore_errors=True)
|
| + for target_os in options.os:
|
| + build_root = utils.GetBuildRoot(
|
| + HOST_OS, mode=mode, arch=arch, target_os=target_os)
|
| + print "Deleting %s" % (build_root)
|
| + shutil.rmtree(build_root, ignore_errors=True)
|
| + # On windows we have additional object files within the runtime library.
|
| + if HOST_OS == 'win32':
|
| + runtime_root = 'runtime/' + build_root
|
| + print "Deleting %s" % (runtime_root)
|
| + shutil.rmtree(runtime_root, ignore_errors=True)
|
| return 0
|
|
|
| if __name__ == '__main__':
|
|
|