Commit Graph

126 Commits

Author SHA1 Message Date
Thaddeus Crews
7918d50297
SCons: Fix Ninja compilation with MSVC 2024-04-04 10:16:33 -05:00
Riteo
55558fb175 SCons: Add an option to enable the experimental ninja build backend
With this option turned on, if properly set up, SCons generates a
`build.ninja` file and quits. To actually build the engine, the user can
then call `ninja` with whatever options they might prefer (not
everything is yet transferred properly to this new generated file).

Ideally, the scons file should never be called again, as ninja
automatically detects any SCons build script change and invokes
the required commands to regenerate itself.

This approach speeds up incremental builds considerably, as it limits
SCons to code generation and uses ninja's extremely fast timestamp-based
file change detector.
2024-03-15 16:05:25 +01:00
Edward Moulsdale
e461496ecb Add unit tests for CryptoKey 2024-03-01 07:17:59 +00:00
Rémi Verschelde
217597371e
Merge pull request #87878 from adamscott/emacs-gitignore
Add basic Emacs `.gitignore` entries
2024-02-03 23:21:01 +01:00
Adam Scott
2696fee3c6
Add basic Emacs .gitignore entries 2024-02-03 13:16:42 -05:00
Andreia Gaita
7638a6c981 Add new VS proj generation logic that supports any platform that wants to opt in
Custom Visual Studio project generation logic that supports any platform that has a msvs.py
script, so Visual Studio can be used to run scons for any platform, with the right defines per target.

Invoked with `scons vsproj=yes`

To generate build configuration files for all platforms+targets+arch combinations, users should call

```
scons vsproj=yes platform=XXX target=YYY [other build flags]
```

for each combination of platform+target[+arch]. This will generate the relevant vs project files but
skip the build process, so that project files can be quickly generated without waiting for a command line
build. This lets project files be quickly generated even if there are build errors.

All possible combinations of platform+target are created in the solution file by default, but they
won't do anything until each one is set up with a scons vsproj=yes command for the respective platform
in the appropriate command line. This lets users only generate the combinations they need, and VS
won't have to parse settings for other combos.

Only platforms that opt in to vs proj generation by having a msvs.py file in the platform folder are included.
Platforms with a msvs.py file will be added to the solution, but only the current active platform+target+arch
will have a build configuration generated, because we only know what the right defines/includes/flags/etc are
on the active build target currently being processed by scons.

Platforms that don't support an editor target will have a dummy editor target that won't do anything on build,
but will have the files and configuration for the windows editor target.

To generate AND build from the command line, run

```
scons vsproj=yes vsproj_gen_only=no
```
2024-01-31 16:42:42 +01:00
Thaddeus Crews
8cd984b3cb
SCons: Update mypy 2023-12-11 15:59:06 -06:00
Rémi Verschelde
5c38e42161
Remove too greedy GCOV ignores from .gitignore
This would cause `updown.png` to be ignored in our default theme in 3.x.

These ignores were added in #36800 for #36572 (see that PR for usage
instructions).

From a quick test, using `--output-file` for `lcov` and `--output-directory`
for genhtml let us output the files in a way that won't conflict with the
Git repository (e.g. in `bin/`, or outside the Git repo).
2023-08-29 13:38:38 +02:00
Alex Drozd
a6fda19e85 add venv and .venv to the .gitignore 2023-05-05 18:32:20 +02:00
Ben Rog-Wilhelm
37d68929e8
Fix .gitignore ignores part of the committed repo. 2023-02-17 13:48:16 +01:00
myaaaaaaaaa
b5c4bc8f31 Change .gitignore's bin/ to bin 2023-02-07 01:21:56 -05:00
ipsoftdev
b37f10adf7 Do not ignore x86 source code directories anywhere under thirdparty directory 2022-12-20 22:01:50 -08:00
Rémi Verschelde
f1edd03d4c
Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextension
Rename all gdnative occurences to gdextension
2022-12-12 11:43:59 +01:00
Gilles Roudière
be1c9d677d Rename all gdnative occurences to gdextension
Non-exhaustive list of case-sensitive renames:

GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension ->Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
2022-12-12 11:04:57 +01:00
Hugo Locurcio
ffb9f2b53f
Fix libtheora source code being mistakenly .gitignored 2022-12-07 17:49:07 +01:00
ocean (they/them)
8ae66c143b Add VS's enc_temp_folder to .gitignore 2022-11-18 13:42:32 -05:00
Rémi Verschelde
6946bc56ef
Merge pull request #67309 from groud/implement_gdnative_interface_h_dump
Implement a way to dump the gdnative_interface.h file from the executable
2022-10-31 11:54:38 +01:00
Ignacio Roldán Etcheverry
166d86ca84
Add JetBrains Fleet folder to gitignore 2022-10-13 18:58:27 +02:00
Gilles Roudière
55010a2d9f Implement a way to dump the gdnative_interface.h file from the executable 2022-10-13 10:03:30 +02:00
Hugo Locurcio
1be1b15a57
Replace local web server setup for web editor with a Python-based solution
This makes it easier to set up, as you always have Python installed
when building Godot. On the other hand, you don't always have Node.js
+ npm installed (and you may not want to spend time running `npm install`).

Co-authored-by: Fabio Alessandrelli <fabio.alessandrelli@gmail.com>
2022-10-04 19:39:27 +02:00
Pedro J. Estébanez
8e2d0e1bb1 Add ability to extend the set of Git pre-commit hooks 2022-08-30 13:34:10 +02:00
Rémi Verschelde
6aa7449d60 HTML5: Run npm audit fix
And re-add `node_modules` to `.gitignore` which I mistakenly removed
with an earlier cleanup.
2022-05-25 14:56:43 +02:00
Rémi Verschelde
b0df742cbe Re-add some needed patterns to .gitignore 2022-03-31 15:37:54 +02:00
Rémi Verschelde
1f1edaa1b5 Cleanup and reorder .gitignore
Group things better in categories, and remove a ton of VS junk.
Some of it might still be needed and could need to be re-added.
2022-03-17 12:07:34 +01:00
Rémi Verschelde
f4c3192d0a
Main: Fixup --dump-extension-api after #54017
That removal was correct, but triggered a bug in our messy-as-heck main.cpp
detection logic for editor/project manager/project/command line tool...
Fixing this is for another day.
2021-10-21 09:43:39 +02:00
O01eg
2cd052f889
Add tests for Translations 2021-09-29 10:39:20 +03:00
Aaron Franke
ae1702bee5
Replace HTTP links with HTTPS for sites with HTTPS versions 2021-08-22 20:13:11 -05:00
Danil Alexeev
e09e0fbd1f gitignore: Ignore Kate swap files 2021-01-27 01:07:57 +03:00
Michael Alexsander
ff1d636385 Ignore clangd 11+ cache folder 2021-01-20 10:14:02 -03:00
Fredia Huya-Kouadio
edf762fba6 Add a separate nativeSrcsConfigs module to handle Android Studio constraints for native code editor support. 2020-10-29 00:01:14 -07:00
Rémi Verschelde
148ad49c93
vulkan: Sync loader, headers and glslang to sdk-1.2.154.0
Actually sdk-1.2.154.1 for Vulkan-Loader.

glslang is updated to bacaef3237c515e40d1a24722be48c0a0b30f75f which is the
known-good version for Vulkan-ValidationLayers 1.2.154.0.

COPYRIGHT.txt was synced with the current version of the glslang LICENSE.txt,
and `glslang/register_types.cpp` now uses the upstream definition for its
default builtin resource instead of hardcoding it.
2020-10-15 12:29:42 +02:00
Martin Capitanio
0b34607bb8 git: Ignore clangd cache folder 2020-09-10 12:50:01 +02:00
RevoluPowered
579342810f t Add unit testing to Godot using DocTest and added to GitHub Actions CI
Implements exit codes into the engine so tests can return their statuses.
Ideally we don't do this, and we use FIXUP logic to 'begin' and 'end' the engine execution for tests specifically.

Since realistically we're initialising the engine here we don't want to do that, since String should not require an engine startup to test a single header.

This lowers the complexity of running the unit tests and even for
physics should be possible to implement such a fix.
2020-07-24 13:05:33 +01:00
Rémi Verschelde
5e8b188365 gitignore: Ignore binutils linker temp stXXXXXX objects
Fixes #40607.

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2020-07-23 10:25:43 +02:00
Marcel Admiraal
990ecf8fc4 Add Code::Blocks files to .gitignore. 2020-06-15 18:05:33 +01:00
Andrii Doroshenko (Xrayez)
42bee75e86 SCons: Dump construction environment to a file
A new `methods.dump(env)` is added to dump the construction environment
used by SCons to build Godot to a `.scons_env.json`. The file can be used
for debugging purposes and any external tool.
2020-06-10 15:05:43 +03:00
Andrii Doroshenko (Xrayez)
a712e14038 Add custom.py to .gitignore
The default `custom.py` can be created at the root of the Godot
repository to initialize any SCons build options via file which are
specific to user.
2020-05-18 10:28:43 +03:00
PouleyKetchoupp
af424b1c7c Vulkan rendering for Android 2020-04-03 11:18:59 +02:00
Rémi Verschelde
0926c192e8 Style: Add black format to fix_style.sh
Also ignore new Android build artifact.
2020-03-31 09:55:13 +02:00
Rémi Verschelde
6d269dbf56
Merge pull request #36800 from qarmin/added_some_gitignore_records
Added to .gitignore - Cppcheck folder and Gcov, Lcov code coverage
2020-03-05 09:15:05 +01:00
fhuya
b38283a6b7 Miscellaneous cleanup for the Android codebase:
- update gradle plugins versions
- add formatting rules for AndroidManifest and gradle build files
- cleanup java_godot_lib_jni

Note: logic was mostly moved around and no new logic/functionality was added.
2020-03-04 12:16:17 -08:00
Rafał Mikrut
5b4d74edd4 Added to .gitignore - Cppcheck and code coverage 2020-03-04 20:24:38 +01:00
Fabian Mathews
7f62bed238 Added support to allow to compile Godot from the same directory while using different versions of python
(cherry picked from commit beee8b3776)
2020-01-01 11:52:11 +01:00
Hugo Locurcio
5efd43609b
Travis CI: Test project exporting/script running in the headless editor 2019-08-20 17:35:55 +02:00
qarmin
9a77d748c0 Fixes minor issues found by static analyzer 2019-07-07 23:08:51 +02:00
fhuya
669db2a50a Add Android Studio support. 2019-05-29 16:57:52 -07:00
Max Hilbrunner
b0279192cb
.gitignore improvements for Windows/macOS 2019-05-28 22:21:29 +02:00
Linux User
3189560d52 Update .gitignore
Update .gitignore
2019-04-25 19:35:41 +02:00
Juan Linietsky
dd03dcbd5a Android now (optionally) builds the template when exporting
Added new way to create add-ons
Removed old way to create add-ons
2019-04-07 15:46:52 -03:00
Martin Wallin
8be9fd83ad Ignore default ccls cache folder and compile commands jso 2019-03-14 18:35:23 +01:00