diff options
author | Ben Wagner <bungeman@google.com> | 2018-07-19 08:55:10 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-07-19 15:59:45 +0000 |
commit | 297c3c8e85bdb7ed79aaa6a596f52874d79e7a25 (patch) | |
tree | d3b3f5a80e0f79dd8b5a8bb810c2dced4ecef55d /gn | |
parent | 30301c48f73f80f99d651a077821d2e7c7469f31 (diff) |
Ignore NTDDI_VERSION with DirectWrite.
Some builds set NTDDI_VERSION to a very old version of Windows to ensure
they run on those older versions of Windows. The dwrite_3.h header uses
NTDDI_VERSION in an odd manner, hiding immutable declarations of enums,
structs, and interfaces. NTDDI_VERSION was indended to hide functions
and extensions to structs. DWrite has one function (to create the
factory) and no structs which will be extended.
Skia is already tested to run on the oldest supported Windows platform
(Windows 7), so an external build building Skia with NTDDI_VERSION as a
build define should have no issues at runtime if Skia ignores it. If
Skia doesn't ignore NTDDI_VERSION in this case the DWrite backend will
be runtime limited to interfaces in very old versions of Windows,
instead of using newer interfaces which become available at runtime.
Change-Id: I3e9ac2c4116d75588bfff391928d3cd446d6363a
Reviewed-on: https://skia-review.googlesource.com/142324
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Diffstat (limited to 'gn')
-rw-r--r-- | gn/utils.gni | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gn/utils.gni b/gn/utils.gni index 95c4e937c7..7d014b0a0c 100644 --- a/gn/utils.gni +++ b/gn/utils.gni @@ -77,6 +77,7 @@ skia_utils_sources = [ "$_src/utils/win/SkDWriteFontFileStream.h", "$_src/utils/win/SkDWriteGeometrySink.cpp", "$_src/utils/win/SkDWriteGeometrySink.h", + "$_src/utils/win/SkDWriteNTDDI_VERSION.h", "$_src/utils/win/SkHRESULT.h", "$_src/utils/win/SkHRESULT.cpp", "$_src/utils/win/SkIStream.h", |