Commit Graph

92 Commits

Author SHA1 Message Date
Juan Linietsky 201d606b3d Addition of SDFGI for open world global illumination
Move GI to a deferred pass
2020-06-26 11:06:48 -03:00
Marcel Admiraal 43371c9fbe Activate emscripten with no-embedded option. 2020-05-30 12:51:06 +01:00
Hugo Locurcio 4fec548065 Travis CI: Use the Xcode 11.5 image for macOS builds 2020-05-28 15:51:22 +02:00
Fabio Alessandrelli fd916342ec Re-enable travis CI for javascript platform. 2020-05-10 18:22:48 +02:00
PouleyKetchoupp 802bbe87ad Fix extra warnings in Android build 2020-04-10 11:06:11 +02:00
Rémi Verschelde 526deb724a Travis: Re-enable Android builds 2020-04-09 22:50:18 +02:00
Rémi Verschelde 3644036fd3 Travis: Add static check for Python black formatting
Also install and use pygmentize to visualize clang-format and black
diffs.
2020-03-30 09:31:53 +02:00
Rémi Verschelde be07f86f85 Travis: Disable HTML5 again until ported to DisplayServer
Also re-enable macOS builds disabled in dbb3f992a4.
2020-03-26 16:24:10 +01:00
Mateo Kuruk Miccino f387b9b4f4 Multiple changes to DisplayServerX11
- Travis: Change x11 to linuxbsd
- SCons: Change x11 plataform to linuxbsd
- Plugins: Remove ; to avoid fallthrough warning
- DisplayServerX11: Implement set_icon
- DisplayServerX11: Fix X11 bug when a window was erased from windows
  map, all the changes from that erased windows are sending to the main
  window
- DisplayServerX11: Reorder create_window commands
- DisplayServerX11: Change every Size2 to Size2i and Rect2 to Rect2i
  where it belongs

+ More X11 fixes which have been integrated directly back into reduz's
original commits while rebasing the branch.
2020-03-26 15:49:54 +01:00
Rémi Verschelde dbb3f992a4 Travis: Temporarily disable macOS builds
Travis CI has had trouble the past few days and macOS builds error out
for no reason.
2020-03-22 09:11:04 +01:00
Fabio Alessandrelli 919bbf8077 [HTML5] Refactor JS, threads support, closures.
- Refactored the Engine code, splitted across files.
- Use MODULARIZE option to build emscripten code into it's own closure.
- Enable lto support (saves ~2MiB in release).
- Enable optional closure compiler pass for JS and generated code.
- Enable optional pthreads support.
- Can now build with tools=yes (not much to see yet).
- Dropped some deprecated code for older toolchains.
2020-03-11 16:09:31 +01:00
Fabio Alessandrelli 0f78113529 Add Javascript to CI (export template, release). 2020-03-08 03:35:13 +01:00
Rémi Verschelde c418966623 Travis: Use Python 3.8 alias instead of specific version
Otherwise it breaks when they update the container to a new version,
like they did today with 3.7.6.
2020-02-25 10:30:51 +01:00
Rémi Verschelde a92e2eb317 Travis: Use Xcode 11.3 for macOS/iOS
Xcode 10+ is needed for exhaustive C++17 support (gnu++17).

11.3 is the latest available version on Travis, and we don't have a
specific reason not to use it.

Follow-up to #36457.
2020-02-22 22:31:29 +01:00
Rémi Verschelde 6bb075a53f Travis: Use Ubuntu 18.04 (bionic) as base image
It's now available and allows us to have a better default environment,
with GCC 7.4.0 and Clang 7.

We now need GCC 7+ for C++17 support so it's more efficient to upgrade
the image than to install it on Ubuntu 16.04 (xenial).

Also fixes a couple -Wdeprecated-declarations warnings on macOS now
that we build against macOS 10.12.
2020-02-22 20:00:28 +01:00
Rémi Verschelde 1b01896e90 Travis: Force updating homebrew on macOS
Temporary workaround for https://travis-ci.community/t/macos-build-fails-because-of-homebrew-bundle-unknown-command/7296
2020-02-21 09:27:18 +01:00
Rémi Verschelde 49fec646cb Fix compilation warnings and re-enable werror=yes on Travis
Fix -Wunused-variable, -Wunused-but-set-variable and -Wswitch warnings
raised by GCC 8 and 9.

Fix -Wunused-function, -Wunused-private-field and
-Wtautological-constant-out-of-range-compare raised by Clang.

Fix MSVC 2019 warning C4804 (unsafe use of type 'bool' in comparison
operation).

GCC -Wcpp warnings/Clang -W#warnings (`#warning`) are no longer raising
errors and will thus not abort compilation with `werror=yes`.

Treat glslang headers are system headers to avoid raising warnings.

Re-enables us to build with `werror=yes` on Linux and macOS, thus
catching warnings that would be introduced by new code.

Fixes #36132.
2020-02-18 20:51:25 +01:00
bruvzg 0ce4433686 Restore parts of #33783 and #32809 missing after rebase. 2020-02-11 12:06:30 +01:00
Rémi Verschelde fff4240bb4 Fix code formatting issues and VS compilation
Also temporarily disable multicheck build so that we get a full build
even when there are style issues on Vulkan.

Fixes #33356.
2020-02-11 12:05:19 +01:00
bruvzg eb48be51db Add static Vulkan loader.
Initial Vulkan support for Windows.
Initial Vulkan support for macOS.
2020-02-11 11:57:11 +01:00
Rémi Verschelde 83ec7cc425 Travis: Use Python 3 for SCons 2020-02-10 10:30:44 +01:00
Rémi Verschelde 9ef0e06781 Travis: Disable -Wstrict-aliasing warning on GCC 5 test build
Should speed up builds by avoiding warning spam.
This warning is no longer raised by newer GCC versions.
2020-01-16 12:38:06 +01:00
Rémi Verschelde 7f62ee69b1 Travis: Fix reporting clang-format errors after #34097 2019-12-16 08:46:36 +01:00
Hugo Locurcio bc4dbcf793
Travis CI: Run `makerst.py` to check for documentation errors 2019-12-04 08:51:32 +01:00
Rémi Verschelde 95f1f4e82a Travis: Drop support for coverity_scan, we do not use it
The UX is pretty bad, and the fact that all reports are private by
default with no option to make them public makes Coverity Scan hardly
usable in a community-driven project.
2019-11-19 12:14:46 +01:00
Rémi Verschelde ab4b57de1f Travis: Force installing OpenJDK8 for Android SDK compatibility
Travis CI upgraded their Xenial VMs to default to openjdk11, which
is not working properly for sdkmanager, so we can no longer accept
licenses for the SDK.

They don't really seem to care about providing a good alternative
for us from the few threads I read, so let's just force openjdk8
back.
2019-10-26 14:28:07 +02:00
bruvzg 7b64340eb0
Fix compilation warnings in macOS build, enable `warnings=extra werror=yes` for macOS CI. 2019-10-24 20:37:56 +03:00
Rémi Verschelde a99b7a5f88 Travis: Make scons cache branch-specific 2019-09-27 13:35:33 +02:00
Rémi Verschelde 0bbb8d22c4 Travis: Fix builds wrongly reporting success after #31013
Seems to be a 5 year old bug that upstream doesn't care about.
https://github.com/travis-ci/travis-ci/issues/1066
2019-08-27 15:38:08 +02:00
Hugo Locurcio 5efd43609b
Travis CI: Test project exporting/script running in the headless editor 2019-08-20 17:35:55 +02:00
Hugo Locurcio 1b7be55bac
Travis CI: Use a multi-stage build to run static checks first
This prevents Travis CI from performing full builds if static checks
have failed.

This also removes `sudo: false` as it is deprecated.
2019-08-18 15:08:21 +02:00
Martin Liska c8de5760bd Use GCC 9 in travis. 2019-07-02 13:28:48 +02:00
Ibrahn Sahir 5e24611241 Png driver reworked to use libpng 1.6 simplified API
Wrapped libpng usage in a pair of functions under PNGDriverCommon,
which convert between Godot Image and png data.
Switched to libpng 1.6 simplified API for ease of maintenance.
Implemented ImageLoaderPNG and ResourceSaverPNG in terms of
PNGDriverCommon functions.
Travis, switched to builtin libpng (thus builtin freetype and zlib also)
so we can build on Xenial.
2019-06-19 11:05:58 +01:00
Hugo Locurcio b29387c859
Travis CI: Build Linux export template with `disable_3d=yes`
This increases the build coverage by making sure the Linux
export template still compiles when 3D support is disabled.

This also adds human-readable names to each job, which are displayed
on the Travis CI interface.
2019-06-02 19:45:46 +02:00
Rémi Verschelde b00d7bfc3f Travis: Update clang-format to version 8.0 2019-05-20 14:35:56 +02:00
marxin e7f22ebdcd Enable warnings=extra on clang and GCC testers.
And remove 2 warnings from warnings=extra.
2019-04-02 17:14:47 +02:00
Rémi Verschelde 5774155d6a Travis: Use Ubuntu 16.04, use GCC 8 for Linux/GCC builds
Also add one GCC 5 legacy build job for debug template.
2019-02-19 14:17:22 +01:00
marxin 8fbf69a4f4 Enable warnings=all and werror=yes for gcc-8 GCC builder. 2019-02-19 10:43:28 +01:00
marxin 6b76145694 Add gcc-8 to Travis. 2019-02-19 10:29:33 +01:00
Rémi Verschelde ffc0792798 Travis: Use pip to install SCons on OSX
Not sure why we switched from homebrew to scons-local anymore,
but pip should work just fine and is recommended by upstream.

Downloads of scons-local from SourceForge were quite iffy, so
this should help avoid CI errors due to not having downloaded
SCons successfully.

Setting Python's user binary PATH seems necessary on Travis/OSX
as per travis-ci/travis-ci#5030 (confirmed that 'scons' is not
in PATH without it).
2019-01-09 13:39:46 +01:00
Ignacio Etcheverry 611a476224 Support globs in csproj includes 2018-10-25 18:00:17 +02:00
Rémi Verschelde 6bb5ee0ded Travis: Enable 'werror' for X11 and Android builds
They are currently warning-free, so let's keep it that way.
2018-10-04 15:38:43 +02:00
Hugo Locurcio 87ba7de328
Build some targets in release and release_debug mode on Travis CI
This makes sure the release code path is tested in CI builds.

This closes #22147.
2018-09-17 11:11:32 +02:00
Rémi Verschelde 1f3aa6890f Travis: Move Coverity module to x11-tools-mono-gcc build
Update Coverity Scan secure token, previous one expired.
2018-08-29 12:16:10 +02:00
Rémi Verschelde e71c20099c CI: Disable debug_symbols on Travis/AppVeyor
Also increase AppVeyor cache size to 1024,
should match what is available for us in the free plan:
https://www.appveyor.com/docs/build-cache/#cache-size-beta

And drop obsolete debug_release option for Windows, superseded
by target=release and debug_symbols=yes.
2018-08-21 12:36:57 +02:00
Hugo Locurcio 2450debc0e
Use Xcode 9.4 on Travis CI
See <https://blog.travis-ci.com/2018-07-19-xcode9-4-default-announce>.
2018-08-04 18:31:44 +02:00
Rémi Verschelde 22b176f69d Travis: Install libstdc++ >= 4.9 for clang-format-6.0 2018-07-18 17:39:05 +02:00
Rémi Verschelde 003ac67df1 Travis: Update style checks to clang-format 6.0.1 2018-07-18 16:29:43 +02:00
Rémi Verschelde 7bf0c134a7 Travis: Build Mono module in linux tools job 2018-06-15 13:10:21 +02:00
Rémi Verschelde c58f73fd35 Travis: Make dependencies follow the matrix requirements
Also make the coverity addon only applied to the static checks build job.
2018-06-15 12:36:35 +02:00