Index: third_party/instrumented_libraries/scripts/unpack_binaries.py |
diff --git a/third_party/instrumented_libraries/scripts/unpack_binaries.py b/third_party/instrumented_libraries/scripts/unpack_binaries.py |
index 2f335bced0e4cd509ec4016cd89135e5237c8ea0..3e1779069dbe8b050237ad27154fffd6fd3f451f 100755 |
--- a/third_party/instrumented_libraries/scripts/unpack_binaries.py |
+++ b/third_party/instrumented_libraries/scripts/unpack_binaries.py |
@@ -3,27 +3,38 @@ |
# Use of this source code is governed by a BSD-style license that can be |
# found in the LICENSE file. |
-"""Unpacks pre-built sanitizer-instrumented third-party libraries. |
-This script should only be run by gn. |
-""" |
+"""Unpacks pre-built sanitizer-instrumented third-party libraries.""" |
import os |
import subprocess |
import shutil |
import sys |
+import download_binaries |
-def main(archive, stamp_file, target_dir): |
+ |
+def get_archive_name(archive_prefix): |
+ return '%s-%s.tgz' % (archive_prefix, download_binaries.get_ubuntu_release()) |
+ |
+ |
+def main(archive_prefix, archive_dir, target_dir, stamp_dir=None): |
shutil.rmtree(target_dir, ignore_errors=True) |
os.mkdir(target_dir) |
subprocess.check_call([ |
'tar', |
'-zxf', |
- archive, |
+ os.path.join(archive_dir, get_archive_name(archive_prefix)), |
'-C', |
target_dir]) |
+ stamp_file = os.path.join(stamp_dir or target_dir, '%s.txt' % archive_prefix) |
open(stamp_file, 'w').close() |
+ |
+ if stamp_dir: |
+ with open(os.path.join(stamp_dir, '%s.d' % archive_prefix), 'w') as f: |
+ f.write('%s: %s' % ( |
+ stamp_file, os.path.join(archive_dir, |
+ get_archive_name(archive_prefix)))) |
return 0 |