# Copyright 2018 Google LLC
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("../../../../gn/skia.gni")

config("vulkanmemoryallocator_public") {
  include_dirs = [
    ".",
    "$skia_vulkan_memory_allocator_dir/include",
  ]
}

source_set("vulkanmemoryallocator") {
  public_configs = [ ":vulkanmemoryallocator_public" ]

  include_dirs = [
    "../../../../include/third_party/vulkan",
    "../../../../",
  ]
  defines = [ "SK_USE_INTERNAL_VULKAN_HEADERS" ]

  if (skia_disable_vma_stl_shared_mutex) {
    defines += [ "VMA_USE_STL_SHARED_MUTEX=0" ]
  }

  sources = [
    "VulkanMemoryAllocatorWrapper.cpp",
    "VulkanMemoryAllocatorWrapper.h",
  ]

  # Warnings are just noise if we're not maintaining the code.
  if (is_win) {
    cflags = [ "/w" ]
  } else {
    cflags = [ "-w" ]
  }
}
