// ANDROIDMK TRANSLATION ERROR: unsupported conditional
// ifneq ($(filter hikey960, $(TARGET_DEVICE)),)

// *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS.  PLEASE
//     CONSULT THE OWNERS BEFORE DEPENDING ON IT IN YOUR PROJECT. ***
soong_namespace {}

package {
    default_applicable_licenses: ["mali_bifrost_license"],
}

license_kind {
    name: "mali_bifrost",
    conditions: ["proprietary"],
}

license {
    name: "mali_bifrost_license",
    visibility: [":__subpackages__"],
    license_kinds: ["mali_bifrost"],
    license_text: [
         "END_USER_LICENCE_AGREEMENT.txt",
    ],
}

cc_prebuilt_library_shared {
    name: "libGLES_mali",
    strip: {
        none: true,
    },
    arch: {
        arm: {
            srcs: ["lib/egl/libGLES_mali.so"],
        },
        arm64: {
            srcs: ["lib64/egl/libGLES_mali.so"],
        },
    },
    vendor: true,
    relative_install_path: "egl",

    compile_multilib: "both",
    shared_libs: [
        "android.hardware.graphics.common@1.0",
        "libz",
        "libnativewindow",
        "libc++",
        "liblog",
        "libm",
        "libc",
        "libdl",
    ],
}

cc_prebuilt_library_shared {
    name: "libbccArm",
    strip: {
        none: true,
    },
    arch: {
        arm64: {
            srcs: ["lib64/libbccArm.so"],
        },
    },
    vendor: true,
    compile_multilib: "64",
    // Bypass prebuilt ELF check because libLLVM is not a module (it is copied by
    // PRODUCT_COPY_FILES instead).
    check_elf_files: false,
}

cc_prebuilt_library_shared {
    name: "libRSDriverArm",
    strip: {
        none: true,
    },
    arch: {
        arm: {
            srcs: ["lib/libRSDriverArm.so"],
        },
        arm64: {
            srcs: ["lib64/libRSDriverArm.so"],
        },
    },
    vendor: true,
    compile_multilib: "both",
    shared_libs: [
        "libRS_internal",
        "libRSCpuRef",
        "liblog",
        "libnativewindow",
        "libbcinfo",
        "libdl",
        "libc++",
        "libc",
        "libm",
    ],
}

cc_prebuilt_library_shared {
    name: "libmalicore.bc",

    strip: {
        none: true,
    },
    arch: {
        arm: {
            srcs: ["lib/libmalicore.bc"],
        },
        arm64: {
            srcs: ["lib64/libmalicore.bc"],
        },
    },
   vendor: true,
   compile_multilib: "both",
}

cc_prebuilt_library_shared {
    name: "vulkan.hikey960",

    strip: {
        none: true,
    },
    arch: {
        arm: {
            srcs: ["lib/hw/vulkan.hikey960.so"],
        },
        arm64: {
            srcs: ["lib64/hw/vulkan.hikey960.so"],
        },
    },
    vendor: true,
    relative_install_path: "hw",
    compile_multilib: "both",
    shared_libs: [
        "android.hardware.graphics.common@1.0",
        "libz",
        "libnativewindow",
        "libc++",
        "liblog",
        "libm",
        "libc",
        "libdl",
    ],
    // Bypass prebuilt ELF check because the DT_SONAME "libGLES_mali.so" is
    // different from LOCAL_MODULE "vulkan.hikey960.so".
    check_elf_files: false,
}

// ANDROIDMK TRANSLATION ERROR: endif from unsupported conditional
// endif
