Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dd68e68f authored by Tao Bao's avatar Tao Bao Committed by Gerrit Code Review
Browse files

Merge "Override properties that point to out/ directory."

parents b097c416 84e7568b
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -135,10 +135,6 @@ def CreateImage(input_dir, info_dict, what, block_list=None):
    image_props["fs_config"] = fs_config
  if block_list:
    image_props["block_list"] = block_list
  if image_props.get("system_root_image") == "true":
    image_props["ramdisk_dir"] = os.path.join(input_dir, "BOOT/RAMDISK")
    image_props["ramdisk_fs_config"] = os.path.join(
        input_dir, "META/boot_filesystem_config.txt")

  succ = build_image.BuildImage(os.path.join(input_dir, what),
                                image_props, img)
+1 −0
Original line number Diff line number Diff line
@@ -413,6 +413,7 @@ def ImagePropFromGlobalDict(glob_dict, mount_point):
    copy_prop("system_verity_block_device", "verity_block_device")
    copy_prop("system_root_image", "system_root_image")
    copy_prop("ramdisk_dir", "ramdisk_dir")
    copy_prop("ramdisk_fs_config", "ramdisk_fs_config")
    copy_prop("has_ext4_reserved_blocks", "has_ext4_reserved_blocks")
  elif mount_point == "data":
    # Copy the generic fs type first, override with specific one if available.
+18 −7
Original line number Diff line number Diff line
@@ -145,15 +145,20 @@ def LoadInfoDict(input_file, input_dir=None):
  if "fstab_version" not in d:
    d["fstab_version"] = "1"

  # During building, we use the "file_contexts" in the out/ directory tree.
  # It is no longer available when (re)generating from target_files zip. So
  # when generating from target_files zip, we look for a copy under META/
  # first, if not available search under BOOT/RAMDISK/. Note that we may need
  # a different file_contexts to build images than the one running on device,
  # such as when enabling system_root_image. In that case, we must have the
  # one for building copied to META/.
  # A few properties are stored as links to the files in the out/ directory.
  # It works fine with the build system. However, they are no longer available
  # when (re)generating from target_files zip. If input_dir is not None, we
  # are doing repacking. Redirect those properties to the actual files in the
  # unzipped directory.
  if input_dir is not None:
    # We carry a copy of file_contexts under META/. If not available, search
    # BOOT/RAMDISK/. Note that sometimes we may need a different file_contexts
    # to build images than the one running on device, such as when enabling
    # system_root_image. In that case, we must have the one for image
    # generation copied to META/.
    fc_config = os.path.join(input_dir, "META", "file_contexts")
    if d.get("system_root_image") == "true":
      assert os.path.exists(fc_config)
    if not os.path.exists(fc_config):
      fc_config = os.path.join(input_dir, "BOOT", "RAMDISK", "file_contexts")
      if not os.path.exists(fc_config):
@@ -162,6 +167,12 @@ def LoadInfoDict(input_file, input_dir=None):
    if fc_config:
      d["selinux_fc"] = fc_config

    # Similarly we need to redirect "ramdisk_dir" and "ramdisk_fs_config".
    if d.get("system_root_image") == "true":
      d["ramdisk_dir"] = os.path.join(input_dir, "ROOT")
      d["ramdisk_fs_config"] = os.path.join(
          input_dir, "META", "root_filesystem_config.txt")

  try:
    data = read_helper("META/imagesizes.txt")
    for line in data.split("\n"):