summaryrefslogtreecommitdiff
path: root/platform/windows/detect.py
AgeCommit message (Collapse)Author
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-31Improve LTO build with MSVCGeorge Marques
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-16Add support for whole program optimization on MSVCGeorge Marques
Since it's similar to LTO, it can be enabled by setting use_lto=yes.
2017-12-15Fix 32bit MingW build for thekla_altasHein-Pieter van Braam
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-07Fix windows compilation when using MinGWMrCdK
2017-12-06Add build param for targeted Windows versionPedro J. Estébanez
2017-11-02SCons: make use_lto a global option and opt-in for iphoneRémi Verschelde
Supersedes #12553, see discussion in #12552.
2017-10-27detect.py: Fix KeyError if using MinGW and LTOmhilbrunner
2017-10-21Cleanup unnecessary debug printsRémi Verschelde
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 EnumVariable for choice-based build options.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-13Buildsystem: Windows cross-compilation on Linux defaults to 64-bitRémi Verschelde
2017-09-13Added a crash handler to dump the backtrace on Windows, Linux and OS XMarcelo Fernandez
2017-08-27Added new WASAPI driver for WindowsMarcelo Fernandez
2017-08-18Windows: Drop support for obsolete MinGWRémi Verschelde
The version we support is MinGW-w64: https://sourceforge.net/p/mingw-w64 The old original MinGW from which it was forked (https://sourceforge.net/projects/mingw), is no longer maintained and useless for us. Fixes #10396.
2017-08-18Windows: Drop support for Vista (0x0600)Rémi Verschelde
We need the efficient SRWLock methods which are not supported on Vista, and loading them dynamically while providing fallbacks is not worth the effort. Closes #10243. Sorry Vista users... As you are running a supported which is no longer supported by Microsoft (https://support.microsoft.com/en-us/help/13853/windows-lifecycle-fact-sheet), we can only encourage you to upgrade to a more recent version if you can, or switch to Linux, which should give your old hardware a new youth.
2017-07-25Make MinGW test less verbose on non-Bash shellsRémi Verschelde
The &> construct seems to be Bash-specific. Supersedes #9755.
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-04-09-Fix eternal black screen on WindowsJuan Linietsky
-Disabled warnings on windows, need to properly set up warnings
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-03-24Fix typos in source code using codespellRémi Verschelde
From https://github.com/lucasdemarchi/codespell
2017-01-12Improvements to scons defined WINVER/_WIN32_WINNTFabio Alessandrelli
2017-01-10Merge pull request #7493 from neikeq/pr-mingw-bitsRémi Verschelde
Detect bits when building with MinGW
2017-01-10Detect bits when building with MinGWIgnacio Etcheverry
2017-01-08Windows: Define _WIN32_WINRT to 0x0600 (Vista)Rémi Verschelde
Passed as a compiler define to be sure it is always define before windows.h is loaded. This means that Godot officially requires Vista API or later, it will not work on Windows XP or earlier. Also fix a bogus check for Windows 7 API.
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-12-21Godot works on Windows again..reduz
2016-11-03scons: Reorder options for clarityRémi Verschelde
Also prefix all thirdparty-related toggles with `builtin`.
2016-11-01style: Various other PEP8 fixes in Python filesRémi Verschelde
Done with `autopep8 --select=E7`, fixes: - E701 - Put colon-separated compound statement on separate lines. - E702 - Put semicolon-separated compound statement on separate lines. - E703 - Put semicolon-separated compound statement on separate lines. - E711 - Fix comparison with None. - E712 - Fix (trivial case of) comparison with boolean. - E713 - Fix (trivial case of) non-membership check. - E721 - Fix various deprecated code (via lib2to3).
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-26fix bug introduced by #6501yg2f
( @Akien : this PR is for current HEAD only, not to be cherry-picked for 2.1.1 ) this is manual revertion of #6501 which introduced a bug that prevented scons from detecting Mingw under Windows when MSVC was installed. (thanks to @vnen for finding this) AND it fixes the actual bug that prevented scons from detecting MSVC standalone compiler ( a confusions between ``VSINSTALLDIR`` and ``VCINSTALLDIR`` ) The freeware Standalone MSVC C++ Build Tools are available here : http://landinghub.visualstudio.com/visual-cpp-build-tools
2016-10-16Theora: Don't compile unnecessary files, rename "x86_opt_*"Błażej Szczygieł
2016-10-15zlib: Split thirdparty files, simplify scons optionRémi Verschelde
2016-10-15glew: Split thirdparty files and isolate envRémi Verschelde
Not fully happy about the way this one interacts with the various platforms. Maybe the platform_config.h should be generated by the SCsub instead of passing a define just to know where is the header.
2016-09-16scons detects standalone MSVC on Windowsyg2f
Under Windows, Scons is now capable of detecting and compiling with standalone MSVC compilers (aka "Visual C++ Build Tools"). http://landinghub.visualstudio.com/visual-cpp-build-tools Tried with version 2015, and native x86 and x64 compilers under Windows 10 pro 64 and Windows 8.1 64, with the default Win8 SDK provided by the "Visual C++ Build Tools" web-installer. Follow the same compiling instructions than for compiling with Visual Studio, except that Visual Studio is no more required. KNOWN ISSUES : - ``methods.detect_visual_c_compiler_version()`` will emit a warning message on computers where the ``VSINSTALLDIR`` environement variable is not present. But it should compile just fine and still automatically detects the 32 or 64 bits according to the compiler you picked. TODO : - eventually, update ``platform/winrt/dectet.py`` with function ``methods.msvc_is_detected()`` and try to compile winrt/UWP with these standalone compilers (if you did not select Win10 SDK when installing the standalone tools, you can run it again). - update doc to make users aware of "Visual C++ Build Tools" aka "stadalone MSVC". - eventually, update ``methods.detect_visual_c_compiler_version()``
2016-09-03Implement missing WinRT functionsGeorge Marques
- Fix buildsystem for WinRT/UWP platform. - Add audio driver and joystick mapping for WinRT. - Enable thread class for WinRT. - Refactor MSVC compiler architecture detection to methods.py, so it can be used by Windows and WinRT.
2016-08-20fix to mingw buildJuan Linietsky
2016-08-20ENet windows compilation fixes.Juan Linietsky
For reference, when you include a Windows header (be it directly windows.h or something that includes it) put it at the end of the includes. it seems I forgot.
2016-06-09-make freetype build for all platforms the same, default as builtin except ↵Juan Linietsky
on x11. closes #5119
2016-06-08GLEW: Define static + enabled and includes via SConsRémi Verschelde
This allows us not to have to hack our definitions in the upstream files, making it easier to upgrade to newer versions in the future. For the include paths to work, the headers are moved to a GL subfolder to match their upstream location.
2016-06-01removed dependency on shcore.dll to get DPIJuan Linietsky
fixes #4973