| # Copyright 2016 Google, LLC |
| # |
| # Permission is hereby granted, free of charge, to any person obtaining a |
| # copy of this software and associated documentation files (the "Software"), |
| # to deal in the Software without restriction, including without limitation |
| # the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| # and/or sell copies of the Software, and to permit persons to whom the |
| # Software is furnished to do so, subject to the following conditions: |
| # |
| # The above copyright notice and this permission notice (including the next |
| # paragraph) shall be included in all copies or substantial portions of the |
| # Software. |
| # |
| # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
| # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS |
| # IN THE SOFTWARE. |
| |
| import("../../../mesa.gni") |
| |
| config("wsi_config") { |
| include_dirs = [ |
| ".", |
| "$mesa_build_root/include/drm-uapi", |
| ] |
| } |
| |
| mesa_python_action("wsi_entrypoints") { |
| outputs = [ |
| "$target_gen_dir/wsi_common_entrypoints.h", |
| "$target_gen_dir/wsi_common_entrypoints.c", |
| ] |
| |
| script = "$mesa_build_root/src/vulkan/util/vk_entrypoints_gen.py" |
| |
| inputs = [ |
| "$mesa_build_root/src/vulkan/util/vk_dispatch_table_gen.py", |
| "$mesa_build_root/src/vulkan/util/vk_extensions.py", |
| "$mesa_build_root/src/vulkan/util/vk_entrypoints.py", |
| "$mesa_build_root/src/vulkan/registry/vk.xml", |
| ] |
| |
| args = [ |
| "--xml", |
| rebase_path("$mesa_build_root", root_build_dir) + |
| "/src/vulkan/registry/vk.xml", |
| "--proto", |
| "--weak", |
| "--out-h", |
| rebase_path("$target_gen_dir/wsi_common_entrypoints.h", root_build_dir), |
| "--out-c", |
| rebase_path("$target_gen_dir/wsi_common_entrypoints.c", root_build_dir), |
| "--prefix", |
| "wsi", |
| ] |
| } |
| |
| # For non-Linux platforms. |
| mesa_source_set("stub") { |
| public_configs = [ ":wsi_config" ] |
| public_deps = [ "$mesa_build_root/src/vulkan/util" ] |
| deps = [ |
| ":wsi_entrypoints", |
| "$mesa_build_root/src/util:headers", |
| ] |
| sources = [ |
| "$target_gen_dir/wsi_common_entrypoints.c", |
| "$target_gen_dir/wsi_common_entrypoints.h", |
| "wsi_common.c", |
| "wsi_common.h", |
| ] |
| |
| include_dirs = [ "$target_gen_dir", "$mesa_build_root/src/vulkan/runtime" ] |
| |
| configs = [ "//build/config:Wno-conversion" ] |
| } |
| |
| mesa_source_set("wsi") { |
| public_configs = [ ":wsi_config" ] |
| public_deps = [ "$mesa_build_root/src/vulkan/util" ] |
| deps = [ |
| ":wsi_entrypoints", |
| "$mesa_build_root/src/util:headers", |
| "$mesa_build_root/src/vulkan/runtime", |
| ] |
| sources = [ |
| "$target_gen_dir/wsi_common_entrypoints.c", |
| "$target_gen_dir/wsi_common_entrypoints.h", |
| "wsi_common.c", |
| "wsi_common.h", |
| ] |
| |
| include_dirs = [ "$target_gen_dir" ] |
| |
| configs = [ "//build/config:Wno-conversion" ] |
| } |