cc_defaults {
    name: "installd_defaults",

    cflags: [
        "-Wall",
        "-Werror",
        "-Wextra",

        "-Wunreachable-code",
        "-Wunreachable-code-break",
        "-Wunreachable-code-return",
    ],
    srcs: [
        "CacheItem.cpp",
        "CacheTracker.cpp",
        "InstalldNativeService.cpp",
        "QuotaUtils.cpp",
        "dexopt.cpp",
        "globals.cpp",
        "utils.cpp",
        "utils_default.cpp",
        "view_compiler.cpp",
        ":installd_aidl",
    ],
    header_libs: [
        "dex2oat_headers",
    ],
    shared_libs: [
        "libbase",
        "libbinder",
        "libcrypto",
        "libcutils",
        "liblog",
        "liblogwrap",
        "libprocessgroup",
        "libselinux",
        "libutils",
        "server_configurable_flags",
    ],

    product_variables: {
        arc: {
            exclude_srcs: [
                "QuotaUtils.cpp",
            ],
            static_libs: [
                "libarcdiskquota",
                "arc_services_aidl",
            ],
            cflags: [
                "-DUSE_ARC",
            ],
        },
    },

    clang: true,

    tidy: true,
    tidy_checks: [
        "-*",
        "clang-analyzer-security*",
        "cert-*",
        "-cert-err58-cpp",
    ],
    tidy_flags: [
        "-warnings-as-errors=clang-analyzer-security*,cert-*"
    ],
}

//
// Static library used in testing and executable
//

cc_library_static {
    name: "libinstalld",
    defaults: ["installd_defaults"],

    export_include_dirs: ["."],
    aidl: {
        export_aidl_headers: true,
    },

    product_variables: {
        arc: {
            exclude_srcs: [
                "QuotaUtils.cpp",
            ],
            static_libs: [
                "libarcdiskquota",
                "arc_services_aidl",
            ],
            cflags: [
                "-DUSE_ARC",
            ],
        },
    },
}

cc_library_headers {
    name: "libinstalld_headers",
    export_include_dirs: ["."],
}

//
// Executable
//

cc_binary {
    name: "installd",
    defaults: ["installd_defaults"],
    srcs: ["installd.cpp"],

    static_libs: ["libdiskusage"],

    init_rc: ["installd.rc"],

    product_variables: {
        arc: {
            exclude_srcs: [
                "QuotaUtils.cpp",
            ],
            static_libs: [
                "libarcdiskquota",
                "arc_services_aidl",
            ],
            cflags: [
                "-DUSE_ARC",
            ],
        },
    },

    // Needs to be wherever installd is as it's execed by
    // installd.
    required: [ "migrate_legacy_obb_data.sh" ],
}

// OTA chroot tool

cc_binary {
    name: "otapreopt_chroot",
    defaults: ["libapexd-deps"],
    cflags: [
        "-Wall",
        "-Werror",
    ],
    clang: true,

    srcs: [
        "otapreopt_chroot.cpp",
        "otapreopt_utils.cpp",
    ],
    shared_libs: [
        "libbase",
        "liblog",
        "libutils",
    ],
    static_libs: [
        "libapexd",
    ],
}

filegroup {
    name: "installd_aidl",
    srcs: [
        "binder/android/os/IInstalld.aidl",
    ],
    path: "binder",
}

//
// Static library for otapreopt used in testing
//
cc_library_static {
    name: "libotapreoptparameters",
    cflags: [
        "-Wall",
        "-Werror"
    ],

    srcs: ["otapreopt_parameters.cpp"],

    export_include_dirs: ["."],

    shared_libs: [
        "libbase",
        "libcutils",
        "liblog",
        "libprocessgroup",
        "libutils",
    ],
}

//
//  OTA Executable
//

cc_binary {
    name: "otapreopt",
    cflags: [
        "-Wall",
        "-Werror"
    ],

    srcs: [
        "dexopt.cpp",
        "globals.cpp",
        "otapreopt.cpp",
        "otapreopt_utils.cpp",
        "utils.cpp",
        "utils_default.cpp",
        "view_compiler.cpp",
    ],

    header_libs: ["dex2oat_headers"],

    static_libs: [
        "libartimagevalues",
        "libdiskusage",
        "libotapreoptparameters",
    ],

    shared_libs: [
        "libbase",
        "libcrypto",
        "libcutils",
        "liblog",
        "liblogwrap",
        "libprocessgroup",
        "libselinux",
        "libutils",
        "server_configurable_flags",
    ],
}

// OTA slot script
sh_binary {
    name: "otapreopt_slot",
    src: "otapreopt_slot.sh",
    init_rc: ["otapreopt.rc"],
}

// OTA postinstall script
sh_binary {
    name: "otapreopt_script",
    src: "otapreopt_script.sh",
    // Let this depend on otapreopt, the chroot tool and the slot script,
    // so we just have to mention one in a configuration.
    required: [
        "otapreopt",
        "otapreopt_chroot",
        "otapreopt_slot",
    ],
}

// Script to migrate legacy obb data.
sh_binary {
    name: "migrate_legacy_obb_data.sh",
    src: "migrate_legacy_obb_data.sh"
}
