summaryrefslogtreecommitdiffstats
path: root/chromium/build/android/gyp/util/build_utils.py
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-09-18 14:34:04 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-10-04 11:15:27 +0000
commite6430e577f105ad8813c92e75c54660c4985026e (patch)
tree88115e5d1fb471fea807111924dcccbeadbf9e4f /chromium/build/android/gyp/util/build_utils.py
parent53d399fe6415a96ea6986ec0d402a9c07da72453 (diff)
BASELINE: Update Chromium to 61.0.3163.99
Change-Id: I8452f34574d88ca2b27af9bd56fc9ff3f16b1367 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/build/android/gyp/util/build_utils.py')
-rw-r--r--chromium/build/android/gyp/util/build_utils.py22
1 files changed, 17 insertions, 5 deletions
diff --git a/chromium/build/android/gyp/util/build_utils.py b/chromium/build/android/gyp/util/build_utils.py
index 7b2f48dd59b..95f81cd8a40 100644
--- a/chromium/build/android/gyp/util/build_utils.py
+++ b/chromium/build/android/gyp/util/build_utils.py
@@ -21,6 +21,7 @@ import zipfile
import md5_check # pylint: disable=relative-import
sys.path.append(os.path.join(os.path.dirname(__file__), os.pardir, os.pardir))
+from pylib import constants
from pylib.constants import host_paths
sys.path.append(os.path.join(os.path.dirname(__file__),
@@ -81,6 +82,14 @@ def FindInDirectories(directories, filename_filter):
return all_files
+def ReadBuildVars(build_vars_path=None):
+ if not build_vars_path:
+ build_vars_path = os.path.join(constants.GetOutDirectory(),
+ "build_vars.txt")
+ with open(build_vars_path) as f:
+ return dict(l.rstrip().split('=', 1) for l in f)
+
+
def ParseGnList(gn_string):
"""Converts a command-line parameter into a list.
@@ -262,7 +271,7 @@ def AddToZipHermetic(zip_file, zip_path, src_path=None, data=None,
zip_path: Destination path within the zip file.
src_path: Path of the source file. Mutually exclusive with |data|.
data: File data as a string.
- compress: Whether to enable compression. Default is take from ZipFile
+ compress: Whether to enable compression. Default is taken from ZipFile
constructor.
"""
assert (src_path is None) != (data is None), (
@@ -294,13 +303,15 @@ def AddToZipHermetic(zip_file, zip_path, src_path=None, data=None,
zip_file.writestr(zipinfo, data, compress_type)
-def DoZip(inputs, output, base_dir=None):
+def DoZip(inputs, output, base_dir=None, compress_fn=None):
"""Creates a zip file from a list of files.
Args:
inputs: A list of paths to zip, or a list of (zip_path, fs_path) tuples.
output: Destination .zip file.
base_dir: Prefix to strip from inputs.
+ compress_fn: Applied to each input to determine whether or not to compress.
+ By default, items will be |zipfile.ZIP_STORED|.
"""
input_tuples = []
for tup in inputs:
@@ -312,16 +323,17 @@ def DoZip(inputs, output, base_dir=None):
input_tuples.sort(key=lambda tup: tup[0])
with zipfile.ZipFile(output, 'w') as outfile:
for zip_path, fs_path in input_tuples:
- AddToZipHermetic(outfile, zip_path, src_path=fs_path)
+ compress = compress_fn(zip_path) if compress_fn else None
+ AddToZipHermetic(outfile, zip_path, src_path=fs_path, compress=compress)
-def ZipDir(output, base_dir):
+def ZipDir(output, base_dir, compress_fn=None):
"""Creates a zip file from a directory."""
inputs = []
for root, _, files in os.walk(base_dir):
for f in files:
inputs.append(os.path.join(root, f))
- DoZip(inputs, output, base_dir)
+ DoZip(inputs, output, base_dir, compress_fn=compress_fn)
def MatchesGlob(path, filters):