1*8975f5c5SAndroid Build Coastguard Worker# -*- bazel-starlark -*- 2*8975f5c5SAndroid Build Coastguard Worker# Copyright 2024 The Chromium Authors 3*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 4*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file. 5*8975f5c5SAndroid Build Coastguard Worker"""Siso configuration fow win sdk.""" 6*8975f5c5SAndroid Build Coastguard Worker 7*8975f5c5SAndroid Build Coastguard Workerload("@builtin//encoding.star", "json") 8*8975f5c5SAndroid Build Coastguard Workerload("@builtin//lib/gn.star", "gn") 9*8975f5c5SAndroid Build Coastguard Workerload("@builtin//path.star", "path") 10*8975f5c5SAndroid Build Coastguard Workerload("@builtin//runtime.star", "runtime") 11*8975f5c5SAndroid Build Coastguard Workerload("@builtin//struct.star", "module") 12*8975f5c5SAndroid Build Coastguard Workerload("./gn_logs.star", "gn_logs") 13*8975f5c5SAndroid Build Coastguard Worker 14*8975f5c5SAndroid Build Coastguard Workerdef __win_toolchain_dir(ctx): 15*8975f5c5SAndroid Build Coastguard Worker # build/win_toolchain.json may not exist when 16*8975f5c5SAndroid Build Coastguard Worker # $env:DEPOT_TOOLS_WIN_TOOLCHAIN=0 or so. 17*8975f5c5SAndroid Build Coastguard Worker if not ctx.fs.exists("build/win_toolchain.json"): 18*8975f5c5SAndroid Build Coastguard Worker return None 19*8975f5c5SAndroid Build Coastguard Worker data = json.decode(str(ctx.fs.read("build/win_toolchain.json"))) 20*8975f5c5SAndroid Build Coastguard Worker if "path" in data: 21*8975f5c5SAndroid Build Coastguard Worker return ctx.fs.canonpath(data["path"]) 22*8975f5c5SAndroid Build Coastguard Worker return None 23*8975f5c5SAndroid Build Coastguard Worker 24*8975f5c5SAndroid Build Coastguard Workerdef __win_sdk_version(ctx): 25*8975f5c5SAndroid Build Coastguard Worker return gn_logs.read(ctx).get("windows_sdk_version") 26*8975f5c5SAndroid Build Coastguard Worker 27*8975f5c5SAndroid Build Coastguard Workerdef __enabled(ctx): 28*8975f5c5SAndroid Build Coastguard Worker if "args.gn" in ctx.metadata: 29*8975f5c5SAndroid Build Coastguard Worker gn_args = gn.args(ctx) 30*8975f5c5SAndroid Build Coastguard Worker if gn_args.get("target_os") == '"win"': 31*8975f5c5SAndroid Build Coastguard Worker return True 32*8975f5c5SAndroid Build Coastguard Worker return runtime.os == "windows" 33*8975f5c5SAndroid Build Coastguard Worker 34*8975f5c5SAndroid Build Coastguard Workerdef __filegroups(ctx): 35*8975f5c5SAndroid Build Coastguard Worker win_toolchain_dir = __win_toolchain_dir(ctx) 36*8975f5c5SAndroid Build Coastguard Worker fg = {} 37*8975f5c5SAndroid Build Coastguard Worker if win_toolchain_dir: 38*8975f5c5SAndroid Build Coastguard Worker fg.update({ 39*8975f5c5SAndroid Build Coastguard Worker # for precomputed subtree 40*8975f5c5SAndroid Build Coastguard Worker win_toolchain_dir + ":headers-ci": { 41*8975f5c5SAndroid Build Coastguard Worker "type": "glob", 42*8975f5c5SAndroid Build Coastguard Worker "includes": [ 43*8975f5c5SAndroid Build Coastguard Worker "*.h", 44*8975f5c5SAndroid Build Coastguard Worker "*.inl", 45*8975f5c5SAndroid Build Coastguard Worker "*.H", 46*8975f5c5SAndroid Build Coastguard Worker "*.Hxx", 47*8975f5c5SAndroid Build Coastguard Worker "*.hxx", 48*8975f5c5SAndroid Build Coastguard Worker "*.hpp", 49*8975f5c5SAndroid Build Coastguard Worker "VC/Tools/MSVC/*/include/*", 50*8975f5c5SAndroid Build Coastguard Worker "VC/Tools/MSVC/*/include/*/*", 51*8975f5c5SAndroid Build Coastguard Worker ], 52*8975f5c5SAndroid Build Coastguard Worker }, 53*8975f5c5SAndroid Build Coastguard Worker }) 54*8975f5c5SAndroid Build Coastguard Worker return fg 55*8975f5c5SAndroid Build Coastguard Worker 56*8975f5c5SAndroid Build Coastguard Workerdef __step_config(ctx, step_config): 57*8975f5c5SAndroid Build Coastguard Worker win_toolchain_dir = __win_toolchain_dir(ctx) 58*8975f5c5SAndroid Build Coastguard Worker if not win_toolchain_dir: 59*8975f5c5SAndroid Build Coastguard Worker return 60*8975f5c5SAndroid Build Coastguard Worker win_toolchain_headers = [ 61*8975f5c5SAndroid Build Coastguard Worker win_toolchain_dir + ":headers-ci", 62*8975f5c5SAndroid Build Coastguard Worker ] 63*8975f5c5SAndroid Build Coastguard Worker sdk_version = __win_sdk_version(ctx) 64*8975f5c5SAndroid Build Coastguard Worker if sdk_version: 65*8975f5c5SAndroid Build Coastguard Worker win_toolchain_headers.extend([ 66*8975f5c5SAndroid Build Coastguard Worker # third_party/abseil-cpp includes "dbghelp.h" 67*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/dbghelp.h"), 68*8975f5c5SAndroid Build Coastguard Worker # third_party/abseil-cpp includes "aclapi.h" 69*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/aclapi.h"), 70*8975f5c5SAndroid Build Coastguard Worker # base/debug includes "psapi.h" 71*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/psapi.h"), 72*8975f5c5SAndroid Build Coastguard Worker # base/process includes "tlhelp32.h" 73*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/tlhelp32.h"), 74*8975f5c5SAndroid Build Coastguard Worker # base/process includes "userenv.h" 75*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/userenv.h"), 76*8975f5c5SAndroid Build Coastguard Worker # base includes "shlobj.h" 77*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/shlobj.h"), 78*8975f5c5SAndroid Build Coastguard Worker # base/win includes "lm.h" 79*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/lm.h"), 80*8975f5c5SAndroid Build Coastguard Worker # base/win includes "mdmregistration.h" 81*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/mdmregistration.h"), 82*8975f5c5SAndroid Build Coastguard Worker # base/win includes "shellscalingapi.h" 83*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/shellscalingapi.h"), 84*8975f5c5SAndroid Build Coastguard Worker # base/win includes "uiviewsettingsinterop.h" 85*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/uiviewsettingsinterop.h"), 86*8975f5c5SAndroid Build Coastguard Worker # native_client/src/shared/platform/win includes "WinError.h" 87*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "shared/WinError.h"), 88*8975f5c5SAndroid Build Coastguard Worker # third_party/webrtc/rtc_base/win includes "windows.graphics.directX.direct3d11.h" 89*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "cppwinrt/winrt/windows.graphics.directX.direct3d11.h"), 90*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "winrt/windows.graphics.directX.direct3d11.h"), 91*8975f5c5SAndroid Build Coastguard Worker # third_party/webrtc/rtc_base/win includes "windows.graphics.directX.direct3d11.interop.h" 92*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/windows.graphics.directX.direct3d11.interop.h"), 93*8975f5c5SAndroid Build Coastguard Worker # third_party/crashpad/crashpad/handler/win includes "werapi.h" 94*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/werapi.h"), 95*8975f5c5SAndroid Build Coastguard Worker # chrome/install_static/ includes "wtsapi32.h" 96*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/wtsapi32.h"), 97*8975f5c5SAndroid Build Coastguard Worker # third_party/dawn/include/dawn/native includes "DXGI1_4.h" 98*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "shared/DXGI1_4.h"), 99*8975f5c5SAndroid Build Coastguard Worker # v8/src/diagnostics includes "versionhelpers.h" 100*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/versionhelpers.h"), 101*8975f5c5SAndroid Build Coastguard Worker # ui/gfx/ includes "DXGIType.h" 102*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "shared/DXGIType.h"), 103*8975f5c5SAndroid Build Coastguard Worker # third_party/unrar includes "PowrProf.h" 104*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/PowrProf.h"), 105*8975f5c5SAndroid Build Coastguard Worker # device/base/ includes "dbt.h" 106*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/dbt.h"), 107*8975f5c5SAndroid Build Coastguard Worker # third_party/skia/ includes "ObjBase.h" 108*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/ObjBase.h"), 109*8975f5c5SAndroid Build Coastguard Worker # third_party/webrtc/rtc_base includes "ws2spi.h" 110*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/ws2spi.h"), 111*8975f5c5SAndroid Build Coastguard Worker # third_party/skia/ includes "T2EmbApi.h" 112*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/T2EmbApi.h"), 113*8975f5c5SAndroid Build Coastguard Worker # device/vr/windows/ includes "D3D11_1.h" 114*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/D3D11_1.h"), 115*8975f5c5SAndroid Build Coastguard Worker # rlz/win/ includes "Sddl.h" 116*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "shared/Sddl.h"), 117*8975f5c5SAndroid Build Coastguard Worker # chrome/common/safe_browsing/ includes "softpub.h" 118*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/softpub.h"), 119*8975f5c5SAndroid Build Coastguard Worker # services/device/generic_sensor/ includes "Sensors.h" 120*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Sensors.h"), 121*8975f5c5SAndroid Build Coastguard Worker # third_party/webrtc/modules/desktop_capture/win includes "windows.graphics.capture.interop.h" 122*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/windows.graphics.capture.interop.h"), 123*8975f5c5SAndroid Build Coastguard Worker # third_party/skia/ includes "FontSub.h" 124*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/FontSub.h"), 125*8975f5c5SAndroid Build Coastguard Worker # chrome/updater/ includes "regstr.h" 126*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/regstr.h"), 127*8975f5c5SAndroid Build Coastguard Worker # services/device/compute_pressure includes "pdh.h" 128*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/pdh.h"), 129*8975f5c5SAndroid Build Coastguard Worker # chrome/installer/ includes "mshtmhst.h" 130*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/mshtmhst.h"), 131*8975f5c5SAndroid Build Coastguard Worker # net/ssl/ includes "NCrypt.h" 132*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/NCrypt.h"), 133*8975f5c5SAndroid Build Coastguard Worker # device/fido/win/ includes "Combaseapi.h" 134*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Combaseapi.h"), 135*8975f5c5SAndroid Build Coastguard Worker # components/device_signals/core/system_signals/win includes "wscapi.h" 136*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/wscapi.h"), 137*8975f5c5SAndroid Build Coastguard Worker # net/proxy_resolution/win/ includes "dhcpcsdk.h" 138*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/dhcpcsdk.h"), 139*8975f5c5SAndroid Build Coastguard Worker # third_party/dawn/third_party/glfw includes "xinput.h" 140*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/xinput.h"), 141*8975f5c5SAndroid Build Coastguard Worker # v8/tools/v8windbg includes "pathcch.h" 142*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/pathcch.h"), 143*8975f5c5SAndroid Build Coastguard Worker # remoting/host includes "rpcproxy.h" 144*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/rpcproxy.h"), 145*8975f5c5SAndroid Build Coastguard Worker # sandbox/win includes "Aclapi.h" 146*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Aclapi.h"), 147*8975f5c5SAndroid Build Coastguard Worker # ui/accessibility/platform includes "uiautomation.h" 148*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/uiautomation.h"), 149*8975f5c5SAndroid Build Coastguard Worker # chrome/credential_provider/gaiacp includes "ntsecapi.h" 150*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/ntsecapi.h"), 151*8975f5c5SAndroid Build Coastguard Worker # net/dns includes "Winsock2.h" 152*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Winsock2.h"), 153*8975f5c5SAndroid Build Coastguard Worker # media/cdm/win includes "mferror.h" 154*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/mferror.h"), 155*8975f5c5SAndroid Build Coastguard Worker # chrome/credentialProvider/gaiacp includes "Winternl.h" 156*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Winternl.h"), 157*8975f5c5SAndroid Build Coastguard Worker # media/audio/win includes "audioclient.h" 158*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/audioclient.h"), 159*8975f5c5SAndroid Build Coastguard Worker # media/audio/win includes "MMDeviceAPI.h" 160*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/MMDeviceAPI.h"), 161*8975f5c5SAndroid Build Coastguard Worker # net/proxy_resolution/win includes "dhcpv6csdk.h" 162*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/dhcpv6csdk.h"), 163*8975f5c5SAndroid Build Coastguard Worker # components/system_media_controls/win includes "systemmediatransportcontrolsinterop.h" 164*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/systemmediatransportcontrolsinterop.h"), 165*8975f5c5SAndroid Build Coastguard Worker # ui/native_theme includes "Windows.Media.ClosedCaptioning.h" 166*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "cppwinrt/winrt/Windows.Media.ClosedCaptioning.h"), 167*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "winrt/Windows.Media.ClosedCaptioning.h"), 168*8975f5c5SAndroid Build Coastguard Worker # media/audio/win includes "Functiondiscoverykeys_devpkey.h" 169*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Functiondiscoverykeys_devpkey.h"), 170*8975f5c5SAndroid Build Coastguard Worker # device/fido includes "Winuser.h" 171*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Winuser.h"), 172*8975f5c5SAndroid Build Coastguard Worker # chrome/updater/win includes "msxml2.h" 173*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/msxml2.h"), 174*8975f5c5SAndroid Build Coastguard Worker # remoting/host includes "ime.h" 175*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/ime.h"), 176*8975f5c5SAndroid Build Coastguard Worker # remoting/host/win includes "D3DCommon.h" 177*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/D3DCommon.h"), 178*8975f5c5SAndroid Build Coastguard Worker # ui/views/controls/menu includes "Vssym32.h" 179*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Vssym32.h"), 180*8975f5c5SAndroid Build Coastguard Worker # third_party/wtl includes "richedit.h" 181*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/richedit.h"), 182*8975f5c5SAndroid Build Coastguard Worker # chrome/updater/net includes "Urlmon.h" 183*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Urlmon.h"), 184*8975f5c5SAndroid Build Coastguard Worker # device/gamepad includes "XInput.h" 185*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/XInput.h"), 186*8975f5c5SAndroid Build Coastguard Worker # chrome/credential_provider/gaiacp includes "Shlobj.h" 187*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Shlobj.h"), 188*8975f5c5SAndroid Build Coastguard Worker # content/renderer includes "mlang.h" 189*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/mlang.h"), 190*8975f5c5SAndroid Build Coastguard Worker # components/storage_monitor includes "portabledevice.h" 191*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/portabledevice.h"), 192*8975f5c5SAndroid Build Coastguard Worker # third_party/wtl includes "richole.h" 193*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/richole.h"), 194*8975f5c5SAndroid Build Coastguard Worker # chrome/utility/importer includes "intshcut.h" 195*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/intshcut.h"), 196*8975f5c5SAndroid Build Coastguard Worker # chrome/browser/net includes "Ws2spi.h" 197*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/Ws2spi.h"), 198*8975f5c5SAndroid Build Coastguard Worker # chrome/browser/enterprise/platform_auth includes "proofofpossessioncookieinfo.h)" 199*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/proofofpossessioncookieinfo.h"), 200*8975f5c5SAndroid Build Coastguard Worker # chrome/utility/importer includes "urlhist.h" 201*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/urlhist.h"), 202*8975f5c5SAndroid Build Coastguard Worker # chrome/updater/win/installer includes "msiquery.h" 203*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/msiquery.h"), 204*8975f5c5SAndroid Build Coastguard Worker # third_party/win_virtual_display/controller includes "Devpropdef.h" 205*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "shared/Devpropdef.h"), 206*8975f5c5SAndroid Build Coastguard Worker # third_party/dawn/third_party/dxc/include/dxc/Support/WinIncludes.h "ObjIdl.h" 207*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/ObjIdl.h"), 208*8975f5c5SAndroid Build Coastguard Worker # third_party/dawn/third_party/dxc/lib/Support includes "D3Dcommon.h" 209*8975f5c5SAndroid Build Coastguard Worker # https://github.com/microsoft/DirectXShaderCompiler/pull/6380 210*8975f5c5SAndroid Build Coastguard Worker path.join(win_toolchain_dir, "Windows Kits/10/Include", sdk_version, "um/D3Dcommon.h"), 211*8975f5c5SAndroid Build Coastguard Worker ]) 212*8975f5c5SAndroid Build Coastguard Worker else: 213*8975f5c5SAndroid Build Coastguard Worker # sdk_version may be unknown when first build after `gn clean` (no gn_logs.txt yet) 214*8975f5c5SAndroid Build Coastguard Worker print("sdk_version is unknown") 215*8975f5c5SAndroid Build Coastguard Worker step_config["input_deps"].update({ 216*8975f5c5SAndroid Build Coastguard Worker win_toolchain_dir + ":headers": win_toolchain_headers, 217*8975f5c5SAndroid Build Coastguard Worker }) 218*8975f5c5SAndroid Build Coastguard Worker 219*8975f5c5SAndroid Build Coastguard Workerwin_sdk = module( 220*8975f5c5SAndroid Build Coastguard Worker "win_sdk", 221*8975f5c5SAndroid Build Coastguard Worker enabled = __enabled, 222*8975f5c5SAndroid Build Coastguard Worker toolchain_dir = __win_toolchain_dir, 223*8975f5c5SAndroid Build Coastguard Worker step_config = __step_config, 224*8975f5c5SAndroid Build Coastguard Worker filegroups = __filegroups, 225*8975f5c5SAndroid Build Coastguard Worker) 226