Commit Graph

565 Commits

Author SHA1 Message Date
Spartan322
35e289fa5e Merge commit godotengine/godot@0b6a717ac1 2025-02-04 11:38:32 -05:00
Thaddeus Crews
382c760ea6 SCons: Apply new ruff/mypy fixes 2025-02-03 09:55:09 -06:00
Rémi Verschelde
90208f7dd4 SCons: Fix handling of platform-specific tools, notably mingw
Add optional `detect.py` `get_tools` method to let platforms register SCons
tools they need.

This helps move this logic out of SConstruct, keeping platforms more self
contained, and helping thirdparty platforms define their own custom tools.

This logic was also unreliable (the `use_mingw` one would only work if
passed manually on the command line, not in e.g. `get_flags`).

Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2025-01-25 13:59:30 +01:00
Spartan322
4805bc1eee Merge commit godotengine/godot9630d4e2fc1d0fdef6f46f24e236548549f31d49 2025-01-17 16:33:06 -05:00
Thaddeus Crews
73278bf35d SCons: Properly NoCache all text files 2025-01-16 16:59:12 -06:00
Spartan322
5e6a04e752 Merge commit godotengine/godot@5b52b4b5c4 2025-01-12 13:06:53 -05:00
Rémi Verschelde
76c8e76560 Merge pull request #101284 from akx/tyops
A handful of typo fixes
2025-01-08 15:53:33 +01:00
Spartan322
889d027c1a Merge commit godotengine/godot@d2ada64a03 2025-01-08 07:52:51 -05:00
Aarni Koskela
f134769506 Fix various typos
* Add TODO notes for typos that should be fixed for 5.0

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-08 14:47:42 +02:00
Thaddeus Crews
a29294fddc SCons: Refactor color output implementation 2025-01-07 18:44:53 -06:00
Yufeng Ying
34d8255947 Force build editor with regex module, remove checking code.
Fix include.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-07 19:43:23 +08:00
Spartan322
fa0b4af786 Merge commit godotengine/godot@a7a2a12bfd 2024-12-21 05:32:01 -05:00
Rémi Verschelde
182b4741ea Merge pull request #93479 from Repiteo/scons/better-colored-output
SCons: Improve colored output
2024-12-17 16:18:41 +01:00
Spartan322
9d47e1e39e Merge commit godotengine/godot@b9437c3938 2024-12-15 09:24:31 -05:00
Rémi Verschelde
f86b3696f6 SCons: Properly set SSE2 as baseline on x86_32
Setting it only for release templates on Windows and macOS was inconsistent,
and Jolt requires it as a minimum.

Drop the `-mxsave` flag from the raycast module, this doesn't seem to be
used explicitly by Embree, and unnecessarily makes our config and baseline
muddy.
2024-12-12 22:44:44 +01:00
bruvzg
800076a6c2 [Windows] Use dwarf-4 for clang builds on Windows. 2024-12-11 14:10:57 +02:00
Thaddeus Crews
deb4c00f06 Merge pull request #100210 from hpvb/scons-use-md5-timestamp
SCons: Unconditionally use `env.Decider("MD5-timestamp")`
2024-12-10 14:16:08 -06:00
Thaddeus Crews
3cb8419703 Merge pull request #100207 from bruvzg/mingw_dbg
[Windows] Fix MinGW debug symbols.
2024-12-10 14:16:06 -06:00
Thaddeus Crews
d8761f2c79 SCons: Improve colored output 2024-12-10 11:44:48 -06:00
HP van Braam
04fff3fe0d Unconditionally use env.Decider("MD5-timestamp")
It seems that we are only enabling this option together with unsafe
build determinators. However it seems that MD5-timestamp by itself is
not unsafe.

MD5-Timestamp works by first checking the timestamp of a file, comparing
it to the scons database and if it does not match it will do an md5sum
to determine if the file needs rebuilding.

Without this option SCons will always create md5sums of every file. In
the case of a null build this is 50% of the time.
2024-12-10 03:40:17 +01:00
Thaddeus Crews
070aeb5688 SCons: Fix MSVC bypassing disabled warnings 2024-12-09 11:49:42 -06:00
bruvzg
404383e161 [Windows] Fix MinGW debug symbols. 2024-12-09 18:54:07 +02:00
Spartan322
e58e18261e Merge commit godotengine/godot@d09d82d433 2024-11-26 12:56:19 -05:00
Thaddeus Crews
797c8bd85f Merge pull request #99351 from dustdfg/scons_android_refactor
SCons: Move `swappy` option to android and slightly refactor `detect.py`
2024-11-21 17:56:59 -06:00
Yevhen Babiichuk (DustDFG)
0896bdd7bc SCons: Misc improvements
* Delete old gcc 7 check
* Use f-strings where it is easy
* Use AddVariables instead of Add for collections of options

Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-11-20 18:18:12 +02:00
Yevhen Babiichuk (DustDFG)
6467beb75d SCons: Move swappy option to android and slightly refactor detect.py
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-11-20 12:48:18 +02:00
Spartan322
cfc378b251 Merge commit godotengine/godot@fd4c29a189 2024-11-19 11:39:37 -05:00
Yevhen Babiichuk (DustDFG)
1250681a4f SCons: pass ninja_file variable in tool instead of default name
Noticed that when I run with `ninja_file` it wasn't created even
though in terminal I saw that the file will be generated

Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-11-18 13:25:47 +02:00
Spartan322
4a5836e546 Merge commit godotengine/godot@6c05ec3d67 2024-11-15 14:24:07 -05:00
Thaddeus Crews
6c9337de36 Merge pull request #99217 from dustdfg/refactor_compiler_min_detection
Buildsystem: Refactor compiler detection code
2024-11-15 10:42:42 -06:00
Thaddeus Crews
0e4a4e3c4d SCons: Improve cache purging logic
• Implement caching via SCons arguments, rather than environment variables
2024-11-15 08:29:58 -06:00
Yevhen Babiichuk (DustDFG)
d55ed0cb15 Buildsystem: Refactor compiler detection code
* Delete old check for gcc 8 as we support 9 or higher
* Flatten branches for clang and apple clang
* Renamed is_vanilla_clang to is_apple_clang to be more clear

Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-11-15 12:59:46 +02:00
Thaddeus Crews
ce0709ecf5 Merge pull request #99046 from dustdfg/unify_platform_aliases
Buildsystem: Unify compatibility aliases
2024-11-13 08:34:32 -06:00
Thaddeus Crews
49023c0f7d Merge pull request #99138 from dustdfg/remove_old_vs_proj_code
Delete old unused code for VS project generation
2024-11-13 08:34:13 -06:00
Yevhen Babiichuk (DustDFG)
216488ad9b Delete old unused code for VS project generation
Also ensured that sorting of files for hashing actually happens

Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-11-12 21:26:12 +02:00
Thaddeus Crews
66fe2c8b44 SCons: Bump minimum SCons & Python versions
SCons: 3.1.2 → 4.0
Python: 3.6 → 3.8
2024-11-12 11:30:24 -06:00
Spartan322
62fbec9f6f Merge commit godotengine/godot@0f5f3bc954 2024-11-11 09:08:01 -05:00
Yevhen Babiichuk (DustDFG)
1901466d0d Buildsystem: Unify compatibility aliases
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-11-11 08:05:02 +02:00
Pedro J. Estébanez
95c6a24795 Add a utility cache line size constant 2024-11-08 08:06:01 +01:00
Spartan322
82de309d58 Merge commit godotengine/godot@8004c7524f 2024-10-30 05:22:24 -04:00
Thaddeus Crews
f41ec91c44 Merge pull request #97813 from dustdfg/module_check_dependencies_recursively
Make module dependency check recursive
2024-10-29 19:25:39 -05:00
Clay John
748f4079e3 Merge pull request #96439 from darksylinc/matias-TheForge-pr03-rebased
Add Swappy & Pre-Transformed Swapchain
2024-10-29 12:34:40 -07:00
Matias N. Goldberg
aaa0e2fddf Add Swappy & Pre-Transformed Swapchain
- Adds Swappy for Android for stable frame pacing
- Implements pre-transformed Swapchain so that Godot's compositor is in
charge of rotating the screen instead of Android's compositor
(performance optimization for phones that don't have HW rotator)

============================

The work was performed by collaboration of TheForge and Google. I am
merely splitting it up into smaller PRs and cleaning it up.

Changes from original PR:

- Removed "display/window/frame_pacing/android/target_frame_rate" option
to use Engine::get_max_fps instead.
- Target framerate can be changed at runtime using Engine::set_max_fps.
- Swappy is enabled by default.
- Added documentation.
- enable_auto_swap setting is replaced with swappy_mode.
2024-10-28 18:55:37 -03:00
Yevhen Babiichuk (DustDFG)
8e75e029b3 Make module dependency check recursive
The `env.disabled_modules` and `methods.disable_module` weren't used anywhere
so the first one was repurposed and the second just deleted

Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-10-23 08:26:22 +03:00
Spartan322
9a93ab2506 Merge commit godotengine/godot@b3bcb2dc14 2024-10-22 06:56:34 -04:00
Randolph W. Aarseth II
d5fc3d1e8c Rebrand Godot to Redot
Add Linux Editor tests workflow matrix
Add Windows Editor w/ Mono workflow matrix
Add Generate Glue Code job to Windows workflow
Add Build GodotSharp job to Windows workflow

Add godot compatibility version references
Add Godot author info
Add Godot version compatibility info
Add Godot donor info
Add Godot authors and donors to editor_about.cpp

Credits:
Co-authored-by: Skogi <skogi.b@gmail.com>
Co-authored-by: Spartan322 <Megacake1234@gmail.com>
Co-authored-by: swashberry <swashdev@pm.me>
Co-authored-by: Christoffer Sundbom <christoffer_karlsson@live.se>
Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com>
Co-authored-by: McDubh <103212704+mcdubhghlas@users.noreply.github.com>
Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com>
Co-authored-by: radenthefolf <radenthefolf@gmail.com>
Co-authored-by: John Knight <80524176+Tekisasu-JohnK@users.noreply.github.com>
Co-authored-by: Adam Vondersaar <adam.vondersaar@uphold.com>
Co-authored-by: decryptedchaos <nixgod@gmail.com>
Co-authored-by: zaftnotameni <122100803+zaftnotameni@users.noreply.github.com>
Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com>
Co-authored-by: wesam <108880473+wesamdev@users.noreply.github.com>
Co-authored-by: Mister Puma <MisterPuma80@gmail.com>
Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com>
Co-authored-by: SingleError <isaaconeoneone@gmail.com>
Co-authored-by: Bioblaze Payne <BioblazePayne@gmail.com>
2024-10-11 02:25:54 -04:00
Thaddeus Crews
705f51f97e SCons: Bump C standard: C11C17 2024-09-29 11:23:24 -05:00
Rémi Verschelde
422306ef87 Merge pull request #97325 from BlueCube3310/bcdec
Replace squish with bcdec for BC decompression
2024-09-29 00:47:02 +02:00
Thaddeus Crews
1043c00137 SCons: Detect msvc compiler version
• C standard now passed on msvc if the version is supported
2024-09-27 11:16:33 -05:00
BlueCube3310
2167157aaf Replace squish with bcdec for BC decompression 2024-09-26 14:42:54 +02:00