summaryrefslogtreecommitdiffstats
path: root/platform/uwp/detect.py
Commit message (Collapse)AuthorAgeFilesLines
* UWP: Remove platform port, needs to be redone from scratch for 4.xRémi Verschelde2023-09-071-216/+0
| | | | | | | | | | | The UWP platform port was never ported to the Godot 4.0+ API, and it's now accumulating bitrot as it doesn't compile, and thus we no longer propagate platform changes in it. So we finally remove to acknowledge this state. There's still some interest in reviving the UWP port eventually, especially as support for Direct3D 12 will soon be merged, but when that happens it will be easiest to redo it from scratch.
* SCons: Move platform logo/run icon to `export` folderRémi Verschelde2023-06-201-4/+0
| | | | | | | | | | | | Follow-up to #75932. Since these icons are only used by the export plugin, it makes sense to move them and generate the headers there. The whole `detect.is_active()` logic seems to be a leftover from before times, as far back as 1.0-stable it already wasn't used for anything. So I'm removing it and moving the export icon generation to `platform_methods`, where it makes more sense.
* CI: Update static checks to black 23.3.0Rémi Verschelde2023-06-191-1/+0
| | | | And apply it to the codebase, removing empty lines at the start of blocks.
* ci: add Python static analysis check via mypyJiri Suchan2022-09-301-3/+8
|
* Unify bits, arch, and android_arch into env["arch"]Aaron Franke2022-08-251-20/+19
| | | | | | Fully removes the `bits` option and adapts the code that relied on it. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* SCons: Set `DEBUG_ENABLED` and `DEV_ENABLED` in SConstructRémi Verschelde2021-10-151-3/+0
| | | | | They're the same for all platforms so they don't need to be repeated in all platform definitions.
* SCons: Add `DEV_ENABLED` defines for `target=debug` buildsRémi Verschelde2021-10-141-0/+1
| | | | | | | | | | | This will allow adding developer checks which will be fully compiled out in user builds, unlike `DEBUG_ENABLED` which is included in debug tempates and the editor builds. This define is not used yet, but we'll soon add code that uses it, and change some existing `DEBUG_ENABLED` checks to be performed only in dev builds. Related to godotengine/godot-proposals#3371.
* Allow to not optimize release buildRafał Mikrut2021-03-141-4/+7
|
* SCons: Add only selected platform's opts to envRémi Verschelde2020-12-161-2/+0
| | | | | | | | | | | Otherwise we can get situations where platform-specific opts with the same name can override each other depending on the order at which platforms are parsed, as was the case with `use_static_cpp` in Linux/Windows. Fixes #44304. This also has the added benefit that the `scons --help` output will now only include the options which are relevant for the selected (or detected) platform.
* [Windows, MSVC] Correctly set source file encoding.bruvzg2020-10-091-1/+1
|
* SCons: Refactor and cleanup warnings definitionRémi Verschelde2020-10-081-0/+3
|
* Only display the Windows toggle console option if it can actually be usedHugo Locurcio2020-09-141-0/+2
|
* CI: Install master version of psf/blackRémi Verschelde2020-07-261-2/+7
| | | | | | | Until https://github.com/psf/black/pull/1328 makes it in a stable release, we have to use the latest from Git. Apply new style fixes done by latest black.
* SCons: Remove unused DEBUG_MEMORY_ENABLED defineRémi Verschelde2020-07-231-1/+1
| | | | | | | Its last use was removed in Godot 3.0, so it no longer makes sense to define. Also removed `D3D_DEBUG_INFO` for Windows as it's likely a left over from a long time ago pre-opensourcing when Godot had some form of Direct3D 9 support?
* SCons: Format buildsystem files with psf/blackRémi Verschelde2020-03-301-70/+102
| | | | | | | | | | | | | | | | | | | | | 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.
* pcre2: Use scons option to disable JIT on some platformsRémi Verschelde2019-11-201-0/+1
| | | | | | | | Third-party platforms (e.g. console ports) need to be able to disable JIT support in the regex module too, so it can't be hardcoded in the module SCsub. This is cleaner this way anyway. Fixes #19316.
* SCons: Use CPPDEFINES instead of CPPFLAGS for pre-processor definesRémi Verschelde2019-07-031-7/+7
| | | | | | | | It's the recommended way to set those, and is more portable (automatically prepends -D for GCC/Clang and /D for MSVC). We still use CPPFLAGS for some pre-processor flags which are not defines.
* SCons: Always use env.Prepend for CPPPATHRémi Verschelde2019-04-301-2/+2
| | | | | | Include paths are processed from left to right, so we use Prepend to ensure that paths to bundled thirdparty files will have precedence over system paths (e.g. `/usr/include` should have lowest priority).
* SCons: Review uses of CCFLAGS, CXXFLAGS and CPPFLAGSRémi Verschelde2019-04-241-12/+15
| | | | | | | | | | | | | | | | | | | | | | | Many contributors (me included) did not fully understand what CCFLAGS, CXXFLAGS and CPPFLAGS refer to exactly, and were thus not using them in the way they are intended to be. As per the SCons manual: https://www.scons.org/doc/HTML/scons-user/apa.html - CCFLAGS: General options that are passed to the C and C++ compilers. - CFLAGS: General options that are passed to the C compiler (C only; not C++). - CXXFLAGS: General options that are passed to the C++ compiler. By default, this includes the value of $CCFLAGS, so that setting $CCFLAGS affects both C and C++ compilation. - CPPFLAGS: User-specified C preprocessor options. These will be included in any command that uses the C preprocessor, including not just compilation of C and C++ source files [...], but also [...] Fortran [...] and [...] assembly language source file[s]. TL;DR: Compiler options go to CCFLAGS, unless they must be restricted to either C (CFLAGS) or C++ (CXXFLAGS). Preprocessor defines go to CPPFLAGS.
* Remove unused importsHendrikto2019-04-061-3/+0
|
* Fix compiling with use_mingw flag on WindowsMarcelo Fernandez2019-02-191-1/+0
|
* Dont use equality operators with None singleton in python fileslupoDharkael2018-10-271-1/+1
|
* Tweak some help texts in the build systemHugo Locurcio2018-06-071-3/+3
| | | | | This also removes `unix_global_settings_path` from SConstruct since it is no longer used.
* Fix UWP build after #17194Fabio Alessandrelli2018-03-291-0/+2
| | | | | | | `uwp/detect.py` was not setting the `env.msvc` variable to true causing scons to pass wrong arguments to `msvc` (using `clang/gcc` options) which in turn break the build due to `-Werror=return-type` not being recognized by ms compiler.
* Added missing import BoolVariableBastiaan Olij2018-03-151-1/+2
| | | | Didn't like the missing BoolVariable :)
* Enable SCons to autodetect Windows MSVC compilerGary Oberbrunner2018-03-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | SCons has good compiler detection logic for MSVC compilers. Up to now, Godot hasn't used it; it depends on passed-in OS environment vars from a specific Visual Studio cmd.exe windows. This makes it harder to build from a msys or cygwin shell. This change allows SCons to autodetect Visual Studio unless it sees VCINSTALLDIR in the os.environ. It also adds a 'msvc_version' arg for manual specification of compiler version, and uses the existing 'bits' arg to specify the target architecture. More detail could be added as desired. It also adds 'use_mingw' to always use mingw, even if Visual Studio is installed. That uses the existing mingw setup logic. If people are used to building Godot in a Visual Studio cmd window, this should not change the behavior in that case, since VCINSTALLDIR will be set in those windows. (However, note that you could now unset that var and build with any other MSVC version or target arch, even in that window.) I refactored much of platform/windows/detect.py during this, to simplify and clarify the logic. I also cleaned up a bunch of env var settings in windows/detect.py and SConstruct to use modern SCons idioms and simplify things. I suspect this will also enable using the Intel compiler on Windows, though that hasn't been tested.
* Link bcrypt lib in window and UWPFabio Alessandrelli2018-02-201-0/+1
|
* Cleanup old references to GLES2 rendererRémi Verschelde2017-11-191-1/+1
| | | | | | | | | 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.
* UWP: Update to build with Windows SDK 10.16229.0George Marques2017-11-091-1/+1
| | | | | - Update the OpenSSL shim to work with the new SDK - Change the ARM platform detection to work with VS2017
* Use BoolVariable in target/component/advanced options.Elliott Sales de Andrade2017-09-251-2/+2
|
* Make build scripts Python3 compatibleMatthias Hoelzl2017-08-271-2/+2
| | | | | | | | - 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.
* UWP: Fix problem with Cert Kit validationGeorge Marques2017-07-121-2/+1
|
* Buildsystem: Improve detect.py readability and fix issuesRémi Verschelde2017-07-011-53/+53
| | | | | | | | | | | | | | | | | | | 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
* Fix UWP compilation issuesGeorge Marques2017-05-231-7/+8
| | | | Also fix VS2017 compilation problems.
* Improvements to scons defined WINVER/_WIN32_WINNTFabio Alessandrelli2017-01-121-0/+4
|
* Rename remaining WinRT references to UWPGeorge Marques2016-11-031-1/+1
|
* Rename WINRT_ENABLED to UWP_ENABLEDGeorge Marques2016-11-031-1/+1
|
* Rename WinRT files to UWPGeorge Marques2016-11-031-0/+166