* Add support for disabling code sections from build process
* Add support for disabling built-in audio
* No need to add definition here
* Remove extra blank lines
* Add required copyright notice
* Document new options
* Implement new log macros based on fmtlib
* Fix ci
* Fix ci
* Fix android ci
* Fix warnings
* Replace more ax::log by AXLOGX
* Fix ci
* Fix linux build
* Use stack memory for log prefix
* Fix linux build
* Fix warning
* Add ILogOutput support
* Replace old log calls with new log macros
* Fixup
* Fixup
* Fixup
* Update ci msvc to 14.39
* Update Console.h [skip ci]
* Pass log level to ILogOutput
* Fix memory leaks when axmol apps exit on non-embed systems
1. DriverBase no destroyInstance
2. Every object inherited from ax::Ref shoud destory before ScriptEngineManager, otherwise will trigger it's reinit and leak
3. QuadCommand always leak isolated indices
4. static singleton should'nt inhert from ax::Ref due to destory it before ScriptEngineManager impossible
5. Make Director don't inherit from ax::Ref due to it also cause ScriptEngineManager re-init, because we destroy ScriptEngineManger in destructor of Director
6. Explicit Director managed by Application and don't delete self at purgeDirector, since it will release at mainLoop and re-init in glView->pollEvents then leak
7. Rename ApplicationProtocol to ApplicationBase
8. Rename purgeDirector since we don't delete director self at it, maye rename to cleanup
9. Change ShaderCache to new/delete singleton, managed by ProgramManager
---------
Co-authored-by: lich426 <lich426@gmail.com>