aboutsummaryrefslogtreecommitdiff
path: root/build/mainline_modules_sdks.py
diff options
context:
space:
mode:
authorPaul Duffin <paulduffin@google.com>2022-03-23 10:07:22 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2022-03-23 10:07:22 +0000
commit5c78b6d3d6cbf7e149cd81e9773c8590873eddc9 (patch)
treeeda0410cd1d0cf4a515e7f5cd86df7366b318cb9 /build/mainline_modules_sdks.py
parent7172401c2e38219e67daaa2acfbb685e7d7ee9cc (diff)
parentf319429eae68b96aa8dc11711221aea51cfccce9 (diff)
downloadcommon-5c78b6d3d6cbf7e149cd81e9773c8590873eddc9.tar.gz
Merge "Move populate_stubs into LEGACY BuildRelease" am: 2a5e1b5e4e am: f319429eae
Original change: https://android-review.googlesource.com/c/platform/packages/modules/common/+/2032131 Change-Id: I410cce669f16fac8ee6a30c08a7d312718b5a06b
Diffstat (limited to 'build/mainline_modules_sdks.py')
-rwxr-xr-xbuild/mainline_modules_sdks.py54
1 files changed, 26 insertions, 28 deletions
diff --git a/build/mainline_modules_sdks.py b/build/mainline_modules_sdks.py
index d2b53301..1abad2e1 100755
--- a/build/mainline_modules_sdks.py
+++ b/build/mainline_modules_sdks.py
@@ -349,11 +349,30 @@ def create_sdk_snapshots_in_soong(build_release: BuildRelease,
producer.produce_dist_for_build_release(build_release, modules)
-def reuse_latest_sdk_snapshots(build_release: BuildRelease,
- producer: "SdkDistProducer",
- modules: List["MainlineModule"]):
- """Copies the snapshots from the latest build."""
- producer.populate_dist(build_release, build_release.sdk_versions, modules)
+def create_legacy_dist_structures(build_release: BuildRelease,
+ producer: "SdkDistProducer",
+ modules: List["MainlineModule"]):
+ """Creates legacy file structures."""
+ producer.produce_dist_for_build_release(build_release, modules)
+
+ # Create the out/dist/mainline-sdks/stubs structure.
+ # TODO(b/199759953): Remove stubs once it is no longer used by gantry.
+ # Clear and populate the stubs directory.
+ dist_dir = producer.dist_dir
+ stubs_dir = os.path.join(dist_dir, "stubs")
+ shutil.rmtree(stubs_dir, ignore_errors=True)
+
+ for module in modules:
+ apex = module.apex
+ dest_dir = os.path.join(dist_dir, "stubs", apex)
+ for sdk in module.sdks:
+ # If the sdk's name ends with -sdk then extract sdk library
+ # related files from its zip file.
+ if sdk.endswith("-sdk"):
+ sdk_file = producer.snapshot_builder.get_sdk_path(
+ sdk, "current")
+ extract_matching_files_from_zip(sdk_file, dest_dir,
+ sdk_library_files_pattern())
Q = BuildRelease(
@@ -398,12 +417,11 @@ LEGACY_BUILD_RELEASE = BuildRelease(
name="legacy",
# There is no build release specific sub directory.
sub_dir="",
+ # Create snapshots needed for legacy tools.
+ creator=create_legacy_dist_structures,
# There are no build release specific environment variables to pass to
# Soong.
soong_env={},
- # Do not create new snapshots, simply use the snapshots generated for
- # latest.
- creator=reuse_latest_sdk_snapshots,
)
@@ -594,32 +612,12 @@ class SdkDistProducer:
f" build release")
build_release.creator(build_release, self, filtered_modules)
- self.populate_stubs(modules)
-
def produce_dist_for_build_release(self, build_release, modules):
sdk_versions = build_release.sdk_versions
self.snapshot_builder.build_snapshots(build_release, sdk_versions,
modules)
self.populate_dist(build_release, sdk_versions, modules)
- def populate_stubs(self, modules):
- # TODO(b/199759953): Remove stubs once it is no longer used by gantry.
- # Clear and populate the stubs directory.
- stubs_dir = os.path.join(self.dist_dir, "stubs")
- shutil.rmtree(stubs_dir, ignore_errors=True)
-
- for module in modules:
- apex = module.apex
- dest_dir = os.path.join(self.dist_dir, "stubs", apex)
- for sdk in module.sdks:
- # If the sdk's name ends with -sdk then extract sdk library
- # related files from its zip file.
- if sdk.endswith("-sdk"):
- sdk_file = self.snapshot_builder.get_sdk_path(
- sdk, "current")
- extract_matching_files_from_zip(sdk_file, dest_dir,
- sdk_library_files_pattern())
-
def populate_dist(self, build_release, sdk_versions, modules):
build_release_dist_dir = os.path.join(self.mainline_sdks_dir,
build_release.sub_dir)