Răsfoiți Sursa

Fix VS project generation with SCons 4.8.0+

(cherry picked from commit f682406cf26618d926ed33d7fd43e93de0348d85)
Max Hilbrunner 1 an în urmă
părinte
comite
f2519d5213
1 a modificat fișierele cu 5 adăugiri și 3 ștergeri
  1. 5 3
      methods.py

+ 5 - 3
methods.py

@@ -637,6 +637,7 @@ def detect_visual_c_compiler_version(tools_env):
 
 
 
 
 def find_visual_c_batch_file(env):
 def find_visual_c_batch_file(env):
+    # TODO: We should investigate if we can avoid relying on SCons internals here.
     from SCons.Tool.MSCommon.vc import get_default_version, get_host_target, find_batch_file, find_vc_pdir
     from SCons.Tool.MSCommon.vc import get_default_version, get_host_target, find_batch_file, find_vc_pdir
 
 
     # Syntax changed in SCons 4.4.0.
     # Syntax changed in SCons 4.4.0.
@@ -654,10 +655,11 @@ def find_visual_c_batch_file(env):
     if scons_ver < (4, 6, 0):
     if scons_ver < (4, 6, 0):
         return find_batch_file(env, msvc_version, host_platform, target_platform)[0]
         return find_batch_file(env, msvc_version, host_platform, target_platform)[0]
 
 
-    # Scons 4.6.0+ removed passing env, so we need to get the product_dir ourselves first,
+    # SCons 4.6.0+ removed passing env, so we need to get the product_dir ourselves first,
     # then pass that as the last param instead of env as the first param as before.
     # then pass that as the last param instead of env as the first param as before.
-    # We should investigate if we can avoid relying on SCons internals here.
-    product_dir = find_vc_pdir(env, msvc_version)
+    # Param names need to be explicit, as they were shuffled around in SCons 4.8.0.
+    product_dir = find_vc_pdir(msvc_version=msvc_version, env=env)
+
     return find_batch_file(msvc_version, host_platform, target_platform, product_dir)[0]
     return find_batch_file(msvc_version, host_platform, target_platform, product_dir)[0]