// THIS FILE IS AUTOGENERATED BY development/vndk/snapshot/gen_buildfiles.py
// DO NOT EDIT

prebuilt_etc {
    name: "llndk.libraries.28.txt",
    target: {
        android_arm: {
            src: "arm/configs/llndk.libraries.28.txt",
        },
        android_arm64: {
            src: "arm64/configs/llndk.libraries.28.txt",
        },
        android_x86: {
            src: "x86/configs/llndk.libraries.28.txt",
        },
        android_x86_64: {
            src: "x86_64/configs/llndk.libraries.28.txt",
        },
    },
}

prebuilt_etc {
    name: "vndksp.libraries.28.txt",
    target: {
        android_arm: {
            src: "arm/configs/vndksp.libraries.28.txt",
        },
        android_arm64: {
            src: "arm64/configs/vndksp.libraries.28.txt",
        },
        android_x86: {
            src: "x86/configs/vndksp.libraries.28.txt",
        },
        android_x86_64: {
            src: "x86_64/configs/vndksp.libraries.28.txt",
        },
    },
}

prebuilt_etc {
    name: "vndkcore.libraries.28.txt",
    target: {
        android_arm: {
            src: "arm/configs/vndkcore.libraries.28.txt",
        },
        android_arm64: {
            src: "arm64/configs/vndkcore.libraries.28.txt",
        },
        android_x86: {
            src: "x86/configs/vndkcore.libraries.28.txt",
        },
        android_x86_64: {
            src: "x86_64/configs/vndkcore.libraries.28.txt",
        },
    },
}

prebuilt_etc {
    name: "vndkprivate.libraries.28.txt",
    target: {
        android_arm: {
            src: "arm/configs/vndkprivate.libraries.28.txt",
        },
        android_arm64: {
            src: "arm64/configs/vndkprivate.libraries.28.txt",
        },
        android_x86: {
            src: "x86/configs/vndkprivate.libraries.28.txt",
        },
        android_x86_64: {
            src: "x86_64/configs/vndkprivate.libraries.28.txt",
        },
    },
}

// Some vendor prebuilts reference libprotobuf-cpp-lite.so and
// libprotobuf-cpp-full.so and expect the 3.0.0-beta3 version.
// The new version of protobuf will be installed as
// /vendor/lib64/libprotobuf-cpp-lite-3.9.1.so.  The VNDK doesn't
// help here because we compile old devices against master and not
// an old VNDK snapshot.  We need to continue to provide a vendor
// libprotobuf-cpp-lite.so until all products in master get updated
// prebuilts or are obsoleted.

// TODO(b/142220143): should these modules get moved somewhere else?
cc_prebuilt_library_shared {
    name: "libprotobuf-cpp-lite-vendorcompat",
    stem: "libprotobuf-cpp-lite",
    vendor: true,
    // These are already stripped, and restripping them just issues diagnostics.
    strip: {
        none: true,
    },
    target: {
        android_arm64: {
            srcs: ["arm64/arch-arm64-armv8-a/shared/vndk-core/libprotobuf-cpp-lite.so"],
        },
        android_arm: {
            srcs: ["arm/arch-arm-armv7-a-neon/shared/vndk-core/libprotobuf-cpp-lite.so"],
        },
        android_x86_64: {
            srcs: ["x86_64/arch-x86_64-x86_64/shared/vndk-core/libprotobuf-cpp-lite.so"],
        },
        android_x86: {
            srcs: ["x86/arch-x86-x86/shared/vndk-core/libprotobuf-cpp-lite.so"],
        },
    },

    shared_libs: [
        "libc++",
        "libc",
        "libdl",
        "liblog",
        "libm",
        "libz",
    ],
}

cc_prebuilt_library_shared {
    name: "libprotobuf-cpp-full-vendorcompat",
    stem: "libprotobuf-cpp-full",
    vendor: true,
    // These are already stripped, and restripping them just issues diagnostics.
    strip: {
        none: true,
    },
    target: {
        android_arm64: {
            srcs: ["arm64/arch-arm64-armv8-a/shared/vndk-core/libprotobuf-cpp-full.so"],
        },
        android_arm: {
            srcs: ["arm/arch-arm-armv7-a-neon/shared/vndk-core/libprotobuf-cpp-full.so"],
        },
        android_x86_64: {
            srcs: ["x86_64/arch-x86_64-x86_64/shared/vndk-core/libprotobuf-cpp-full.so"],
        },
        android_x86: {
            srcs: ["x86/arch-x86-x86/shared/vndk-core/libprotobuf-cpp-full.so"],
        },
    },

    shared_libs: [
        "libc++",
        "libc",
        "libdl",
        "liblog",
        "libm",
        "libz",
    ],
}
