diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2017-05-20 09:48:52 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-20 09:48:52 +0200 |
commit | 2658241ce95c0eacdf90d4145507129d9e1acc73 (patch) | |
tree | 29f867b090256bd1856f8dbafa29e8921840ef6f | |
parent | 869d6b1d3358c61e5030d17964138b65ea390824 (diff) | |
parent | 14a982a0c2100a2a406421f017b11340f7a38316 (diff) |
Merge pull request #8822 from kurikaesu/windows-msvc-compiler-fixes
Detect newer Visual Studio compilers correctly like VS2017.
-rw-r--r-- | methods.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/methods.py b/methods.py index cad87ad775..40f7deedbc 100644 --- a/methods.py +++ b/methods.py @@ -1623,6 +1623,33 @@ def detect_visual_c_compiler_version(tools_env): vc_chosen_compiler_index = vc_x86_amd64_compiler_detection_index vc_chosen_compiler_str = "x86_amd64" + # Newer versions have a different path available + vc_amd64_compiler_detection_index = tools_env["PATH"].upper().find(tools_env['VCTOOLSINSTALLDIR'].upper() + "BIN\\HOSTX64\\X64;") + if(vc_amd64_compiler_detection_index > -1): + vc_chosen_compiler_index = vc_amd64_compiler_detection_index + vc_chosen_compiler_str = "amd64" + + vc_amd64_x86_compiler_detection_index = tools_env["PATH"].upper().find(tools_env['VCTOOLSINSTALLDIR'].upper() + "BIN\\HOSTX64\\X86;") + if(vc_amd64_x86_compiler_detection_index > -1 + and (vc_chosen_compiler_index == -1 + or vc_chosen_compiler_index > vc_amd64_x86_compiler_detection_index)): + vc_chosen_compiler_index = vc_amd64_x86_compiler_detection_index + vc_chosen_compiler_str = "amd64_x86" + + vc_x86_compiler_detection_index = tools_env["PATH"].upper().find(tools_env['VCTOOLSINSTALLDIR'].upper() + "BIN\\HOSTX86\\X86;") + if(vc_x86_compiler_detection_index > -1 + and (vc_chosen_compiler_index == -1 + or vc_chosen_compiler_index > vc_x86_compiler_detection_index)): + vc_chosen_compiler_index = vc_x86_compiler_detection_index + vc_chosen_compiler_str = "x86" + + vc_x86_amd64_compiler_detection_index = tools_env["PATH"].upper().find(tools_env['VCTOOLSINSTALLDIR'].upper() + "BIN\\HOSTX86\\X64;") + if(vc_x86_amd64_compiler_detection_index > -1 + and (vc_chosen_compiler_index == -1 + or vc_chosen_compiler_index > vc_x86_amd64_compiler_detection_index)): + vc_chosen_compiler_index = vc_x86_amd64_compiler_detection_index + vc_chosen_compiler_str = "x86_amd64" + # debug help # print vc_amd64_compiler_detection_index # print vc_amd64_x86_compiler_detection_index |