//
// Copyright (C) 2018 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.
//

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

cc_defaults {
    name: "libsnapshot_defaults",
    defaults: ["fs_mgr_defaults"],
    cflags: [
        "-D_FILE_OFFSET_BITS=64",
        "-Wall",
        "-Werror",
    ],
    shared_libs: [
        "libbase",
        "libchrome",
        "libcutils",
        "liblog",
    ],
    static_libs: [
        "libbrotli",
        "libdm",
        "libfstab",
        "update_metadata-protos",
    ],
    whole_static_libs: [
        "libbrotli",
        "libcutils",
        "libext2_uuid",
        "libext4_utils",
        "libfstab",
        "libsnapuserd_client",
        "libz",
    ],
    header_libs: [
        "libfiemap_headers",
        "libstorage_literals_headers",
        "libupdate_engine_headers",
    ],
    export_static_lib_headers: [
        "update_metadata-protos",
    ],
    export_header_lib_headers: [
        "libfiemap_headers",
    ],
    export_include_dirs: ["include"],
    proto: {
        type: "lite",
        export_proto_headers: true,
        canonical_path_from_root: false,
    },
}

cc_defaults {
    name: "libsnapshot_hal_deps",
    cflags: [
        "-DLIBSNAPSHOT_USE_HAL",
    ],
    shared_libs: [
        "android.hardware.boot@1.0",
        "android.hardware.boot@1.1",
        "android.hardware.boot-V1-ndk",
        "libboot_control_client",
    ],
}

filegroup {
    name: "libsnapshot_sources",
    srcs: [
        "android/snapshot/snapshot.proto",
        "device_info.cpp",
        "snapshot.cpp",
        "snapshot_stats.cpp",
        "snapshot_stub.cpp",
        "snapshot_metadata_updater.cpp",
        "partition_cow_creator.cpp",
        "return.cpp",
        "utility.cpp",
    ],
}

cc_library_headers {
    name: "libsnapshot_headers",
    recovery_available: true,
    defaults: ["libsnapshot_defaults"],
}

cc_library_static {
    name: "libsnapshot_static",
    defaults: [
        "libsnapshot_defaults",
        "libsnapshot_hal_deps",
    ],
    srcs: [":libsnapshot_sources"],
    static_libs: [
        "libfs_mgr_binder"
    ],
}

cc_library {
    name: "libsnapshot",
    defaults: [
        "libsnapshot_defaults",
        "libsnapshot_cow_defaults",
        "libsnapshot_hal_deps",
    ],
    srcs: [":libsnapshot_sources"],
    shared_libs: [
        "libfs_mgr_binder",
        "liblp",
        "libprotobuf-cpp-lite",
    ],
    static_libs: [
        "libc++fs",
        "libsnapshot_cow",
    ]
}

cc_library_static {
    name: "libsnapshot_init",
    native_coverage : true,
    defaults: ["libsnapshot_defaults"],
    srcs: [":libsnapshot_sources"],
    ramdisk_available: true,
    recovery_available: true,
    cflags: [
        "-DLIBSNAPSHOT_NO_COW_WRITE",
    ],
    static_libs: [
        "libfs_mgr",
    ],
}

cc_library_static {
    name: "libsnapshot_nobinder",
    defaults: [
        "libsnapshot_defaults",
        "libsnapshot_hal_deps",
    ],
    srcs: [":libsnapshot_sources"],
    recovery_available: true,
    cflags: [
        "-DLIBSNAPSHOT_NO_COW_WRITE",
    ],
    static_libs: [
        "libfs_mgr",
    ],
}

cc_defaults {
    name: "libsnapshot_cow_defaults",
    defaults: [
        "fs_mgr_defaults",
    ],
    cflags: [
        "-D_FILE_OFFSET_BITS=64",
        "-Wall",
        "-Werror",
    ],
    shared_libs: [
        "libbase",
        "liblog",
    ],
    static_libs: [
        "libbrotli",
        "libz",
        "liblz4",
        "libzstd",
    ],
    header_libs: [
        "libupdate_engine_headers",
    ],
}

cc_library_static {
    name: "libsnapshot_cow",
    defaults: [
        "libsnapshot_cow_defaults",
    ],
    srcs: [
        "libsnapshot_cow/cow_compress.cpp",
        "libsnapshot_cow/cow_decompress.cpp",
        "libsnapshot_cow/cow_format.cpp",
        "libsnapshot_cow/cow_reader.cpp",
        "libsnapshot_cow/parser_v2.cpp",
        "libsnapshot_cow/snapshot_reader.cpp",
        "libsnapshot_cow/writer_base.cpp",
        "libsnapshot_cow/writer_v2.cpp",
    ],
    export_include_dirs: ["include"],
    host_supported: true,
    recovery_available: true,
    ramdisk_available: true,
    vendor_ramdisk_available: true,
}

cc_library_static {
    name: "libsnapshot_test_helpers",
    defaults: ["libsnapshot_defaults"],
    export_include_dirs: [
        "include_test",
    ],
    srcs: [
        "android/snapshot/snapshot.proto",
        "test_helpers.cpp",
    ],
    shared_libs: [
        "android.hardware.boot@1.1",
        "libcrypto",
    ],
    export_shared_lib_headers: [
        "android.hardware.boot@1.1",
    ],
    header_libs: [
        "libstorage_literals_headers",
    ],
    export_header_lib_headers: [
        "libstorage_literals_headers",
    ],
    static_libs: [
        "libfs_mgr",
        "libgmock",
        "libgtest",
    ],
}

cc_defaults {
    name: "libsnapshot_test_defaults",
    defaults: ["libsnapshot_defaults", "libsnapshot_cow_defaults"],
    srcs: [
        "partition_cow_creator_test.cpp",
        "snapshot_metadata_updater_test.cpp",
        "snapshot_test.cpp",
    ],
    shared_libs: [
        "libbinder",
        "libcrypto",
        "libhidlbase",
        "libprotobuf-cpp-lite",
        "libutils",
        "libz",
    ],
    static_libs: [
        "android.hardware.boot@1.0",
        "android.hardware.boot@1.1",
        "android.hardware.boot-V1-ndk",
        "libbrotli",
        "libc++fs",
        "libfs_mgr_binder",
        "libgflags",
        "libgsi",
        "libgmock",
        "liblp",
        "libsnapshot_static",
        "libsnapshot_cow",
        "libsnapshot_test_helpers",
        "libsparse",
    ],
    header_libs: [
        "libstorage_literals_headers",
    ],
    auto_gen_config: true,
    require_root: true,
    compile_multilib: "first",
}

cc_test {
    name: "vts_libsnapshot_test",
    defaults: ["libsnapshot_test_defaults", "libsnapshot_hal_deps"],
    test_suites: [
        "vts",
        "device-tests"
    ],
    test_options: {
        min_shipping_api_level: 30,
    },
}

cc_test {
    name: "vab_legacy_tests",
    defaults: ["libsnapshot_test_defaults", "libsnapshot_hal_deps"],
    cppflags: [
        "-DLIBSNAPSHOT_TEST_VAB_LEGACY",
    ],
    test_suites: [
        "device-tests"
    ],
    test_options: {
        // Legacy VAB launched in Android R.
        min_shipping_api_level: 30,
    },
}

cc_test {
    name: "vabc_legacy_tests",
    defaults: ["libsnapshot_test_defaults", "libsnapshot_hal_deps"],
    cppflags: [
        "-DLIBSNAPSHOT_TEST_VABC_LEGACY",
    ],
    test_suites: [
        "device-tests"
    ],
    test_options: {
        // Legacy VABC launched in Android S.
        min_shipping_api_level: 31,
    },
}

cc_test {
    name: "vts_ota_config_test",
    srcs: [
        "vts_ota_config_test.cpp",
    ],
    shared_libs: [
        "libbase",
    ],
    test_suites: [
        "vts",
    ],
    test_options: {
        min_shipping_api_level: 33,
    },
    auto_gen_config: true,
    require_root: true,
}

cc_binary {
    name: "snapshotctl",
    defaults: ["libsnapshot_cow_defaults", "libsnapshot_hal_deps"],
    srcs: [
        "snapshotctl.cpp",
    ],
    static_libs: [
        "libbrotli",
        "libc++fs",
        "libfstab",
        "libz",
        "update_metadata-protos",
    ],
    shared_libs: [
        "libbase",
        "libext2_uuid",
        "libext4_utils",
        "libfs_mgr_binder",
        "libhidlbase",
        "liblog",
        "liblp",
        "libprotobuf-cpp-lite",
        "libsnapshot",
        "libstatslog",
        "libutils",
    ],
    header_libs: [
        "libstorage_literals_headers",
    ],
    product_variables: {
        debuggable: {
            cppflags: [
                "-DSNAPSHOTCTL_USERDEBUG_OR_ENG",
            ],
            shared_libs: [
                "android.hardware.boot@1.0",
                "android.hardware.boot@1.1",
                "android.hardware.boot-V1-ndk",
                "libboot_control_client",
            ],
        },
    },
}

cc_test {
    name: "cow_api_test",
    defaults: [
        "fs_mgr_defaults",
        "libsnapshot_cow_defaults",
    ],
    srcs: [
        "libsnapshot_cow/snapshot_reader_test.cpp",
        "libsnapshot_cow/test_v2.cpp",
    ],
    cflags: [
        "-D_FILE_OFFSET_BITS=64",
        "-Wall",
        "-Werror",
    ],
    shared_libs: [
        "libbase",
        "libcrypto",
        "liblog",
        "libz",
    ],
    static_libs: [
        "libbrotli",
        "libgtest",
        "libsnapshot_cow",
    ],
    test_suites: [
        "device-tests"
    ],
    test_options: {
        min_shipping_api_level: 30,
    },
    auto_gen_config: true,
    require_root: false,
    host_supported: true,
}

cc_binary {
    name: "inspect_cow",
    host_supported: true,
    device_supported: true,
    defaults: ["libsnapshot_cow_defaults"],
    cflags: [
        "-D_FILE_OFFSET_BITS=64",
        "-Wall",
        "-Werror",
    ],
    static_libs: [
        "libbase",
        "libbrotli",
        "libcrypto_static",
        "liblog",
        "libgflags",
        "libsnapshot_cow",
        "libz",
    ],
    shared_libs: [
    ],
    srcs: [
        "libsnapshot_cow/inspect_cow.cpp",
    ],
}

python_library_host {
    name: "snapshot_proto_python",
    srcs: [
        "android/snapshot/snapshot.proto",
    ],
    proto: {
        canonical_path_from_root: false,
    },
}
