Fix Windows builds#23
Merged
Merged
Conversation
- Places all Windows resource file values on one line. - Removes leading empty strings from VERSION defines.
- Reverts the workaround for a problem with Windows 11 Terminal closing Rebel Editor when Project Manager closed. - Reverts the incomplete change for disabling execute opening a console.
- Removes the dot from suffix added to sanitizer builds. - Adds mingw or msvc suffix to builds to indicate compiler mode. - Adds MSVC LLVM (Clang) compiler build option. - Refactors the MinGW configuration and setup.
DanielaOrtner
approved these changes
Dec 7, 2023
Contributor
DanielaOrtner
left a comment
There was a problem hiding this comment.
What a huge step forward towards supporting our Windows community!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes multiple issues with Windows builds:
Fixes godotengine/godot#58595: (Older?) MinGW compilers may not define
ENABLE_VIRTUAL_TERMINAL_PROCESSING; so the build fails.Reverses godotengine/godot#55967 that introduced
ENABLE_VIRTUAL_TERMINAL_PROCESSINGto workaround godotengine/godot#54076 and caused godotengine/godot#58595. I cannot reproduce godotengine/godot#54076; so it may have been fixed by Microsoft, and we should be able to safely revert godotengine/godot#55967 to fix godotengine/godot#58595.Fixes the Windows build scripts:
ssuffix added to sanitizer builds.mingwormsvcsuffix to builds to indicate compiler mode.Note: The MSVC LLVM (Clang) build is currently failing (see also godotengine/godot#43354) when trying to build the third-party library
libwebp:SSSE3 is part of micro-architecture level
x86-64-v2. Clang (GCC and MinGW) require specifying the microarchitecture level. Microsoft Visual C compiler, supportsx86-64-v2by default. Microsoft Visual C compiler and Clang in MSVC mode define_MSC_VER.libwebenables SSE2 and SSE4.1 when_MSC_VERis defined, because it assumesx86-64-v2is supported. Therefore, this issue is a combination of Clang requiringx86-64-v2to be specified, Microsoft supportingx86-64-v2by default andlibwebpassuming that if_MSC_VERis specified that SSE2 and SSE41 commands can be used.To maximise Rebel Engine support, Rebel Engine is currently built without support for
x86-64-v2. As explained by Red Hat's decision to supportx86-64-v2, it is probably now safe to build Rebel Engine withx86-64-v2support, but I'll leave that for a separate PR.Reverts godotengine/godot#26674 that caused godotengine/godot#54684. Note: godotengine/godot#26674 was incorrectly implemented. godotengine/godot#54591 corrected the implementation. However, godotengine/godot#54591 was never applied, therefore, the issue with godotengine/godot#26674, which was raised before it was merged (godotengine/godot#26674 (comment)) didn't affect Rebel Engine.
Fixes the Windows executable's property details to ensure all values are displayed as expected:
Includes the addition of a vertical scrollbar to the automated patch application prompt when running the pre-commit style check hooks.