Windows: fix kit base path and reference to windows registry key (#41388)
* Proper handling of argument passed as semicolon-separated str * Fix reference to windows registry key in win-wdk
This commit is contained in:
parent
88e738c343
commit
9e0720207a
2 changed files with 11 additions and 3 deletions
|
@ -309,10 +309,14 @@ def find_windows_kit_roots() -> List[str]:
|
|||
return glob.glob(kit_base)
|
||||
|
||||
@staticmethod
|
||||
def find_windows_kit_bin_paths(kit_base: Optional[str] = None) -> List[str]:
|
||||
def find_windows_kit_bin_paths(
|
||||
kit_base: Union[Optional[str], Optional[list]] = None
|
||||
) -> List[str]:
|
||||
"""Returns Windows kit bin directory per version"""
|
||||
kit_base = WindowsKitExternalPaths.find_windows_kit_roots() if not kit_base else kit_base
|
||||
assert kit_base, "Unexpectedly empty value for Windows kit base path"
|
||||
if isinstance(kit_base, str):
|
||||
kit_base = kit_base.split(";")
|
||||
kit_paths = []
|
||||
for kit in kit_base:
|
||||
kit_bin = os.path.join(kit, "bin")
|
||||
|
@ -320,10 +324,14 @@ def find_windows_kit_bin_paths(kit_base: Optional[str] = None) -> List[str]:
|
|||
return kit_paths
|
||||
|
||||
@staticmethod
|
||||
def find_windows_kit_lib_paths(kit_base: Optional[str] = None) -> List[str]:
|
||||
def find_windows_kit_lib_paths(
|
||||
kit_base: Union[Optional[str], Optional[list]] = None
|
||||
) -> List[str]:
|
||||
"""Returns Windows kit lib directory per version"""
|
||||
kit_base = WindowsKitExternalPaths.find_windows_kit_roots() if not kit_base else kit_base
|
||||
assert kit_base, "Unexpectedly empty value for Windows kit base path"
|
||||
if isinstance(kit_base, str):
|
||||
kit_base = kit_base.split(";")
|
||||
kit_paths = []
|
||||
for kit in kit_base:
|
||||
kit_lib = os.path.join(kit, "Lib")
|
||||
|
|
|
@ -133,7 +133,7 @@ def install(self, spec, prefix):
|
|||
except ProcessError as pe:
|
||||
reg = winreg.WindowsRegistryView(
|
||||
"SOFTWARE\\Microsoft\\Windows Kits\\Installed Roots",
|
||||
root_key=spack.util.windows_registry.HKEY_LOCAL_MACHINE,
|
||||
root_key=spack.util.windows_registry.HKEY.HKEY_LOCAL_MACHINE,
|
||||
)
|
||||
if not reg:
|
||||
# No Kits are available, failure was genuine
|
||||
|
|
Loading…
Reference in a new issue