Merge "Support comparing separate workspaces"
am: efe63418b7
Change-Id: I13ae2a2745b0ada2564b630cb9028212c1354b6a
diff --git a/vndk/tools/system_image_diff.py b/vndk/tools/system_image_diff.py
index cd9ebfb..c99415d 100755
--- a/vndk/tools/system_image_diff.py
+++ b/vndk/tools/system_image_diff.py
@@ -24,6 +24,17 @@
'vendor/realtek' : 'Realtek'
}
+def _get_relative_out_path_from_root(out_path):
+ """Given a path to a target out directory, get the relative path from the
+ Android root.
+
+ The module-info.json file paths are relative to the root source folder
+ ie. one directory before out."""
+ system_path = os.path.normpath(os.path.join(out_path, 'system'))
+ system_path_dirs = system_path.split(os.sep)
+ out_index = system_path_dirs.index("out")
+ return os.path.join(*system_path_dirs[out_index:])
+
def system_files(path):
"""Returns an array of the files under /system, recursively, and ignoring
symbolic-links"""
@@ -44,7 +55,7 @@
"""Returns a dictionary mapping from each file in the /system partition to its
package, according to modules-info.json."""
system_files_to_package_map = {}
- system_prefix = os.path.join(path, 'system')
+ system_prefix = _get_relative_out_path_from_root(path)
# Skip trailing '/'
system_prefix_len = len(system_prefix) + 1