Commit Graph

162 Commits

Author SHA1 Message Date
bf05309af7 Import thekla_atlas
As requested by reduz, an import of thekla_atlas into thirdparty/
2017-12-08 15:47:15 +01:00
a65c0939fd disable caching for targets using helper functions 2017-11-28 23:24:12 -04:00
a4a222d62d use the same cache for all branches for appveyor 2017-11-28 03:23:33 -04:00
1272497fec prune scons shared cache 2017-11-27 01:43:10 -04:00
428b6a308e add support for scons cache and enable it for appveyor 2017-11-25 22:15:22 -04:00
c6cfbad47a Add explicit exception model flag for Visual C++ 2017-11-21 19:06:43 +01:00
589976321c Add cpp.hint file to improve IntelliSense 2017-11-19 21:01:05 +01:00
992a40a50d Merge pull request #12961 from eska014/platform-doc
Facilitate documenting platform-exclusive classes
2017-11-19 16:19:47 +01:00
63b1a096eb Facilitate exposing platform-exclusive interfaces to all platforms
This makes the interfaces available, without implementation, in other
platforms and the editor, which facilitates documenting platform-exclusive
classes.

Platform-exclusive APIs must be set up in platform/<platform>/api/api.cpp.
Provide noop method-implementations where necessary.

Also setup and document the HTML5 platform's JavaScript singleton.
2017-11-18 03:54:21 +01:00
b361f371f1 Cleanup of Visual Studio project generation (#12929)
Visual studio project file creation had some problems. Files with c extension were listed with cpp extension. Some include files that did not exist were added to the project.
This change ensures a file exists before adding it to the project.
2017-11-16 16:37:02 +01:00
ed2b66f023 Improve code style of generated headers 2017-11-15 21:29:34 +01:00
f6232efed9 Remove leading newline in SConstruct
Some editors don't recognize the shebang if it's not on the first line.
2017-11-13 02:04:18 -02:00
cefdb34f6c SCons: make use_lto a global option and opt-in for iphone
Supersedes #12553, see discussion in #12552.
2017-11-02 09:11:50 +01:00
79f81b77e2 -Modules can now add custom version info (added it for Mono)
-Version string takes this version info
-Ability to download templates from the interweb (listing does not work yet)
2017-11-01 23:13:27 -03:00
a4cee286e6 flatDir support [Android] 2017-10-07 15:10:17 +05:30
d5caf71c3f Fix SConstruct check for config.is_enabled() 2017-10-03 00:01:30 +02:00
31c14432b8 Merge pull request #11753 from Listwon/Intellisense
Fix IntelliSense
2017-10-02 22:28:37 +02:00
eaa965d5ef Indentation Error
TabError: inconsistent use of tabs and spaces in indentation

was fixed
2017-10-02 00:04:11 -05:00
936f63a2dd Fix IntelliSense
Fix the CPPPATH passed to MSVSProject. Uses SCons Dir() function to convert "#" paths http://www.scons.org/doc/0.97/HTML/scons-user/a3414.html#CV-CPPPATH
2017-10-01 17:08:21 +02:00
d3345121cc Ability to set a module enabled/disabled by default by adding is_enabled() to config.py 2017-10-01 08:52:11 -03:00
5be675eb03 Use BoolVariable for module options. 2017-09-25 14:36:30 -04:00
45a9a680a3 Use BoolVariable for third-party options. 2017-09-25 14:36:30 -04:00
ffab67b8da Use BoolVariable in target/component/advanced options. 2017-09-25 14:36:02 -04:00
f9e463bce2 Use EnumVariable for choice-based build options. 2017-09-25 14:36:01 -04:00
ba0dcbbdc3 Bump required scons version to 0.98.1.
* Environment.AddPostAction() and the global AlwaysBuild() were added in
  0.93, so requiring 0.14 is broken.
* Environment.Decider and Glob were added in some intermediate 0.97
  release.
* The Variables object was added in 0.98.1.
2017-09-24 22:39:35 -04:00
a408388623 Enable building against system zstd. 2017-09-23 23:46:47 -04:00
f3745a23be Fix errors in Python 3 build 2017-09-16 04:18:14 +02:00
cc7c892bca Merge pull request #11160 from marcelofg55/drive_funcs_x11
Implemented DirAccess get_drive and get_drive_count for Linux
2017-09-13 20:04:54 +02:00
27ae3c839d Merge pull request #7908 from SaracenOne/recast
In-editor navmesh generation.
2017-09-13 19:22:29 +02:00
4f929a0fdf Changed the doc class generation to individual files per class. It is also possible to save module files in module directories and the build system will
recognize them.
2017-09-12 17:45:41 -03:00
8f133e2c4d Added check_c_headers to SCons env to check for the existence of headers 2017-09-12 12:00:14 -03:00
92e77d5ff2 Recast integration. 2017-09-04 21:41:57 +01:00
0cee288c11 Merge pull request #10148 from leezh/pcre2
Replacement of internal RegEx with PCRE2
2017-08-31 11:56:19 +02:00
cecff2dc74 Generate project files for VS2017 2017-08-29 16:53:46 +02:00
b6e1e47e3a Make build scripts Python3 compatible
- 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.
2017-08-27 23:05:39 +02:00
e3e2f06324 Replacement of internal RegEx with PCRE2
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-08-19 19:29:14 +08:00
6adeeeb848 Fix scons failing when not building sources 2017-08-03 11:53:16 -03:00
7121228818 BUGFIX: Check for "VCINSTALLDIR" environment variable instead of "VSINSTALLDIR". 2017-07-27 21:39:49 -07:00
b0e387a012 Fix building HTML5 when cmd.exe is set up for MSVC 2017-07-22 15:57:40 +02:00
2e73be99d8 Lots of work on Audio & Physics engine:
-Added new 3D stream player node
-Added ability for Area to capture sound from streams
-Added small features in physics to be able to properly guess distance to areas for sound
-Fixed 3D CollisionObject so shapes are added the same as in 2D, directly from children
-Fixed KinematicBody API to make it the same as 2D.
2017-07-15 08:32:34 -03:00
f93bb4f458 Add options for more human-friendly build output 2017-07-11 19:46:23 +02:00
79815a48da Increase SCons rebuild speed 2017-07-07 13:00:27 -03:00
e3998528e0 BuildSystem: generated files have .gen.extension 2017-06-25 07:55:01 +07:00
d46e246d0f Rework warning levels
Now you have: extra, all (the default), moderate, no.
The old 'yes' option is still supported, but a warning will be printed and 'all' will be assumed.

The different options will translate to the following:

MSVC:
extra -> /Wall (implies /W4)
all -> /W3 + disable non-essential (*)
moderate -> /W2 + disable non-essential (*)
no -> /w

GCC/Clang:
extra -> -Wall -Wextra
all -> -Wall
moderate -> -Wall -Wno-unused
no -> -w

* = Truncations, narrowing conversions...: /wd4267 /wd4244 /wd4305 /wd4800
2017-05-27 02:30:27 +02:00
fccf2816d4 -Fix eternal black screen on Windows
-Disabled warnings on windows, need to properly set up warnings
2017-04-09 17:59:17 -03:00
d8f32637be SCons: Add option to toggle warnings (on by default)
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 31107daa1a)
2017-03-26 21:58:37 +02:00
debeee56f7 Fix typos in source code using codespell
From https://github.com/lucasdemarchi/codespell
2017-03-24 21:45:31 +01:00
27c7d253aa android: adding classpath and gradle plugins 2017-03-18 10:27:30 +01:00
49c065d29c Refactoring: rename tools/editor/ to editor/
The other subfolders of tools/ had already been moved to either
editor/, misc/ or thirdparty/, so the hiding the editor code that
deep was no longer meaningful.
2017-03-05 14:21:25 +01:00
b87a232668 Reorder the folders in tools to prepare moving tools/editor
- `certs` and `editor_fonts` go to `thirdparty`
- `dist` and `scripts` go to a new `misc` folder
- `collada` and `doc` go to `tools/editor`

The next step will be to rename `tools/editor` to `editor` directly,
but this will be done at the right time to avoid breaking too many PRs.
2017-02-09 00:08:27 +01:00