Commit Graph

1231 Commits (fa10d1a303562f002ad9db927143b6ed1b327f31)

Author SHA1 Message Date
Fabio Alessandrelli 9fd33b5cde Allow method binds to take Object subclasses as arguments
As done in upstream Godot via GH-57205.

Add a test that ensures it works also for "gdextended" objects.
2023-01-10 12:55:41 +01:00
Rémi Verschelde 129c358a72
Merge pull request #968 from Faless/build/4.x_custom_paths
[SCons] Fix custom API file/dir relative paths.
2023-01-09 23:25:10 +01:00
Ricardo Buring 47140cdad0 Rename float=64 build option to precision=double
This makes the build system consistent with Godot again.
Also fix CMake build to define REAL_T_IS_DOUBLE when precision=double.
2023-01-09 23:22:03 +01:00
Fabio Alessandrelli 6877a0abcd [SCons] Fix custom API file/dir relative paths. 2023-01-09 21:09:49 +01:00
Rémi Verschelde 2f785c9da1
Merge pull request #987 from bruvzg/fix_enum_size
Fix enum return value size.
2023-01-07 12:20:41 +01:00
bruvzg 18eed144ca
Fix enum return value size. 2023-01-07 00:48:40 +02:00
Ricardo Buring d4e1dfe5dc Add conversions between Variant and ObjectID 2023-01-01 21:27:08 +01:00
Rémi Verschelde 3da6db4fe4
gdextension: Sync with upstream commit d0398f62f08ce0cfba80990b21c6af4181f93fe9 (4.0-beta10) 2022-12-23 23:37:22 +01:00
Rémi Verschelde e75647056b
Merge pull request #974 from akien-mga/add-gdignore
Add .gdignore file to godot-cpp, for use as submodule in Godot projects
2022-12-22 16:24:30 +01:00
Rémi Verschelde f99aa47581
Add .gdignore file to godot-cpp, for use as submodule in Godot projects
.gdignore causes Godot to skip the folder when importing resources,
which is needed in particular to avoid importing compiled .obj files
from MSVC (which sadly share their extension with Wavefront OBJ meshes).

Closes #522.
2022-12-22 16:01:03 +01:00
Rémi Verschelde 99de0a872e
Merge pull request #971 from Faless/build/4.x_default_gnu
[SCons] Platform agnostic default toolchain (GNU).
2022-12-20 18:02:49 +01:00
Fabio Alessandrelli 8d6982be3b [SCons] Platform agnostic default toolchain (GNU).
Create the SCons Environment with an empty PLATFORM variable to force
the default tools to use the GNU toolchain.

Platform specific toolchains are then setup in our custom tools.
2022-12-20 17:41:34 +01:00
Rémi Verschelde 104997e83e
Merge pull request #961 from mihe/char-string-length
Fix incorrect length passed to `CharString`
2022-12-20 10:44:08 +01:00
Fabio Alessandrelli c0eaadac86
Merge pull request #903 from PapyChacal/build_library
Make build_library=no usable at godot-cpp's root
2022-12-19 23:03:17 +01:00
Emilien Bauer e52d4b6486 Remove gen from emitted files to solve circular dependency with build_library=no.
Use env variable to pass the output dir instead.
Add a CI step to guard regression on this. Clean the generated sources to avoid interfering with next steps.
2022-12-19 21:20:15 +00:00
Rémi Verschelde 0233683173
gdextension: Sync with upstream commit e780dc332a0a3f642a6daf8548cb211d79a2cc45 (4.0-beta9) 2022-12-19 16:10:14 +01:00
Rackoon 72d537fd95 Fix GDCLASS needs explicit ClassDB fwd declaration 2022-12-16 13:49:10 +01:00
Rémi Verschelde 91a4a03356
Merge pull request #962 from Bromeon/gdextension-const-correctness
Extension header: amend const correctness of `p_args` parameters
2022-12-14 17:13:40 +01:00
Jan Haller fce753c05d Extension header: amend const correctness of `p_args` parameters 2022-12-14 15:47:42 +01:00
Mikael Hermansson 1f6b0118dc Fix incorrect length passed to `CharString` 2022-12-14 15:08:45 +01:00
Rémi Verschelde a0b0560e20
Merge pull request #960 from akien-mga/godot-headers-is-dead-long-live-godot-headers
Rename godot-headers to gdextension, move header to top folder
2022-12-14 14:09:52 +01:00
Rémi Verschelde bab247dcb6
Rename godot-headers to gdextension, move header to top folder
Changes the `<godot/gdextension_interface.h>` include to simply
`<gdextension_interface.h>`.

Refactor and better document the SCons and CMake logic around setting
the paths to the header and API JSON file.
2022-12-14 12:36:59 +01:00
Rémi Verschelde 1e8eb1c1f2
Merge pull request #958 from BastiaanOlij/improve_gdextension_virtual_ref
Fix virtual GDExtension method Ref<T> conversion
2022-12-14 12:36:12 +01:00
Rémi Verschelde 0d926a76a7
Merge pull request #959 from DmitriySalnikov/bitfield_int64
Use `int64_t` for `BitField` as in Godot itself
2022-12-13 12:13:46 +01:00
Rémi Verschelde 49a478a879
Merge pull request #949 from BastiaanOlij/fix_tests_refcounting
Change example code to properly test refcounted objects
2022-12-13 12:13:39 +01:00
Дмитрий Сальников b7eeddcf52 Use int64_t for BitField as in Godot itself 2022-12-13 13:36:16 +03:00
Bastiaan Olij 992d85e6f8 Fix virtual GDExtension method Ref<T> conversion 2022-12-13 10:41:55 +11:00
Rémi Verschelde c21705982e
Merge pull request #952 from groud/rename_gdnative_to_gdextension
Rename GDNative to GDExtension
2022-12-12 18:58:39 +01:00
Gilles Roudière c02e644679 Rename GDNative to GDExtension
Non-exhaustive list of case-sensitive renames:

GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension -> Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION -> EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
2022-12-12 11:06:38 +01:00
Rémi Verschelde c20ecea090
headers: Sync with upstream commit 45cac42c0 (4.0-beta8) 2022-12-09 18:00:49 +01:00
Rémi Verschelde f74c472203
Merge pull request #948 from touilleMan/issue-946
Fix cast on PtrToArg::convert
2022-12-06 10:21:44 +01:00
Rémi Verschelde 9fb5b764af
Add CODEOWNERS so GDExtension team gets assigned for reviews 2022-12-06 10:17:13 +01:00
Bastiaan Olij f24ee56c5d Change example code to properly represent test cases with refcounted objects 2022-12-05 22:28:28 +11:00
Emmanuel Leblond fe79449969
Fix cast on PtrToArg::convert 2022-12-05 03:30:50 +01:00
Rémi Verschelde f9f9a1bab4
Merge pull request #947 from asmaloney/cmake-cleanup
{cmake} Updates for target-based approach
2022-12-04 23:58:15 +01:00
Andy Maloney bb13b957de {cmake} Updates for target-based approach
- instead of setting globals which can effect other projects including this as a subdirectory, set them on the target if possible
- add "CONFIGURE_DEPENDS" to GLOBs to check for changes
- update required CMake version to 3.12 (still ancient - 2018) to support these
2022-12-04 17:37:38 -05:00
Emmanuel Leblond 32859ea25c
Merge pull request #897 from touilleMan/gdextension-fix-gdnative-types-const-qualifier
Fix const qualifier for parameters in GDExtension api functions
2022-12-03 11:13:23 +01:00
Emmanuel Leblond fe86a94dcf
Fix const qualifier for parameters in GDExtension api functions 2022-12-03 00:27:07 +01:00
Rémi Verschelde f1d501f977
headers: Sync with upstream commit 0ff874291 (4.0-beta7) 2022-12-01 18:17:11 +01:00
Rémi Verschelde 4c5cfe3876
Merge pull request #940 from touilleMan/fix-get_property_list-stringname-lifetime
Fix lifetime of StringName objects returned by Wrapped::_get_property_list
2022-11-29 22:37:57 +01:00
Emmanuel Leblond fa405a8337
Fix lifetime of StringName objects returned by Wrapped::_get_property_list 2022-11-29 18:23:56 +01:00
Rémi Verschelde 576bd17285
headers: Sync with upstream commit 7f8ecffa5 (4.0-beta6) 2022-11-23 15:43:17 +01:00
Rémi Verschelde 12c022ee37
Merge pull request #927 from asmaloney/type-warnings
Fix some type warnings in example
2022-11-23 15:42:47 +01:00
Rémi Verschelde 4a4e2b0239
Merge pull request #930 from rune-scape/rune-missing-string-ops
Add missing String operators
2022-11-22 10:25:02 +01:00
Rémi Verschelde 6bebaa36bf
Merge pull request #932 from Faless/build/4.x_msvc_runtime
[SCons] Link MSVC debug runtime for optimize=none|debug only.
2022-11-21 11:38:55 +01:00
Rémi Verschelde 17170fe23c
Merge pull request #929 from asmaloney/static-analysis-fixes
Basic static analysis fixes
2022-11-21 11:38:37 +01:00
Fabio Alessandrelli edf02f8319 [SCons] Link MSVC debug runtime for optimize=none|debug only.
Select windows runtime in "targets" tool, use "/MDd" flag only when
building with optimize="none" and optimize="debug".
2022-11-21 11:04:10 +01:00
rune-scape d04ce481c4 Add missing String operators 2022-11-20 03:44:54 -05:00
Andy Maloney c7e34c2f9d Basic static analysis fixes
- remove extraneous semicolons
- use "nullptr" instead of "0"
- remove "break" after "return"
- use <cstdio> instead of <stdio.h>
2022-11-18 17:46:13 -05:00
Andy Maloney fbf7f7bc36 Fix some type warnings in example 2022-11-16 16:43:44 -05:00