Otherwise we run into situations where commits to stable branches
induce very long build times, as they have to basically build from
scratch but also invalidate the cache for future commits on the
master branch.
This commit also makes the cache folder branch-specific, but since
it's still limited to 1 GB of total cache size, we don't enable it
for non-master, as we would still run into issues with non-master
build invalidating the master cache.
(cherry picked from commit b021bdbf1f)
The rationale for keeping those shared by default is that they're typical
dependencies found on any Linux system, and it saves compilation time and
binary size to link their dynamically.
But since official builds default to all-builtin, and Debian/Ubuntu still
don't have libpng16 (which we now require) readily available on all their
supported releases, it's simpler to bundle all the things.
This does not change the fact that those dependencies *can* be unbundled
on Linux, it's only the default option changing.
(cherry picked from commit 1769cbc0e2)
For 3.0, also building by default against bundled openssl.
New contributors added to AUTHORS:
@Kanabenki, @KoBeWi
Thanks to all contributors and donors for making Godot possible!
(cherry picked from commit 958c915f60)
See #24965 for details. `sys.path.insert` is hacky, but should work
relatively well for both Python 2 and Python 3. When we eventually
deprecate Python 2 support, we could look into using importlib.
Fixes#24965.
(cherry picked from commit 644b266bae)
From August 1, 2019, Google Play requires that all new apps and app updates
include 64-bit versions, so we enable ARM64 by default.
IINM support for x86 and x86_64 is still be optional, so not enabling them
out of the box.
Part of #25030.
(cherry picked from commit 9e820cdf20)
Like arm64v8, this is only supported by API 21 and later,
so we enforce 21 as min API for x86_64.
Part of #25030.
(cherry picked from commit 7f4ee36469)
The default value for `ignore_camera_zoom` property was initialized by garbage value,
leading to camera's zoom to be ignored even if unset in editor most of the time.
(cherry picked from commit 86eaded7b4)
Means the list is destroyed before the OS object, allowing it the
opportunity to print an error if there are still dynamic font objects
hanging around.
(cherry picked from commit 7d82bed4f4)
Disabling a shape removes it from physics calculations. Enabling a shape adds it back to the physics calculations.
(cherry picked from commit 4d6bb43931)