Modules/Allocators
Шурупов Илья Викторович 7d7c7d3f0c Add CMake presets for Linux and Android and make desktop parts optional
MODULES_BUILD_DESKTOP, MODULES_BUILD_TESTS and MODULES_BUILD_EXAMPLES
default to on everywhere except Android. Wayland, the window layer,
ImGui, GLFW, OIDN, PortAudio and the desktop applications build only
with the desktop option. Graphics gains a GraphicsVulkan library with
the platform-free Vulkan context, GPU timer and frame code. UnitTest++
is built from Externals/unittest-cpp directly instead of through lalr,
which nothing else uses.

Presets: linux-debug, linux-release, android-arm64-debug and
android-arm64-release (NDK toolchain from ANDROID_NDK_HOME, API 31,
arm64-v8a).
2026-10-17 09:19:48 +03:00
..
private Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00
public Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00
tests Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00
CMakeLists.txt Add CMake presets for Linux and Android and make desktop parts optional 2026-10-17 09:19:48 +03:00
README.md Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00

Profiling

Memory Leaks

Example program with memory leaks:

#include "allocators.h"

void test_call22() { new int; }
void test_call21() { new float; }

void test_call11() {
  test_call21();
  test_call22();
}

int main(char argc, char* argv[]) {
  tp::ModuleManifest* ModuleDependencies[] = { &tp::gModuleAllocators, NULL };
  tp::ModuleManifest TestModule("Test", NULL, NULL, ModuleDependencies);
  TestModule.initialize();
  
  test_call11();
  
  TestModule.deinitialize();
}

If memory leaks were detected it will be logged in the output console.

image

Also debug.memleaks binary will be generated in the working directory that can be viewed with MemLeaks Viewer.

image