@@ -194,7 +194,7 @@ def run_msbuild(tools: ToolsLocation, sln: str, chdir_to: str, msbuild_args: Opt
194
194
return subprocess .call (args , env = msbuild_env , cwd = chdir_to )
195
195
196
196
197
- def build_godot_api (msbuild_tool , module_dir , output_dir , push_nupkgs_local , precision , no_deprecated ):
197
+ def build_godot_api (msbuild_tool , module_dir , output_dir , push_nupkgs_local , precision , no_deprecated , werror ):
198
198
target_filenames = [
199
199
"GodotSharp.dll" ,
200
200
"GodotSharp.pdb" ,
@@ -219,6 +219,8 @@ def build_godot_api(msbuild_tool, module_dir, output_dir, push_nupkgs_local, pre
219
219
args += ["/p:GodotFloat64=true" ]
220
220
if no_deprecated :
221
221
args += ["/p:GodotNoDeprecated=true" ]
222
+ if werror :
223
+ args += ["/p:TreatWarningsAsErrors=true" ]
222
224
223
225
sln = os .path .join (module_dir , "glue/GodotSharp/GodotSharp.sln" )
224
226
exit_code = run_msbuild (msbuild_tool , sln = sln , chdir_to = module_dir , msbuild_args = args )
@@ -339,13 +341,15 @@ def generate_sdk_package_versions():
339
341
340
342
341
343
def build_all (
342
- msbuild_tool , module_dir , output_dir , godot_platform , dev_debug , push_nupkgs_local , precision , no_deprecated
344
+ msbuild_tool , module_dir , output_dir , godot_platform , dev_debug , push_nupkgs_local , precision , no_deprecated , werror
343
345
):
344
346
# Generate SdkPackageVersions.props and VersionDocsUrl constant
345
347
generate_sdk_package_versions ()
346
348
347
349
# Godot API
348
- exit_code = build_godot_api (msbuild_tool , module_dir , output_dir , push_nupkgs_local , precision , no_deprecated )
350
+ exit_code = build_godot_api (
351
+ msbuild_tool , module_dir , output_dir , push_nupkgs_local , precision , no_deprecated , werror
352
+ )
349
353
if exit_code != 0 :
350
354
return exit_code
351
355
@@ -402,6 +406,7 @@ def main():
402
406
default = False ,
403
407
help = "Build GodotSharp without using deprecated features. This is required, if the engine was built with 'deprecated=no'." ,
404
408
)
409
+ parser .add_argument ("--werror" , action = "store_true" , default = False , help = "Treat compiler warnings as errors." )
405
410
406
411
args = parser .parse_args ()
407
412
@@ -427,6 +432,7 @@ def main():
427
432
push_nupkgs_local ,
428
433
args .precision ,
429
434
args .no_deprecated ,
435
+ args .werror ,
430
436
)
431
437
sys .exit (exit_code )
432
438
0 commit comments