update windows sdk Tested in https://ci.chromium.org/swarming/task/671047ef2f491910?server=chromium-swarm.appspot.com Change-Id: I85a6a9f307d62ebc5b84aabc7fb47d4b60f8fa04 Reviewed-on: https://gn-review.googlesource.com/c/gn/+/16400 Reviewed-by: David Turner <digit@google.com> Commit-Queue: David Turner <digit@google.com>
diff --git a/infra/recipe_modules/windows_sdk/__init__.py b/infra/recipe_modules/windows_sdk/__init__.py index 83323a8..ed97b8d 100644 --- a/infra/recipe_modules/windows_sdk/__init__.py +++ b/infra/recipe_modules/windows_sdk/__init__.py
@@ -25,7 +25,7 @@ sdk_version=Single(str)), default={ 'sdk_package': 'chrome_internal/third_party/sdk/windows', - 'sdk_version': 'uploaded:2019-09-06' + 'sdk_version': 'uploaded:2021-04-28', }, ) }
diff --git a/infra/recipe_modules/windows_sdk/api.py b/infra/recipe_modules/windows_sdk/api.py index d47f984..19ce5b3 100644 --- a/infra/recipe_modules/windows_sdk/api.py +++ b/infra/recipe_modules/windows_sdk/api.py
@@ -29,16 +29,17 @@ yield return - try: - with self.m.context(infra_steps=True): - sdk_dir = self._ensure_sdk() - with self.m.context(**self._sdk_env(sdk_dir)): + with self.m.context(infra_steps=True): + sdk_dir = self._ensure_sdk() + + with self.m.context(**self._sdk_env(sdk_dir)): + try: yield - finally: - # cl.exe automatically starts background mspdbsrv.exe daemon which - # needs to be manually stopped so Swarming can tidy up after itself. - self.m.step('taskkill mspdbsrv', - ['taskkill.exe', '/f', '/t', '/im', 'mspdbsrv.exe']) + finally: + # cl.exe automatically starts background mspdbsrv.exe daemon which + # needs to be manually stopped so Swarming can tidy up after itself. + self.m.step('taskkill mspdbsrv', + ['taskkill.exe', '/f', '/t', '/im', 'mspdbsrv.exe']) def _ensure_sdk(self): """Ensures the Windows SDK CIPD package is installed. @@ -66,11 +67,11 @@ env = {} env_prefixes = {} - # Load .../win_sdk/bin/SetEnv.${arch}.json to extract the required + # Load .../Windows Kits/10/bin/SetEnv.${arch}.json to extract the required # environment. It contains a dict that looks like this: # { # "env": { - # "VAR": [["..", "..", "x"], ["..", "..", "y"]], + # "VAR": [["x"], ["y"]], # ... # } # } @@ -79,23 +80,16 @@ filename = 'SetEnv.%s.json' % {32: 'x86', 64: 'x64'}[self.m.platform.bits] step_result = self.m.json.read( 'read %s' % filename, - sdk_dir.join('win_sdk', 'bin', filename), + sdk_dir.join('Windows Kits', '10', 'bin', filename), step_test_data=lambda: self.m.json.test_api.output({ 'env': { - 'PATH': [['..', '..', 'win_sdk', 'bin', 'x64']], - 'VSINSTALLDIR': [['..', '..\\']],},})) + 'PATH': [['Windows Kits', '10', 'bin', '10.0.19041.0', 'x64']], + 'VSINSTALLDIR': [['.\\']], + }, + })) data = step_result.json.output.get('env') for key in data: - # recipes' Path() does not like .., ., \, or /, so this is cumbersome. - # What we want to do is: - # [sdk_bin_dir.join(*e) for e in env[k]] - # Instead do that badly, and rely (but verify) on the fact that the paths - # are all specified relative to the root, but specified relative to - # win_sdk/bin (i.e. everything starts with "../../".) - results = [] - for value in data[key]: - assert value[0] == '..' and (value[1] == '..' or value[1] == '..\\') - results.append('%s' % sdk_dir.join(*value[2:])) + results = ['%s' % sdk_dir.join(*e) for e in data[key]] # PATH is special-cased because we don't want to overwrite other things # like C:\Windows\System32. Others are replacements because prepending
diff --git a/infra/recipe_modules/windows_sdk/examples/full.expected/win.json b/infra/recipe_modules/windows_sdk/examples/full.expected/win.json index ab65502..2daa577 100644 --- a/infra/recipe_modules/windows_sdk/examples/full.expected/win.json +++ b/infra/recipe_modules/windows_sdk/examples/full.expected/win.json
@@ -6,7 +6,7 @@ "-root", "[CACHE]\\windows_sdk", "-ensure-file", - "chrome_internal/third_party/sdk/windows uploaded:2019-09-06", + "chrome_internal/third_party/sdk/windows uploaded:2021-04-28", "-max-threads", "0", "-json-output", @@ -19,7 +19,7 @@ "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", "@@@STEP_LOG_LINE@json.output@ \"\": [@@@", "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-uploaded:2019-09\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-uploaded:2021-04\",@@@", "@@@STEP_LOG_LINE@json.output@ \"package\": \"chrome_internal/third_party/sdk/windows\"@@@", "@@@STEP_LOG_LINE@json.output@ }@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", @@ -33,7 +33,7 @@ "python3", "-u", "RECIPE_MODULE[recipe_engine::json]\\resources\\read.py", - "[CACHE]\\windows_sdk\\win_sdk\\bin\\SetEnv.x64.json", + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\SetEnv.x64.json", "/path/to/tmp/json" ], "name": "read SetEnv.x64.json", @@ -42,17 +42,16 @@ "@@@STEP_LOG_LINE@json.output@ \"env\": {@@@", "@@@STEP_LOG_LINE@json.output@ \"PATH\": [@@@", "@@@STEP_LOG_LINE@json.output@ [@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"win_sdk\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"Windows Kits\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"10\",@@@", "@@@STEP_LOG_LINE@json.output@ \"bin\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"10.0.19041.0\",@@@", "@@@STEP_LOG_LINE@json.output@ \"x64\"@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ ],@@@", "@@@STEP_LOG_LINE@json.output@ \"VSINSTALLDIR\": [@@@", "@@@STEP_LOG_LINE@json.output@ [@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\\\\\"@@@", + "@@@STEP_LOG_LINE@json.output@ \".\\\\\"@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ }@@@", @@ -67,11 +66,11 @@ "out/Release" ], "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "name": "gn" @@ -83,11 +82,11 @@ "out/Release" ], "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "name": "ninja" @@ -100,6 +99,14 @@ "/im", "mspdbsrv.exe" ], + "env": { + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" + }, + "env_prefixes": { + "PATH": [ + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" + ] + }, "name": "taskkill mspdbsrv" }, {
diff --git a/infra/recipes/gn.expected/ci_win.json b/infra/recipes/gn.expected/ci_win.json index 13f267a..d00a356 100644 --- a/infra/recipes/gn.expected/ci_win.json +++ b/infra/recipes/gn.expected/ci_win.json
@@ -152,7 +152,7 @@ "-root", "[CACHE]\\windows_sdk", "-ensure-file", - "chrome_internal/third_party/sdk/windows uploaded:2019-09-06", + "chrome_internal/third_party/sdk/windows uploaded:2021-04-28", "-max-threads", "0", "-json-output", @@ -177,7 +177,7 @@ "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", "@@@STEP_LOG_LINE@json.output@ \"\": [@@@", "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-uploaded:2019-09\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-uploaded:2021-04\",@@@", "@@@STEP_LOG_LINE@json.output@ \"package\": \"chrome_internal/third_party/sdk/windows\"@@@", "@@@STEP_LOG_LINE@json.output@ }@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", @@ -191,7 +191,7 @@ "python3", "-u", "RECIPE_MODULE[recipe_engine::json]\\resources\\read.py", - "[CACHE]\\windows_sdk\\win_sdk\\bin\\SetEnv.x64.json", + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\SetEnv.x64.json", "/path/to/tmp/json" ], "luci_context": { @@ -212,17 +212,16 @@ "@@@STEP_LOG_LINE@json.output@ \"env\": {@@@", "@@@STEP_LOG_LINE@json.output@ \"PATH\": [@@@", "@@@STEP_LOG_LINE@json.output@ [@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"win_sdk\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"Windows Kits\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"10\",@@@", "@@@STEP_LOG_LINE@json.output@ \"bin\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"10.0.19041.0\",@@@", "@@@STEP_LOG_LINE@json.output@ \"x64\"@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ ],@@@", "@@@STEP_LOG_LINE@json.output@ \"VSINSTALLDIR\": [@@@", "@@@STEP_LOG_LINE@json.output@ [@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\\\\\"@@@", + "@@@STEP_LOG_LINE@json.output@ \".\\\\\"@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ }@@@", @@ -250,11 +249,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -282,11 +281,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -312,11 +311,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -357,11 +356,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -389,11 +388,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -419,11 +418,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -465,11 +464,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -504,6 +503,14 @@ "/im", "mspdbsrv.exe" ], + "env": { + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" + }, + "env_prefixes": { + "PATH": [ + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" + ] + }, "luci_context": { "realm": { "name": "gn:ci"
diff --git a/infra/recipes/gn.expected/cq_win.json b/infra/recipes/gn.expected/cq_win.json index 77a74e0..587e50b 100644 --- a/infra/recipes/gn.expected/cq_win.json +++ b/infra/recipes/gn.expected/cq_win.json
@@ -203,7 +203,7 @@ "-root", "[CACHE]\\windows_sdk", "-ensure-file", - "chrome_internal/third_party/sdk/windows uploaded:2019-09-06", + "chrome_internal/third_party/sdk/windows uploaded:2021-04-28", "-max-threads", "0", "-json-output", @@ -228,7 +228,7 @@ "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", "@@@STEP_LOG_LINE@json.output@ \"\": [@@@", "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-uploaded:2019-09\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-uploaded:2021-04\",@@@", "@@@STEP_LOG_LINE@json.output@ \"package\": \"chrome_internal/third_party/sdk/windows\"@@@", "@@@STEP_LOG_LINE@json.output@ }@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", @@ -242,7 +242,7 @@ "python3", "-u", "RECIPE_MODULE[recipe_engine::json]\\resources\\read.py", - "[CACHE]\\windows_sdk\\win_sdk\\bin\\SetEnv.x64.json", + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\SetEnv.x64.json", "/path/to/tmp/json" ], "luci_context": { @@ -263,17 +263,16 @@ "@@@STEP_LOG_LINE@json.output@ \"env\": {@@@", "@@@STEP_LOG_LINE@json.output@ \"PATH\": [@@@", "@@@STEP_LOG_LINE@json.output@ [@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"win_sdk\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"Windows Kits\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"10\",@@@", "@@@STEP_LOG_LINE@json.output@ \"bin\",@@@", + "@@@STEP_LOG_LINE@json.output@ \"10.0.19041.0\",@@@", "@@@STEP_LOG_LINE@json.output@ \"x64\"@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ ],@@@", "@@@STEP_LOG_LINE@json.output@ \"VSINSTALLDIR\": [@@@", "@@@STEP_LOG_LINE@json.output@ [@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"..\\\\\"@@@", + "@@@STEP_LOG_LINE@json.output@ \".\\\\\"@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ ]@@@", "@@@STEP_LOG_LINE@json.output@ }@@@", @@ -301,11 +300,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -333,11 +332,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -363,11 +362,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -408,11 +407,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -440,11 +439,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -470,11 +469,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "luci_context": { @@ -514,11 +513,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "infra_step": true, @@ -562,11 +561,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "infra_step": true, @@ -602,11 +601,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "infra_step": true, @@ -653,11 +652,11 @@ ], "cwd": "[START_DIR]\\gn", "env": { - "VSINSTALLDIR": "[CACHE]\\windows_sdk" + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" }, "env_prefixes": { "PATH": [ - "[CACHE]\\windows_sdk\\win_sdk\\bin\\x64" + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" ] }, "infra_step": true, @@ -687,6 +686,14 @@ "/im", "mspdbsrv.exe" ], + "env": { + "VSINSTALLDIR": "[CACHE]\\windows_sdk\\.\\" + }, + "env_prefixes": { + "PATH": [ + "[CACHE]\\windows_sdk\\Windows Kits\\10\\bin\\10.0.19041.0\\x64" + ] + }, "luci_context": { "realm": { "name": "gn:try"