Because these are static, there can be various problems when linking
them later, so better to test that as early as possible.
This was done in the magnum-bootstrap CI setup before, but that's often
too late to discover problems.
The Platform::*Application::Configuration class was split into
Configuration and GLConfiguration, the latter containing only
GL-specific configuration. Moreover, createContext() and
tryCreateContext() were renamed to create() / tryCreate().
There's now a constructor and a create() / tryCreate() overload taking
GLConfiguration and this will be later extended with VkConfiguration,
for example. GL-specific getters/setters from Configuration are now
marked as deprecated and merged into GLConfiguration during context
creation.
Everything has still hard dependency on GL, that will be done in the
next commits.
* Making use of the builtin support in CMake 3.7, the old toolchain
files are no longer needed and thus removed.
* Switched to Clang and libc++, as it has better C++11 support. GCC
toolchain support will phase out in the following commits.
* Having only one PKGBUILD, building for Android ARM64 now.
* Updated the building docs to reflect this.
A bunch of extensions formerly in AEP are now part of ES 3.2, which
means they were reordered in the extension lists. While at it, also
added corresponding new GL and WebGL extensions and fixed a few wrongly
categorized extensions in WebGL.
Proofread everything, make the packages the first choice (and manual
build only as a backup catch-all solution), don't force the users to
CMake but provide useful snippets to show how to use the libs from
CMake.
It's not like with SDL where we can't use <SDL2/SDL.h> due to macOS
packaged shipped without the SDL2 include directory.
This was just a bad copypaste from the FindSDL2.cmake module, probably.
I deprecated that because I wanted to be sure that I properly update all
my code to actually propagate the options. But now I see that this is
actually a valid case -- the engine being in a thread or in some other
way hidden from the outside *shouldn't* need access to argc/argv.
Also updated the docs to say it's completely harmless to propagate the
args.