Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge commit godotengine/godot-cpp@47f11bc #15

Merged
merged 31 commits into from
Dec 23, 2024

Conversation

Spartan322
Copy link
Member

No description provided.

dsnopek and others added 30 commits October 7, 2024 11:22
A global alias of godot::real_t is defined for backward compatibility
- Added to .gitignore CMakeUserPresets.json

### Configuration:
- Changed python command to use single quotes to make build output log more legible.
- Added GODOT_DEV_BUILD to allow differentiation of debug or Release builds.
- Added find logic for macos Cocoa library

### godot-cpp Changes
- godot-cpp-test is changed to be incorporated into the cmake build as a target.
- Duplicated godot-cpp target into [template_release, template_debug, editor]
- Created {platform}.cmake files mirroring the style of the SCons build.

CMake has a feature called generator expressions for its configuration variables that are evaluated at build time. This allows multi-configuration build systems to properly evaulate options. for msvc, xcode and nijna multi-config.

- Moved configuration options to generator expressions with the notable exclusion of OSX_ARCHITECTURES.
- Remove CMAKE_BUILD_TYPE from msvc CI target as Multi-Config generators ignore it

### godot-cpp-test Changes
- Removed majority of the cmake code, now that the godot-cpp project is setup, the majority of the flags will be propagated as transient dependencies
- Marked with EXCLUDE_FROM_ALL so that it isn't built as part of the 'all' target
- Updated ci to build the godot-cpp-test target from the root directory using cmake
- Tests passing for Windows, Linux, and Macos builds.

### Documentation
Updated with new information
Added Emscripten example
Added Android example
Modernise existing cmake options
So that builds that relied on the alias already wont break.
Engine has an option to link to MDd debug_crt
add flag to SCons options
Add flag to CMAKE options
CMake: Align MSVC runtime (MD[d], MT) options to engine
CMake: fix break for build prior to modernisation PR
Update gdextension_interface.h. Add metadata to GetTypeInfo of char16_t and char32_t.
Add `print_line` for compatibility with engine modules
This module contains VariantInternalType, VariantInternal, VariantGetInternalPtr, VariantInternalAccessor and VariantDefaultInitializer, allowing to access and manipulate Variant's internal values.
Don't print an error when decoding a null Ref<T>
My last attempt at solving this was not correct. I have left lots of comments in the source detailing the issue as it will effect consumers.
This was a mistake left over from the modernise PR
CMake: Fix selection of MSVC Runtime compile flags
CMake: Replace empty ${EXCLUDE} variable with EXCLUDE_FROM_ALL
.dev is added to output artifacts
Warn users for specifying dev_build and Release build config
Update documentation with deviations to SCons
Update debug_symbols handling, its rolled into build config
Cleanup helper variables and comments
CMake: Handle GODOT_DEV_BUILD flag
detect clang with MSVC frontend using CMAKE_CXX_COMPILER_FRONTEND_VARIANT
CMake: Enable using clang-cl on windows
Add a separate setup-godot-cpp github action.
Fix `print_verbose()` macro conflicting with `UtilityFunctions::print_verbose()`
@Spartan322 Spartan322 merged commit 307d4ea into Redot-Engine:master Dec 23, 2024
11 checks passed
@Spartan322 Spartan322 deleted the merge/47f11bc branch December 23, 2024 07:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants