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

Commit 3c7b2a65 authored by Tao Bao's avatar Tao Bao
Browse files

releasetools: Add more module building rules.

This CL adds the building rules for the following tools:
- add_img_to_target_files
- check_ota_package_signature
- check_target_files_signatures
- img_from_target_files
- merge_target_files
- ota_package_parser
- sign_apex
- sign_target_files_apks
- validate_target_files

Bug: 63866463
Test: mmma -j build/make/tools/releasetools
Test: Run each tool above to ensure there's no missing dependency (in
      the exercised code path).
Change-Id: Ide5b9775939ed02c822109cbcf4224000d5472df
parent 69340f68
Loading
Loading
Loading
Loading
+238 −29
Original line number Diff line number Diff line
@@ -12,6 +12,89 @@
// See the License for the specific language governing permissions and
// limitations under the License.

//
// Module-specific defaults.
//
// For module X, if we need to build it both as a library and an executable:
//  - A default rule `releasetools_X_defaults` is created, which lists `srcs`, `libs` and
//    `required` properties.
//  - `python_library_host` and `python_binary_host` are created by listing
//    `releasetools_X_defaults` in their defaults.
//

python_defaults {
    name: "releasetools_add_img_to_target_files_defaults",
    srcs: [
        "add_img_to_target_files.py",
    ],
    libs: [
        "releasetools_build_image",
        "releasetools_build_super_image",
        "releasetools_common",
    ],
    required: [
        "care_map_generator",
    ],
}

python_defaults {
    name: "releasetools_build_image_defaults",
    srcs: [
        "build_image.py",
    ],
    libs: [
        "releasetools_common",
        "releasetools_verity_utils",
    ],
    required: [
        "blk_alloc_to_base_fs",
        "e2fsck",
        "simg2img",
        "tune2fs",
    ],
}

python_defaults {
    name: "releasetools_build_super_image_defaults",
    srcs: [
        "build_super_image.py",
    ],
    libs: [
        "releasetools_common",
    ],
}

python_defaults {
    name: "releasetools_img_from_target_files_defaults",
    srcs: [
        "img_from_target_files.py",
    ],
    libs: [
        "releasetools_build_super_image",
        "releasetools_common",
    ],
}

python_defaults {
    name: "releasetools_ota_from_target_files_defaults",
    srcs: [
        "edify_generator.py",
        "ota_from_target_files.py",
        "target_files_diff.py",
    ],
    libs: [
        "releasetools_common",
        "releasetools_verity_utils",
    ],
    required: [
        "brillo_update_payload",
    ],
}

//
// Host libraries.
//

python_defaults {
    name: "releasetools_library_defaults",
    version: {
@@ -25,10 +108,37 @@ python_defaults {
}

python_library_host {
    name: "releasetools_build_super_image",
    name: "releasetools_add_img_to_target_files",
    defaults: [
        "releasetools_library_defaults",
        "releasetools_add_img_to_target_files_defaults",
    ],
}

python_library_host {
    name: "releasetools_apex_utils",
    defaults: ["releasetools_library_defaults"],
    srcs: [
        "build_super_image.py",
        "apex_utils.py",
    ],
    libs: [
        "releasetools_common",
    ],
}

python_library_host {
    name: "releasetools_build_image",
    defaults: [
        "releasetools_library_defaults",
        "releasetools_build_image_defaults",
    ],
}

python_library_host {
    name: "releasetools_build_super_image",
    defaults: [
        "releasetools_library_defaults",
        "releasetools_build_super_image_defaults",
    ],
}

@@ -55,6 +165,22 @@ python_library_host {
    ],
}

python_library_host {
    name: "releasetools_img_from_target_files",
    defaults: [
        "releasetools_library_defaults",
        "releasetools_img_from_target_files_defaults",
    ],
}

python_library_host {
    name: "releasetools_ota_from_target_files",
    defaults: [
        "releasetools_library_defaults",
        "releasetools_ota_from_target_files_defaults",
    ],
}

python_library_host {
    name: "releasetools_verity_utils",
    defaults: ["releasetools_library_defaults"],
@@ -69,6 +195,10 @@ python_library_host {
    ],
}

//
// Host binaries.
//

python_defaults {
    name: "releasetools_binary_defaults",
    version: {
@@ -83,35 +213,64 @@ python_defaults {
    },
}

python_binary_host {
    name: "add_img_to_target_files",
    defaults: [
        "releasetools_binary_defaults",
        "releasetools_add_img_to_target_files_defaults",
    ],
}

python_binary_host {
    name: "build_image",
    defaults: [
        "releasetools_binary_defaults",
        "releasetools_build_image_defaults",
    ],
}

python_binary_host {
    name: "build_super_image",
    defaults: [
        "releasetools_binary_defaults",
        "releasetools_build_super_image_defaults",
    ],
}

python_binary_host {
    name: "check_ota_package_signature",
    defaults: ["releasetools_binary_defaults"],
    srcs: [
        "build_image.py",
        "check_ota_package_signature.py",
    ],
    main: "build_image.py",
    libs: [
        "releasetools_common",
        "releasetools_verity_utils",
    ],
    required: [
        "blk_alloc_to_base_fs",
        "e2fsck",
        "simg2img",
        "tune2fs",
        "delta_generator",
    ],
}

python_binary_host {
    name: "build_super_image",
    name: "check_target_files_signatures",
    defaults: ["releasetools_binary_defaults"],
    srcs: [
        "build_super_image.py",
        "check_target_files_signatures.py",
    ],
    main: "build_super_image.py",
    libs: [
        "releasetools_common",
    ],
    required: [
        "aapt",
    ],
}

python_binary_host {
    name: "img_from_target_files",
    defaults: [
        "releasetools_binary_defaults",
        "releasetools_img_from_target_files_defaults",
    ],
}

python_binary_host {
@@ -131,7 +290,6 @@ python_binary_host {
    srcs: [
        "merge_builds.py",
    ],
    main: "merge_builds.py",
    libs: [
        "releasetools_build_super_image",
        "releasetools_common",
@@ -139,20 +297,34 @@ python_binary_host {
}

python_binary_host {
    name: "ota_from_target_files",
    name: "merge_target_files",
    defaults: ["releasetools_binary_defaults"],
    srcs: [
        "edify_generator.py",
        "ota_from_target_files.py",
        "target_files_diff.py",
        "merge_target_files.py",
    ],
    main: "ota_from_target_files.py",
    libs: [
        "releasetools_add_img_to_target_files",
        "releasetools_build_super_image",
        "releasetools_common",
        "releasetools_verity_utils",
        "releasetools_img_from_target_files",
        "releasetools_ota_from_target_files",
    ],
    required: [
        "brillo_update_payload",
}

python_binary_host {
    name: "ota_from_target_files",
    defaults: [
        "releasetools_binary_defaults",
        "releasetools_ota_from_target_files_defaults",
    ],
}

python_binary_host {
    name: "ota_package_parser",
    defaults: ["releasetools_binary_defaults"],
    srcs: [
        "ota_package_parser.py",
        "rangelib.py",
    ],
}

@@ -163,33 +335,70 @@ python_binary_host {
        "rangelib.py",
        "sparse_img.py",
    ],
    main: "sparse_img.py",
}

python_binary_host {
    name: "sign_apex",
    defaults: ["releasetools_binary_defaults"],
    srcs: [
        "sign_apex.py",
    ],
    libs: [
        "releasetools_apex_utils",
        "releasetools_common",
    ],
}

python_binary_host {
    name: "sign_target_files_apks",
    defaults: ["releasetools_binary_defaults"],
    srcs: [
        "sign_target_files_apks.py",
    ],
    libs: [
        "releasetools_add_img_to_target_files",
        "releasetools_apex_utils",
        "releasetools_common",
    ],
}

python_binary_host {
    name: "validate_target_files",
    defaults: ["releasetools_binary_defaults"],
    srcs: [
        "validate_target_files.py",
    ],
    libs: [
        "releasetools_common",
    ],
}

//
// Tests.
//

python_defaults {
    name: "releasetools_test_defaults",
    srcs: [
        "add_img_to_target_files.py",
        "apex_utils.py",
        "build_image.py",
        "check_ota_package_signature.py",
        "check_target_files_signatures.py",
        "edify_generator.py",
        "img_from_target_files.py",
        "make_recovery_patch.py",
        "merge_target_files.py",
        "ota_from_target_files.py",
        "ota_package_parser.py",
        "sign_apex.py",
        "sign_target_files_apks.py",
        "target_files_diff.py",
        "validate_target_files.py",

        "test_*.py",
    ],
    libs: [
        "releasetools_add_img_to_target_files",
        "releasetools_apex_utils",
        "releasetools_build_image",
        "releasetools_build_super_image",
        "releasetools_common",
        "releasetools_img_from_target_files",
        "releasetools_ota_from_target_files",
        "releasetools_verity_utils",
    ],
    data: [