Fabio Alessandrelli
2bf983e638
[SCons] Add "optimize" and "debug_symbols" options
...
optimize = auto|none|debug|speed|size|0|1|2|3
debug_symbol = True|False
optimize == "auto" will produce:
- "debug" for "debug" builds
- "speed" for "release" builds
2022-09-12 16:52:05 +02:00
bruvzg
0ee980abae
Rename OSX to macOS.
2022-07-20 11:01:47 +03:00
Rémi Verschelde
cdcd473371
SCons: Default `num_jobs` to max CPUs minus 1 if not specified
...
This doesn't change the behavior when `--jobs`/`-j` is specified as a
command-line argument or in `SCONSFLAGS`.
The SCons hack used to know if `num_jobs` was set by the user is derived
from the MongoDB setup.
We use `os.cpu_count()` for portability (available since Python 3.4).
With 4 CPUs or less, we use the max. With more than 4 we use max - 1 to
preserve some bandwidth for the user's other programs.
2022-07-17 12:37:13 +02:00
Fabio Alessandrelli
7901986dcf
[SCons] Fix msvc, linux-clang, add version check.
2022-07-04 18:00:29 +02:00
Fabio Alessandrelli
93f2091185
[SCons] Move toolchains logic to tools folder.
2022-06-27 20:44:12 +02:00
Fabio Alessandrelli
b8ae658981
[SCons] Fix Android builds with modern NDKs.
2022-06-15 00:00:36 +02:00
Aaron Franke
e5c4351bc7
Unify bits, android_arch, macos_arch ios_arch into arch, support non-x86
...
Unify arguments and add support for ARM64 and RV64 Linux
2022-06-01 13:00:25 -05:00
Fabio Alessandrelli
24e4aeb2c6
Merge pull request #746 from NicholasShatokhin/master
...
Build javascript target on windows host
2022-05-04 15:59:36 +02:00
bruvzg
e06d5cd414
Add double precision build support.
2022-05-04 15:56:35 +03:00
Fabio Alessandrelli
fa698ddd12
[Scons] Use builder to track bindings regeneration.
...
Using a scons Builder we now regenerate the bindings automatically
when the Godot API json or header has changed.
The option to force bindings regeneration (generate_bindings=yes) is
retained.
2022-05-03 10:48:23 +02:00
Fabio Alessandrelli
b47dfb6a5c
[CI] Add python file format to static checks.
...
Uses the same version of `black` as godot.
2022-05-02 21:13:56 +02:00
Mykola Shatokhin
b2331e1f6d
Build javascript target on windows host
2022-05-01 00:35:42 +03:00
Aaron Franke
101d61b64a
[master] Run black format on SConstruct files and bindings generator
2022-02-26 15:04:11 -06:00
bruvzg
3bb86f1e01
Use C++17 flag only for C++ files.
2022-02-16 13:12:10 +02:00
bruvzg
b6b64bcd70
[macOS] Restore demo library output names.
2022-02-14 08:57:35 +02:00
Fabio Alessandrelli
f5172016b8
[Build] Fix exposed suffix, remove unused option.
2022-02-10 07:36:26 +01:00
Fabio Alessandrelli
dcc52f4321
Library SCons boilerplate to build projects.
...
Works by executing project `SConstruct`s file in a cloned env (a bit
like Godot does for modules) so you don't have to worry about platform
and toolchain setup.
Convert the project test file to work as submodule, add it to CI
Run with:
```
scons build_projects=test,/path/to/other/project
```
2022-02-10 01:44:48 +01:00
Fabio Alessandrelli
cf3fcab6b4
Always require C++17. Shuold fix other platforms.
2022-02-10 00:19:01 +01:00
Gilles Roudière
3fcb8a4d1e
Make extension instances create the corresponding godot object in their constructor
2021-12-03 15:37:49 +01:00
Hugo Locurcio
1e2eafe777
Print a warning with unknown SCons variables to ease troubleshooting
2021-11-23 22:41:52 +01:00
Fabio Alessandrelli
67f9109d1f
[OSX] Add universal build support.
2021-09-29 22:31:12 +02:00
Bastiaan Olij
68ebc9b2a8
Changed over to proper godot-headers
2021-09-27 23:08:12 +10:00
Bastiaan Olij
df9164b9bd
Added TYPED_METHOD_BIND and c++17 flags to windows build and moved test project files
2021-09-27 23:08:09 +10:00
George Marques
8bcf32a619
Fix issues with method calls
2021-09-27 23:08:08 +10:00
George Marques
e4ed48976a
Replace bindgins to work with extensions
2021-09-27 23:08:08 +10:00
Rémi Verschelde
228014bec8
Merge pull request #547 from piiertho/hotfix/add-android-missing-toolchain-elements
2021-09-27 11:42:39 +02:00
Fabio Alessandrelli
1db7630d01
Fix OSX library name for arm64.
...
Was always `.64`, it's now `.arm64` for M1.
2021-07-10 19:02:52 +02:00
Fabio Alessandrelli
e08ecdc28c
Merge pull request #584 from Faless/build/osx_arm64
...
Add OSX arm64 build target.
2021-07-09 16:03:49 +02:00
Fabio Alessandrelli
784103f676
Merge pull request #581 from Faless/build/optimization_flags
...
Add optimization flags for android and javascript.
2021-07-09 16:01:47 +02:00
Fabio Alessandrelli
5b8bcb7164
Add OSX arm64 build target.
...
New "macos_arch" to specify the desired arch, and "macos_sdk_path" to
override the default SDK path.
2021-07-07 11:08:33 +02:00
Fabio Alessandrelli
e5279d3d0f
Add optimization flags for android and javascript.
2021-07-05 15:53:52 +02:00
Fabio Alessandrelli
26d4df4e17
Fix JavaScript library suffix.
...
Also add `.bc` files to `.gitignore`
2021-07-05 15:47:49 +02:00
Pierre-Thomas Meisels
f579039a0a
Fix: add missing toolchain elements for android
2021-04-25 21:24:38 +02:00
Fabio Alessandrelli
f6899e190f
Add JavaScript platform support (emcc, wasm).
...
Includes update to `README.md` with instructions on how to build a
GDNative library for webassembly.
2021-03-11 05:11:13 +01:00
George Marques
cee79bb7a6
Merge pull request #517 from SeleDreams/master
...
Added freebsd specific configuration to SConstruct
2021-03-01 11:56:37 -03:00
George Marques
a65a340329
Merge pull request #507 from Zylann/bindings_auto_gen
...
Generate bindings if they are not found
2021-03-01 09:47:45 -03:00
Rémi Verschelde
b36df8f86c
Rename godot_headers to godot-headers to match upstream rename
...
Also updated the URLs which were still pointing to the old GitHub org.
2021-02-26 10:07:38 +01:00
SeleDreams
45fef69aca
Added freebsd specific configuration to fix issues of detection on freebsd
2021-02-21 00:23:06 +01:00
Marc Gilleron
f669380811
Generate bindings if they are not found
2021-02-03 22:48:58 +00:00
Marc
e2831ff5fa
Merge pull request #505 from naithar/fix/ios-simulator-build
...
iOS arm64 simulator support.
2021-02-03 22:15:29 +00:00
Sergey Minakov
b5d16b4b56
add ios_simulator flag to enable building for M1 arm64 simulators
2021-02-03 22:17:12 +03:00
Marc Gilleron
74e7098ae0
Dont carry msvc stuff to the MinGW build
2021-01-31 23:08:51 +00:00
Colugo
78547869ee
Add macos_deployment_target SConstruct option.
2020-12-03 20:30:59 +00:00
Marc Gilleron
c02747d909
Don't generate debugging symbols in release builds
2020-09-05 00:06:51 +01:00
Marc
d53b294f5b
Merge pull request #450 from proxemy/master
...
Bugfix. Project generation now respects the given 'headers_dir' start…
2020-08-30 22:47:49 +01:00
Marc
fd281da1cf
Merge pull request #382 from Zylann/fix_sconstruct_default_bits
...
Fix default value of `bits` misnaming resulting library
2020-08-30 22:33:45 +01:00
proxemy
f71ccdfbcb
Bugfix. Project generation now respects the given 'headers_dir' start parameter.
2020-08-27 19:46:03 +02:00
Duncan Sparks
6bca96ed42
Change default parameter to "yes"
2020-08-23 09:02:12 -07:00
Duncan Sparks
3b16f34d89
Add option for template get_node
2020-06-17 15:34:49 -07:00
Marc Gilleron
db941344e3
Fix default value of `bits` misnaming resulting library
2020-06-02 19:44:56 +01:00