Merge pull request #42171 from Pineapple/fix-custom-modules-vs-master
Fix custom modules in Visual Studio
This commit is contained in:
commit
071d359f42
1 changed files with 21 additions and 19 deletions
40
methods.py
40
methods.py
|
@ -534,13 +534,28 @@ def generate_vs_project(env, num_jobs):
|
||||||
common_build_prefix = [
|
common_build_prefix = [
|
||||||
'cmd /V /C set "plat=$(PlatformTarget)"',
|
'cmd /V /C set "plat=$(PlatformTarget)"',
|
||||||
'(if "$(PlatformTarget)"=="x64" (set "plat=x86_amd64"))',
|
'(if "$(PlatformTarget)"=="x64" (set "plat=x86_amd64"))',
|
||||||
'set "tools=yes"',
|
'set "tools=%s"' % env["tools"],
|
||||||
'(if "$(Configuration)"=="release" (set "tools=no"))',
|
'(if "$(Configuration)"=="release" (set "tools=no"))',
|
||||||
'set "custom_modules=%s"' % env["custom_modules"],
|
|
||||||
'call "' + batch_file + '" !plat!',
|
'call "' + batch_file + '" !plat!',
|
||||||
]
|
]
|
||||||
|
|
||||||
result = " ^& ".join(common_build_prefix + [commands])
|
# windows allows us to have spaces in paths, so we need
|
||||||
|
# to double quote off the directory. However, the path ends
|
||||||
|
# in a backslash, so we need to remove this, lest it escape the
|
||||||
|
# last double quote off, confusing MSBuild
|
||||||
|
common_build_postfix = [
|
||||||
|
"--directory=\"$(ProjectDir.TrimEnd('\\'))\"",
|
||||||
|
"platform=windows",
|
||||||
|
"target=$(Configuration)",
|
||||||
|
"progress=no",
|
||||||
|
"tools=!tools!",
|
||||||
|
"-j%s" % num_jobs,
|
||||||
|
]
|
||||||
|
|
||||||
|
if env["custom_modules"]:
|
||||||
|
common_build_postfix.append("custom_modules=%s" % env["custom_modules"])
|
||||||
|
|
||||||
|
result = " ^& ".join(common_build_prefix + [" ".join([commands] + common_build_postfix)])
|
||||||
return result
|
return result
|
||||||
|
|
||||||
env.AddToVSProject(env.core_sources)
|
env.AddToVSProject(env.core_sources)
|
||||||
|
@ -550,22 +565,9 @@ def generate_vs_project(env, num_jobs):
|
||||||
env.AddToVSProject(env.servers_sources)
|
env.AddToVSProject(env.servers_sources)
|
||||||
env.AddToVSProject(env.editor_sources)
|
env.AddToVSProject(env.editor_sources)
|
||||||
|
|
||||||
# windows allows us to have spaces in paths, so we need
|
env["MSVSBUILDCOM"] = build_commandline("scons")
|
||||||
# to double quote off the directory. However, the path ends
|
env["MSVSREBUILDCOM"] = build_commandline("scons vsproj=yes")
|
||||||
# in a backslash, so we need to remove this, lest it escape the
|
env["MSVSCLEANCOM"] = build_commandline("scons --clean")
|
||||||
# last double quote off, confusing MSBuild
|
|
||||||
env["MSVSBUILDCOM"] = build_commandline(
|
|
||||||
"scons --directory=\"$(ProjectDir.TrimEnd('\\'))\" platform=windows progress=no target=$(Configuration)"
|
|
||||||
" tools=!tools! custom_modules=!custom_modules! -j" + str(num_jobs)
|
|
||||||
)
|
|
||||||
env["MSVSREBUILDCOM"] = build_commandline(
|
|
||||||
"scons --directory=\"$(ProjectDir.TrimEnd('\\'))\" platform=windows progress=no target=$(Configuration)"
|
|
||||||
" tools=!tools! custom_modules=!custom_modules! vsproj=yes -j" + str(num_jobs)
|
|
||||||
)
|
|
||||||
env["MSVSCLEANCOM"] = build_commandline(
|
|
||||||
"scons --directory=\"$(ProjectDir.TrimEnd('\\'))\" --clean platform=windows progress=no"
|
|
||||||
" target=$(Configuration) tools=!tools! custom_modules=!custom_modules! -j" + str(num_jobs)
|
|
||||||
)
|
|
||||||
|
|
||||||
# This version information (Win32, x64, Debug, Release, Release_Debug seems to be
|
# This version information (Win32, x64, Debug, Release, Release_Debug seems to be
|
||||||
# required for Visual Studio to understand that it needs to generate an NMAKE
|
# required for Visual Studio to understand that it needs to generate an NMAKE
|
||||||
|
|
Loading…
Reference in a new issue