Merge pull request #87305 from bruvzg/mvk_detect_new
[macOS] Fix MoltenVK SDK detection after file location changes in 1.3.275.0.
This commit is contained in:
commit
96296e476f
1 changed files with 25 additions and 10 deletions
|
@ -67,21 +67,30 @@ def get_mvk_sdk_path():
|
||||||
if not os.path.exists(dirname):
|
if not os.path.exists(dirname):
|
||||||
return ""
|
return ""
|
||||||
|
|
||||||
ver_file = "0.0.0.0"
|
ver_num = ver_parse("0.0.0.0")
|
||||||
ver_num = ver_parse(ver_file)
|
|
||||||
|
|
||||||
files = os.listdir(dirname)
|
files = os.listdir(dirname)
|
||||||
|
lib_name_out = dirname
|
||||||
for file in files:
|
for file in files:
|
||||||
if os.path.isdir(os.path.join(dirname, file)):
|
if os.path.isdir(os.path.join(dirname, file)):
|
||||||
ver_comp = ver_parse(file)
|
ver_comp = ver_parse(file)
|
||||||
lib_name = os.path.join(
|
if ver_comp > ver_num:
|
||||||
os.path.join(dirname, file), "MoltenVK/MoltenVK.xcframework/macos-arm64_x86_64/libMoltenVK.a"
|
# Try new SDK location.
|
||||||
)
|
lib_name = os.path.join(
|
||||||
if os.path.isfile(lib_name) and ver_comp > ver_num:
|
os.path.join(dirname, file), "macOS/lib/MoltenVK.xcframework/macos-arm64_x86_64/"
|
||||||
ver_num = ver_comp
|
)
|
||||||
ver_file = file
|
if os.path.isfile(os.path.join(lib_name, "libMoltenVK.a")):
|
||||||
|
ver_num = ver_comp
|
||||||
|
lib_name_out = lib_name
|
||||||
|
else:
|
||||||
|
# Try old SDK location.
|
||||||
|
lib_name = os.path.join(
|
||||||
|
os.path.join(dirname, file), "MoltenVK/MoltenVK.xcframework/macos-arm64_x86_64/"
|
||||||
|
)
|
||||||
|
if os.path.isfile(os.path.join(lib_name, "libMoltenVK.a")):
|
||||||
|
ver_num = ver_comp
|
||||||
|
lib_name_out = lib_name
|
||||||
|
|
||||||
return os.path.join(os.path.join(dirname, ver_file), "MoltenVK/MoltenVK.xcframework/macos-arm64_x86_64/")
|
return lib_name_out
|
||||||
|
|
||||||
|
|
||||||
def configure(env: "Environment"):
|
def configure(env: "Environment"):
|
||||||
|
@ -269,6 +278,12 @@ def configure(env: "Environment"):
|
||||||
mvk_list = [get_mvk_sdk_path(), "/opt/homebrew/lib", "/usr/local/homebrew/lib", "/opt/local/lib"]
|
mvk_list = [get_mvk_sdk_path(), "/opt/homebrew/lib", "/usr/local/homebrew/lib", "/opt/local/lib"]
|
||||||
if env["vulkan_sdk_path"] != "":
|
if env["vulkan_sdk_path"] != "":
|
||||||
mvk_list.insert(0, os.path.expanduser(env["vulkan_sdk_path"]))
|
mvk_list.insert(0, os.path.expanduser(env["vulkan_sdk_path"]))
|
||||||
|
mvk_list.insert(
|
||||||
|
0,
|
||||||
|
os.path.join(
|
||||||
|
os.path.expanduser(env["vulkan_sdk_path"]), "macOS/lib/MoltenVK.xcframework/macos-arm64_x86_64/"
|
||||||
|
),
|
||||||
|
)
|
||||||
mvk_list.insert(
|
mvk_list.insert(
|
||||||
0,
|
0,
|
||||||
os.path.join(
|
os.path.join(
|
||||||
|
|
Loading…
Reference in a new issue