summaryrefslogtreecommitdiffstats
path: root/modules/mono/build_scripts/build_assemblies.py
diff options
context:
space:
mode:
Diffstat (limited to 'modules/mono/build_scripts/build_assemblies.py')
-rwxr-xr-xmodules/mono/build_scripts/build_assemblies.py29
1 files changed, 19 insertions, 10 deletions
diff --git a/modules/mono/build_scripts/build_assemblies.py b/modules/mono/build_scripts/build_assemblies.py
index f9709362eb..9f88b0575e 100755
--- a/modules/mono/build_scripts/build_assemblies.py
+++ b/modules/mono/build_scripts/build_assemblies.py
@@ -5,7 +5,7 @@ import os.path
import shlex
import subprocess
from dataclasses import dataclass
-from typing import Optional, List
+from typing import List, Optional
def find_dotnet_cli():
@@ -194,7 +194,7 @@ def run_msbuild(tools: ToolsLocation, sln: str, chdir_to: str, msbuild_args: Opt
return subprocess.call(args, env=msbuild_env, cwd=chdir_to)
-def build_godot_api(msbuild_tool, module_dir, output_dir, push_nupkgs_local, precision):
+def build_godot_api(msbuild_tool, module_dir, output_dir, push_nupkgs_local, precision, no_deprecated):
target_filenames = [
"GodotSharp.dll",
"GodotSharp.pdb",
@@ -217,6 +217,8 @@ def build_godot_api(msbuild_tool, module_dir, output_dir, push_nupkgs_local, pre
args += ["/p:ClearNuGetLocalCache=true", "/p:PushNuGetToLocalSource=" + push_nupkgs_local]
if precision == "double":
args += ["/p:GodotFloat64=true"]
+ if no_deprecated:
+ args += ["/p:GodotNoDeprecated=true"]
sln = os.path.join(module_dir, "glue/GodotSharp/GodotSharp.sln")
exit_code = run_msbuild(msbuild_tool, sln=sln, chdir_to=module_dir, msbuild_args=args)
@@ -304,9 +306,7 @@ def generate_sdk_package_versions():
<GodotVersionConstants>{1}</GodotVersionConstants>
</PropertyGroup>
</Project>
-""".format(
- version_str, ";".join(version_defines)
- )
+""".format(version_str, ";".join(version_defines))
# We write in ../SdkPackageVersions.props.
with open(os.path.join(dirname(script_path), "SdkPackageVersions.props"), "w", encoding="utf-8", newline="\n") as f:
@@ -323,9 +323,7 @@ def generate_sdk_package_versions():
public const string VersionDocsUrl = "https://docs.godotengine.org/en/{docs_branch}";
}}
}}
-""".format(
- **version_info
- )
+""".format(**version_info)
generators_dir = os.path.join(
dirname(script_path),
@@ -340,12 +338,14 @@ def generate_sdk_package_versions():
f.write(constants)
-def build_all(msbuild_tool, module_dir, output_dir, godot_platform, dev_debug, push_nupkgs_local, precision):
+def build_all(
+ msbuild_tool, module_dir, output_dir, godot_platform, dev_debug, push_nupkgs_local, precision, no_deprecated
+):
# Generate SdkPackageVersions.props and VersionDocsUrl constant
generate_sdk_package_versions()
# Godot API
- exit_code = build_godot_api(msbuild_tool, module_dir, output_dir, push_nupkgs_local, precision)
+ exit_code = build_godot_api(msbuild_tool, module_dir, output_dir, push_nupkgs_local, precision, no_deprecated)
if exit_code != 0:
return exit_code
@@ -368,6 +368,8 @@ def build_all(msbuild_tool, module_dir, output_dir, godot_platform, dev_debug, p
args += ["/p:ClearNuGetLocalCache=true", "/p:PushNuGetToLocalSource=" + push_nupkgs_local]
if precision == "double":
args += ["/p:GodotFloat64=true"]
+ if no_deprecated:
+ args += ["/p:GodotNoDeprecated=true"]
sln = os.path.join(module_dir, "editor/Godot.NET.Sdk/Godot.NET.Sdk.sln")
exit_code = run_msbuild(msbuild_tool, sln=sln, chdir_to=module_dir, msbuild_args=args)
if exit_code != 0:
@@ -394,6 +396,12 @@ def main():
parser.add_argument(
"--precision", type=str, default="single", choices=["single", "double"], help="Floating-point precision level"
)
+ parser.add_argument(
+ "--no-deprecated",
+ action="store_true",
+ default=False,
+ help="Build GodotSharp without using deprecated features. This is required, if the engine was built with 'deprecated=no'.",
+ )
args = parser.parse_args()
@@ -418,6 +426,7 @@ def main():
args.dev_debug,
push_nupkgs_local,
args.precision,
+ args.no_deprecated,
)
sys.exit(exit_code)