summaryrefslogtreecommitdiffstats
path: root/main/SCsub
Commit message (Collapse)AuthorAgeFilesLines
* Fix new black style check failures in various files.Marcel Admiraal2020-08-211-2/+6
|
* SCons: Refactor running commands through buildersAndrii Doroshenko (Xrayez)2020-07-281-4/+9
| | | | | | | | | | | | A new `env.Run` method is added which allows to control the verbosity of builders output automatically depending on whether the "verbose" option is set. It also allows to optionally run any SCons commands in a subprocess using the existing `run_in_subprocess` method, unifying the interface. `Action` objects wrap all builder functions to include a short build message associated with any action. Notably, this removes quite verbose output generated by `make_doc_header` and `make_editor_icons_action` builders.
* SCons: Build tests/ and main/ in cloned environmentsRémi Verschelde2020-07-261-8/+13
| | | | | | | Allows switching `tests=yes`/`no` and rebuilding only tests and main, instead of the whole engine. Co-authored-by: Andrii Doroshenko (Xrayez) <xrayez@gmail.com>
* Move `tests` to the top-level directoryAndrii Doroshenko (Xrayez)2020-07-261-3/+0
|
* SCons: Add `tests` option to enable or disable unit testsAndrii Doroshenko (Xrayez)2020-07-251-1/+1
|
* t Add unit testing to Godot using DocTest and added to GitHub Actions CIRevoluPowered2020-07-241-1/+0
| | | | | | | | | | 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.
* SCons: Format buildsystem files with psf/blackRémi Verschelde2020-03-301-3/+5
| | | | | | | | | | | | | | | | | | | | | Configured for a max line length of 120 characters. psf/black is very opinionated and purposely doesn't leave much room for configuration. The output is mostly OK so that should be fine for us, but some things worth noting: - Manually wrapped strings will be reflowed, so by using a line length of 120 for the sake of preserving readability for our long command calls, it also means that some manually wrapped strings are back on the same line and should be manually merged again. - Code generators using string concatenation extensively look awful, since black puts each operand on a single line. We need to refactor these generators to use more pythonic string formatting, for which many options are available (`%`, `format` or f-strings). - CI checks and a pre-commit hook will be added to ensure that future buildsystem changes are well-formatted.
* Refactored Input, create DisplayServer and DisplayServerX11Juan Linietsky2020-03-261-9/+0
|
* Gamepad: Fix parsing order for SDL2 controller databasesRémi Verschelde2020-01-081-2/+2
| | | | | | | | | | | | We were overriding values from `gamecontrollerdb.txt` (current, updated upstream) with `gamecontrollerdb_205.txt` (legacy, SDL 2.0.5) and then `gamecontrollerdb_204.txt` (legacy, SDL 2.0.4). There was a comment to warn about this but it seems it did not prevent using the wrong order for all this time... Now `gamecontrollerdb.txt` mappings will properly override outdated ones present in the `204` and `205` variants.
* SCons: do not build tests with tools=noAndrii Doroshenko (Xrayez)2019-09-261-1/+2
| | | | | This doesn't affect the resulting binary size, but allows to save a phew seconds during compilation if building export templates.
* SCons: Fix uses of [].append instead of env.add_source_files()Rémi Verschelde2019-07-221-1/+4
| | | | | | | | | Also added support for SCons project-absolute paths (starting with #) and warning about duplicates in add_source_files(), and fixed default_controller_mappings.gen.cpp being included twice after first build due to *.cpp globbing. Part of #30270.
* SCons: Build thirdparty code in own env, disable warningsRémi Verschelde2018-09-281-2/+1
| | | | | Also remove unnecessary `Export('env')` in other SCsubs, Export should only be used when exporting *new* objects.
* Running builder (content generator) functions in subprocesses on WindowsViktor Ferenczi2018-07-271-126/+6
| | | | | | | | | | | | | | | | | | | | | - Refactored all builder (make_*) functions into separate Python modules along to the build tree - Introduced utility function to wrap all invocations on Windows, but does not change it elsewhere - Introduced stub to use the builders module as a stand alone script and invoke a selected function There is a problem with file handles related to writing generated content (*.gen.h and *.gen.cpp) on Windows, which randomly causes a SHARING VIOLATION error to the compiler resulting in flaky builds. Running all such content generators in a new subprocess instead of directly inside the build script works around the issue. Yes, I tried the multiprocessing module. It did not work due to conflict with SCons on cPickle. Suggested workaround did not fully work either. Using the run_in_subprocess wrapper on osx and x11 platforms as well for consistency. In case of running a cross-compilation on Windows they would still be used, but likely it will not happen in practice. What counts is that the build itself is running on which platform, not the target platform. Some generated files are written directly in an SConstruct or SCsub file, before the parallel build starts. They don't need to be written in a subprocess, apparently, so I left them as is.
* add NoCache wrapper to CommandRhody Lugo2018-06-211-4/+4
|
* Fix segfault on x11n4nn313552018-04-051-1/+1
|
* Open textfile in textmodeShyRed2018-03-161-1/+1
| | | | Open mapping files in textmode as they are textfiles.
* SCons: properly close files when reading controller mappingsRémi Verschelde2018-03-161-4/+4
| | | | Fixup to #17296.
* Merge pull request #17296 from cart/controller-mapping-autogenHein-Pieter van Braam2018-03-151-1/+70
|\ | | | | Generate controller mapping class from one or more SDL2 database files
| * Generate controller mapping class from one or more SDL2 database filesCarter Anderson2018-03-051-1/+70
| |
* | Properly closing all files in Python codeViktor Ferenczi2018-03-111-38/+37
|/
* fixed reference to splash fileJuan Linietsky2017-12-161-1/+1
|
* Added custom editor splash (including sponsor logo).Juan Linietsky2017-12-161-0/+24
|
* disable caching for targets using helper functionsRhody Lugo2017-11-281-2/+1
|
* use the same cache for all branches for appveyorRhody Lugo2017-11-281-1/+1
|
* New splash screen.Daniel J. Ramirez2017-10-131-1/+1
|
* Make build scripts Python3 compatibleMatthias Hoelzl2017-08-271-5/+6
| | | | | | | | - The Windows, UWP, Android (on Windows) and Linux builds are tested with Scons 3.0 alpha using Python 3. - OSX and iOS should hopefully work but are not tested since I don't have a Mac. - Builds using SCons 2.5 and Python 2 should not be impacted.
* Fix mixed tab/whitespace in build filesMatthias Hoelzl2017-08-271-2/+2
|
* BuildSystem: generated files have .gen.extensionPoommetee Ketson2017-06-251-4/+4
|
* Restored (And auto-generated) splash imageJuan Linietsky2017-04-091-0/+46
|
* Move tests again from core to mainRémi Verschelde2017-01-081-0/+2
| | | | As advised by @reduz, as tests depend on other libs.
* style: Fix PEP8 whitespace issues in Python filesRémi Verschelde2016-11-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Done with `autopep8 --select=E2,W2`, fixes: - E201 - Remove extraneous whitespace. - E202 - Remove extraneous whitespace. - E203 - Remove extraneous whitespace. - E211 - Remove extraneous whitespace. - E221 - Fix extraneous whitespace around keywords. - E222 - Fix extraneous whitespace around keywords. - E223 - Fix extraneous whitespace around keywords. - E224 - Remove extraneous whitespace around operator. - E225 - Fix missing whitespace around operator. - E226 - Fix missing whitespace around operator. - E227 - Fix missing whitespace around operator. - E228 - Fix missing whitespace around operator. - E231 - Add missing whitespace. - E231 - Fix various deprecated code (via lib2to3). - E241 - Fix extraneous whitespace around keywords. - E242 - Remove extraneous whitespace around operator. - E251 - Remove whitespace around parameter '=' sign. - E261 - Fix spacing after comment hash. - E262 - Fix spacing after comment hash. - E265 - Format block comments. - E271 - Fix extraneous whitespace around keywords. - E272 - Fix extraneous whitespace around keywords. - E273 - Fix extraneous whitespace around keywords. - E274 - Fix extraneous whitespace around keywords. - W291 - Remove trailing whitespace. - W293 - Remove trailing whitespace.
* SCsub: Add python shebang as a hint for syntax highlightingRémi Verschelde2016-10-171-0/+2
| | | | Also switch existing shebangs to "better" /usr/bin/env python.
* Cosmetic fixes to SCons buildsystemRémi Verschelde2015-11-011-2/+0
| | | | | | - Removed trailing spaces - Made sure all indentation is done using tabs (fixes #39) - Potentially fixed an identation issue for openssl check
* Build System ChangesJuan Linietsky2014-10-071-1/+1
| | | | | | | | | | | | | -=-=-=-=-=-=-=-=-=-= Build System: -Big clean up of SCons, changed how builds are done to a much cleaner method (check the Github Wiki for instructions). -Deactivated BlackBerry10 (sorry), if no mantainer found (or BlackBerry does not send us a Passort ;), platform will be removed as we have no longer devices to test. Engine: -Removed deprecated object and scene format (was in there just for compatibility, not in use since a long time). -Added ability to open scenes even if a node type was removed (will try to guess the closest type). -Removed deprecated node types.
* wtfJuan Linietsky2014-02-191-1/+1
|
* GODOT IS OPEN SOURCEJuan Linietsky2014-02-091-0/+12