Commit Graph

1161 Commits (c18c1916c3f465d00800921d527902f18308fbf4)

Author SHA1 Message Date
Adam Scott 5c262844ad
Fix Clang deprecated builtins
It seems that Clang and GCC have different interpretations of certain
builtins. So this PR uses std <type_traits> functions just as cowdata.h
does in the godot project.
2023-08-15 18:50:47 -04:00
Rémi Verschelde df5500565a
Merge pull request #1209 from dsnopek/missing-tests
Add automated tests to verify some previous fixes
2023-08-15 09:30:21 +02:00
David Snopek d5fab0b9f8 Add automated tests to verify some previous fixes 2023-08-14 20:48:51 -05:00
David Snopek fecb2959b4 Check that GDExtension is opened by compatible Godot version 2023-08-14 17:01:12 -05:00
David Snopek 5eebc6b20c
Merge pull request #1193 from Zylann/version_header
Added generated version header
2023-08-11 10:33:49 -05:00
Rémi Verschelde 600e749d9b
SCons: Sync `targets.py` fully with upstream Godot
- Reorders existing code to match Godot.
- Adds `NDEBUG` for non-dev builds.
- Adds `-gdwarf-4` for Clang debug symbols.
- Adds strip link flag for GCC/Clang builds without debug symbols.
2023-08-10 09:23:32 +02:00
David Snopek c47bd60c73
Merge pull request #1203 from dsnopek/1082-update
Statically link mingw/msvc runtime libraries on Windows
2023-08-09 18:53:16 -05:00
Feiyun Wang a745c2ac47 Statically link mingw/msvc runtime libraries on Windows
Co-authored-by: David Snopek <dsnopek@gmail.com>
2023-08-09 13:38:38 -05:00
David Snopek 5834e16a22
Merge pull request #1166 from dsnopek/string-resize
Implement `String::resize()` in godot-cpp
2023-07-31 18:31:24 -05:00
David Snopek 6f913563d8 Add static methods to `ClassDB` for the methods bound to the `ClassDB` singleton 2023-07-31 16:04:27 -05:00
David Snopek 845226d66a
Merge pull request #1191 from Faless/build/unify_osxcross
[SCons] Merge OSXCross tools into platform ones
2023-07-31 15:40:27 -05:00
David Snopek d168dd021e
Merge pull request #1189 from Faless/build/compiledb
[SCons] Add option to generate a compilation database.
2023-07-31 15:39:07 -05:00
David Snopek 494b51698d
Merge pull request #1188 from adamscott/add-platform-macros
Add platform macros
2023-07-31 15:38:47 -05:00
David Snopek 8bc1c1dbeb Implement `String::resize()` 2023-07-31 15:14:10 -05:00
David Snopek c5d8447861
Merge pull request #1181 from Zylann/fix_singleton_caching
Don't cache `null` forever if a singleton isn't available yet
2023-07-26 21:09:10 -05:00
Marc Gilleron c6b2c82570 Added generated version header 2023-07-26 23:23:56 +01:00
David Snopek 1d49bef096
Merge pull request #1184 from Zylann/fix_get_property_list_calling_parent
Don't call parent _get_property_list when a class doesn't define it (for internal binding).
2023-07-26 15:31:15 -05:00
David Snopek d15550fdee
Merge pull request #1186 from mihe/indexed-properties
Add support for indexed properties
2023-07-26 14:22:34 -05:00
Marc Gilleron baf0b9e0f7 Don't call parent _get_property_list when a class doesn't define it.
Godot is already supposed to call _get_property_list of parent classes,
so this binding function must really only return procedural properties of
the class it belongs to, and not parent or child classes.
2023-07-26 20:12:25 +01:00
Mikael Hermansson 7d8cb7c155 Add support for indexed properties 2023-07-26 00:31:53 +02:00
Adam Scott 9d9f4279ed
Add platform macros 2023-07-23 19:23:01 -04:00
Fabio Alessandrelli 6d195137fe [SCons] Merge OSXCross tools into platofrm ones 2023-07-23 22:54:07 +02:00
Fabio Alessandrelli 2586ad016e [SCons] Add option to generate a compilation database. 2023-07-22 20:04:30 +02:00
Marc Gilleron 548c758677 Don't cache `null` forever if a singleton isn't available yet
# Conflicts:
#	binding_generator.py
2023-07-22 16:31:28 +01:00
David Snopek 3162be28e5
Merge pull request #1150 from dsnopek/charstring-full
Attempt to fully implement CharString
2023-07-22 09:04:27 -05:00
David Snopek ef5a185dc4
Merge pull request #1176 from dsnopek/string-name-allocate-once
In generated methods, only allocate the method StringName the first time
2023-07-22 09:04:13 -05:00
Yuri Sizov 1009da4d7e gdextension: Sync with upstream commit bd6af8e0ea69167dd0627f3bd54f9105bda0f8b5 (4.1.1-stable) 2023-07-17 20:10:45 +02:00
David Snopek 749b0b9ae0
Merge pull request #1172 from adamscott/add-cache-dir-gitignore
Add lower-case "*.cache" in ".gitignore"
2023-07-14 11:41:03 -05:00
David Snopek 67bd2eac44
Merge pull request #1170 from adamscott/import-env-if-exists
Import `env` if possible
2023-07-14 11:40:52 -05:00
David Snopek a9209ce881
Merge pull request #1175 from bruvzg/msvc_force_utf8
[MSVC] Force UTF-8 encoding.
2023-07-14 06:49:42 -05:00
David Snopek efc16b49d9 In generated methods, only construct the method StringName the first time 2023-07-13 13:05:41 -05:00
bruvzg d1aeba771a
[MSVC] Force UTF-8 encoding. 2023-07-11 16:11:51 +03:00
Adam Scott 8155f35b29
Import `env` if possible
This PR make it possible to import `env` and use it instead of creating
one from scratch every time.

Handy because we encourage users to use the godot-cpp SConstruct file as
a base to their projects (see the test project). So, if a project want
to override specific settings, (eg. make a path local to their SConstruct
file, not local to the godot-cpp/SConstruct file), it can do so.
2023-07-11 04:41:55 -04:00
Adam Scott 67501f1ee2
Add lower-case "*.cache" in ".gitignore" 2023-07-09 12:13:34 -04:00
Rémi Verschelde d627942b64
gdextension: Sync with upstream commit 970459615f6b2b4151742ec6d7ef8559f87fd5c5 (4.1-stable) 2023-07-05 16:31:31 +02:00
Rémi Verschelde d2b8ff4e9c
gdextension: Sync with upstream commit cdd2313ba27d0a2600a18e849b4c5d1fd6a6e351 (4.1-rc3) 2023-07-04 13:42:41 +02:00
Daylily-Zeleen 3536803e9e Implement vararg methods of builtin classes. 2023-07-03 17:30:42 +08:00
Rémi Verschelde ff6f5792d2
Merge pull request #1159 from mihe/unused-exports
Remove unused free-standing `initialize_level` and `deinitialize_level`
2023-07-01 00:33:09 +02:00
Mikael Hermansson 4b1072e4da Remove unused free-standing `initialize_level` and `deinitialize_level` 2023-06-30 19:36:46 +02:00
Rémi Verschelde 3e44ad1867
Merge pull request #1157 from Faless/feat/rpc_test
Add RPC tests.
2023-06-30 15:50:03 +02:00
Fabio Alessandrelli 155f2e2a62 Add RPC tests. 2023-06-30 15:07:42 +02:00
Rémi Verschelde 80986f8497
gdextension: Sync with upstream commit 46424488edc341b65467ee7fd3ac423e4d49ad34 (4.1-rc2) 2023-06-30 10:02:54 +02:00
Rémi Verschelde a4784e12b9
gdextension: Sync with upstream commit ada712e06a471da2a2f4646237830bbd7980c114 (4.1-rc1) 2023-06-29 09:51:49 +02:00
David Snopek 4df112cd95 Attempt to fully implement CharString 2023-06-22 21:03:30 -05:00
Rémi Verschelde bfc9e0bd93
gdextension: Sync with upstream commit ada712e06a471da2a2f4646237830bbd7980c114 (4.1-beta3) 2023-06-21 15:58:41 +02:00
David Snopek 2377f7ec75
Merge pull request #1047 from Kehom/master
Unregister custom classes in reverse registration order
2023-06-20 08:24:56 -05:00
Kehom 20be441026 Unregister custom classes in reverse registration order 2023-06-19 11:04:11 -03:00
Rémi Verschelde 82edc89cfa
Merge pull request #1148 from Bromeon/bugfix/uninit-ptr-signature
GDExtension: `Uninitialized*Ptr` for constructors/converters using placement new
2023-06-19 10:43:58 +02:00
Rémi Verschelde 130644c061
Merge pull request #1138 from dsnopek/editor-plugins-deinitialize
Automatically remove editor plugins when deinitializing GDExtension
2023-06-19 10:43:34 +02:00
Rémi Verschelde ca78bcf558
Merge pull request #1086 from lucasrafael98/fixes/missing-include-audio-frame
Fix: Include method_ptrcall.hpp on simple structs.
2023-06-19 10:43:10 +02:00