package {
    default_applicable_licenses: ["Android-Apache-2.0"],
}

rust_ffi_static {
    name: "libpvmfw",
    crate_name: "pvmfw",
    defaults: ["vmbase_ffi_defaults"],
    srcs: ["src/main.rs"],
    features: [
        "legacy",
    ],
    rustlibs: [
        "libaarch64_paging",
        "libbssl_avf_nostd",
        "libbssl_sys_nostd",
        "libcbor_util_nostd",
        "libciborium_nostd",
        "libciborium_io_nostd",
        "libcstr",
        "libdiced_open_dice_nostd",
        "libfdtpci",
        "liblibfdt",
        "liblog_rust_nostd",
        "libonce_cell_nostd",
        "libpvmfw_avb_nostd",
        "libpvmfw_embedded_key",
        "libpvmfw_fdt_template",
        "libservice_vm_version",
        "libsmccc",
        "libstatic_assertions",
        "libtinyvec_nostd",
        "libuuid_nostd",
        "libvirtio_drivers",
        "libvmbase",
        "libzerocopy_nostd",
        "libzeroize_nostd",
    ],
}

// Generates an empty file.
genrule {
    name: "empty_file",
    out: ["empty_file"],
    cmd: "touch $(out)",
}

rust_defaults {
    name: "libpvmfw.test.defaults",
    defaults: ["avf_build_flags_rust"],
    test_suites: ["general-tests"],
    test_options: {
        unit_test: true,
    },
    prefer_rlib: true,
    rustlibs: [
        "libcstr",
    ],
}

rust_test {
    name: "libpvmfw.bootargs.test",
    host_supported: true,
    // For now, only bootargs.rs is written to be conditionally compiled with std.
    srcs: ["src/bootargs.rs"],
    defaults: ["libpvmfw.test.defaults"],
    rustlibs: [
        "libzeroize",
    ],
}

rust_test {
    name: "libpvmfw.device_assignment.test",
    srcs: ["src/device_assignment.rs"],
    defaults: ["libpvmfw.test.defaults"],
    rustlibs: [
        "libdts",
        "liblibfdt",
        "liblog_rust",
        "libpvmfw_fdt_template",
        "libzerocopy",
    ],
    data: [
        ":test_pvmfw_devices_vm_dtbo",
        ":test_pvmfw_devices_vm_dtbo_without_symbols",
        ":test_pvmfw_devices_vm_dtbo_with_duplicated_iommus",
        ":test_pvmfw_devices_overlapping_pvmfw",
        ":test_pvmfw_devices_vm_dtbo_with_dependencies",
        ":test_pvmfw_devices_with_rng",
        ":test_pvmfw_devices_with_multiple_devices_iommus",
        ":test_pvmfw_devices_with_iommu_sharing",
        ":test_pvmfw_devices_with_iommu_id_conflict",
        ":test_pvmfw_devices_without_device",
        ":test_pvmfw_devices_without_iommus",
        ":test_pvmfw_devices_with_duplicated_pviommus",
        ":test_pvmfw_devices_with_multiple_reg_iommus",
        ":test_pvmfw_devices_with_dependency",
        ":test_pvmfw_devices_with_dependency_loop",
        ":test_pvmfw_devices_with_multiple_dependencies",
        ":test_pvmfw_devices_expected_dt",
    ],
    data_bins: ["dtc_static"],
    compile_multilib: "first",
    // To use libpvmfw_fdt_template for testing
    enabled: false,
    target: {
        android_arm64: {
            enabled: true,
        },
    },
}

rust_test {
    name: "libpvmfw.dice.test",
    srcs: ["src/dice.rs"],
    defaults: ["libpvmfw.test.defaults"],
    rustlibs: [
        "libcbor_util",
        "libciborium",
        "libdiced_open_dice",
        "libpvmfw_avb_nostd",
        "libzerocopy_nostd",
        "libhex",
    ],
}

genrule {
    name: "test_pvmfw_devices_vm_dtbo",
    defaults: ["dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_vm_dtbo.dts"],
    out: ["test_pvmfw_devices_vm_dtbo.dtbo"],
}

genrule {
    name: "test_pvmfw_devices_vm_dtbo_without_symbols",
    defaults: ["dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_vm_dtbo_without_symbols.dts"],
    out: ["test_pvmfw_devices_vm_dtbo_without_symbols.dtbo"],
}

genrule {
    name: "test_pvmfw_devices_vm_dtbo_with_duplicated_iommus",
    defaults: ["dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_vm_dtbo_with_duplicated_iommus.dts"],
    out: ["test_pvmfw_devices_vm_dtbo_with_duplicated_iommus.dtbo"],
}

genrule {
    name: "test_pvmfw_devices_vm_dtbo_with_dependencies",
    tools: ["dtc"],
    cmd: "$(location dtc) -@ -I dts -O dtb $(in) -o $(out)",
    srcs: ["testdata/test_pvmfw_devices_vm_dtbo_with_dependencies.dts"],
    out: ["test_pvmfw_devices_vm_dtbo_with_dependencies.dtbo"],
}

genrule_defaults {
    name: "test_device_assignment_dts_to_dtb",
    defaults: ["dts_to_dtb"],
    srcs: ["testdata/test_crosvm_dt_base.dtsi"],
}

genrule {
    name: "test_pvmfw_devices_overlapping_pvmfw",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_overlapping_pvmfw.dts"],
    out: ["test_pvmfw_devices_overlapping_pvmfw.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_rng",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_rng.dts"],
    out: ["test_pvmfw_devices_with_rng.dtb"],
}

genrule {
    name: "test_pvmfw_devices_without_iommus",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_without_iommus.dts"],
    out: ["test_pvmfw_devices_without_iommus.dtb"],
}

genrule {
    name: "test_pvmfw_devices_without_device",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_without_device.dts"],
    out: ["test_pvmfw_devices_without_device.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_multiple_devices_iommus",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_multiple_devices_iommus.dts"],
    out: ["test_pvmfw_devices_with_multiple_devices_iommus.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_iommu_sharing",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_iommu_sharing.dts"],
    out: ["test_pvmfw_devices_with_iommu_sharing.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_iommu_id_conflict",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_iommu_id_conflict.dts"],
    out: ["test_pvmfw_devices_with_iommu_id_conflict.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_duplicated_pviommus",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_duplicated_pviommus.dts"],
    out: ["test_pvmfw_devices_with_duplicated_pviommus.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_multiple_reg_iommus",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_multiple_reg_iommus.dts"],
    out: ["test_pvmfw_devices_with_multiple_reg_iommus.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_dependency",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_dependency.dts"],
    out: ["test_pvmfw_devices_with_dependency.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_multiple_dependencies",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_multiple_dependencies.dts"],
    out: ["test_pvmfw_devices_with_multiple_dependencies.dtb"],
}

genrule {
    name: "test_pvmfw_devices_with_dependency_loop",
    defaults: ["test_device_assignment_dts_to_dtb"],
    srcs: ["testdata/test_pvmfw_devices_with_dependency_loop.dts"],
    out: ["test_pvmfw_devices_with_dependency_loop.dtb"],
}

// We can't use genrule because preprocessed platform DT is built with cc_object.
// cc_genrule doesn't support default, so we'll build all expected DTs in
// a single build rule.
cc_genrule {
    name: "test_pvmfw_devices_expected_dt",
    srcs: [
        ":pvmfw_platform.dts.preprocessed",
        "testdata/expected_dt_with_dependency.dts",
        "testdata/expected_dt_with_multiple_dependencies.dts",
        "testdata/expected_dt_with_dependency_loop.dts",
    ],
    out: [
        "expected_dt_with_dependency.dtb",
        "expected_dt_with_multiple_dependencies.dtb",
        "expected_dt_with_dependency_loop.dtb",
    ],
    tools: ["dtc"],
    cmd: "FILES=($(in));" +
        "cp $${FILES[0]} $(genDir)/platform_preprocessed.dts;" +
        "for DTS in $${FILES[@]:1}; do" +
        "  DTB=$$(basename -s .dts $${DTS}).dtb;" +
        "  $(location dtc) -@ -i $(genDir) -I dts -O dtb $${DTS} -o $(genDir)/$${DTB};" +
        "done",
    visibility: ["//visibility:private"],
}

cc_binary {
    name: "pvmfw",
    defaults: ["vmbase_elf_defaults"],
    srcs: [
        "idmap.S",
    ],
    static_libs: [
        "libpvmfw",
    ],
    linker_scripts: [
        "image.ld",
        ":vmbase_sections",
    ],
    // `installable: false` is inherited from vmbase_elf_defaults, and that
    // hides this module from Make, which makes it impossible for the Make world
    // to place the unstripped binary to the symbols directory. Marking back as
    // installable exposes this module to the Make world again. Note that this
    // module (pvmfw) still is NOT installed to any of the filesystem images. It
    // is fed into pvmfw_bin and then into pvmfw_img to become a standalone
    // partition image. This is just to package the unstripped file into the
    // symbols zip file for debugging purpose.
    installable: true,
}

raw_binary {
    name: "pvmfw_bin",
    stem: "pvmfw.bin",
    src: ":pvmfw",
    enabled: false,
    target: {
        android_arm64: {
            enabled: true,
        },
    },
}

// Provide pvmfw.bin binary regardless of the architecture for building test.
// Note that skipping tests on unsupported device is easy
// while configuring server configuration to make such tests to run on working
// devices.
prebuilt_etc {
    name: "pvmfw_test",
    filename: "pvmfw_test.bin",
    target: {
        android_arm64: {
            src: ":pvmfw_bin",
        },
    },
    src: ":empty_file",
    installable: false,
}

filegroup {
    name: "pvmfw_embedded_key",
    srcs: [":avb_testkey_rsa4096"],
}

genrule {
    name: "pvmfw_embedded_key_pub_bin",
    tools: ["avbtool"],
    srcs: [":pvmfw_embedded_key"],
    out: ["pvmfw_embedded_key_pub.bin"],
    cmd: "$(location avbtool) extract_public_key --key $(in) --output $(out)",
}

genrule {
    name: "pvmfw_embedded_key_rs",
    srcs: [":pvmfw_embedded_key_pub_bin"],
    out: ["lib.rs"],
    cmd: "(" +
        "    echo '#![no_std]';" +
        "    echo '#![allow(missing_docs)]';" +
        "    echo 'pub const PUBLIC_KEY: &[u8] = &[';" +
        "    xxd -i < $(in);" +
        "    echo '];';" +
        ") > $(out)",
}

rust_library_rlib {
    name: "libpvmfw_embedded_key",
    defaults: ["vmbase_rlib_defaults"],
    srcs: [":pvmfw_embedded_key_rs"],
    crate_name: "pvmfw_embedded_key",
}

prebuilt_etc {
    name: "pvmfw_sign_key",
    src: ":avb_testkey_rsa4096",
    installable: false,
}

// We need to rename *.dts into *.cpp as cc_object doesn't accept *.dts as an
// input
genrule {
    name: "pvmfw_platform.dts.renamed",
    srcs: ["platform.dts"],
    out: ["out.cpp"],
    cmd: "cp $(in) $(out)",
    visibility: ["//visibility:private"],
}

// Then run the macro processor to replace symbols like GIC_SPI into actual
// numbers defined in the ARM DT binding headers
cc_object {
    name: "pvmfw_platform.dts.preprocessed",
    defaults: ["avf_build_flags_cc"],
    header_libs: ["arm_dt_bindings_headers"],
    host_supported: true,
    srcs: [":pvmfw_platform.dts.renamed"],
    cflags: [
        "-E",
        "-P",
        "-xassembler-with-cpp", // allow C preprocessor directives
    ],
    visibility: ["//visibility:private"],
}

// Compile the preprocessed dts into binary and create a rust library source
// having the binary.
cc_genrule {
    name: "pvmfw_fdt_template_rs",
    srcs: [":pvmfw_platform.dts.preprocessed"],
    out: ["lib.rs"],
    tools: ["dtc"],
    cmd: "$(location dtc) -@ -I dts -O dtb -o $(genDir)/compiled.dtbo $(in) && " +
        "(" +
        "    echo '#![no_std]';" +
        "    echo '#![allow(missing_docs)]';" +
        "    echo 'pub const RAW: &[u8] = &[';" +
        "    xxd -i < $(genDir)/compiled.dtbo;" +
        "    echo '];';" +
        ") > $(out)",
    visibility: ["//visibility:private"],
}

rust_library_rlib {
    name: "libpvmfw_fdt_template",
    defaults: ["vmbase_rlib_defaults"],
    srcs: [":pvmfw_fdt_template_rs"],
    crate_name: "pvmfw_fdt_template",
}

bootimg {
    name: "pvmfw_img",
    stem: "pvmfw.img",
    kernel_prebuilt: ":pvmfw_bin",
    header_version: "3",
    partition_name: "pvmfw",
    enabled: false,
    target: {
        android_arm64: {
            enabled: true,
        },
    },
    use_avb: true,
    avb_private_key: ":pvmfw_sign_key",
}
