David Snopek
654de13b5c
Merge pull request #1702 from zhmt/master
...
binding_generator.py: Don't error if directory already exists
2025-03-14 08:56:30 -05:00
David Snopek
e4bd867056
Merge pull request #1730 from enetheru/XCode
...
CMake: XCode dependency chain fixes
2025-03-14 07:34:36 -05:00
Aaron Franke
aa03c32b3e
Add missing Projection constructor with 16 real_t values
2025-03-14 02:46:23 -07:00
zhmt
d79959c79e
binding_generator.py: Don't error if directory already exists
...
It should be ok when folders exist. Exception shouldn't be thrown.
Update binding_generator.py
It should be ok when folds exist. It will fail to build without this patch, in vs code on windows with compiler ( visual studio community 2022 amd 64) .
Co-Authored-By: Chris Cranford <ccranfor@redhat.com >
2025-03-14 14:02:53 +08:00
Samuel Nicholas
5eb16d0c5b
CMake: public/private flags
...
Made all warnings private.
Warning as error private
Consistency in generator expressions
2025-03-14 11:11:15 +10:30
Samuel Nicholas
f83f364144
CMake: XCode dependency chain fixes - remastered
...
When attempting to generate XCode projects it would fail due to the target dependency chain not meeting expectations.
This PR, adds the required dependency infomation so that the XCode generator works.
2025-03-14 10:10:33 +10:30
David Snopek
6f981b33cc
Merge pull request #1704 from BenLubar/missing-braces
...
Fix -Wmissing-braces warning (included in -Wall) in array constructor for generated function call bindings
2025-03-13 12:45:03 -05:00
David Snopek
d8807a10d6
Merge pull request #1734 from Repiteo/style/pragma-once
...
Replace header guards style with `#pragma once`
2025-03-13 11:47:14 -05:00
David Snopek
a5db125d2e
Merge pull request #1714 from dsnopek/extension-api-precision
...
Check that precision of `extension_api.json` matches build options
2025-03-13 11:43:30 -05:00
David Snopek
9f02db1eb8
Merge pull request #1733 from enetheru/single_target_test
...
CMake: Revert to single cmake target
2025-03-13 11:42:15 -05:00
David Snopek
0b6350dd29
Merge pull request #1738 from ytnuf/exception
...
Remove unnecessary forced -fno-exceptions for web builds
2025-03-13 11:40:40 -05:00
Samuel Nicholas
89abe15268
CMake: Target as configuration option
...
Add GODOTCPP_TARGET configuration option
Remove loop to generate the godot-cpp.<target> CMake Targets
Rename test bindings target
Update documentation
2025-03-12 08:58:59 +10:30
ytnuf
43690cb60b
Remove unnecessary forced -fno-exceptions for web builds
...
The SCons build doesn't do this, so neither should CMake
Excpetions are already handled by DISABLE_EXCEPTIONS option
2025-03-10 13:33:56 +00:00
Thaddeus Crews
c963321cdd
Ignore #pragma once commit
2025-03-07 17:58:27 -06:00
Thaddeus Crews
7056c996dd
Style: Replace header guards with #pragma once
2025-03-07 17:58:10 -06:00
Thaddeus Crews
107cb1da5e
Style: Integrate #pragma once in builders/checks
2025-03-07 17:57:16 -06:00
David Snopek
a3f89217df
Merge pull request #1723 from enetheru/comments
...
CMake: Comment Cleanup
2025-03-06 08:21:53 -06:00
David Snopek
55cbea7435
Merge pull request #1728 from enetheru/default_target
...
CMake: template_debug as default target when godot-cpp is top level
2025-03-06 08:21:29 -06:00
Samuel Nicholas
8b33e73353
CMake: default target when godot-cpp is top level
...
People seem to want to build godot-cpp without any arguments, not even specifying a target.
We have to detect if we are top level though because it conflicts with being consumed.
2025-03-07 00:04:36 +10:30
Samuel Nicholas
671e309cfa
Updating commenting to be consistent
2025-03-06 23:57:02 +10:30
David Snopek
05f5d73876
Merge pull request #1722 from enetheru/gersemi
...
CMake: Pre-Commit Hook to Gersemi for auto-formatting
2025-03-06 06:42:51 -06:00
Samuel Nicholas
2f6d7f2dad
add gersemi to pre-commit hooks for CMake formatting like black
2025-03-04 13:58:39 +10:30
David Snopek
714c9e2c16
gdextension: Sync with upstream commit 4c311cbee68c0b66ff8ebb8b0defdd9979dd2a41 (4.4-stable)
godot-4.4-stable
2025-03-03 09:30:17 -06:00
David Snopek
06082d7727
Merge pull request #1721 from enetheru/godotcpp
...
CMake: Rename all GODOT_ to GODOTCPP_
2025-03-01 10:49:38 -06:00
David Snopek
26358b5e3a
Merge pull request #1719 from dsnopek/gdvirtual-required-macros
...
Update `GDVIRTUAL*()` macros to match Godot 4.4
2025-03-01 08:21:53 -06:00
David Snopek
e3816585fe
gdextension: Sync with upstream commit 15ff450680a40391aabbffde0a57ead2cd84db56 (4.4-rc3)
2025-02-28 19:24:25 -06:00
Samuel Nicholas
d0dd282d73
CMake: Rename all GODOT_ to GODOTCPP_
...
This is for discussion primarily at this stage.
2025-03-01 10:50:55 +10:30
David Snopek
0a73df5f53
Check that precision of extension_api.json matches build options
2025-02-27 13:27:11 -06:00
David Snopek
c8c25cd312
Merge pull request #1720 from enetheru/generator_target
...
CMake: Add generate_bindings custom target
2025-02-27 12:57:35 -06:00
David Snopek
4a9409a30f
Update GDVIRTUAL*() macros to match Godot 4.4
2025-02-26 12:56:55 -06:00
David Snopek
375c0d1575
gdextension: Sync with upstream commit 01545c995b0612c68f9dfce8f6cc67576c298381 (4.4-rc2)
2025-02-26 07:51:29 -06:00
Samuel Nicholas
e7f07dab87
CMake: Add generate_bindings custom target
...
I was working on something today and wanted to just generate the bindings separately to compilation.
This PR adds a custom target to do just that.
2025-02-26 23:02:59 +10:30
David Snopek
98ea2f60bb
gdextension: Sync with upstream commit 8ed125b42908d0d46d3b8967e3a3bc03f809b3af (4.4-rc1)
2025-02-24 10:35:53 -06:00
David Snopek
48baa0c812
Merge pull request #1713 from Repiteo/style/nodiscard
...
Style: Replace `_NO_DISCARD_` macro with `[[nodiscard]]`
2025-02-21 14:32:36 -06:00
Thaddeus Crews
89fd27608f
Style: Replace _NO_DISCARD_ macro with [[nodiscard]]
2025-02-20 09:23:08 -06:00
Ben Lubar
479d206c50
make Vector<T>::bsearch use a const receiver
2025-02-19 13:52:50 -06:00
David Snopek
5eb6e6bf61
Merge pull request #1709 from enetheru/MinGWMakefiles
...
CMake: Create destination folder for doc_source.cpp generation
2025-02-17 15:26:44 -06:00
Samuel Nicholas
23c24073f4
CMake: Create destination folder for doc_source.cpp generation
...
When compiling using 'MinGW Makefiles' the folders aren't created automatically.
2025-02-18 07:11:53 +10:30
David Snopek
79f9bc9600
Merge pull request #1708 from enetheru/arch_confusion
...
CMake: Fix unknown architecture and simplify OSX_ARCHITECTURES
2025-02-17 11:04:34 -06:00
David Snopek
3f54a86554
Merge pull request #1707 from enetheru/cmake_module
...
CMake: GodotCPPModule.cmake
2025-02-17 11:04:25 -06:00
David Snopek
847dca4792
Merge pull request #1701 from enetheru/msvc_runtime
...
CMake: Fix for #1699 msvc runtime selection issues
2025-02-17 11:04:15 -06:00
Samuel Nicholas
18a926e836
CMake: Fix for #1699 msvc runtime selection issues
...
Previously I eschewed the use of CMAKE_MSVC_RUNTIME_LIBRARY in favour of setting the flags using target_compile_options so that they would propagate to consumers.
However, it has been raised that a dependency( independent to godot-cpp ) that doesn't set any runtime flags, which relies purely on the CMAKE_MSVC_RUNTIME_LIBRARY variable will very likely not have the correct msvc runtime flags set.
Where MSVC documentation states "All modules passed to a given invocation of the linker must have been compiled with the same runtime library compiler option (/MD, /MT, /LD)."
It was also mentioned that message type WARNING is not ideal for notifying consumers.
So I have updated the cmake code to use CMAKE_MSVC_RUNTIME_LIBRARY over target-compile_options. And set it as a CACHE STRING variable so that it can be overridden if desired. We still message consumers, but as a NOTICE.
2025-02-15 18:28:12 +10:30
Samuel Nicholas
35469fd839
Turn python_callouts.cmake into GodotCPPModule.cmake
...
Move the find_package for python into it.
Recommend adding godot-cpp/cmake to CMAKE_MODULE_PATH and using include( GodotCPPModule ) to use functions.
Add target_doc_sources function to simplify the addition of documentation to a binary.
2025-02-15 09:04:12 +10:30
Ben Lubar
a353be57d8
Fix -Wmissing-braces warning (included in -Wall) in array constructor for generated function call bindings
2025-02-09 17:20:06 -06:00
Samuel Nicholas
9d9099adcd
Simplified architecture naming to reduce confusion
2025-02-09 18:08:53 +10:30
David Snopek
f398ebb8ce
gdextension: Sync with upstream commit 06acfccf89ad6b900ae694a4d58ceade1967a85f (4.4-beta3)
2025-02-08 15:02:31 -06:00
David Snopek
560f786599
Merge pull request #1698 from enetheru/threads
...
CMake: Implement 'threads' Option
2025-02-07 12:07:33 -06:00
Samuel Nicholas
91f81f51e1
CMake: Implement 'threads' Option
...
Add the GODOT_THREADS option and related supporting code
Includes naming cleanups
2025-02-04 09:08:35 +10:30
David Snopek
ee2a895ea4
Merge pull request #1335 from godotengine/dependabot/github_actions/actions/upload-artifact-4
...
Bump actions/upload-artifact from 3 to 4
2025-02-03 11:18:23 -06:00
David Snopek
f06af65c87
gdextension: Sync with upstream commit a013481b0911e59cc3f3dea7ebb732450c3e1460 (4.4-beta2)
2025-02-02 08:41:18 -06:00