Hash :
a70b6f56
Author :
Date :
2024-01-26T20:37:07
Add support for WinUI3/Windows App SDK Adds the necessary build args and code changes to support building ANGLE for WinUI 3 (aka Windows App SDK). To reduce the set of changes, and because it is functionally the same, a Windows App SDK build is basically a UWP build, but with an extra define so that the code can make a few changes to the namespaces and includes used. The main changes to the code are: - ICoreWindow is no longer used - Dispatcher has a few changes in naming and args - ISwapChainPanel is now in a different namespace Bug: angleproject:8490 Change-Id: Ibb298e3e86e8298dac12c2019eac7996a8185c51 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5230637 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
# Copyright 2020 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.
#
# This file houses the build configuration for the ANGLE D3D back-ends.
import("../../../../gni/angle.gni")
import("d3d_backend.gni")
assert(angle_enable_d3d11 || angle_enable_d3d9)
config("angle_d3d_shared_config") {
defines = [ "ANGLE_PRELOADED_D3DCOMPILER_MODULE_NAMES={ " + "\"d3dcompiler_47.dll\", \"d3dcompiler_46.dll\", \"d3dcompiler_43.dll\" }" ]
}
angle_source_set("angle_d3d_shared") {
sources = d3d_shared_sources
public_deps = [
"$angle_root:angle_d3d_format_tables",
"$angle_root:angle_gpu_info_util",
"$angle_root:angle_image_util",
"$angle_root:libANGLE_headers",
]
public_configs = [ ":angle_d3d_shared_config" ]
}
if (angle_enable_d3d9) {
config("angle_d3d9_backend_config") {
defines = [ "ANGLE_ENABLE_D3D9" ]
ldflags = [ "/DELAYLOAD:d3d9.dll" ]
}
angle_source_set("angle_d3d9_backend") {
sources = d3d9_backend_sources
libs = [
"d3d9.lib",
"delayimp.lib",
]
public_deps = [ ":angle_d3d_shared" ]
public_configs = [ ":angle_d3d9_backend_config" ]
}
}
if (angle_enable_d3d11) {
config("angle_d3d11_backend_config") {
defines = [ "ANGLE_ENABLE_D3D11" ]
if (angle_enable_d3d11_compositor_native_window) {
defines += [ "ANGLE_ENABLE_D3D11_COMPOSITOR_NATIVE_WINDOW" ]
}
}
angle_source_set("angle_d3d11_backend") {
sources = d3d11_backend_sources
libs = [ "dxguid.lib" ]
public_deps = [ ":angle_d3d_shared" ]
public_configs = [ ":angle_d3d11_backend_config" ]
}
config("angle_enable_winuwp_config") {
defines = [ "ANGLE_ENABLE_WINDOWS_UWP=1" ]
if (angle_is_winappsdk) {
libs = [ "WindowsApp.lib" ]
defines += [ "ANGLE_ENABLE_WINDOWS_APP_SDK=1" ]
include_dirs = [ "$winappsdk_dir/include" ]
lib_dirs = [ "$winappsdk_dir/lib/win10-${target_cpu}" ]
}
}
angle_source_set("angle_enable_winuwp") {
public_configs = [ ":angle_enable_winuwp_config" ]
}
}