# Copyright 2019 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("../../../gni/angle.gni")

if (angle_use_wayland) {
  import("//build_overrides/wayland.gni")
}

config("volk_config") {
  include_dirs = [ "." ]
}

source_set("volk") {
  sources = [
    "volk.c",
    "volk.h",
  ]
  public_configs = [ ":volk_config" ]
  configs += [ "$angle_root:angle_no_cfi_icall" ]
  public_deps = [ "$angle_vulkan_headers_dir:vulkan_headers" ]
  if (angle_use_wayland) {
    include_dirs = [ "$wayland_dir/src" ]
  }
}
