//
// Copyright (C) 2015 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

// AIDL interface between libupdate_engine and framework.jar
package {
    default_applicable_licenses: ["system_update_engine_license"],
}

// Added automatically by a large-scale-change
// See: http://go/android-license-faq
license {
    name: "system_update_engine_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
    ],
    license_text: [
        "NOTICE",
    ],
}

filegroup {
    name: "libupdate_engine_aidl",
    srcs: [
        "binder_bindings/android/os/IUpdateEngine.aidl",
        "binder_bindings/android/os/IUpdateEngineCallback.aidl",
    ],
    path: "binder_bindings",
}

cc_defaults {
    name: "ue_defaults",

    cflags: [
        "-DBASE_VER=576279",
        "-DUSE_HWID_OVERRIDE=0",
        "-D_FILE_OFFSET_BITS=64",
        "-D_POSIX_C_SOURCE=199309L",
        "-Wa,--noexecstack",
        "-Wall",
        "-Werror",
        "-Wextra",
        "-Wformat=2",
        "-Wno-psabi",
        "-Wno-unused-parameter",
        "-ffunction-sections",
        "-fstack-protector-strong",
        "-fvisibility=hidden",
        "-g3",
    ],
    cppflags: [
        "-Wnon-virtual-dtor",
        "-fno-strict-aliasing",
    ],
    include_dirs: ["system"],
    local_include_dirs: ["client_library/include"],
    header_libs: ["libgtest_prod_headers"],
    shared_libs: [
        "libbrillo-stream",
        "libbrillo",
        "libchrome",
    ],
    ldflags: ["-Wl,--gc-sections"],

    product_variables: {
        pdk: {
            enabled: false,
        },
    },

    target: {
        android: {
            cflags: [
                "-DUSE_FEC=1",
            ],
        },
        host: {
            cflags: [
                "-DUSE_FEC=0",
            ],
        },
        darwin: {
            enabled: false,
        },
    },
}

// libcow_operation_convert (type: library)
// ========================================================
cc_library_static {
    name: "libpayload_extent_utils",
    defaults: [
        "ue_defaults",
    ],
    host_supported: true,
    recovery_available: true,
    srcs: [
        "payload_generator/extent_utils.cc",
    ],
    static_libs: [
        "update_metadata-protos",
    ],
}

cc_library {
    name: "libcow_operation_convert",
    host_supported: true,
    recovery_available: true,
    defaults: [
        "ue_defaults",
        "update_metadata-protos_exports",
    ],
    srcs: [
        "common/cow_operation_convert.cc",
    ],
    static_libs: [
        "libsnapshot_cow",
        "update_metadata-protos",
        "libpayload_extent_ranges",
        "libpayload_extent_utils",
        "libbrotli",
        "libz",
    ],
}

// update_metadata-protos (type: static_library)
// ========================================================
// Protobufs.
cc_defaults {
    name: "update_metadata-protos_exports",

    shared_libs: ["libprotobuf-cpp-lite"],
}

cc_library_static {
    name: "update_metadata-protos",
    host_supported: true,
    ramdisk_available: true,
    recovery_available: true,

    srcs: ["update_engine/update_metadata.proto"],
    cflags: [
        "-Wall",
        "-Werror",
    ],
    proto: {
        canonical_path_from_root: false,
        export_proto_headers: true,
    },
}

// libpayload_consumer (type: static_library)
// ========================================================
// The payload application component and common dependencies.
cc_defaults {
    name: "libpayload_consumer_exports",
    defaults: ["update_metadata-protos_exports"],

    static_libs: [
        "update_metadata-protos",
        "libxz",
        "libbz",
        "libbspatch",
        "libbrotli",
        "libc++fs",
        "libfec_rs",
        "libpuffpatch",
        "libverity_tree",
        "libsnapshot_cow",
        "libbrotli",
        "libz",
        "libpayload_extent_ranges",
        "libpayload_extent_utils",
        "libcow_operation_convert",
        "lz4diff-protos",
        "liblz4patch",
    ],
    shared_libs: [
        "libbase",
        "libcrypto",
        "libfec",
        "liblz4",
        "libziparchive",
    ],
}

cc_library_static {
    name: "libpayload_consumer",
    defaults: [
        "ue_defaults",
        "libpayload_consumer_exports",
    ],
    host_supported: true,
    recovery_available: true,

    srcs: [
        "aosp/platform_constants_android.cc",
        "common/action_processor.cc",
        "common/boot_control_stub.cc",
        "common/clock.cc",
        "common/constants.cc",
        "common/cpu_limiter.cc",
        "common/dynamic_partition_control_stub.cc",
        "common/error_code_utils.cc",
        "common/file_fetcher.cc",
        "common/hash_calculator.cc",
        "common/http_common.cc",
        "common/http_fetcher.cc",
        "common/hwid_override.cc",
        "common/multi_range_http_fetcher.cc",
        "common/prefs.cc",
        "common/proxy_resolver.cc",
        "common/subprocess.cc",
        "common/terminator.cc",
        "common/utils.cc",
        "payload_consumer/bzip_extent_writer.cc",
        "payload_consumer/cached_file_descriptor.cc",
        "payload_consumer/certificate_parser_android.cc",
        "payload_consumer/cow_writer_file_descriptor.cc",
        "payload_consumer/delta_performer.cc",
        "payload_consumer/extent_reader.cc",
        "payload_consumer/extent_writer.cc",
        "payload_consumer/file_descriptor.cc",
        "payload_consumer/file_descriptor_utils.cc",
        "payload_consumer/file_writer.cc",
        "payload_consumer/filesystem_verifier_action.cc",
        "payload_consumer/install_operation_executor.cc",
        "payload_consumer/install_plan.cc",
        "payload_consumer/mount_history.cc",
        "payload_consumer/payload_constants.cc",
        "payload_consumer/payload_metadata.cc",
        "payload_consumer/payload_verifier.cc",
        "payload_consumer/partition_writer.cc",
        "payload_consumer/partition_writer_factory_android.cc",
        "payload_consumer/vabc_partition_writer.cc",
        "payload_consumer/xor_extent_writer.cc",
        "payload_consumer/block_extent_writer.cc",
        "payload_consumer/snapshot_extent_writer.cc",
        "payload_consumer/postinstall_runner_action.cc",
        "payload_consumer/verified_source_fd.cc",
        "payload_consumer/verity_writer_android.cc",
        "payload_consumer/xz_extent_writer.cc",
        "payload_consumer/fec_file_descriptor.cc",
        "payload_consumer/partition_update_generator_android.cc",
        "update_status_utils.cc",
    ],
}

// libupdate_engine_boot_control (type: static_library)
// ========================================================
// A BootControl class implementation using Android's HIDL boot_control HAL.
cc_defaults {
    name: "libupdate_engine_boot_control_exports",
    defaults: ["update_metadata-protos_exports"],

    static_libs: [
        "libcutils",
        "libfs_mgr_binder",
        "libgsi",
        "libpayload_consumer",
        "libsnapshot",
        "libsnapshot_cow",
        "libz",
        "update_metadata-protos",
    ],
    shared_libs: [
        "libbootloader_message",
        "libhidlbase",
        "liblp",
        "libstatslog",
        "libutils",
        "android.hardware.boot@1.0",
        "android.hardware.boot@1.1",
        "android.hardware.boot@1.2",
    ],
    header_libs: [
        "avb_headers",
    ],
    target: {
        recovery: {
            static_libs: [
                "libfs_mgr",
                "libsnapshot_nobinder",
            ],
            exclude_static_libs: [
                "libfs_mgr_binder",
                "libsnapshot",
            ],
            exclude_shared_libs: [
                "libstatslog",
            ],
        },
    },
}

cc_library_static {
    name: "libupdate_engine_boot_control",
    defaults: [
        "ue_defaults",
        "libupdate_engine_boot_control_exports",
        "libpayload_consumer_exports",
    ],
    recovery_available: true,

    srcs: [
        "aosp/boot_control_android.cc",
        "aosp/cleanup_previous_update_action.cc",
        "aosp/dynamic_partition_control_android.cc",
        "aosp/dynamic_partition_utils.cc",
    ],
}

// libupdate_engine_android (type: static_library)
// ========================================================
// The main daemon static_library used in Android (non-Brillo). This only has a
// loop to apply payloads provided by the upper layer via a Binder interface.
cc_defaults {
    name: "libupdate_engine_android_exports",
    defaults: [
        "ue_defaults",
        "libpayload_consumer_exports",
        "libupdate_engine_boot_control_exports",
    ],

    static_libs: [
        "libavb",
        "libavb_user",
        "gkiprops",
        "libpayload_consumer",
        "libupdate_engine_boot_control",
        "PlatformProperties",
    ],
    shared_libs: [
        "apex_aidl_interface-cpp",
        "libandroid_net",
        "libbase",
        "libbinder",
        "libbinderwrapper",
        "libbootloader_message",
        "libbrillo-binder",
        "libcurl",
        "libcutils",
        "libupdate_engine_stable-V1-cpp",
        "liblog",
        "libssl",
        "libstatslog",
        "libutils",
    ],
    whole_static_libs: [
        "com.android.sysprop.apex",
    ],
}

cc_library_static {
    name: "libupdate_engine_android",
    defaults: [
        "ue_defaults",
        "libupdate_engine_android_exports",
    ],

    // TODO(deymo): Remove external/cros/system_api/dbus once the strings are moved
    // out of the DBus interface.
    include_dirs: ["external/cros/system_api/dbus"],

    aidl: {
        local_include_dirs: ["binder_bindings"],
        export_aidl_headers: true,
    },

    srcs: [
        ":libupdate_engine_aidl",
        "common/system_state.cc",
        "aosp/apex_handler_android.cc",
        "aosp/binder_service_android.cc",
        "aosp/binder_service_stable_android.cc",
        "aosp/daemon_android.cc",
        "aosp/daemon_state_android.cc",
        "aosp/hardware_android.cc",
        "aosp/logging_android.cc",
        "aosp/network_selector_android.cc",
        "aosp/update_attempter_android.cc",
        "certificate_checker.cc",
        "download_action.cc",
        "libcurl_http_fetcher.cc",
        "metrics_utils.cc",
        "update_boot_flags_action.cc",
    ],
}

// update_engine (type: executable)
// ========================================================
// update_engine daemon.
cc_binary {
    name: "update_engine",
    defaults: [
        "ue_defaults",
        "libupdate_engine_android_exports",
    ],

    static_libs: ["libupdate_engine_android"],
    required: [
        "cacerts_google",
        "otacerts",
    ],

    srcs: ["main.cc", "aosp/metrics_reporter_android.cc"],
    init_rc: ["update_engine.rc"],
}

// update_engine_sideload (type: executable)
// ========================================================
// A binary executable equivalent to update_engine daemon that installs an update
// from a local file directly instead of running in the background. Used in
// recovery image.
cc_binary {
    name: "update_engine_sideload",
    defaults: [
        "ue_defaults",
        "update_metadata-protos_exports",
        "libupdate_engine_boot_control_exports",
        "libpayload_consumer_exports",
    ],
    recovery: true,

    cflags: ["-D_UE_SIDELOAD"],
    // TODO(deymo): Remove external/cros/system_api/dbus once the strings are moved
    // out of the DBus interface.
    include_dirs: ["external/cros/system_api/dbus"],
    header_libs: ["libgtest_prod_headers"],

    srcs: [
        "aosp/hardware_android.cc",
        "aosp/logging_android.cc",
        "aosp/sideload_main.cc",
        "aosp/update_attempter_android.cc",
        "common/metrics_reporter_stub.cc",
        "common/network_selector_stub.cc",
        "common/system_state.cc",
        "download_action.cc",
        "metrics_utils.cc",
        "update_boot_flags_action.cc",
        "update_status_utils.cc",
    ],

    // Use commonly used shared libraries. libprotobuf-cpp-lite.so is filtered out,
    // as it doesn't look beneficial to be installed separately due to its size. Note
    // that we explicitly request their recovery variants, so that the expected files
    // will be used and installed.
    shared_libs: [
        "libbase",
        "liblog",
        "liblz4",
    ],
    static_libs: [
        "libpayload_consumer",
        "libupdate_engine_boot_control",
        "update_metadata-protos",

        // We add the static versions of the shared libraries that are not installed to
        // recovery image due to size concerns. Need to include all the static library
        // dependencies of these static libraries.
        "gkiprops",
        "libevent",
        "libmodpb64",
        "libprotobuf-cpp-lite",
        "libbrillo-stream",
        "libbrillo",
        "libchrome",
    ],
    target: {
        recovery: {
            exclude_shared_libs: [
                "libprotobuf-cpp-lite",
                "libbrillo-stream",
                "libbrillo",
                "libchrome",
            ],
        },
    },

    required: [
        "otacerts.recovery",
    ],
}

// update_engine_client (type: executable)
// ========================================================
// update_engine console client.
cc_binary {
    name: "update_engine_client",
    defaults: ["ue_defaults"],

    // TODO(deymo): Remove external/cros/system_api/dbus once the strings are moved
    // out of the DBus interface.
    include_dirs: ["external/cros/system_api/dbus"],

    shared_libs: [
        "libbinder",
        "libbinderwrapper",
        "libbrillo-binder",
        "libutils",
    ],

    aidl: {
        local_include_dirs: ["binder_bindings"],
    },

    srcs: [
        ":libupdate_engine_aidl",
        "aosp/update_engine_client_android.cc",
        "common/error_code_utils.cc",
        "update_status_utils.cc",
    ],
}

// libpayload_generator (type: static_library)
// ========================================================
// server-side code. This is used for delta_generator and unittests but not
// for any client code.
cc_defaults {
    name: "libpayload_generator_exports",
    defaults: [
        "libpayload_consumer_exports",
        "update_metadata-protos_exports",
        "erofs-utils_export_defaults",
    ],

    header_libs: [
        "bootimg_headers",
    ],
    static_libs: [
        "libavb",
        "libbrotli",
        "libbsdiff",
        "libdivsufsort",
        "libdivsufsort64",
        "liblzma",
        "libpayload_consumer",
        "libpuffdiff",
        "libzucchini",
        "libverity_tree",
        "update_metadata-protos",
        "libpayload_extent_utils",
        "libcow_size_estimator",
        "liberofs",
        "lz4diff-protos",
        "liblz4diff",
    ],
    shared_libs: [
        "libbase",
        "libext2fs",
        // LZ4 has to be a shared lib, as we want to override it with
        // LD_LIBRARY_PRELOAD later
        "liblz4",
    ],
}

cc_library_static {
    name: "libpayload_extent_ranges",
    defaults: [
        "ue_defaults",
    ],
    host_supported: true,
    recovery_available: true,
    srcs: [
        "payload_generator/extent_ranges.cc",
    ],
    static_libs: [
        "update_metadata-protos",
    ],
}

cc_library_static {
    name: "libcow_size_estimator",
    defaults: [
        "ue_defaults",
        "update_metadata-protos_exports"
    ],
    host_supported: true,
    recovery_available: true,
    srcs: [
        "payload_generator/cow_size_estimator.cc",
    ],
    static_libs: [
        "update_metadata-protos",
        "libbase",
        "libsnapshot_cow",
        "libcow_operation_convert",
    ],
}

cc_defaults {
    name: "liblz4diff_defaults",
    static_libs: [
        "lz4diff-protos",
        "update_metadata-protos",
        "libssl",
        "libbsdiff",
        "libpuffdiff",
    ],
    shared_libs: [
        "liblz4",
    ],
}

cc_library_static {
    name: "liblz4diff",
    host_supported: true,
    defaults: ["ue_defaults", "liblz4diff_defaults"],
    srcs: [
        "lz4diff/lz4diff.cc",
        "lz4diff/lz4diff_compress.cc",
    ],
}

cc_library_static {
    name: "liblz4patch",
    host_supported: true,
    recovery_available: true,
    defaults: ["ue_defaults"],
    static_libs: [
        "lz4diff-protos",
        "update_metadata-protos",
        "libssl",
        "libbspatch",
        "libpuffpatch",
    ],
    shared_libs: [
        "liblz4",
    ],
    srcs: [
        "lz4diff/lz4patch.cc",
        "lz4diff/lz4diff_compress.cc",
    ],
}

cc_library_static {
    name: "libpayload_generator",
    defaults: [
        "ue_defaults",
        "libpayload_generator_exports",
    ],
    host_supported: true,

    srcs: [
        "common/system_state.cc",
        "download_action.cc",
        "payload_generator/ab_generator.cc",
        "payload_generator/annotated_operation.cc",
        "payload_generator/blob_file_writer.cc",
        "payload_generator/block_mapping.cc",
        "payload_generator/boot_img_filesystem.cc",
        "payload_generator/bzip.cc",
        "payload_generator/deflate_utils.cc",
        "payload_generator/delta_diff_generator.cc",
        "payload_generator/delta_diff_utils.cc",
        "payload_generator/ext2_filesystem.cc",
        "payload_generator/erofs_filesystem.cc",
        "payload_generator/extent_ranges.cc",
        "payload_generator/full_update_generator.cc",
        "payload_generator/mapfile_filesystem.cc",
        "payload_generator/merge_sequence_generator.cc",
        "payload_generator/payload_file.cc",
        "payload_generator/payload_generation_config_android.cc",
        "payload_generator/payload_generation_config.cc",
        "payload_generator/payload_properties.cc",
        "payload_generator/payload_signer.cc",
        "payload_generator/raw_filesystem.cc",
        "payload_generator/squashfs_filesystem.cc",
        "payload_generator/xz_android.cc",
    ],
}

// delta_generator (type: executable)
// ========================================================
// server-side delta generator.
cc_binary_host {
    name: "delta_generator",
    defaults: [
        "ue_defaults",
        "libpayload_generator_exports",
        "libpayload_consumer_exports",
    ],

    static_libs: [
        "libavb_host_sysdeps",
        "libpayload_consumer",
        "libpayload_generator",
    ],

    srcs: ["payload_generator/generate_delta_main.cc"],
}

cc_test {
    host_supported: true,
    name: "ue_unittest_delta_generator",
    defaults: [
        "ue_defaults",
        "libpayload_generator_exports",
        "libpayload_consumer_exports",
    ],

    static_libs: [
        "libpayload_consumer",
        "libpayload_generator",
    ],

    srcs: ["payload_generator/generate_delta_main.cc"],

    gtest: false,
    stem: "delta_generator",
}

// test_http_server (type: executable)
// ========================================================
// Test HTTP Server.
cc_test {
    name: "test_http_server",
    defaults: ["ue_defaults"],
    srcs: [
        "common/http_common.cc",
        "test_http_server.cc",
    ],

    gtest: false,
}

// test_subprocess (type: executable)
// ========================================================
// Test helper subprocess program.
cc_test {
    name: "test_subprocess",
    defaults: ["ue_defaults"],
    srcs: ["test_subprocess.cc"],

    gtest: false,
}

// Public keys for unittests.
// ========================================================
genrule {
    name: "ue_unittest_keys",
    cmd: "openssl rsa -in $(location unittest_key.pem) -pubout -out $(location unittest_key.pub.pem) &&" +
        "openssl rsa -in $(location unittest_key2.pem) -pubout -out $(location unittest_key2.pub.pem) &&" +
        "openssl rsa -in $(location unittest_key_RSA4096.pem) -pubout -out $(location unittest_key_RSA4096.pub.pem) &&" +
        "openssl pkey -in $(location unittest_key_EC.pem) -pubout -out $(location unittest_key_EC.pub.pem)",
    srcs: [
        "unittest_key.pem",
        "unittest_key2.pem",
        "unittest_key_RSA4096.pem",
        "unittest_key_EC.pem",
    ],
    out: [
        "unittest_key.pub.pem",
        "unittest_key2.pub.pem",
        "unittest_key_RSA4096.pub.pem",
        "unittest_key_EC.pub.pem",
    ],
}

// Sample images for unittests.
// ========================================================
// Extract sample image from the compressed sample_images.tar.bz2 file used by
// the unittests.
genrule {
    name: "ue_unittest_disk_imgs",
    cmd: "tar -jxf $(in) -C $(genDir)/gen disk_ext2_1k.img disk_ext2_4k.img disk_ext2_4k_empty.img disk_ext2_unittest.img",
    srcs: ["sample_images/sample_images.tar.bz2"],
    out: [
        "gen/disk_ext2_1k.img",
        "gen/disk_ext2_4k.img",
        "gen/disk_ext2_4k_empty.img",
        "gen/disk_ext2_unittest.img",
    ],
}

genrule {
    name: "ue_unittest_erofs_imgs",
    cmd: "$(in) $(location mkfs.erofs) $(location gen/erofs_empty.img) && " +
         "$(in) $(location mkfs.erofs) $(location gen/erofs.img) $(location delta_generator) && " +
         "$(in) $(location mkfs.erofs) $(location gen/erofs_new.img) $(location delta_generator) lz4hc,7",
    srcs: ["sample_images/generate_test_erofs_images.sh"],
    out: [
        "gen/erofs.img",
        "gen/erofs_new.img",
        "gen/erofs_empty.img",
    ],
    tools: [
        "mkfs.erofs",
        "delta_generator",
    ],
}

filegroup {
    name: "update_engine_host_unittest_srcs",
    srcs: [
        "common/action_pipe_unittest.cc",
        "common/action_processor_unittest.cc",
        "common/action_unittest.cc",
        "common/cow_operation_convert_unittest.cc",
        "common/cpu_limiter_unittest.cc",
        "common/fake_prefs.cc",
        "common/file_fetcher_unittest.cc",
        "common/hash_calculator_unittest.cc",
        "common/hwid_override_unittest.cc",
        "common/metrics_reporter_stub.cc",
        "common/mock_http_fetcher.cc",
        "common/prefs_unittest.cc",
        "common/terminator_unittest.cc",
        "common/test_utils.cc",
        "lz4diff/lz4diff_compress_unittest.cc",
        "lz4diff/lz4diff_unittest.cc",
        "payload_generator/ab_generator_unittest.cc",
        "payload_generator/blob_file_writer_unittest.cc",
        "payload_generator/block_mapping_unittest.cc",
        "payload_generator/boot_img_filesystem_unittest.cc",
        "payload_generator/deflate_utils_unittest.cc",
        "payload_generator/delta_diff_utils_unittest.cc",
        "payload_generator/erofs_filesystem_unittest.cc",
        "payload_generator/ext2_filesystem_unittest.cc",
        "payload_generator/extent_ranges_unittest.cc",
        "payload_generator/extent_utils_unittest.cc",
        "payload_generator/fake_filesystem.cc",
        "payload_generator/full_update_generator_unittest.cc",
        "payload_generator/mapfile_filesystem_unittest.cc",
        "payload_generator/merge_sequence_generator_unittest.cc",
        "payload_generator/payload_file_unittest.cc",
        "payload_generator/payload_generation_config_android_unittest.cc",
        "payload_generator/payload_generation_config_unittest.cc",
        "payload_generator/payload_properties_unittest.cc",
        "payload_generator/payload_signer_unittest.cc",
        "payload_generator/squashfs_filesystem_unittest.cc",
        "payload_generator/zip_unittest.cc",
        "testrunner.cc",
    ],
}

cc_test_host {
    name: "update_engine_host_unittests",
    defaults: [
        "ue_defaults",
        "libpayload_generator_exports",
    ],
    strip: {
        none: true,
    },
    cflags: [
        "-g3",
    ],
    srcs: [":update_engine_host_unittest_srcs"],
    data: [
        ":ue_unittest_delta_generator",
        ":ue_unittest_disk_imgs",
        ":ue_unittest_erofs_imgs",
        ":ue_unittest_keys",
        "otacerts.zip",
        "unittest_key.pem",
        "unittest_key2.pem",
        "unittest_key_RSA4096.pem",
        "unittest_key_EC.pem",
        "update_engine.conf",
    ],
    static_libs: [
        "libcurl",
        "libgmock",
        "libpayload_generator",
    ],
}

// update_engine_unittests (type: executable)
// ========================================================
// Main unittest file.
cc_test {
    name: "update_engine_unittests",
    defaults: [
        "ue_defaults",
        "libpayload_generator_exports",
        "libupdate_engine_android_exports",
    ],

    static_libs: [
        "libpayload_generator",
        "libbrillo-test-helpers",
        "libgmock",
        "libchrome_test_helpers",
        "libupdate_engine_android",
        "libdm",
    ],

    header_libs: [
        "libstorage_literals_headers",
    ],

    data: [
        ":test_http_server",
        ":test_subprocess",
        ":ue_unittest_delta_generator",
        ":ue_unittest_disk_imgs",
        ":ue_unittest_erofs_imgs",
        ":ue_unittest_keys",
        "otacerts.zip",
        "unittest_key.pem",
        "unittest_key2.pem",
        "unittest_key_RSA4096.pem",
        "unittest_key_EC.pem",
        "update_engine.conf",
    ],

    // We cannot use the default generated AndroidTest.xml because of the use of helper modules
    // (i.e. test_http_server, test_subprocess, ue_unittest_delta_generator).
    test_config: "test_config.xml",
    test_suites: ["device-tests"],

    srcs: [
        ":update_engine_host_unittest_srcs",
        "aosp/apex_handler_android_unittest.cc",
        "aosp/cleanup_previous_update_action_unittest.cc",
        "aosp/dynamic_partition_control_android_unittest.cc",
        "aosp/update_attempter_android_integration_test.cc",
        "aosp/update_attempter_android_unittest.cc",
        "certificate_checker_unittest.cc",
        "common/http_fetcher_unittest.cc",
        "common/proxy_resolver_unittest.cc",
        "common/subprocess_unittest.cc",
        "common/utils_unittest.cc",
        "download_action_android_unittest.cc",
        "libcurl_http_fetcher_unittest.cc",
        "payload_consumer/bzip_extent_writer_unittest.cc",
        "payload_consumer/cached_file_descriptor_unittest.cc",
        "payload_consumer/cow_writer_file_descriptor_unittest.cc",
        "payload_consumer/certificate_parser_android_unittest.cc",
        "payload_consumer/delta_performer_integration_test.cc",
        "payload_consumer/delta_performer_unittest.cc",
        "payload_consumer/extent_reader_unittest.cc",
        "payload_consumer/extent_writer_unittest.cc",
        "payload_consumer/extent_map_unittest.cc",
        "payload_consumer/fake_file_descriptor.cc",
        "payload_consumer/file_descriptor_utils_unittest.cc",
        "payload_consumer/file_writer_unittest.cc",
        "payload_consumer/filesystem_verifier_action_unittest.cc",
        "payload_consumer/install_plan_unittest.cc",
        "payload_consumer/install_operation_executor_unittest.cc",
        "payload_consumer/partition_update_generator_android_unittest.cc",
        "payload_consumer/partition_writer_unittest.cc",
        "payload_consumer/postinstall_runner_action_unittest.cc",
        "payload_consumer/snapshot_extent_writer_unittest.cc",
        "payload_consumer/vabc_partition_writer_unittest.cc",
        "payload_consumer/verity_writer_android_unittest.cc",
        "payload_consumer/xor_extent_writer_unittest.cc",
        "payload_consumer/xz_extent_writer_unittest.cc",
        "update_status_utils_unittest.cc",
    ],
}

// Brillo update payload generation script
// ========================================================
sh_binary {
    name: "brillo_update_payload",
    device_supported: false,
    host_supported: true,

    src: "scripts/brillo_update_payload",
    required: [
        "delta_generator",
        "shflags",
        "simg2img",
    ],

    target: {
        darwin: {
            enabled: false,
        },
    },
}

// update_engine header library
cc_library_headers {
    name: "libupdate_engine_headers",

    // This header library is available to core and product modules.
    product_available: true,

    export_include_dirs: ["."],
    apex_available: [
        "com.android.gki.*",
        "//apex_available:platform",
    ],
    host_supported: true,
    recovery_available: true,
    ramdisk_available: true,

    target: {
        darwin: {
            enabled: false,
        },
    }
}

cc_binary_host {
    name: "cow_converter",
    defaults: [
        "ue_defaults",
        "libpayload_consumer_exports",
    ],
    srcs: [
        "aosp/cow_converter.cc",
    ],
    static_libs: [
        "liblog",
        "libbrotli",
        "libbase",
        "libcow_operation_convert",
        "libcow_size_estimator",
        "libpayload_consumer",
        "libpayload_extent_ranges",
        "libpayload_extent_utils",
        "libsnapshot_cow",
        "libz",
        "update_metadata-protos",
    ],
}

cc_library_static {
    name: "lz4diff-protos",
    host_supported: true,
    ramdisk_available: true,
    recovery_available: true,

    srcs: ["lz4diff/lz4diff.proto"],
    cflags: [
        "-Wall",
        "-Werror",
    ],
    proto: {
        canonical_path_from_root: false,
        export_proto_headers: true,
    },
}
