diff options
author | qarmin <mikrutrafal@protonmail.com> | 2021-10-01 08:14:54 +0200 |
---|---|---|
committer | qarmin <mikrutrafal@protonmail.com> | 2021-11-09 11:02:04 +0100 |
commit | 071829acc5b80eea1c0bae1ea92fcc0a688221d8 (patch) | |
tree | e4def9f498899dd1fb6f57549b54dc0493d67fb8 | |
parent | 38c698c4854bd42de1e88c61652ae09ec62bdd87 (diff) |
Enable mono editor build in CI
-rw-r--r-- | .github/workflows/linux_builds.yml | 29 | ||||
-rw-r--r-- | doc/classes/ProjectSettings.xml | 2 | ||||
-rw-r--r-- | main/main.cpp | 2 | ||||
-rw-r--r-- | modules/mono/doc_classes/CSharpScript.xml | 5 | ||||
-rw-r--r-- | modules/mono/doc_classes/GodotSharp.xml | 29 |
5 files changed, 34 insertions, 33 deletions
diff --git a/.github/workflows/linux_builds.yml b/.github/workflows/linux_builds.yml index f6d11e2efe..15bd4bc69b 100644 --- a/.github/workflows/linux_builds.yml +++ b/.github/workflows/linux_builds.yml @@ -18,13 +18,15 @@ jobs: fail-fast: false matrix: include: - - name: Editor (target=release_debug, tools=yes, tests=yes) - cache-name: linux-editor + - name: Editor w/ Mono (target=release_debug, tools=yes, tests=yes) + cache-name: linux-editor-mono target: release_debug tools: true - tests: true + tests: false # Disabled due freeze caused by mix Mono build and CI + sconsflags: module_mono_enabled=yes mono_glue=no doc-test: true - bin: "./bin/godot.linuxbsd.opt.tools.64" + bin: "./bin/godot.linuxbsd.opt.tools.64.mono" + build-mono: true artifact: true - name: Editor and sanitizers (target=debug, tools=yes, tests=yes, use_asan=yes, use_ubsan=yes) @@ -36,6 +38,7 @@ jobs: proj-test: true godot-cpp-test: true bin: "./bin/godot.linuxbsd.tools.64s" + build-mono: false # Skip 2GiB artifact speeding up action. artifact: false @@ -45,6 +48,7 @@ jobs: tools: false tests: false sconsflags: module_mono_enabled=yes mono_glue=no debug_symbols=no + build-mono: false artifact: true steps: @@ -80,11 +84,26 @@ jobs: tools: ${{ matrix.tools }} tests: ${{ matrix.tests }} + - name: Generate Mono glue + if: ${{ matrix.build-mono }} + run: | + ${{ matrix.bin }} --headless --generate-mono-glue modules/mono/glue || true + + # Rebuild with mono + - name: Compilation (mono_glue=yes) + uses: ./.github/actions/godot-build + if: ${{ matrix.build-mono }} + with: + sconsflags: ${{ env.SCONSFLAGS }} ${{ matrix.sconsflags }} mono_glue=yes + platform: linuxbsd + target: ${{ matrix.target }} + tools: ${{ matrix.tools }} + # Execute unit tests for the editor - name: Unit tests if: ${{ matrix.tests }} run: | - ${{ matrix.bin }} --test + ${{ matrix.bin }} --test --headless # Check class reference - name: Check for class reference updates diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml index 30409814d2..205987f5be 100644 --- a/doc/classes/ProjectSettings.xml +++ b/doc/classes/ProjectSettings.xml @@ -1315,8 +1315,6 @@ </member> <member name="mono/profiler/enabled" type="bool" setter="" getter="" default="false"> </member> - <member name="mono/project/auto_update_project" type="bool" setter="" getter="" default="true"> - </member> <member name="mono/unhandled_exception_policy" type="int" setter="" getter="" default="0"> </member> <member name="navigation/2d/default_cell_size" type="int" setter="" getter="" default="10"> diff --git a/main/main.cpp b/main/main.cpp index 863ffccfae..0cf805f94a 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -2051,8 +2051,6 @@ bool Main::start() { GLOBAL_DEF("mono/profiler/args", "log:calls,alloc,sample,output=output.mlpd"); GLOBAL_DEF("mono/profiler/enabled", false); GLOBAL_DEF("mono/unhandled_exception_policy", 0); - // From editor/csharp_project.cpp. - GLOBAL_DEF("mono/project/auto_update_project", true); #endif DocTools doc; diff --git a/modules/mono/doc_classes/CSharpScript.xml b/modules/mono/doc_classes/CSharpScript.xml index abd860a55f..2bca8bc24e 100644 --- a/modules/mono/doc_classes/CSharpScript.xml +++ b/modules/mono/doc_classes/CSharpScript.xml @@ -12,13 +12,10 @@ </tutorials> <methods> <method name="new" qualifiers="vararg"> - <return type="Variant"> - </return> + <return type="Variant" /> <description> Returns a new instance of the script. </description> </method> </methods> - <constants> - </constants> </class> diff --git a/modules/mono/doc_classes/GodotSharp.xml b/modules/mono/doc_classes/GodotSharp.xml index 417f8ac704..a148072245 100644 --- a/modules/mono/doc_classes/GodotSharp.xml +++ b/modules/mono/doc_classes/GodotSharp.xml @@ -11,66 +11,55 @@ </tutorials> <methods> <method name="attach_thread"> - <return type="void"> - </return> + <return type="void" /> <description> Attaches the current thread to the Mono runtime. </description> </method> <method name="detach_thread"> - <return type="void"> - </return> + <return type="void" /> <description> Detaches the current thread from the Mono runtime. </description> </method> <method name="get_domain_id"> - <return type="int"> - </return> + <return type="int" /> <description> Returns the current MonoDomain ID. [b]Note:[/b] The Mono runtime must be initialized for this method to work (use [method is_runtime_initialized] to check). If the Mono runtime isn't initialized at the time this method is called, the engine will crash. </description> </method> <method name="get_scripts_domain_id"> - <return type="int"> - </return> + <return type="int" /> <description> Returns the scripts MonoDomain's ID. This will be the same MonoDomain ID as [method get_domain_id], unless the scripts domain isn't loaded. [b]Note:[/b] The Mono runtime must be initialized for this method to work (use [method is_runtime_initialized] to check). If the Mono runtime isn't initialized at the time this method is called, the engine will crash. </description> </method> <method name="is_domain_finalizing_for_unload"> - <return type="bool"> - </return> - <argument index="0" name="domain_id" type="int"> - </argument> + <return type="bool" /> + <argument index="0" name="domain_id" type="int" /> <description> Returns [code]true[/code] if the domain is being finalized, [code]false[/code] otherwise. </description> </method> <method name="is_runtime_initialized"> - <return type="bool"> - </return> + <return type="bool" /> <description> Returns [code]true[/code] if the Mono runtime is initialized, [code]false[/code] otherwise. </description> </method> <method name="is_runtime_shutting_down"> - <return type="bool"> - </return> + <return type="bool" /> <description> Returns [code]true[/code] if the Mono runtime is shutting down, [code]false[/code] otherwise. </description> </method> <method name="is_scripts_domain_loaded"> - <return type="bool"> - </return> + <return type="bool" /> <description> Returns [code]true[/code] if the scripts domain is loaded, [code]false[/code] otherwise. </description> </method> </methods> - <constants> - </constants> </class> |