-
Notifications
You must be signed in to change notification settings - Fork 1
Development
Karn Kaul edited this page Nov 4, 2019
·
4 revisions
LittleEngine uses some external libraries, which are all set up via ThirdParty/CMakeLists.txt, which builds/copies all its outputs to where LittleEngine expects them to be. There are various nested git submodules that connect to related but independent repositories; CMake scripts expose an option: UPDATE_SUBMODULES (on by default) which updates all submodules during configuration.
LittleEngineis (currently) not set up for cross-compilation (eg, iOS / Android); it only supports being built for the target it is being developed on, ie, x64/ARMv8 machines (PCs).
- x64 / ARMv8 multi-threaded target
- Git submodules (CMake scripts expose an option to turn off auto-updation, at which point it is the developer's responsibility to keep all submodules synchronised)
- CMake for the target, preferably using Ninja and LLVM
- SFML 2.5.1 source / internet access (CMake will download it)
- (Optional) Bash (native/MinGW/WSL), Python 3 (all tools scripts are in Bash/Python)
- (Optional) Ninja, Clang, and lld are recommended, as
LittleEngineis developed and built on such a toolset
Note: Due to GitHub's limitations with (free) LFS, Runtime Assets have been moved to DropBox since 0.4.4.0.
- Build
LittleEngine/LEDemo/custom executable target:- Run CMake on the top-level
CMakeLists.txtand generate the desired project(s). - Build the generated project(s).
- Run CMake on the top-level
- Debugging:
- Set
Test/LEDemo/ custom executable as the debugging target.
- Set
Note: See About LittleEngine for more info on adding custom code etc