Fabio Alessandrelli
9e860a84a0
[Web] Force emcc to use "wasm" longjmp mode
...
SUPPORT_LONGJMP have changed since emscripten 3.1.32 to default to
"wasm" mode when exceptions are enabled, and "emscripten" mode when
disabled.
While we generally doesn't use exception in core, linked libraries may
need them, and emscripten don't plan to support WASM EH + Emscripten
SjLj in the long term.
(cherry picked from commit 1bb543b6f4
)
2024-09-04 10:03:13 -05:00
Fabio Alessandrelli
9b4c5f0562
[SCons] Add option to build without threads
...
This is relevant for the Web platform, where builds with and without
threads are incompatible.
(cherry picked from commit b0296bb562
)
2024-09-04 09:58:58 -05:00
David Snopek
a4f9d22ac5
Merge pull request #1529 from dsnopek/4.1-cherrypicks-12
...
Cherry-picks for the godot-cpp 4.1 branch - 12th batch
2024-07-17 12:28:25 -05:00
A Thousand Ships
7dd2d24805
Fix sharing of typed arrays from constructor
...
(cherry picked from commit 41aa71f8c3
)
2024-07-17 09:58:09 -05:00
Yuri Sizov
18b81efbf3
Fix argument metadata when binding methods
...
While there doesn't seem to be any runtime issues,
this triggers the address sanitizer in a few ways,
depending on what kind of method you're
binding.
(cherry picked from commit 2b34bd0d8b
)
2024-07-17 09:57:10 -05:00
Thaddeus Crews
430637bf1a
SCons: Add `silence_msvc` option
...
(cherry picked from commit 1989b1bf57
)
2024-07-17 09:57:01 -05:00
Thaddeus Crews
ca26922a19
Integrate `.pre-commit-config.yaml`
...
(cherry picked from commit e0d363aad8
)
2024-07-17 09:56:32 -05:00
Thaddeus Crews
edce0b7178
Fix `#include` formatting
...
(cherry picked from commit 999018e7d1
)
2024-07-17 09:53:29 -05:00
Thaddeus Crews
23325b9ab0
Add `.editorconfig`, consolidate `.gitattributes`
...
(cherry picked from commit 7a96d0314e
)
2024-07-17 09:53:19 -05:00
Fabio Alessandrelli
208b70dbef
[CI] Update macOS workers to macos-latest
...
GitHub actions no longer allow `macos-11` runners
(cherry picked from commit 2dd8917508
)
2024-07-17 09:53:07 -05:00
A Thousand Ships
1f57a8d76e
Fix some style details in generation
...
(cherry picked from commit e7a13e3bf4
)
2024-07-17 09:48:31 -05:00
A Thousand Ships
f16814ee05
Enforce `p_` prefixes for arguments in binds
...
(cherry picked from commit 9e2771f918
)
2024-07-17 09:37:59 -05:00
Fabio Alessandrelli
22beef8cbc
Add support for build profiles.
...
Allow enabling or disabling specific classes (which will not be built).
(cherry picked from commit 1186c488bd
)
2024-07-17 09:34:07 -05:00
David Snopek
2e7f5512d1
Merge pull request #1491 from dsnopek/4.1-cherrypicks-11
...
Cherry-picks for the godot-cpp 4.1 branch - 11th batch
2024-06-14 13:32:54 -05:00
David Snopek
5880be034c
[4.1] Allow selecting Godot version to run the tests with
...
(cherry picked from commit f88b6a2f00
)
2024-06-14 11:44:39 -05:00
A Thousand Ships
a648650c5d
Add default argument processing for `NodePath`
...
(cherry picked from commit 37e7a6da05
)
2024-06-14 10:40:04 -05:00
A Thousand Ships
65058828a6
Fix generating default values for `StringName`
...
Cases other than `&""` were not processed correctly
(cherry picked from commit 6cd6c8923a
)
2024-06-14 10:38:34 -05:00
David Snopek
f067a9bff0
Fix vararg methods forwarded to the `ClassDB` singleton
...
(cherry picked from commit e04a26b2bc
)
2024-06-14 10:37:44 -05:00
Richard Hozák
6ba31a1800
Fix warnings emitted with -Wall
...
(cherry picked from commit 8c6cc1ec15
)
2024-06-14 10:37:27 -05:00
David Snopek
8269c0102a
Explicitly refer to `godot` namespace in `GDREGISTER_*_CLASS()` macros
...
(cherry picked from commit 246a803954
)
2024-06-14 10:31:04 -05:00
DmitriySalnikov
5f864cd8de
[Scons] Added the ability to change the visibility of symbols
...
(cherry picked from commit f5e4f95cde
)
2024-06-14 10:28:30 -05:00
David Snopek
32becf6a13
Merge pull request #1466 from dsnopek/4.1-cherrypicks-10
...
Cherry-picks for the godot-cpp 4.1 branch - 10th batch
2024-05-28 08:35:20 -05:00
David Snopek
7b93607779
Fix NOTIFICATION_POSTINITIALIZE sent twice to native parent class
...
(cherry picked from commit 06373ce1cf
)
2024-05-17 17:11:27 -05:00
Daylily-Zeleen
1ab42ec6c5
mark return value of `get_class_static` and `get_parent_class_static` as const
...
(cherry picked from commit 3db8549e19
)
2024-05-17 16:58:32 -05:00
David Snopek
6328728dc2
Allow forwarding from `ClassDB` to `ClassDBSingleton` to support enumerations
...
(cherry picked from commit e1b3b32db5
)
2024-05-17 16:57:33 -05:00
David Snopek
6123c86f06
Correctly handle `Object *` arguments that were encoded as `nullptr`
...
(cherry picked from commit 37542dc2ec
)
2024-05-17 16:56:37 -05:00
David Snopek
fff665e0f5
Give compile-time error if registering a class without its own `_bind_methods()` function
...
(cherry picked from commit ca46ef4d25
)
2024-05-17 16:55:41 -05:00
pupil1337
82ea3f74a4
Add static_assert() for register_class
...
(cherry picked from commit 1fa7a9cb19
)
2024-05-17 16:54:44 -05:00
A Thousand Ships
11cd9a0727
[Math] Add `is_finite` methods
...
(cherry picked from commit d389171905
)
2024-05-17 16:54:00 -05:00
Chris Cranford
a75e33c333
Implement to/from dict helpers for PropertyInfo/MethodInfo
...
(cherry picked from commit 2a041b5240
)
2024-05-17 16:53:43 -05:00
David Snopek
d24983d682
Backport miscellaneous changes that can't be cherry-picked
...
(cherry picked from commit 9afbdb9cf6
)
2024-05-17 16:51:42 -05:00
David Snopek
4b0ee13327
gdextension: Sync with upstream commit fe0e8e55752b0c2e64997025717b491703e0f8ad (4.1.4-stable)
2024-04-17 13:02:32 -05:00
David Snopek
e4978558e6
Merge pull request #1441 from dsnopek/4.1-cherrypicks-9
...
Cherry-picks for the godot-cpp 4.1 branch - 9th batch
2024-04-17 12:58:30 -05:00
Chris Cranford
30ebe5fdf9
Fix PropertyInfo to use hint/usage default constants
...
(cherry picked from commit e160966163
)
2024-04-17 11:01:33 -05:00
thimenesup
e897dbe58a
Fix Projection create_orthogonal being incorrect
...
Title
(cherry picked from commit e4ae69f607
)
2024-04-17 11:00:56 -05:00
Thaddeus Crews
28a6609c0b
Implement `verbose` toggle from godot repo
...
(cherry picked from commit b05c21bb1d
)
2024-04-17 10:58:41 -05:00
dependabot[bot]
7f3e725a8a
Bump mymindstorm/setup-emsdk from 13 to 14
...
Bumps [mymindstorm/setup-emsdk](https://github.com/mymindstorm/setup-emsdk ) from 13 to 14.
- [Release notes](https://github.com/mymindstorm/setup-emsdk/releases )
- [Commits](https://github.com/mymindstorm/setup-emsdk/compare/v13...v14 )
---
updated-dependencies:
- dependency-name: mymindstorm/setup-emsdk
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit 32ca574f49
)
2024-04-17 10:58:31 -05:00
Thaddeus Crews
8e5d7c9268
Use `GDREGISTER` defines in example
...
(cherry picked from commit a537b4af4d
)
2024-04-17 10:58:16 -05:00
David Snopek
974e6c6f86
Merge pull request #1411 from dsnopek/4.1-cherrypicks-8
...
Cherry-picks for the godot-cpp 4.1 branch - 8th batch
2024-04-08 13:09:01 -05:00
A Thousand Ships
c8fa4c0fd0
Fix incorrect utility call signature
...
(cherry picked from commit d055b575fb
)
2024-04-08 11:40:05 -05:00
ytnuf
594a93f8ac
Change cmake_minimum_required to match actual requirements
...
This is because target_link_options was added in v3.13
So this wouldn't build with cmake v3.12
Likewise in CMAKE_CXX_STANDARD only supports value of 17 starting with
cmake v3.9
So the test wouldn't build properly with cmake v3.6
(cherry picked from commit 5c12bd2287
)
2024-04-08 11:39:53 -05:00
Thaddeus Crews
9e48c45bfc
Enforce template syntax `typename` over `class`
...
(cherry picked from commit 87f5fb0691
)
2024-04-08 11:39:21 -05:00
David Snopek
76d6ce7136
Avoid creating most objects that Godot is going to use placement new to initialize
...
(cherry picked from commit c4fde852e6
)
2024-04-08 11:30:23 -05:00
bruvzg
e99d7b3b7e
[Packed*Array] Add support for initializer lists.
...
(cherry picked from commit 8c98a90f32
)
2024-04-08 11:29:39 -05:00
A Thousand Ships
07e245e3e4
Fix invalid `void` return in `BitField`
...
(cherry picked from commit 7ed8ef7221
)
2024-03-11 13:33:57 -05:00
Marc Gilleron
ed576f8318
Fix explicit namespaces in macros
...
(cherry picked from commit e607790647
)
2024-03-11 13:33:44 -05:00
David Snopek
f7a9d32f32
Fix _notification with parent and child classes
...
(cherry picked from commit 23c010900c
)
2024-03-11 13:31:19 -05:00
bruvzg
08da55cd0b
[Core] Improve `CowData` and `Memory` metadata alignment.
...
(cherry picked from commit b173a4d935
)
2024-03-11 13:11:26 -05:00
Fabio Alessandrelli
670c4d0eac
[SCons] Split `targets.py`, apply flags from tools
...
Split `targets` tool logic, moving all the compiler-specific flags to a
new `common_compiler_flags.py` file, and everything else (CPPDEFINES,
optimize option logic, dev build logic, etc) to the `godotcpp` tool.
The default tools now apply the common compiler flags by importing the
file and explicitly calling `configure`.
(cherry picked from commit 16df4bff30
)
2024-03-11 13:06:57 -05:00
Fabio Alessandrelli
bab62a4d72
[SCons] Add support for custom build tools and platforms
...
Use with:
`scons platform=os2 custom_tools=/path/to/tools`
(assuming you have an `os2.py` inside `/path/to/tools/`)
(cherry picked from commit baaad7ada2
)
2024-03-11 13:01:23 -05:00