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

// Headers module is in frameworks/native/vulkan/Android.bp.
ndk_library {
    name: "libvulkan.ndk",
    symbol_file: "libvulkan.map.txt",
    first_version: "24",
    unversioned_until: "current",
}

cc_library_shared {
    name: "libvulkan",
    clang: true,
    sanitize: {
        misc_undefined: ["integer"],
    },

    cflags: [
        "-DLOG_TAG=\"vulkan\"",
        "-DVK_USE_PLATFORM_ANDROID_KHR",
        "-DVK_NO_PROTOTYPES",
        "-fvisibility=hidden",
        "-fstrict-aliasing",
        "-Weverything",
        "-Werror",
        "-Wno-padded",
        "-Wno-switch-enum",
        "-Wno-undef",

        //"-DLOG_NDEBUG=0",
    ],

    cppflags: [
        "-std=c++14",
        "-Wno-c99-extensions",
        "-Wno-c++98-compat-pedantic",
        "-Wno-exit-time-destructors",
        "-Wno-float-equal",
        "-Wno-global-constructors",
        "-Wno-zero-length-array",
    ],

    srcs: [
        "api.cpp",
        "api_gen.cpp",
        "debug_report.cpp",
        "driver.cpp",
        "driver_gen.cpp",
        "layers_extensions.cpp",
        "stubhal.cpp",
        "swapchain.cpp",
        "vulkan_loader_data.cpp",
    ],

    export_header_lib_headers: ["vulkan_headers"],
    header_libs: [
        "vulkan_headers",
    ],
    shared_libs: [
        "libziparchive",
        "libhardware",
        "libsync",
        "libbase",
        "liblog",
        "libui",
        "libutils",
        "libcutils",
        "libz",
    ],
    static_libs: ["libgrallocusage"],
}
