Commit Graph

8 Commits

Author SHA1 Message Date
b1465d6af0 iOS: Fix loading of xcframework dynamic libraries.
The logic used to determine whether to invoke the in-memory registration or to
delegate the loading of a library is incorrect for xcframework packages - as
these can contain either static or dynamic libraries.

This change instead lets the operating system handle the library request, and if
it fails, it attempts to load from the internal registry.

With this change, xcframeworks containing dynamic libraries work without
workarounds on iOS.

With an additional fallback case courtesy of @bruvzg

This fixes https://github.com/godotengine/godot/issues/112783
2025-11-14 16:31:09 -05:00
cc4bbf78fb Merge pull request #105345 from Zylann/gdextension_print_version
Print Godot version when an extension is found to be incompatible
2025-06-04 10:34:24 -05:00
b8e44a0000 Improve ConfigFile get_sections and get_section_keys by returning Vector<String> 2025-04-24 20:10:31 -04:00
ab36db2cfa Print Godot version when an extension is found to be incompatible 2025-04-13 14:14:23 +02:00
97ee05e9b7 Rename version defines to GODOT_VERSION_* to match GDExtension godot-cpp 2025-03-12 11:11:38 -07:00
38f9769bc6 [Core] Improve error messages with vformat 2024-10-30 15:55:51 +01:00
8a41b1d90f GDExtension: Use loader to check if the library exists. 2024-09-29 07:38:45 +02:00
4dd6e8eca5 GDExtension: Implement GDExtensionLoader concept
- Implements the concept of GDExtension loaders that can be used to customize how GDExtensions are loaded and initialized.
- Moves the parsing of `.gdextension` config files to the new `GDExtensionLibraryLoader`.
- `GDExtensionManager` is now meant to be the main way to load/unload extensions and can optionally take a `GDExtensionLoader`.
- `EditorFileSystem` avoids unloading extensions if the file still exists, this should prevent unloading extensions that are outside the user project.
2024-08-22 05:29:11 +02:00