Rémi Verschelde
269b115d9c
SCons: Disable C++ exception handling
...
Upon investigating the extremely slow MSVC build times in #80513 , I noticed
that while Godot policy is to never use exceptions, we weren't enforcing it
with compiler flags, and thus still included exception handling code and
stack unwinding.
This is wasteful on multiple aspects:
- Binary size: Around 20% binary size reduction with exceptions disabled
for both MSVC and GCC binaries.
- Compile time:
* More than 50% build time reduction with MSVC.
* 10% to 25% build time reduction with GCC + LTO.
- Performance: Possibly, needs to be benchmarked.
Since users may want to re-enable exceptions in their own thirdparty code
or the libraries they compile with Godot, this behavior can be toggled with
the `disable_exceptions` SCons option, which defaults to true.
(cherry picked from commit 3907e53ff6
)
2023-09-20 22:44:05 +02:00
Rémi Verschelde
8be838481d
Allow unbundling OpenXR (for Linux distros)
...
Copy XrMatrix4x4f_CreateProjectionFov to our OpenXRUtil, instead of relying
on a private header.
(cherry picked from commit 34a07b81ae
)
2023-09-20 22:44:05 +02:00
bruvzg
a4c041b6b6
[macOS] Workaround Xcode 15 linker bug.
...
(cherry picked from commit 6da8c7a662
)
2023-09-20 22:44:05 +02:00
Rémi Verschelde
12aeb83043
Web: Fix version check for missing scalbnf LTO workaround
...
The check needs to happen after we set `env["CXX"]`.
Follow-up to #81340 .
(cherry picked from commit 50161808c2
)
2023-09-20 22:44:04 +02:00
Rémi Verschelde
6122cf3178
Web: Workaround Emscripten 3.1.42+ LTO regression
...
Fixes #80010 .
(cherry picked from commit b064008c07
)
2023-09-20 22:44:04 +02:00
ocean (they/them)
cd2e003a05
Build system: add option for MSVC incremental linking.
...
(cherry picked from commit bbafe14970
)
2023-09-20 22:44:04 +02:00
bruvzg
d3265cf518
[Windows] Add main executable to the console wrapper dependencies to prevent simultaneous linking.
...
(cherry picked from commit f37ace7036
)
2023-09-20 22:44:04 +02:00
Rémi Verschelde
cdce948473
Fix GCC -Wmaybe-uninitialized warnings
...
(cherry picked from commit efdff9cbc2
)
2023-09-20 22:44:04 +02:00
Rémi Verschelde
32b7664371
SCons: Disable misbehaving MSVC incremental linking
...
Fixes #77968 .
(cherry picked from commit bc1aef88ee
)
2023-09-20 22:44:04 +02:00
Fabio Alessandrelli
5eabd5e04a
[Web] Always return -1 as body length in HTTPClientWeb.
...
Body length cannot be reliably retrieved from the web.
Reading the "content-length" value will return a meaningless value when
the response is compressed, as reading will return uncompressed chunks
in any case, resulting in a mismatch between the detected body size and
the actual size returned by repeatedly calling read_response_body_chunk.
Additionally, while "content-length" is considered a safe CORS header,
"content-encoding" is not, so using the "content-encoding" to decide if
"content-length" is meaningful is not an option either.
We simply must accept the fact that browsers are awful when it comes to
networking APIs.
(cherry picked from commit f4713d235a
)
2023-09-20 18:40:36 +02:00
kleonc
053538c125
Fix byte to float color conversion in DisplayServerWindows::screen_get_pixel
...
(cherry picked from commit 9d45dd812f
)
2023-08-31 20:19:31 +02:00
bruvzg
e67b6e0d0f
[macOS] Fix uncapped frame rate for windows in the non-active workspaces.
...
(cherry picked from commit 2ee45dc293
)
2023-08-31 20:19:30 +02:00
bruvzg
f346b8133e
[Android] Set `echo` property for the physical keyboard events.
...
(cherry picked from commit c687bfa697
)
2023-08-31 19:48:16 +02:00
Rémi Verschelde
fc63a8d349
libpng: Enable intrinsics on x86/SSE2, ppc64/VSX, and all arm/NEON
...
(cherry picked from commit 2c9b7fc7a8
)
2023-08-31 19:26:49 +02:00
Rémi Verschelde
30ab0e2cf4
Fix Linux `move_to_trash` wrongly reporting files as not found
...
We can't rely on the error code from `gio` or `kioclient5`, in my
rudimentary testing they return `1` for both missing files and other
situations like not having a Trash can on the mounted volume.
Fixes #79108 .
(cherry picked from commit a6e75f3971
)
2023-07-11 12:21:28 +02:00
Rémi Verschelde
6ec2d6d7d0
Linux: Fix build with `use_sowrap=no` and various warnings/errors
...
(cherry picked from commit dcd16a5750
)
2023-07-11 12:21:28 +02:00
Rémi Verschelde
29b4ee3d97
Change explicit 'Godot 4.0' references to 'Godot 4'
...
Fixes #79276 .
(cherry picked from commit 8a06ec979e
)
2023-07-10 18:09:58 +02:00
Kamil Brzoskowski
6becf94f49
Fix formatting of dlopen error message on Windows
...
And harmonize the format for all platforms.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
(cherry picked from commit 3cd865dbe8
)
2023-07-10 18:09:57 +02:00
Septian
add7c218d1
fix typo on TLSOptions.xml and library_godot_display.js
...
(cherry picked from commit b88b6b4f48
)
2023-07-10 17:46:09 +02:00
Rémi Verschelde
4c1c26979b
Linux: Link libsquish directly when unbundling, .pc file unreliable
...
(cherry picked from commit b3b4f4c1c9
)
2023-07-10 17:46:08 +02:00
bruvzg
fa45bb63c6
[Windows] Fix setting initial non-exclusive window mode.
...
(cherry picked from commit db0109b237
)
2023-07-10 17:46:08 +02:00
Hugo Locurcio
e32330473a
Remove uses of `vformat()` with no placeholders
...
This is identical to passing the string directly.
(cherry picked from commit dcc92c174e
)
2023-07-10 17:46:07 +02:00
bruvzg
221535c33c
[Windows] Flash both the window caption and taskbar button on `request_attention`.
...
(cherry picked from commit 49af2582c4
)
2023-07-10 17:26:14 +02:00
Rémi Verschelde
da1e511f11
Linux: Allow unbundling brotli to use system library
...
(cherry picked from commit 153c4a4c4f
)
2023-07-10 17:11:22 +02:00
Hugo Locurcio
0b19ec3498
Display a message about missing C# support on Android/iOS/Web platforms
...
When trying to export a C# project, this displays an error message after
creating a export preset for an unsupported platform.
Support for these platforms is planned for a future release.
2023-06-24 00:09:06 +02:00
Rémi Verschelde
d586096415
Merge pull request #72720 from pkdawson/fix-mouse-capture
...
DisplayServerWindows: Fix mouse capture when button up message is missed
2023-06-22 18:29:34 +02:00
Rémi Verschelde
90446fe9f3
SCons: Move platform logo/run icon to `export` folder
...
Follow-up to #75932 .
Since these icons are only used by the export plugin, it makes sense to
move them and generate the headers there.
The whole `detect.is_active()` logic seems to be a leftover from before
times, as far back as 1.0-stable it already wasn't used for anything.
So I'm removing it and moving the export icon generation to
`platform_methods`, where it makes more sense.
2023-06-20 13:16:37 +02:00
Rémi Verschelde
ddaefb3cd6
Merge pull request #78455 from aaronfranke/macos-fix-tex-format-valid
...
macOS: Finish checking templates before validating texture formats
2023-06-20 13:14:23 +02:00
Rémi Verschelde
65628f23c5
Merge pull request #78175 from phil-hudson/fix-#78105
...
Android: Set pending intent flag to stop insta-crash
2023-06-20 13:14:07 +02:00
Phil Hudson
ce7f648694
fix(android): set pending intent flag to stop insta-crash
...
fix(android): add conditional check for minimum sdk version
fix(android): formatting
fix(android): formatting
fix(android): formatting
fix(android): formatting again
2023-06-20 16:56:59 +08:00
Aaron Franke
a981158d1a
macOS: Finish checking templates before validating texture formats
2023-06-19 21:36:31 -05:00
Rémi Verschelde
217a20a8a0
Merge pull request #78448 from akien-mga/black-23.3.0
...
CI: Update static checks to black 23.3.0
2023-06-20 00:05:39 +02:00
Rémi Verschelde
356a602186
Merge pull request #74511 from AThousandShips/win_cursor_fix
...
Fix clearing custom cursor
2023-06-20 00:00:57 +02:00
Rémi Verschelde
c9c941e339
CI: Update static checks to black 23.3.0
...
And apply it to the codebase, removing empty lines at the start of blocks.
2023-06-19 23:33:02 +02:00
Rémi Verschelde
eb9c96b87c
Merge pull request #78123 from YeldhamDev/if_you_want_anything_done,_do_it_yourself
...
Allow exporting release Android builds without a debug keystore
2023-06-19 10:27:44 +02:00
Rémi Verschelde
01e84b1da1
Merge pull request #67158 from amoriqbal/fix_error_message
...
Fix the conditions for firing 'No such file or directory' error on Linux `move_to_trash`
2023-06-19 10:26:50 +02:00
Michael Alexsander
41a75cfa4f
Allow exporting release Android builds without a debug keystore
2023-06-19 01:00:13 -03:00
bitsawer
3c42496fb0
Fix Clang dev_mode build const string conversion
2023-06-16 14:54:36 +03:00
Rémi Verschelde
598378513b
Merge pull request #78319 from bruvzg/fix_lipo_fa
...
[macOS export] Fix lipo file handling.
2023-06-16 10:24:37 +02:00
Rémi Verschelde
6d1ca52792
Merge pull request #78306 from m4gr3d/cleanup_launch_flow_main
...
Add parameters for the Godot Activity starting intent to allow restarting or force-quitting the engine
2023-06-16 10:23:50 +02:00
bruvzg
c7f4e3fd25
[macOS export] Fix lipo file handling.
2023-06-16 11:07:56 +03:00
bruvzg
28db3c7158
[DisplayServer] Add method to check if native window is focused.
2023-06-16 10:27:52 +03:00
Fredia Huya-Kouadio
0664f5ec3b
Add parameters for the Godot Activity starting intent to allow restarting or force-quitting the engine
...
Follow-up code cleanup for https://github.com/godotengine/godot/pull/78129
2023-06-15 21:41:49 -07:00
Danil Alexeev
2d2b2cadfa
Fix `bsd` feature tag includes only "other BSDs"
2023-06-15 16:25:18 +03:00
Álex Román Núñez
938a837056
Disable NVIDIA's threaded optimization on Windows
2023-06-13 11:47:40 +02:00
Rémi Verschelde
9e7349bda3
Merge pull request #78151 from jpcerrone/fix_windowed_move_problems
...
Fix window resizing problems on Windows
2023-06-13 10:27:14 +02:00
RedworkDE
5c57b3aba4
Fix docs after renaming export option
2023-06-12 23:59:55 +02:00
Rémi Verschelde
54a8adfd50
Merge pull request #75984 from KoBeWi/ConsoleMcWrap
...
Rename console script to wrapper
2023-06-12 22:54:24 +02:00
jpcerrone
a80584664c
Fix window resizing problems on Windows
...
Fixes godotengine#76847, Fixes godotengine#74286
Reorders problematic steps from the DisplayServerWindows::window_set_mode function.
These were causing a resize with the dimensions of the previously used mode instead
of the current one.
2023-06-12 15:26:34 -03:00
bruvzg
974a7a89c6
[iOS] Fix orientation change in runtime.
2023-06-12 14:13:53 +03:00