summaryrefslogtreecommitdiff
path: root/platform/x11/detect.py
AgeCommit message (Collapse)Author
2018-04-07Experimental support for windows with per-pixel transparency (macOS, X11 and ↵bruvzg
Windows).
2018-02-16X11: Link libgcc statically with use_static_cpp optionRémi Verschelde
We were already linking libstdc++ statically for official binaries, protecting us against most portability issues. But apparently since we started using GCC 7 for official builds, we also need to link libgcc statically for at least 32-bit builds to be portable. Fixes #16409.
2018-02-14Allow building with system wide mbedtls on X11Fabio Alessandrelli
Using builtin_mbedtls=yes is still the default as many distributions do not ship with mbedtls included.
2018-02-14Deleting OpenSSL module and libraryFabio Alessandrelli
2018-01-26Make separate debug symbols opt-inHein-Pieter van Braam
This adds a separate_debug_symbols option to the x11, windows, and osx targets. This will default to adding normal debugging symbols to the artifacts and only splits them when separate_debug_symbols=yes on the Scons command line.
2018-01-26Bullet: allow unbundling only if > 2.87Rémi Verschelde
Looks like we are using cutting edge methods which are not even if the current stable 2.87.
2018-01-13SCons: Allow unbundling bullet on Linux (only 2.87+)Rémi Verschelde
2018-01-05SCons: Fix usage of LD when we meant LINKRémi Verschelde
Also made LINK and CXXFLAGS configurable as command line options. Note that LINK currently expects the *compiler* that will be used for linking and will call its configured linker behind the scenes (so g++, clang++, etc., not ld.gold). See #15364 for details.
2017-12-24-Removed OpenMP support, replaced by a custom class.Juan Linietsky
-Disabled Opus, implementation is wrong.
2017-12-22Do not require OpenMP for non-tools builds (export templates)Rémi Verschelde
2017-12-14openmp: Simplify linking on X11, fixing clang buildRémi Verschelde
2017-12-14openmp: Don't try to link GCC's implementation on ClangRémi Verschelde
Also disable openmp build on Travis, breaks on Trusty's Clang. Group deps more naturally.
2017-12-14Added indent_style to editorconfig, fixed inconsistent use of tabs and ↵Colin Kinloch
spaces in indentation.
2017-12-14-Add lightmapperJuan Linietsky
-Fixes to unwrapper (remove degenerates), makes Thekla not crash -Added optional cancel button in EditorProgress -Added function to force processing of events (needed for cancel button)
2017-12-06Implement multitouch on X11Pedro J. Estébanez
2017-11-19Cleanup old references to GLES2 rendererRémi Verschelde
There are still some left in the Android Java code, even stuff to swap between GLES1 and GLES2 support from early Godot days... would be good to see some cleanup there too one day. The "graphics/api" option for Android exports is removed, as only GLES 3.0 is supported. It can be readded when GLES 2.0 support comes back. Fixes #13004.
2017-11-02SCons: make use_lto a global option and opt-in for iphoneRémi Verschelde
Supersedes #12553, see discussion in #12552.
2017-10-27Travis: Simplify matrix, disable iphone and add X11 tools=no/clangRémi Verschelde
Travis always has massive backlog of macOS builds, so we can't rely on them too much. The iphone build was mostly useful to spot tools=no or target=release_debug issues, so replacing it by an appropriate X11 build.
2017-10-17Fix BSD compile issuesMarcelo Fernandez
2017-09-26Reduce gcc lto build time by telling the linker toFelix M. Cobos
use the number of jobs indicated by -j
2017-09-25Use BoolVariable in platform-specific options.Elliott Sales de Andrade
2017-09-25Use BoolVariable for third-party options.Elliott Sales de Andrade
2017-09-25Use BoolVariable in target/component/advanced options.Elliott Sales de Andrade
2017-09-25Use EnumVariable for choice-based build options.Elliott Sales de Andrade
2017-09-24Merge pull request #11519 from hpvb/fix-gcc-ltoRémi Verschelde
Fix gcc lto [ci skip]
2017-09-24Merge pull request #11527 from QuLogic/system-zstdRémi Verschelde
Enable building against system zstd.
2017-09-24Add support for OpenSSL 1.1.0.Elliott Sales de Andrade
This release hides many struct members which provides easier forward compatibility but is a break from previous releases. A few small macros provide compatibility between both 1.1.0 and 1.0.x. Fixes #8624.
2017-09-23Enable building against system zstd.Elliott Sales de Andrade
2017-09-23Fix gcc ltoHein-Pieter van Braam
This repairs LTO on X11 and adds it to MingW targets. The difference in linktime is substantial, but runtime performance is quite a bit better.
2017-09-16Create separate debug info files by defaultHein-Pieter van Braam
Now that we have a built-in stacktrace on a segfault it would be useful to have debug information on debug_release builds so that bugreports can include this information. Without this debug info we will still get function names in the backtrace but not file location. This commit will by default build all targets with minimal debug info and then strip the information into separate files. On MacOS this is a .dSYM file, on Linux/MingW this is a .debug file. MacOSX will automatically load a dSYM file if it exists in its debugger. On Linux/MingW we create a 'gnu debuglink' meaning that gdb and friends will automatically find the debug symbols if they exist. Existing workflow for developers does not change at all, except that we now create two instead of one build artifact by default. This commit also adds a 'debug_symbols' option to X11, MacOS, and MingW targets. The default is 'yes' which corresponds to -g1. The alternatives are 'no' (don't generate debug infos at all) or 'full' which runs with -g2. A target=debug build will now build with -g3.
2017-09-13Added a crash handler to dump the backtrace on Windows, Linux and OS XMarcelo Fernandez
2017-08-31Merge pull request #10148 from leezh/pcre2Rémi Verschelde
Replacement of internal RegEx with PCRE2
2017-08-30Disable -ffast-math for etc2compHein-Pieter van Braam
Apparently -ffast-math generates incorrect code with recent versions of GCC and Clang. The manual page for GCC warns about this possibility. In my tests it doesn't actually appear to be measurably slower in this case, and this is used in a batch process so it seems safe to disable this. This fixes #10758 and fixes #10070
2017-08-19Replacement of internal RegEx with PCRE2Zher Huei Lee
The pattern and replacement matching behaviour has been changed purely due to the nature of switching to a standards-compliant library. One mistake in the previous behaviour was that named groups didn't have a number. This has been corrected. As names are actually just an alias of numbered groups, RegExMatch::get_name_dict() is now get_names() and is a dict referring to the group number it represents. Duplicate names are enabled and the with the first matching instance used. Due the lack of a suitable equivalent in PCRE2, RegExMatch::expand() was removed.
2017-07-01Buildsystem: Improve detect.py readability and fix issuesRémi Verschelde
Tried to organize the configure(env) calls in sections, using the same order for all platforms whenever possible. Apart from cosmetic changes, the following issues were fixed: - Android: cleanup linkage, remove GLESv1_CM and GLESv2 - iPhone: Remove obsolete "ios_gles22_override" option - OSX: * Fix bits detection (default to 64) and remove obsolete "force_64_bits" option (closes #9449) * Make "fat" bits argument explicit - Server: sync with X11 - Windows: clean up old DirectX 9 stuff - X11: * Do not require system OpenSSL for building (closes #9443) * Fix typo'ed use_leak_sanitizer option * Fix .llvm suffix overriding custom extra_suffix
2017-05-06X11: Abort build if using OpenSSL 1.1.0+Rémi Verschelde
Workaround until #8624 is fixed.
2017-03-26SCons: Add option to toggle warnings (on by default)Rémi Verschelde
All the warnings are factored out of the platform-specific files and moved to SConstruct. Will have to check that it does not introduce regressions on some platforms/compilers. (cherry picked from commit 31107daa1a41fe9ab3c7c1868479e78e16848333)
2017-01-26Use -Ofast on x11. Also introduced use_lto option.Ferenc Arn
debug_release doesn't turn off optimizations for release target now. Ensure that sanitizer options apply to both C and C++ files. Built-in optimization/debug flags are prepended such that user-specified flags can override them. Based on and around the discussion in PR #5194.
2017-01-08x11: Improve logic for cross-dependencies between freetype, zlib and libpngRémi Verschelde
Fixes #7373.
2017-01-06Remove bundled glew, obsoleted by gladRémi Verschelde
Also make Haiku load the glad header for GLES3 too, though I haven't test it.
2017-01-02Merge remote-tracking branch 'origin/gles3' into gles3-on-masterRémi Verschelde
Various merge conflicts have been fixed manually and some mistakes might have been made - time will tell :)
2016-11-19png: Allow building shared freetype with bundled libpngRémi Verschelde
This was the behaviour when building Godot 2.1, which allows to build against Ubuntu 12.04 and its freetype that links old libpng12, while still bundling libpng16.
2016-11-19Revert "libpng: Fix erroneously linking against libpng12 on old distros"Rémi Verschelde
This reverts commits 5fa1bb331ad9be31dbfc752c7d19ccf7caeb8fa and ec4be71fade1ee5c6171e323d09197f3bf528499. Looks like Debian/Ubuntu are not even shipping libpng16 nowadays in their stable releases, we'll have to go back to statically linking our own libpng16 to wait for them to stop being 5 years behind everybody.
2016-11-19libpng: Fix erroneously linking against libpng12 on old distrosRémi Verschelde
This bit us for 2.1.1 binaries built on Ubuntu 12.04 LTS where libpng.pc apparently prioritizes libpng12.
2016-11-03scons: Reorder options for clarityRémi Verschelde
Also prefix all thirdparty-related toggles with `builtin`.
2016-11-01style: Fix PEP8 blank lines issues in Python filesRémi Verschelde
Done with `autopep8 --select=E3,W3`, fixes: - E301 - Add missing blank line. - E302 - Add missing 2 blank lines. - E303 - Remove extra blank lines. - E304 - Remove blank line following function decorator. - E309 - Add missing blank line. - W391 - Remove trailing blank lines.
2016-11-01style: Fix PEP8 whitespace issues in Python filesRémi Verschelde
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.
2016-11-01style: Start applying PEP8 to Python files, indentation issuesRémi Verschelde
Done with `autopep8 --select=E1`, fixes: - E101 - Reindent all lines. - E112 - Fix under-indented comments. - E113 - Fix over-indented comments. - E115 - Fix under-indented comments. - E116 - Fix over-indented comments. - E121 - Fix a badly indented line. - E122 - Fix a badly indented line. - E123 - Fix a badly indented line. - E124 - Fix a badly indented line. - E125 - Fix indentation undistinguish from the next logical line. - E126 - Fix a badly indented line. - E127 - Fix a badly indented line. - E128 - Fix a badly indented line. - E129 - Fix a badly indented line.
2016-10-30Merge pull request #6490 from zaps166/webm-prRémi Verschelde
Add WebM support
2016-10-23Add WebM moduleBłażej Szczygieł
Use already existing libraries: libvorbis and libopus. Also use newly added libraries: libvpx, libwebm, libsimplewebm.