Add ICU message format support
[chromium-blink-merge.git] / third_party / instrumented_libraries / scripts / unpack_binaries.py
blob3e1779069dbe8b050237ad27154fffd6fd3f451f
1 #!/usr/bin/env python
2 # Copyright 2015 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
6 """Unpacks pre-built sanitizer-instrumented third-party libraries."""
8 import os
9 import subprocess
10 import shutil
11 import sys
13 import download_binaries
16 def get_archive_name(archive_prefix):
17 return '%s-%s.tgz' % (archive_prefix, download_binaries.get_ubuntu_release())
20 def main(archive_prefix, archive_dir, target_dir, stamp_dir=None):
21 shutil.rmtree(target_dir, ignore_errors=True)
23 os.mkdir(target_dir)
24 subprocess.check_call([
25 'tar',
26 '-zxf',
27 os.path.join(archive_dir, get_archive_name(archive_prefix)),
28 '-C',
29 target_dir])
30 stamp_file = os.path.join(stamp_dir or target_dir, '%s.txt' % archive_prefix)
31 open(stamp_file, 'w').close()
33 if stamp_dir:
34 with open(os.path.join(stamp_dir, '%s.d' % archive_prefix), 'w') as f:
35 f.write('%s: %s' % (
36 stamp_file, os.path.join(archive_dir,
37 get_archive_name(archive_prefix))))
38 return 0
41 if __name__ == '__main__':
42 sys.exit(main(*sys.argv[1:]))