* Fix same uniforms in fragment and vertex shaders not working in Metal
* Add missing copyright
* Fix lua bindings for UniformLocation conversion
* Fix uniform mismatch in positionNormalTexture.vert and colorNormalTexture.frag
* Enable ProgramState::setFragmentUniform() only for Metal
* 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
* Update paths to lua bindings
* Update target include directories due to new extension dir structure
* Add missing libraries and paths for prebuilt option
* Current FairyGUI requires paths to parent and source directory
* Add required thirdparty search path to LUA library
* Restructure extension folder structure to reduce conflicts with project source files
* Do not include SDFGen headers for Android builds
* Ensure correct paths are included for the relevant targets
* ImGui is not be enabled for WinUWP, tvOS and iOS
* Fix LUA auto binding generator to work with updated extension folder structure
* Fix path and linker issues for yasio when using prebuilt option
Set correct paths to extensions for prebuilt option
* 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>