Nimbin[12]?SDL & Graphics / sdl_runtime_compiler / commits / 4c0c669

sdl_runtime_compiler git · main

SDL3 game for running and compiling code at runtime

sdl3 c++ compiler dlopen cmake · first commit 2026-04-19 · last commit 2026-07-03 (3 months ago) · synced 3 days ago · upstream: git.ide3.de/hsnr/sdl-runtime-compiler

C++ 72.3% C 26.2%
git clone https://git.christianimmanuel.de/sdl-graphics/sdl_runtime_compiler.gitwget https://git.christianimmanuel.de/sdl-graphics/sdl_runtime_compiler/archive/sdl_runtime_compiler.tar.gz

Namespace my sht

Christian Immanuel · 2026-06-26 09:50 · 4c0c6690667bcac5a96fca91ca67c2493de5c5bc

 CMakeFiles/3.31.2/CMakeCCompiler.cmake             |  81 ++
 CMakeFiles/3.31.2/CMakeCXXCompiler.cmake           | 105 +++
 CMakeFiles/3.31.2/CMakeDetermineCompilerABI_C.bin  | Bin 0 -> 20352 bytes
 .../3.31.2/CMakeDetermineCompilerABI_CXX.bin       | Bin 0 -> 20376 bytes
 CMakeFiles/3.31.2/CMakeSystem.cmake                |  15 +
 CMakeFiles/3.31.2/CompilerIdC/CMakeCCompilerId.c   | 904 ++++++++++++++++++++
 CMakeFiles/3.31.2/CompilerIdC/a.out                | Bin 0 -> 20464 bytes
 .../3.31.2/CompilerIdCXX/CMakeCXXCompilerId.cpp    | 919 +++++++++++++++++++++
 CMakeFiles/3.31.2/CompilerIdCXX/a.out              | Bin 0 -> 20472 bytes
 CMakeFiles/CMakeConfigureLog.yaml                  | 525 ++++++++++++
 CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeCache.txt    | 265 ++++++
 .../bin/CMakeFiles/CMakeDirectoryInformation.cmake |  16 +
 .../bin/CMakeFiles/Makefile.cmake                  |  52 ++
 .../_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile2     | 158 ++++
 .../_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/1    |   1 +
 .../_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/2    |   1 +
 .../_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/3    |   1 +
 .../_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/4    |   1 +
 .../bin/CMakeFiles/Progress/count.txt              |   1 +
 .../bin/CMakeFiles/TargetDirectories.txt           |   4 +
 .../bin/CMakeFiles/boo.dir/CXX.includecache        |  10 +
 .../bin/CMakeFiles/boo.dir/DependInfo.cmake        |  32 +
 .../bin/CMakeFiles/boo.dir/build.make              | 116 +++
 .../bin/CMakeFiles/boo.dir/cmake_clean.cmake       |  10 +
 .../bin/CMakeFiles/boo.dir/compiler_depend.make    |   2 +
 .../bin/CMakeFiles/boo.dir/compiler_depend.ts      |   2 +
 .../bin/CMakeFiles/boo.dir/depend.internal         |   5 +
 .../bin/CMakeFiles/boo.dir/depend.make             |   5 +
 .../bin/CMakeFiles/boo.dir/flags.make              |  10 +
 .../bin/CMakeFiles/boo.dir/link.txt                |   1 +
 .../bin/CMakeFiles/boo.dir/main.cpp.o              | Bin 0 -> 3400 bytes
 .../bin/CMakeFiles/boo.dir/progress.make           |   3 +
 .../bin/CMakeFiles/cmake.check_cache               |   1 +
 .../bin/CMakeFiles/foo.dir/CXX.includecache        |  10 +
 .../bin/CMakeFiles/foo.dir/DependInfo.cmake        |  32 +
 .../bin/CMakeFiles/foo.dir/build.make              | 116 +++
 .../bin/CMakeFiles/foo.dir/cmake_clean.cmake       |  10 +
 .../CMakeFiles/foo.dir/cmake_clean_target.cmake    |   3 +
 .../bin/CMakeFiles/foo.dir/compiler_depend.make    |   2 +
 .../bin/CMakeFiles/foo.dir/compiler_depend.ts      |   2 +
 .../bin/CMakeFiles/foo.dir/depend.internal         |   5 +
 .../bin/CMakeFiles/foo.dir/depend.make             |   5 +
 .../bin/CMakeFiles/foo.dir/flags.make              |  10 +
 .../bin/CMakeFiles/foo.dir/foo.cpp.o               | Bin 0 -> 3240 bytes
 .../bin/CMakeFiles/foo.dir/link.txt                |   2 +
 .../bin/CMakeFiles/foo.dir/progress.make           |   3 +
 .../bin/CMakeFiles/progress.marks                  |   1 +
 CMakeFiles/_CMakeLTOTest-CXX/bin/Makefile          | 231 ++++++
 .../_CMakeLTOTest-CXX/bin/cmake_install.cmake      |  61 ++
 CMakeFiles/_CMakeLTOTest-CXX/bin/libfoo.a          | Bin 0 -> 3384 bytes
 CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt    |   8 +
 CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp           |   4 +
 CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp          |   6 +
 benchmark/bench_ai.cpp                             |   5 +
 benchmark/bench_collision.cpp                      |   5 +
 benchmark/bench_physics.cpp                        |   5 +
 benchmark/bench_text_mesh.cpp                      |   5 +
 src/core/game.cpp                                  |   5 +
 src/core/game.hpp                                  |   5 +
 src/core/main.cpp                                  |   2 +-
 src/entities/camera.hpp                            |   6 +
 src/entities/game_object.hpp                       |   5 +
 src/entities/plate.cpp                             |   5 +
 src/entities/plate.hpp                             |   6 +
 src/entities/player.cpp                            |   5 +
 src/entities/player.hpp                            |   5 +
 src/entities/pult.cpp                              |   5 +
 src/entities/pult.hpp                              |   5 +
 src/entities/solid_box.hpp                         |   6 +
 src/entities/world.cpp                             |   5 +
 src/entities/world.hpp                             |   5 +
 src/levels/director.cpp                            |   5 +
 src/levels/director.hpp                            |   5 +
 src/levels/goal.cpp                                |   5 +
 src/levels/goal.hpp                                |   5 +
 src/levels/level.cpp                               |   4 +
 src/levels/level.hpp                               |   5 +
 src/levels/level/char_copy.cpp                     |   5 +
 src/levels/level/sandbox.cpp                       |   5 +
 src/levels/level/tutorial.cpp                      |  17 +-
 src/levels/progression.cpp                         |   5 +
 src/levels/progression.hpp                         |   5 +
 src/levels/scene.hpp                               |   5 +
 src/rendering/floor_surface.cpp                    |   5 +
 src/rendering/floor_surface.hpp                    |   5 +
 src/rendering/gl_renderer.cpp                      |   6 +
 src/rendering/gl_renderer.hpp                      |   5 +
 src/rendering/wall_surfaces.cpp                    |   5 +
 src/states/game_context.cpp                        |   5 +
 src/states/game_context.hpp                        |   5 +
 src/states/game_state.cpp                          |   7 +-
 src/states/game_state.hpp                          |   5 +
 src/states/istate.hpp                              |   5 +
 src/states/menu_state.cpp                          |   5 +
 src/states/menu_state.hpp                          |   5 +
 src/systems/aim.hpp                                |   5 +
 src/systems/carry_lex.cpp                          |   5 +
 src/systems/carry_lex.hpp                          |   5 +
 src/systems/carry_system.cpp                       |   5 +
 src/systems/carry_system.hpp                       |   5 +
 src/systems/celebration_system.cpp                 |   5 +
 src/systems/celebration_system.hpp                 |   6 +
 src/systems/collision.cpp                          |   5 +
 src/systems/collision.hpp                          |   6 +
 src/systems/compiler_system.cpp                    |   5 +
 src/systems/compiler_system.hpp                    |   5 +
 src/systems/cpp_highlight_system.hpp               |   5 +
 src/systems/dyn_loader_system.cpp                  |   5 +
 src/systems/dyn_loader_system.hpp                  |   5 +
 src/systems/freelook_system.cpp                    |   5 +
 src/systems/freelook_system.hpp                    |   6 +
 src/systems/hint_system.cpp                        |   5 +
 src/systems/hint_system.hpp                        |   5 +
 src/systems/input_system.cpp                       |   5 +
 src/systems/input_system.hpp                       |   5 +
 src/systems/particle_system.cpp                    |   5 +
 src/systems/particle_system.hpp                    |   5 +
 src/systems/physics_system.cpp                     |   5 +
 src/systems/physics_system.hpp                     |   5 +
 src/systems/pick_system.cpp                        |   6 +
 src/systems/pick_system.hpp                        |   5 +
 src/systems/plate_system.cpp                       |   5 +
 src/systems/plate_system.hpp                       |   5 +
 src/systems/program_system.cpp                     |   5 +
 src/systems/program_system.hpp                     |   5 +
 src/systems/projectile_system.cpp                  |   5 +
 src/systems/projectile_system.hpp                  |   5 +
 src/systems/pult_system.cpp                        |   5 +
 src/systems/pult_system.hpp                        |   6 +
 src/systems/source_tokens.hpp                      |   5 +
 src/systems/wall_connection.cpp                    |   5 +
 src/systems/wall_connection.hpp                    |   5 +
 src/systems/word_ai_system.cpp                     |   5 +
 src/systems/word_ai_system.hpp                     |   5 +
 src/systems/word_anim_system.cpp                   |   5 +
 src/systems/word_anim_system.hpp                   |   5 +
 src/text/cpp_highlight.cpp                         |   5 +
 src/text/handler.cpp                               |   5 +
 src/text/handler.hpp                               |   5 +
 src/text/line.cpp                                  |   6 +
 src/text/mesh.cpp                                  |   5 +
 src/text/mesh.hpp                                  |   5 +
 src/text/text.cpp                                  |   5 +
 src/text/text.hpp                                  |   5 +
 src/text/token.cpp                                 |   5 +
 src/text/token.hpp                                 |   6 +
 src/text/token_db.cpp                              |   4 +
 src/text/vim_buffer.cpp                            |   5 +
 src/text/vim_buffer.hpp                            |   5 +
 src/thirdparty/earcut/earcut.hpp                   |  10 +-
 src/utils/config.hpp                               |   5 +
 src/utils/frame_profiler.hpp                       |   6 +
 src/utils/globals.hpp                              |   5 +
 src/utils/light.hpp                                |   5 +
 src/utils/math.hpp                                 |   5 +
 src/wall/label.cpp                                 |   5 +
 src/wall/label.hpp                                 |   5 +
 src/wall/wall.cpp                                  |   7 +-
 src/wall/wall.hpp                                  |   5 +
 todo.txt                                           |   2 +
 160 files changed, 4302 insertions(+), 15 deletions(-)

diff --git a/CMakeFiles/3.31.2/CMakeCCompiler.cmake b/CMakeFiles/3.31.2/CMakeCCompiler.cmake
new file mode 100644
index 0000000..4044772
--- /dev/null
+++ b/CMakeFiles/3.31.2/CMakeCCompiler.cmake
@@ -0,0 +1,81 @@
+set(CMAKE_C_COMPILER "/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "GNU")
+set(CMAKE_C_COMPILER_VERSION "15.1.0")
+set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "23")
+set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON")
+set(CMAKE_C_STANDARD_LATEST "23")
+set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23")
+set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
+set(CMAKE_C17_COMPILE_FEATURES "c_std_17")
+set(CMAKE_C23_COMPILE_FEATURES "c_std_23")
+
+set(CMAKE_C_PLATFORM_ID "Linux")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_COMPILER_FRONTEND_VARIANT "GNU")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_LINKER_LINK "")
+set(CMAKE_LINKER_LLD "")
+set(CMAKE_C_COMPILER_LINKER "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld")
+set(CMAKE_C_COMPILER_LINKER_ID "GNU")
+set(CMAKE_C_COMPILER_LINKER_VERSION 2.46.0.20260210)
+set(CMAKE_C_COMPILER_LINKER_FRONTEND_VARIANT GNU)
+set(CMAKE_MT "")
+set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND")
+set(CMAKE_COMPILER_IS_GNUCC 1)
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+set(CMAKE_C_LINKER_DEPFILE_SUPPORTED )
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "8")
+set(CMAKE_C_COMPILER_ABI "ELF")
+set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed;/usr/include")
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0;/usr/x86_64-pc-linux-gnu/lib;/usr/lib;/lib")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/CMakeFiles/3.31.2/CMakeCXXCompiler.cmake b/CMakeFiles/3.31.2/CMakeCXXCompiler.cmake
new file mode 100644
index 0000000..eb8303f
--- /dev/null
+++ b/CMakeFiles/3.31.2/CMakeCXXCompiler.cmake
@@ -0,0 +1,105 @@
+set(CMAKE_CXX_COMPILER "/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "GNU")
+set(CMAKE_CXX_COMPILER_VERSION "15.1.0")
+set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17")
+set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON")
+set(CMAKE_CXX_STANDARD_LATEST "26")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23;cxx_std_26")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
+set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
+set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23")
+set(CMAKE_CXX26_COMPILE_FEATURES "cxx_std_26")
+
+set(CMAKE_CXX_PLATFORM_ID "Linux")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "GNU")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_LINKER_LINK "")
+set(CMAKE_LINKER_LLD "")
+set(CMAKE_CXX_COMPILER_LINKER "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld")
+set(CMAKE_CXX_COMPILER_LINKER_ID "GNU")
+set(CMAKE_CXX_COMPILER_LINKER_VERSION 2.46.0.20260210)
+set(CMAKE_CXX_COMPILER_LINKER_FRONTEND_VARIANT GNU)
+set(CMAKE_MT "")
+set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND")
+set(CMAKE_COMPILER_IS_GNUCXX 1)
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm;ccm;cxxm;c++m)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+
+foreach (lang IN ITEMS C OBJC OBJCXX)
+  if (CMAKE_${lang}_COMPILER_ID_RUN)
+    foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
+      list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
+    endforeach()
+  endif()
+endforeach()
+
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+set(CMAKE_CXX_LINKER_DEPFILE_SUPPORTED )
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
+set(CMAKE_CXX_COMPILER_ABI "ELF")
+set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/15.1.0;/usr/include/c++/15.1.0/x86_64-pc-linux-gnu;/usr/include/c++/15.1.0/backward;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed;/usr/include")
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0;/usr/x86_64-pc-linux-gnu/lib;/usr/lib;/lib")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
+set(CMAKE_CXX_COMPILER_CLANG_RESOURCE_DIR "")
+
+set(CMAKE_CXX_COMPILER_IMPORT_STD "")
+### Imported target for C++23 standard library
+set(CMAKE_CXX23_COMPILER_IMPORT_STD_NOT_FOUND_MESSAGE "Unsupported generator: Unix Makefiles")
+
+
+### Imported target for C++26 standard library
+set(CMAKE_CXX26_COMPILER_IMPORT_STD_NOT_FOUND_MESSAGE "Unsupported generator: Unix Makefiles")
+
+
+
diff --git a/CMakeFiles/3.31.2/CMakeDetermineCompilerABI_C.bin b/CMakeFiles/3.31.2/CMakeDetermineCompilerABI_C.bin
new file mode 100755
index 0000000..4e42188
Binary files /dev/null and b/CMakeFiles/3.31.2/CMakeDetermineCompilerABI_C.bin differ
diff --git a/CMakeFiles/3.31.2/CMakeDetermineCompilerABI_CXX.bin b/CMakeFiles/3.31.2/CMakeDetermineCompilerABI_CXX.bin
new file mode 100755
index 0000000..78a915e
Binary files /dev/null and b/CMakeFiles/3.31.2/CMakeDetermineCompilerABI_CXX.bin differ
diff --git a/CMakeFiles/3.31.2/CMakeSystem.cmake b/CMakeFiles/3.31.2/CMakeSystem.cmake
new file mode 100644
index 0000000..aa637bd
--- /dev/null
+++ b/CMakeFiles/3.31.2/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-7.1.1")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "7.1.1")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
+
+
+
+set(CMAKE_SYSTEM "Linux-7.1.1")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "7.1.1")
+set(CMAKE_SYSTEM_PROCESSOR "x86_64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/CMakeFiles/3.31.2/CompilerIdC/CMakeCCompilerId.c b/CMakeFiles/3.31.2/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 0000000..8d8bb03
--- /dev/null
+++ b/CMakeFiles/3.31.2/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,904 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+#if !defined(__has_include)
+/* If the compiler does not have __has_include, pretend the answer is
+   always no.  */
+#  define __has_include(x) 0
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+#  define SIMULATE_ID "GNU"
+# endif
+  /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
+     except that a few beta releases use the old format with V=2021.  */
+# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
+#  define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+#  define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+#  if defined(__INTEL_COMPILER_UPDATE)
+#   define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+#  else
+#   define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+#  endif
+# else
+#  define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
+#  define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
+   /* The third version component from --version is an update index,
+      but no macro is provided for it.  */
+#  define COMPILER_VERSION_PATCH DEC(0)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+   /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+#  define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
+# define COMPILER_ID "IntelLLVM"
+#if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+#endif
+/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
+ * later.  Look for 6 digit vs. 8 digit version number to decide encoding.
+ * VVVV is no smaller than the current year when a version is released.
+ */
+#if __INTEL_LLVM_COMPILER < 1000000L
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER    % 10)
+#else
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER     % 100)
+#endif
+#if defined(_MSC_VER)
+  /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+#endif
+#if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#endif
+#if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+   /* __SUNPRO_C = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+  /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc     % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+  /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER         % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__open_xl__) && defined(__clang__)
+# define COMPILER_ID "IBMClang"
+# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
+# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
+# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
+
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__NVCOMPILER)
+# define COMPILER_ID "NVHPC"
+# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
+# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
+# if defined(__NVCOMPILER_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
+# endif
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(__clang__) && defined(__cray__)
+# define COMPILER_ID "CrayClang"
+# define COMPILER_VERSION_MAJOR DEC(__cray_major__)
+# define COMPILER_VERSION_MINOR DEC(__cray_minor__)
+# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__)
+# define COMPILER_VERSION_INTERNAL_STR __clang_version__
+
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__CLANG_FUJITSU)
+# define COMPILER_ID "FujitsuClang"
+# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# define COMPILER_VERSION_INTERNAL_STR __clang_version__
+
+
+#elif defined(__FUJITSU)
+# define COMPILER_ID "Fujitsu"
+# if defined(__FCC_version__)
+#   define COMPILER_VERSION __FCC_version__
+# elif defined(__FCC_major__)
+#   define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+#   define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+#   define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# endif
+# if defined(__fcc_version)
+#   define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
+# elif defined(__FCC_VERSION)
+#   define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
+# endif
+
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER      % 10)
+# endif
+
+#elif defined(__TASKING__)
+# define COMPILER_ID "Tasking"
+  # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000)
+  # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100)
+# define COMPILER_VERSION_INTERNAL DEC(__VERSION__)
+
+#elif defined(__ORANGEC__)
+# define COMPILER_ID "OrangeC"
+# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__)
+# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__)
+# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__)
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100   % 100)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__) && defined(__ti__)
+# define COMPILER_ID "TIClang"
+  # define COMPILER_VERSION_MAJOR DEC(__ti_major__)
+  # define COMPILER_VERSION_MINOR DEC(__ti_minor__)
+  # define COMPILER_VERSION_PATCH DEC(__ti_patchlevel__)
+# define COMPILER_VERSION_INTERNAL DEC(__ti_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
+# define COMPILER_ID "LCC"
+# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100)
+# if defined(__LCC_MINOR__)
+#  define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
+# endif
+# if defined(__GNUC__) && defined(__GNUC_MINOR__)
+#  define SIMULATE_ID "GNU"
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#  define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#  if defined(__GNUC_PATCHLEVEL__)
+#   define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#  endif
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(_ADI_COMPILER)
+# define COMPILER_ID "ADSP"
+#if defined(__VERSIONNUM__)
+  /* __VERSIONNUM__ = 0xVVRRPPTT */
+#  define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF)
+#  define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF)
+#  define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF)
+#  define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+#  define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+#  define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+#  define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+#  define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
+#  define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+#  define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+#  define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+#  define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
+# define COMPILER_ID "SDCC"
+# if defined(__SDCC_VERSION_MAJOR)
+#  define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
+#  define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
+#  define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
+# else
+  /* SDCC = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+#  define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(SDCC    % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__MSYS__)
+# define PLATFORM_ID "MSYS"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# elif defined(__VXWORKS__)
+#  define PLATFORM_ID "VxWorks"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+#  define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+#  define PLATFORM_ID "Integrity"
+# endif
+
+# elif defined(_ADI_COMPILER)
+#  define PLATFORM_ID "ADSP"
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_ARM64EC)
+#  define ARCHITECTURE_ID "ARM64EC"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+#  define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+#  define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+#  define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+#  define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+#  define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+#  define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+#  define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+#  define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+#  define ARCHITECTURE_ID "8051"
+
+# elif defined(__ICCSTM8__)
+#  define ARCHITECTURE_ID "STM8"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+#  define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+#  define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__clang__) && defined(__ti__)
+# if defined(__ARM_ARCH)
+#  define ARCHITECTURE_ID "Arm"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__TI_COMPILER_VERSION__)
+# if defined(__TI_ARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__MSP430__)
+#  define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__TMS320C28XX__)
+#  define ARCHITECTURE_ID "TMS320C28x"
+
+# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
+#  define ARCHITECTURE_ID "TMS320C6x"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+# elif defined(__ADSPSHARC__)
+#  define ARCHITECTURE_ID "SHARC"
+
+# elif defined(__ADSPBLACKFIN__)
+#  define ARCHITECTURE_ID "Blackfin"
+
+#elif defined(__TASKING__)
+
+# if defined(__CTC__) || defined(__CPTC__)
+#  define ARCHITECTURE_ID "TriCore"
+
+# elif defined(__CMCS__)
+#  define ARCHITECTURE_ID "MCS"
+
+# elif defined(__CARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__CARC__)
+#  define ARCHITECTURE_ID "ARC"
+
+# elif defined(__C51__)
+#  define ARCHITECTURE_ID "8051"
+
+# elif defined(__CPCP__)
+#  define ARCHITECTURE_ID "PCP"
+
+# else
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number. */
+#ifdef COMPILER_VERSION
+char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
+
+/* Construct a string literal encoding the version number components. */
+#elif defined(COMPILER_VERSION_MAJOR)
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+  'i','n','t','e','r','n','a','l','[',
+  COMPILER_VERSION_INTERNAL,']','\0'};
+#elif defined(COMPILER_VERSION_INTERNAL_STR)
+char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+#define C_STD_99 199901L
+#define C_STD_11 201112L
+#define C_STD_17 201710L
+#define C_STD_23 202311L
+
+#ifdef __STDC_VERSION__
+#  define C_STD __STDC_VERSION__
+#endif
+
+#if !defined(__STDC__) && !defined(__clang__)
+# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__)
+#  define C_VERSION "90"
+# else
+#  define C_VERSION
+# endif
+#elif C_STD > C_STD_17
+# define C_VERSION "23"
+#elif C_STD > C_STD_11
+# define C_VERSION "17"
+#elif C_STD > C_STD_99
+# define C_VERSION "11"
+#elif C_STD >= C_STD_99
+# define C_VERSION "99"
+#else
+# define C_VERSION "90"
+#endif
+const char* info_language_standard_default =
+  "INFO" ":" "standard_default[" C_VERSION "]";
+
+const char* info_language_extensions_default = "INFO" ":" "extensions_default["
+#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) ||           \
+     defined(__TI_COMPILER_VERSION__)) &&                                     \
+  !defined(__STRICT_ANSI__)
+  "ON"
+#else
+  "OFF"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+  require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+  require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+  require += info_cray[argc];
+#endif
+  require += info_language_standard_default[argc];
+  require += info_language_extensions_default[argc];
+  (void)argv;
+  return require;
+}
+#endif
diff --git a/CMakeFiles/3.31.2/CompilerIdC/a.out b/CMakeFiles/3.31.2/CompilerIdC/a.out
new file mode 100755
index 0000000..5b328fa
Binary files /dev/null and b/CMakeFiles/3.31.2/CompilerIdC/a.out differ
diff --git a/CMakeFiles/3.31.2/CompilerIdCXX/CMakeCXXCompilerId.cpp b/CMakeFiles/3.31.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 0000000..da6c824
--- /dev/null
+++ b/CMakeFiles/3.31.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,919 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+   recognize the extension without flags.  Borland does not know .cxx for
+   example.  */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+#if !defined(__has_include)
+/* If the compiler does not have __has_include, pretend the answer is
+   always no.  */
+#  define __has_include(x) 0
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+#  define SIMULATE_ID "GNU"
+# endif
+  /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
+     except that a few beta releases use the old format with V=2021.  */
+# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
+#  define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+#  define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+#  if defined(__INTEL_COMPILER_UPDATE)
+#   define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+#  else
+#   define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+#  endif
+# else
+#  define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
+#  define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
+   /* The third version component from --version is an update index,
+      but no macro is provided for it.  */
+#  define COMPILER_VERSION_PATCH DEC(0)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+   /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+#  define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
+# define COMPILER_ID "IntelLLVM"
+#if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+#endif
+/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
+ * later.  Look for 6 digit vs. 8 digit version number to decide encoding.
+ * VVVV is no smaller than the current year when a version is released.
+ */
+#if __INTEL_LLVM_COMPILER < 1000000L
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER    % 10)
+#else
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER     % 100)
+#endif
+#if defined(_MSC_VER)
+  /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+#endif
+#if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#endif
+#if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+   /* __SUNPRO_CC = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+  /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC     % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+  /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER         % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__open_xl__) && defined(__clang__)
+# define COMPILER_ID "IBMClang"
+# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
+# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
+# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
+
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__NVCOMPILER)
+# define COMPILER_ID "NVHPC"
+# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
+# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
+# if defined(__NVCOMPILER_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
+# endif
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(__clang__) && defined(__cray__)
+# define COMPILER_ID "CrayClang"
+# define COMPILER_VERSION_MAJOR DEC(__cray_major__)
+# define COMPILER_VERSION_MINOR DEC(__cray_minor__)
+# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__)
+# define COMPILER_VERSION_INTERNAL_STR __clang_version__
+
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__CLANG_FUJITSU)
+# define COMPILER_ID "FujitsuClang"
+# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# define COMPILER_VERSION_INTERNAL_STR __clang_version__
+
+
+#elif defined(__FUJITSU)
+# define COMPILER_ID "Fujitsu"
+# if defined(__FCC_version__)
+#   define COMPILER_VERSION __FCC_version__
+# elif defined(__FCC_major__)
+#   define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+#   define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+#   define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# endif
+# if defined(__fcc_version)
+#   define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
+# elif defined(__FCC_VERSION)
+#   define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
+# endif
+
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER      % 10)
+# endif
+
+#elif defined(__TASKING__)
+# define COMPILER_ID "Tasking"
+  # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000)
+  # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100)
+# define COMPILER_VERSION_INTERNAL DEC(__VERSION__)
+
+#elif defined(__ORANGEC__)
+# define COMPILER_ID "OrangeC"
+# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__)
+# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__)
+# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__)
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100   % 100)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__) && defined(__ti__)
+# define COMPILER_ID "TIClang"
+  # define COMPILER_VERSION_MAJOR DEC(__ti_major__)
+  # define COMPILER_VERSION_MINOR DEC(__ti_minor__)
+  # define COMPILER_VERSION_PATCH DEC(__ti_patchlevel__)
+# define COMPILER_VERSION_INTERNAL DEC(__ti_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
+# define COMPILER_ID "LCC"
+# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100)
+# if defined(__LCC_MINOR__)
+#  define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
+# endif
+# if defined(__GNUC__) && defined(__GNUC_MINOR__)
+#  define SIMULATE_ID "GNU"
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#  define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#  if defined(__GNUC_PATCHLEVEL__)
+#   define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#  endif
+# endif
+
+#elif defined(__GNUC__) || defined(__GNUG__)
+# define COMPILER_ID "GNU"
+# if defined(__GNUC__)
+#  define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# else
+#  define COMPILER_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(_ADI_COMPILER)
+# define COMPILER_ID "ADSP"
+#if defined(__VERSIONNUM__)
+  /* __VERSIONNUM__ = 0xVVRRPPTT */
+#  define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF)
+#  define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF)
+#  define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF)
+#  define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+#  define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+#  define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+#  define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+#  define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
+#  define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+#  define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+#  define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+#  define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__MSYS__)
+# define PLATFORM_ID "MSYS"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# elif defined(__VXWORKS__)
+#  define PLATFORM_ID "VxWorks"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+#  define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+#  define PLATFORM_ID "Integrity"
+# endif
+
+# elif defined(_ADI_COMPILER)
+#  define PLATFORM_ID "ADSP"
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_ARM64EC)
+#  define ARCHITECTURE_ID "ARM64EC"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+#  define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+#  define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+#  define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+#  define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+#  define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+#  define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+#  define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+#  define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+#  define ARCHITECTURE_ID "8051"
+
+# elif defined(__ICCSTM8__)
+#  define ARCHITECTURE_ID "STM8"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+#  define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+#  define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__clang__) && defined(__ti__)
+# if defined(__ARM_ARCH)
+#  define ARCHITECTURE_ID "Arm"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__TI_COMPILER_VERSION__)
+# if defined(__TI_ARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__MSP430__)
+#  define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__TMS320C28XX__)
+#  define ARCHITECTURE_ID "TMS320C28x"
+
+# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
+#  define ARCHITECTURE_ID "TMS320C6x"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+# elif defined(__ADSPSHARC__)
+#  define ARCHITECTURE_ID "SHARC"
+
+# elif defined(__ADSPBLACKFIN__)
+#  define ARCHITECTURE_ID "Blackfin"
+
+#elif defined(__TASKING__)
+
+# if defined(__CTC__) || defined(__CPTC__)
+#  define ARCHITECTURE_ID "TriCore"
+
+# elif defined(__CMCS__)
+#  define ARCHITECTURE_ID "MCS"
+
+# elif defined(__CARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__CARC__)
+#  define ARCHITECTURE_ID "ARC"
+
+# elif defined(__C51__)
+#  define ARCHITECTURE_ID "8051"
+
+# elif defined(__CPCP__)
+#  define ARCHITECTURE_ID "PCP"
+
+# else
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number. */
+#ifdef COMPILER_VERSION
+char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
+
+/* Construct a string literal encoding the version number components. */
+#elif defined(COMPILER_VERSION_MAJOR)
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+  'i','n','t','e','r','n','a','l','[',
+  COMPILER_VERSION_INTERNAL,']','\0'};
+#elif defined(COMPILER_VERSION_INTERNAL_STR)
+char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+#define CXX_STD_98 199711L
+#define CXX_STD_11 201103L
+#define CXX_STD_14 201402L
+#define CXX_STD_17 201703L
+#define CXX_STD_20 202002L
+#define CXX_STD_23 202302L
+
+#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG)
+#  if _MSVC_LANG > CXX_STD_17
+#    define CXX_STD _MSVC_LANG
+#  elif _MSVC_LANG == CXX_STD_17 && defined(__cpp_aggregate_paren_init)
+#    define CXX_STD CXX_STD_20
+#  elif _MSVC_LANG > CXX_STD_14 && __cplusplus > CXX_STD_17
+#    define CXX_STD CXX_STD_20
+#  elif _MSVC_LANG > CXX_STD_14
+#    define CXX_STD CXX_STD_17
+#  elif defined(__INTEL_CXX11_MODE__) && defined(__cpp_aggregate_nsdmi)
+#    define CXX_STD CXX_STD_14
+#  elif defined(__INTEL_CXX11_MODE__)
+#    define CXX_STD CXX_STD_11
+#  else
+#    define CXX_STD CXX_STD_98
+#  endif
+#elif defined(_MSC_VER) && defined(_MSVC_LANG)
+#  if _MSVC_LANG > __cplusplus
+#    define CXX_STD _MSVC_LANG
+#  else
+#    define CXX_STD __cplusplus
+#  endif
+#elif defined(__NVCOMPILER)
+#  if __cplusplus == CXX_STD_17 && defined(__cpp_aggregate_paren_init)
+#    define CXX_STD CXX_STD_20
+#  else
+#    define CXX_STD __cplusplus
+#  endif
+#elif defined(__INTEL_COMPILER) || defined(__PGI)
+#  if __cplusplus == CXX_STD_11 && defined(__cpp_namespace_attributes)
+#    define CXX_STD CXX_STD_17
+#  elif __cplusplus == CXX_STD_11 && defined(__cpp_aggregate_nsdmi)
+#    define CXX_STD CXX_STD_14
+#  else
+#    define CXX_STD __cplusplus
+#  endif
+#elif (defined(__IBMCPP__) || defined(__ibmxl__)) && defined(__linux__)
+#  if __cplusplus == CXX_STD_11 && defined(__cpp_aggregate_nsdmi)
+#    define CXX_STD CXX_STD_14
+#  else
+#    define CXX_STD __cplusplus
+#  endif
+#elif __cplusplus == 1 && defined(__GXX_EXPERIMENTAL_CXX0X__)
+#  define CXX_STD CXX_STD_11
+#else
+#  define CXX_STD __cplusplus
+#endif
+
+const char* info_language_standard_default = "INFO" ":" "standard_default["
+#if CXX_STD > CXX_STD_23
+  "26"
+#elif CXX_STD > CXX_STD_20
+  "23"
+#elif CXX_STD > CXX_STD_17
+  "20"
+#elif CXX_STD > CXX_STD_14
+  "17"
+#elif CXX_STD > CXX_STD_11
+  "14"
+#elif CXX_STD >= CXX_STD_11
+  "11"
+#else
+  "98"
+#endif
+"]";
+
+const char* info_language_extensions_default = "INFO" ":" "extensions_default["
+#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) ||           \
+     defined(__TI_COMPILER_VERSION__)) &&                                     \
+  !defined(__STRICT_ANSI__)
+  "ON"
+#else
+  "OFF"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+  require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+  require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+  require += info_cray[argc];
+#endif
+  require += info_language_standard_default[argc];
+  require += info_language_extensions_default[argc];
+  (void)argv;
+  return require;
+}
diff --git a/CMakeFiles/3.31.2/CompilerIdCXX/a.out b/CMakeFiles/3.31.2/CompilerIdCXX/a.out
new file mode 100755
index 0000000..3a29a22
Binary files /dev/null and b/CMakeFiles/3.31.2/CompilerIdCXX/a.out differ
diff --git a/CMakeFiles/CMakeConfigureLog.yaml b/CMakeFiles/CMakeConfigureLog.yaml
new file mode 100644
index 0000000..3ac75d3
--- /dev/null
+++ b/CMakeFiles/CMakeConfigureLog.yaml
@@ -0,0 +1,525 @@
+
+---
+events:
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineSystem.cmake:205 (message)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      The system is: Linux - 7.1.1 - x86_64
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerId.cmake:17 (message)"
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)"
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCXXCompiler.cmake:126 (CMAKE_DETERMINE_COMPILER_ID)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
+      Compiler: /usr/bin/c++ 
+      Build flags: 
+      Id flags:  
+      
+      The output was:
+      0
+      
+      
+      Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
+      
+      The CXX compiler identification is GNU, found in:
+        /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/3.31.2/CompilerIdCXX/a.out
+      
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerId.cmake:17 (message)"
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)"
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCCompiler.cmake:123 (CMAKE_DETERMINE_COMPILER_ID)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
+      Compiler: /usr/bin/cc 
+      Build flags: 
+      Id flags:  
+      
+      The output was:
+      0
+      
+      
+      Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
+      
+      The C compiler identification is GNU, found in:
+        /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/3.31.2/CompilerIdC/a.out
+      
+  -
+    kind: "try_compile-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerABI.cmake:74 (try_compile)"
+      - "/usr/share/cmake-3.31/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+      - "CMakeLists.txt:18 (project)"
+    checks:
+      - "Detecting CXX compiler ABI info"
+    directories:
+      source: "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-XasUfn"
+      binary: "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-XasUfn"
+    cmakeVariables:
+      CMAKE_CXX_FLAGS: ""
+      CMAKE_CXX_FLAGS_DEBUG: "-g"
+      CMAKE_CXX_SCAN_FOR_MODULES: "OFF"
+      CMAKE_EXE_LINKER_FLAGS: ""
+    buildResult:
+      variable: "CMAKE_CXX_ABI_COMPILED"
+      cached: true
+      stdout: |
+        Change Dir: '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-XasUfn'
+        
+        Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_5bae5/fast
+        /usr/bin/make  -f CMakeFiles/cmTC_5bae5.dir/build.make CMakeFiles/cmTC_5bae5.dir/build
+        make[1]: Entering directory '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-XasUfn'
+        Building CXX object CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o
+        /usr/bin/c++   -v -o CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.31/Modules/CMakeCXXCompilerABI.cpp
+        Using built-in specs.
+        COLLECT_GCC=/usr/bin/c++
+        Target: x86_64-pc-linux-gnu
+        Configured with: ../configure --prefix=/usr --disable-multilib --with-system-zlib --enable-default-pie --enable-default-ssp --enable-host-pie --disable-fixincludes --enable-languages=c,c++,fortran,go,objc,obj-c++,m2
+        Thread model: posix
+        Supported LTO compression algorithms: zlib zstd
+        gcc version 15.1.0 (GCC) 
+        COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_5bae5.dir/'
+         /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/cc1plus -quiet -v -D_GNU_SOURCE /usr/share/cmake-3.31/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_5bae5.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -o /tmp/ccXcNX5b.s
+        GNU C++17 (GCC) version 15.1.0 (x86_64-pc-linux-gnu)
+        	compiled by GNU C version 15.1.0, GMP version 6.3.0, MPFR version 4.2.0, MPC version 1.3.1, isl version none
+        GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
+        ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/include"
+        #include "..." search starts here:
+        #include <...> search starts here:
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0/x86_64-pc-linux-gnu
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0/backward
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include
+         /usr/local/include
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed
+         /usr/include
+        End of search list.
+        Compiler executable checksum: 44a9cd608db37f7746b7ead866da5d80
+        COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_5bae5.dir/'
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/as -v --64 -o CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccXcNX5b.s
+        GNU assembler version 2.46.0 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.46.0.20260210
+        COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/
+        LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../:/lib/:/usr/lib/
+        COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.'
+        Linking CXX executable cmTC_5bae5
+        /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5bae5.dir/link.txt --verbose=1
+        Using built-in specs.
+        COLLECT_GCC=/usr/bin/c++
+        COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper
+        Target: x86_64-pc-linux-gnu
+        Configured with: ../configure --prefix=/usr --disable-multilib --with-system-zlib --enable-default-pie --enable-default-ssp --enable-host-pie --disable-fixincludes --enable-languages=c,c++,fortran,go,objc,obj-c++,m2
+        Thread model: posix
+        Supported LTO compression algorithms: zlib zstd
+        gcc version 15.1.0 (GCC) 
+        COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/
+        LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../:/lib/:/usr/lib/
+        COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_5bae5' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_5bae5.'
+         /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/collect2 -plugin /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccKBhDET.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_5bae5 /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../.. -L/lib -L/usr/lib -v CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o
+        collect2 version 15.1.0
+        /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld -plugin /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccKBhDET.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_5bae5 /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../.. -L/lib -L/usr/lib -v CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o
+        GNU ld (GNU Binutils) 2.46.0.20260210
+        COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_5bae5' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_5bae5.'
+        /usr/bin/c++  -v -Wl,-v CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_5bae5
+        make[1]: Leaving directory '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-XasUfn'
+        
+      exitCode: 0
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerABI.cmake:182 (message)"
+      - "/usr/share/cmake-3.31/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      Parsed CXX implicit include dir info: rv=done
+        found start of include info
+        found start of implicit include info
+          add: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0]
+          add: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0/x86_64-pc-linux-gnu]
+          add: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0/backward]
+          add: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include]
+          add: [/usr/local/include]
+          add: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed]
+          add: [/usr/include]
+        end of search list found
+        collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0] ==> [/usr/include/c++/15.1.0]
+        collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0/x86_64-pc-linux-gnu] ==> [/usr/include/c++/15.1.0/x86_64-pc-linux-gnu]
+        collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0/backward] ==> [/usr/include/c++/15.1.0/backward]
+        collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include]
+        collapse include dir [/usr/local/include] ==> [/usr/local/include]
+        collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed]
+        collapse include dir [/usr/include] ==> [/usr/include]
+        implicit include dirs: [/usr/include/c++/15.1.0;/usr/include/c++/15.1.0/x86_64-pc-linux-gnu;/usr/include/c++/15.1.0/backward;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed;/usr/include]
+      
+      
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerABI.cmake:218 (message)"
+      - "/usr/share/cmake-3.31/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      Parsed CXX implicit link information:
+        link line regex: [^( *|.*[/\\])(ld[0-9]*(\\.[a-z]+)?|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)]
+        linker tool regex: [^[ 	]*(->|")?[ 	]*(([^"]*[/\\])?(ld[0-9]*(\\.[a-z]+)?))("|,| |$)]
+        ignore line: [Change Dir: '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-XasUfn']
+        ignore line: []
+        ignore line: [Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_5bae5/fast]
+        ignore line: [/usr/bin/make  -f CMakeFiles/cmTC_5bae5.dir/build.make CMakeFiles/cmTC_5bae5.dir/build]
+        ignore line: [make[1]: Entering directory '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-XasUfn']
+        ignore line: [Building CXX object CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o]
+        ignore line: [/usr/bin/c++   -v -o CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.31/Modules/CMakeCXXCompilerABI.cpp]
+        ignore line: [Using built-in specs.]
+        ignore line: [COLLECT_GCC=/usr/bin/c++]
+        ignore line: [Target: x86_64-pc-linux-gnu]
+        ignore line: [Configured with: ../configure --prefix=/usr --disable-multilib --with-system-zlib --enable-default-pie --enable-default-ssp --enable-host-pie --disable-fixincludes --enable-languages=c c++ fortran go objc obj-c++ m2]
+        ignore line: [Thread model: posix]
+        ignore line: [Supported LTO compression algorithms: zlib zstd]
+        ignore line: [gcc version 15.1.0 (GCC) ]
+        ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_5bae5.dir/']
+        ignore line: [ /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/cc1plus -quiet -v -D_GNU_SOURCE /usr/share/cmake-3.31/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_5bae5.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -o /tmp/ccXcNX5b.s]
+        ignore line: [GNU C++17 (GCC) version 15.1.0 (x86_64-pc-linux-gnu)]
+        ignore line: [	compiled by GNU C version 15.1.0  GMP version 6.3.0  MPFR version 4.2.0  MPC version 1.3.1  isl version none]
+        ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
+        ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/include"]
+        ignore line: [#include "..." search starts here:]
+        ignore line: [#include <...> search starts here:]
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0]
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0/x86_64-pc-linux-gnu]
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../include/c++/15.1.0/backward]
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include]
+        ignore line: [ /usr/local/include]
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed]
+        ignore line: [ /usr/include]
+        ignore line: [End of search list.]
+        ignore line: [Compiler executable checksum: 44a9cd608db37f7746b7ead866da5d80]
+        ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_5bae5.dir/']
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/as -v --64 -o CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccXcNX5b.s]
+        ignore line: [GNU assembler version 2.46.0 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.46.0.20260210]
+        ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/]
+        ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../:/lib/:/usr/lib/]
+        ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.']
+        ignore line: [Linking CXX executable cmTC_5bae5]
+        ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5bae5.dir/link.txt --verbose=1]
+        ignore line: [Using built-in specs.]
+        ignore line: [COLLECT_GCC=/usr/bin/c++]
+        ignore line: [COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper]
+        ignore line: [Target: x86_64-pc-linux-gnu]
+        ignore line: [Configured with: ../configure --prefix=/usr --disable-multilib --with-system-zlib --enable-default-pie --enable-default-ssp --enable-host-pie --disable-fixincludes --enable-languages=c c++ fortran go objc obj-c++ m2]
+        ignore line: [Thread model: posix]
+        ignore line: [Supported LTO compression algorithms: zlib zstd]
+        ignore line: [gcc version 15.1.0 (GCC) ]
+        ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/]
+        ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../:/lib/:/usr/lib/]
+        ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_5bae5' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_5bae5.']
+        link line: [ /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/collect2 -plugin /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccKBhDET.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_5bae5 /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../.. -L/lib -L/usr/lib -v CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o]
+          arg [/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/collect2] ==> ignore
+          arg [-plugin] ==> ignore
+          arg [/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so] ==> ignore
+          arg [-plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper] ==> ignore
+          arg [-plugin-opt=-fresolution=/tmp/ccKBhDET.res] ==> ignore
+          arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+          arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+          arg [-plugin-opt=-pass-through=-lc] ==> ignore
+          arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+          arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+          arg [--eh-frame-hdr] ==> ignore
+          arg [-m] ==> ignore
+          arg [elf_x86_64] ==> ignore
+          arg [-dynamic-linker] ==> ignore
+          arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+          arg [-pie] ==> ignore
+          arg [-o] ==> ignore
+          arg [cmTC_5bae5] ==> ignore
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o]
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o]
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib]
+          arg [-L/lib/../lib] ==> dir [/lib/../lib]
+          arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../..] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../..]
+          arg [-L/lib] ==> dir [/lib]
+          arg [-L/usr/lib] ==> dir [/usr/lib]
+          arg [-v] ==> ignore
+          arg [CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
+          arg [-lstdc++] ==> lib [stdc++]
+          arg [-lm] ==> lib [m]
+          arg [-lgcc_s] ==> lib [gcc_s]
+          arg [-lgcc] ==> lib [gcc]
+          arg [-lc] ==> lib [c]
+          arg [-lgcc_s] ==> lib [gcc_s]
+          arg [-lgcc] ==> lib [gcc]
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o]
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o]
+        ignore line: [collect2 version 15.1.0]
+        ignore line: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld -plugin /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccKBhDET.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_5bae5 /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../.. -L/lib -L/usr/lib -v CMakeFiles/cmTC_5bae5.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o]
+        linker tool for 'CXX': /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld
+        collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o] ==> [/usr/lib/Scrt1.o]
+        collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o] ==> [/usr/lib/crti.o]
+        collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o] ==> [/usr/lib/crtn.o]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib] ==> [/usr/x86_64-pc-linux-gnu/lib]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib] ==> [/usr/lib]
+        collapse library dir [/lib/../lib] ==> [/lib]
+        collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib] ==> [/usr/x86_64-pc-linux-gnu/lib]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../..] ==> [/usr/lib]
+        collapse library dir [/lib] ==> [/lib]
+        collapse library dir [/usr/lib] ==> [/usr/lib]
+        implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc]
+        implicit objs: [/usr/lib/Scrt1.o;/usr/lib/crti.o;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o;/usr/lib/crtn.o]
+        implicit dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0;/usr/x86_64-pc-linux-gnu/lib;/usr/lib;/lib]
+        implicit fwks: []
+      
+      
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/Internal/CMakeDetermineLinkerId.cmake:40 (message)"
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerABI.cmake:255 (cmake_determine_linker_id)"
+      - "/usr/share/cmake-3.31/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      Running the CXX compiler's linker: "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld" "-v"
+      GNU ld (GNU Binutils) 2.46.0.20260210
+  -
+    kind: "try_compile-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerABI.cmake:74 (try_compile)"
+      - "/usr/share/cmake-3.31/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+      - "CMakeLists.txt:18 (project)"
+    checks:
+      - "Detecting C compiler ABI info"
+    directories:
+      source: "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-wExUOU"
+      binary: "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-wExUOU"
+    cmakeVariables:
+      CMAKE_C_FLAGS: ""
+      CMAKE_C_FLAGS_DEBUG: "-g"
+      CMAKE_EXE_LINKER_FLAGS: ""
+    buildResult:
+      variable: "CMAKE_C_ABI_COMPILED"
+      cached: true
+      stdout: |
+        Change Dir: '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-wExUOU'
+        
+        Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_0e2a2/fast
+        /usr/bin/make  -f CMakeFiles/cmTC_0e2a2.dir/build.make CMakeFiles/cmTC_0e2a2.dir/build
+        make[1]: Entering directory '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-wExUOU'
+        Building C object CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o
+        /usr/bin/cc   -v -o CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.31/Modules/CMakeCCompilerABI.c
+        Using built-in specs.
+        COLLECT_GCC=/usr/bin/cc
+        Target: x86_64-pc-linux-gnu
+        Configured with: ../configure --prefix=/usr --disable-multilib --with-system-zlib --enable-default-pie --enable-default-ssp --enable-host-pie --disable-fixincludes --enable-languages=c,c++,fortran,go,objc,obj-c++,m2
+        Thread model: posix
+        Supported LTO compression algorithms: zlib zstd
+        gcc version 15.1.0 (GCC) 
+        COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_0e2a2.dir/'
+         /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/cc1 -quiet -v /usr/share/cmake-3.31/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_0e2a2.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -o /tmp/ccY9LkuM.s
+        GNU C23 (GCC) version 15.1.0 (x86_64-pc-linux-gnu)
+        	compiled by GNU C version 15.1.0, GMP version 6.3.0, MPFR version 4.2.0, MPC version 1.3.1, isl version none
+        GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
+        ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/include"
+        #include "..." search starts here:
+        #include <...> search starts here:
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include
+         /usr/local/include
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed
+         /usr/include
+        End of search list.
+        Compiler executable checksum: 110ac8c9887ed73507308ba80ff5b1ae
+        COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_0e2a2.dir/'
+         /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/as -v --64 -o CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o /tmp/ccY9LkuM.s
+        GNU assembler version 2.46.0 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.46.0.20260210
+        COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/
+        LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../:/lib/:/usr/lib/
+        COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.'
+        Linking C executable cmTC_0e2a2
+        /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0e2a2.dir/link.txt --verbose=1
+        Using built-in specs.
+        COLLECT_GCC=/usr/bin/cc
+        COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper
+        Target: x86_64-pc-linux-gnu
+        Configured with: ../configure --prefix=/usr --disable-multilib --with-system-zlib --enable-default-pie --enable-default-ssp --enable-host-pie --disable-fixincludes --enable-languages=c,c++,fortran,go,objc,obj-c++,m2
+        Thread model: posix
+        Supported LTO compression algorithms: zlib zstd
+        gcc version 15.1.0 (GCC) 
+        COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/
+        LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../:/lib/:/usr/lib/
+        COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_0e2a2' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_0e2a2.'
+         /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/collect2 -plugin /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccOkxPLh.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_0e2a2 /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../.. -L/lib -L/usr/lib -v CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o
+        collect2 version 15.1.0
+        /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld -plugin /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccOkxPLh.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_0e2a2 /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../.. -L/lib -L/usr/lib -v CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o
+        GNU ld (GNU Binutils) 2.46.0.20260210
+        COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_0e2a2' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_0e2a2.'
+        /usr/bin/cc  -v -Wl,-v CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o -o cmTC_0e2a2
+        make[1]: Leaving directory '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-wExUOU'
+        
+      exitCode: 0
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerABI.cmake:182 (message)"
+      - "/usr/share/cmake-3.31/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      Parsed C implicit include dir info: rv=done
+        found start of include info
+        found start of implicit include info
+          add: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include]
+          add: [/usr/local/include]
+          add: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed]
+          add: [/usr/include]
+        end of search list found
+        collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include]
+        collapse include dir [/usr/local/include] ==> [/usr/local/include]
+        collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed]
+        collapse include dir [/usr/include] ==> [/usr/include]
+        implicit include dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed;/usr/include]
+      
+      
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerABI.cmake:218 (message)"
+      - "/usr/share/cmake-3.31/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      Parsed C implicit link information:
+        link line regex: [^( *|.*[/\\])(ld[0-9]*(\\.[a-z]+)?|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)]
+        linker tool regex: [^[ 	]*(->|")?[ 	]*(([^"]*[/\\])?(ld[0-9]*(\\.[a-z]+)?))("|,| |$)]
+        ignore line: [Change Dir: '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-wExUOU']
+        ignore line: []
+        ignore line: [Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_0e2a2/fast]
+        ignore line: [/usr/bin/make  -f CMakeFiles/cmTC_0e2a2.dir/build.make CMakeFiles/cmTC_0e2a2.dir/build]
+        ignore line: [make[1]: Entering directory '/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/CMakeScratch/TryCompile-wExUOU']
+        ignore line: [Building C object CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o]
+        ignore line: [/usr/bin/cc   -v -o CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.31/Modules/CMakeCCompilerABI.c]
+        ignore line: [Using built-in specs.]
+        ignore line: [COLLECT_GCC=/usr/bin/cc]
+        ignore line: [Target: x86_64-pc-linux-gnu]
+        ignore line: [Configured with: ../configure --prefix=/usr --disable-multilib --with-system-zlib --enable-default-pie --enable-default-ssp --enable-host-pie --disable-fixincludes --enable-languages=c c++ fortran go objc obj-c++ m2]
+        ignore line: [Thread model: posix]
+        ignore line: [Supported LTO compression algorithms: zlib zstd]
+        ignore line: [gcc version 15.1.0 (GCC) ]
+        ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_0e2a2.dir/']
+        ignore line: [ /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/cc1 -quiet -v /usr/share/cmake-3.31/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_0e2a2.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -o /tmp/ccY9LkuM.s]
+        ignore line: [GNU C23 (GCC) version 15.1.0 (x86_64-pc-linux-gnu)]
+        ignore line: [	compiled by GNU C version 15.1.0  GMP version 6.3.0  MPFR version 4.2.0  MPC version 1.3.1  isl version none]
+        ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
+        ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/include"]
+        ignore line: [#include "..." search starts here:]
+        ignore line: [#include <...> search starts here:]
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include]
+        ignore line: [ /usr/local/include]
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/include-fixed]
+        ignore line: [ /usr/include]
+        ignore line: [End of search list.]
+        ignore line: [Compiler executable checksum: 110ac8c9887ed73507308ba80ff5b1ae]
+        ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_0e2a2.dir/']
+        ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/as -v --64 -o CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o /tmp/ccY9LkuM.s]
+        ignore line: [GNU assembler version 2.46.0 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.46.0.20260210]
+        ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/]
+        ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../:/lib/:/usr/lib/]
+        ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.']
+        ignore line: [Linking C executable cmTC_0e2a2]
+        ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0e2a2.dir/link.txt --verbose=1]
+        ignore line: [Using built-in specs.]
+        ignore line: [COLLECT_GCC=/usr/bin/cc]
+        ignore line: [COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper]
+        ignore line: [Target: x86_64-pc-linux-gnu]
+        ignore line: [Configured with: ../configure --prefix=/usr --disable-multilib --with-system-zlib --enable-default-pie --enable-default-ssp --enable-host-pie --disable-fixincludes --enable-languages=c c++ fortran go objc obj-c++ m2]
+        ignore line: [Thread model: posix]
+        ignore line: [Supported LTO compression algorithms: zlib zstd]
+        ignore line: [gcc version 15.1.0 (GCC) ]
+        ignore line: [COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/]
+        ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../:/lib/:/usr/lib/]
+        ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_0e2a2' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_0e2a2.']
+        link line: [ /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/collect2 -plugin /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccOkxPLh.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_0e2a2 /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../.. -L/lib -L/usr/lib -v CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o]
+          arg [/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/collect2] ==> ignore
+          arg [-plugin] ==> ignore
+          arg [/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so] ==> ignore
+          arg [-plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper] ==> ignore
+          arg [-plugin-opt=-fresolution=/tmp/ccOkxPLh.res] ==> ignore
+          arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+          arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+          arg [-plugin-opt=-pass-through=-lc] ==> ignore
+          arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+          arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+          arg [--eh-frame-hdr] ==> ignore
+          arg [-m] ==> ignore
+          arg [elf_x86_64] ==> ignore
+          arg [-dynamic-linker] ==> ignore
+          arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+          arg [-pie] ==> ignore
+          arg [-o] ==> ignore
+          arg [cmTC_0e2a2] ==> ignore
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o]
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o]
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib]
+          arg [-L/lib/../lib] ==> dir [/lib/../lib]
+          arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib]
+          arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../..] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../..]
+          arg [-L/lib] ==> dir [/lib]
+          arg [-L/usr/lib] ==> dir [/usr/lib]
+          arg [-v] ==> ignore
+          arg [CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o] ==> ignore
+          arg [-lgcc] ==> lib [gcc]
+          arg [--push-state] ==> ignore
+          arg [--as-needed] ==> ignore
+          arg [-lgcc_s] ==> lib [gcc_s]
+          arg [--pop-state] ==> ignore
+          arg [-lc] ==> lib [c]
+          arg [-lgcc] ==> lib [gcc]
+          arg [--push-state] ==> ignore
+          arg [--as-needed] ==> ignore
+          arg [-lgcc_s] ==> lib [gcc_s]
+          arg [--pop-state] ==> ignore
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o]
+          arg [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o]
+        ignore line: [collect2 version 15.1.0]
+        ignore line: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld -plugin /usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/x86_64-pc-linux-gnu/15.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccOkxPLh.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_0e2a2 /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../.. -L/lib -L/usr/lib -v CMakeFiles/cmTC_0e2a2.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o]
+        linker tool for 'C': /usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld
+        collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/Scrt1.o] ==> [/usr/lib/Scrt1.o]
+        collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crti.o] ==> [/usr/lib/crti.o]
+        collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib/crtn.o] ==> [/usr/lib/crtn.o]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib/../lib] ==> [/usr/x86_64-pc-linux-gnu/lib]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../lib] ==> [/usr/lib]
+        collapse library dir [/lib/../lib] ==> [/lib]
+        collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/lib] ==> [/usr/x86_64-pc-linux-gnu/lib]
+        collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../..] ==> [/usr/lib]
+        collapse library dir [/lib] ==> [/lib]
+        collapse library dir [/usr/lib] ==> [/usr/lib]
+        implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
+        implicit objs: [/usr/lib/Scrt1.o;/usr/lib/crti.o;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtbeginS.o;/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/crtendS.o;/usr/lib/crtn.o]
+        implicit dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0;/usr/x86_64-pc-linux-gnu/lib;/usr/lib;/lib]
+        implicit fwks: []
+      
+      
+  -
+    kind: "message-v1"
+    backtrace:
+      - "/usr/share/cmake-3.31/Modules/Internal/CMakeDetermineLinkerId.cmake:40 (message)"
+      - "/usr/share/cmake-3.31/Modules/CMakeDetermineCompilerABI.cmake:255 (cmake_determine_linker_id)"
+      - "/usr/share/cmake-3.31/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+      - "CMakeLists.txt:18 (project)"
+    message: |
+      Running the C compiler's linker: "/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.0/../../../../x86_64-pc-linux-gnu/bin/ld" "-v"
+      GNU ld (GNU Binutils) 2.46.0.20260210
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeCache.txt b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeCache.txt
new file mode 100644
index 0000000..d987b5d
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeCache.txt
@@ -0,0 +1,265 @@
+# This is the CMakeCache file.
+# For build in directory: /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin
+# It was generated by CMake: /usr/bin/cmake
+# You can edit this file to change values found and used by cmake.
+# If you do not want to change any of the values, simply exit the editor.
+# If you do want to change a value, simply edit, save, and exit the editor.
+# The syntax for the file is as follows:
+# KEY:TYPE=VALUE
+# KEY is the name of a variable in the cache.
+# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
+# VALUE is the current value for the KEY.
+
+########################
+# EXTERNAL cache entries
+########################
+
+//Choose the type of build, options are: None Debug Release RelWithDebInfo
+// MinSizeRel ...
+CMAKE_BUILD_TYPE:STRING=
+
+//Enable/Disable color output during build.
+CMAKE_COLOR_MAKEFILE:BOOL=ON
+
+//Flags used by the CXX compiler during all build types.
+CMAKE_CXX_FLAGS:STRING=
+
+//Flags used by the CXX compiler during DEBUG builds.
+CMAKE_CXX_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the CXX compiler during MINSIZEREL builds.
+CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the CXX compiler during RELEASE builds.
+CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the CXX compiler during RELWITHDEBINFO builds.
+CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Flags used by the linker during all build types.
+CMAKE_EXE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during DEBUG builds.
+CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during MINSIZEREL builds.
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during RELEASE builds.
+CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during RELWITHDEBINFO builds.
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Enable/Disable output of compile commands during generation.
+CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=
+
+//Value Computed by CMake.
+CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/pkgRedirects
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=/usr/local
+
+//No help, variable specified on the command line.
+CMAKE_INTERPROCEDURAL_OPTIMIZATION:UNINITIALIZED=ON
+
+//make program
+CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make
+
+//Flags used by the linker during the creation of modules during
+// all build types.
+CMAKE_MODULE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of modules during
+// DEBUG builds.
+CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of modules during
+// MINSIZEREL builds.
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of modules during
+// RELEASE builds.
+CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of modules during
+// RELWITHDEBINFO builds.
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Value Computed by CMake
+CMAKE_PROJECT_DESCRIPTION:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_NAME:STATIC=lto-test
+
+//Flags used by the linker during the creation of shared libraries
+// during all build types.
+CMAKE_SHARED_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during DEBUG builds.
+CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during MINSIZEREL builds.
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during RELEASE builds.
+CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during RELWITHDEBINFO builds.
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If set, runtime paths are not added when installing shared libraries,
+// but are added when building.
+CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
+
+//If set, runtime paths are not added when using shared libraries.
+CMAKE_SKIP_RPATH:BOOL=NO
+
+//Flags used by the linker during the creation of static libraries
+// during all build types.
+CMAKE_STATIC_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during DEBUG builds.
+CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during MINSIZEREL builds.
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during RELEASE builds.
+CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during RELWITHDEBINFO builds.
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If this value is on, makefiles will be generated without the
+// .SILENT directive, and all commands will be echoed to the console
+// during the make.  This is useful for debugging only. With Visual
+// Studio IDE projects all commands are done without /nologo.
+CMAKE_VERBOSE_MAKEFILE:BOOL=ON
+
+//Value Computed by CMake
+lto-test_BINARY_DIR:STATIC=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin
+
+//Value Computed by CMake
+lto-test_IS_TOP_LEVEL:STATIC=ON
+
+//Value Computed by CMake
+lto-test_SOURCE_DIR:STATIC=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin
+//Major version of cmake used to create the current loaded cache
+CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
+//Minor version of cmake used to create the current loaded cache
+CMAKE_CACHE_MINOR_VERSION:INTERNAL=31
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
+//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
+CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
+//ADVANCED property for variable: CMAKE_CXX_FLAGS
+CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
+CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
+CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
+CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
+CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//Path to cache edit program executable.
+CMAKE_EDIT_COMMAND:INTERNAL=/usr/bin/ccmake
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
+CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
+CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
+CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Unix Makefiles
+//Generator instance identifier.
+CMAKE_GENERATOR_INSTANCE:INTERNAL=
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src
+//Install .so files without execute permission.
+CMAKE_INSTALL_SO_NO_EXE:INTERNAL=0
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
+CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
+CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
+CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.31
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
+CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
+CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
+CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_RPATH
+CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
+CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
+CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
+CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+CMAKE_SUPPRESS_DEVELOPER_WARNINGS:INTERNAL=FALSE
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+//linker supports push/pop state
+_CMAKE_CXX_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE
+//linker supports push/pop state
+_CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/CMakeDirectoryInformation.cmake b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..7ebffb1
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile.cmake b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile.cmake
new file mode 100644
index 0000000..daec195
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile.cmake
@@ -0,0 +1,52 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+  "CMakeCache.txt"
+  "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/3.31.2/CMakeCXXCompiler.cmake"
+  "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/3.31.2/CMakeSystem.cmake"
+  "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt"
+  "/usr/share/cmake-3.31/Modules/CMakeCXXInformation.cmake"
+  "/usr/share/cmake-3.31/Modules/CMakeCommonLanguageInclude.cmake"
+  "/usr/share/cmake-3.31/Modules/CMakeGenericSystem.cmake"
+  "/usr/share/cmake-3.31/Modules/CMakeInitializeConfigs.cmake"
+  "/usr/share/cmake-3.31/Modules/CMakeLanguageInformation.cmake"
+  "/usr/share/cmake-3.31/Modules/CMakeSystemSpecificInformation.cmake"
+  "/usr/share/cmake-3.31/Modules/CMakeSystemSpecificInitialize.cmake"
+  "/usr/share/cmake-3.31/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
+  "/usr/share/cmake-3.31/Modules/Compiler/GNU-CXX.cmake"
+  "/usr/share/cmake-3.31/Modules/Compiler/GNU.cmake"
+  "/usr/share/cmake-3.31/Modules/Internal/CMakeCXXLinkerInformation.cmake"
+  "/usr/share/cmake-3.31/Modules/Internal/CMakeCommonLinkerInformation.cmake"
+  "/usr/share/cmake-3.31/Modules/Linker/GNU-CXX.cmake"
+  "/usr/share/cmake-3.31/Modules/Linker/GNU.cmake"
+  "/usr/share/cmake-3.31/Modules/Platform/Linker/GNU.cmake"
+  "/usr/share/cmake-3.31/Modules/Platform/Linker/Linux-GNU-CXX.cmake"
+  "/usr/share/cmake-3.31/Modules/Platform/Linker/Linux-GNU.cmake"
+  "/usr/share/cmake-3.31/Modules/Platform/Linux-GNU-CXX.cmake"
+  "/usr/share/cmake-3.31/Modules/Platform/Linux-GNU.cmake"
+  "/usr/share/cmake-3.31/Modules/Platform/Linux-Initialize.cmake"
+  "/usr/share/cmake-3.31/Modules/Platform/Linux.cmake"
+  "/usr/share/cmake-3.31/Modules/Platform/UnixPaths.cmake"
+  )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+  "Makefile"
+  "CMakeFiles/cmake.check_cache"
+  )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+  "CMakeFiles/CMakeDirectoryInformation.cmake"
+  )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+  "CMakeFiles/foo.dir/DependInfo.cmake"
+  "CMakeFiles/boo.dir/DependInfo.cmake"
+  )
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile2 b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile2
new file mode 100644
index 0000000..28761e1
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Makefile2
@@ -0,0 +1,158 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Produce verbose output by default.
+VERBOSE = 1
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin
+
+#=============================================================================
+# Directory level rules for the build root directory
+
+# The main recursive "all" target.
+all: CMakeFiles/foo.dir/all
+all: CMakeFiles/boo.dir/all
+.PHONY : all
+
+# The main recursive "codegen" target.
+codegen: CMakeFiles/foo.dir/codegen
+codegen: CMakeFiles/boo.dir/codegen
+.PHONY : codegen
+
+# The main recursive "preinstall" target.
+preinstall:
+.PHONY : preinstall
+
+# The main recursive "clean" target.
+clean: CMakeFiles/foo.dir/clean
+clean: CMakeFiles/boo.dir/clean
+.PHONY : clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/foo.dir
+
+# All Build rule for target.
+CMakeFiles/foo.dir/all:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/depend
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/build
+	@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=3,4 "Built target foo"
+.PHONY : CMakeFiles/foo.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/foo.dir/rule: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 2
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/foo.dir/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 0
+.PHONY : CMakeFiles/foo.dir/rule
+
+# Convenience name for target.
+foo: CMakeFiles/foo.dir/rule
+.PHONY : foo
+
+# codegen rule for target.
+CMakeFiles/foo.dir/codegen:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/codegen
+.PHONY : CMakeFiles/foo.dir/codegen
+
+# clean rule for target.
+CMakeFiles/foo.dir/clean:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/clean
+.PHONY : CMakeFiles/foo.dir/clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/boo.dir
+
+# All Build rule for target.
+CMakeFiles/boo.dir/all: CMakeFiles/foo.dir/all
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/depend
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/build
+	@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=1,2 "Built target boo"
+.PHONY : CMakeFiles/boo.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/boo.dir/rule: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 4
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/boo.dir/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 0
+.PHONY : CMakeFiles/boo.dir/rule
+
+# Convenience name for target.
+boo: CMakeFiles/boo.dir/rule
+.PHONY : boo
+
+# codegen rule for target.
+CMakeFiles/boo.dir/codegen:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/codegen
+.PHONY : CMakeFiles/boo.dir/codegen
+
+# clean rule for target.
+CMakeFiles/boo.dir/clean:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/clean
+.PHONY : CMakeFiles/boo.dir/clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/1 b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/1
new file mode 100644
index 0000000..7b4d68d
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/1
@@ -0,0 +1 @@
+empty
\ No newline at end of file
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/2 b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/2
new file mode 100644
index 0000000..7b4d68d
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/2
@@ -0,0 +1 @@
+empty
\ No newline at end of file
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/3 b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/3
new file mode 100644
index 0000000..7b4d68d
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/3
@@ -0,0 +1 @@
+empty
\ No newline at end of file
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/4 b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/4
new file mode 100644
index 0000000..7b4d68d
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/4
@@ -0,0 +1 @@
+empty
\ No newline at end of file
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/count.txt b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/count.txt
new file mode 100644
index 0000000..b8626c4
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/Progress/count.txt
@@ -0,0 +1 @@
+4
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/TargetDirectories.txt b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..77cb2fc
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,4 @@
+/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir
+/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir
+/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/edit_cache.dir
+/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/rebuild_cache.dir
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/CXX.includecache b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/CXX.includecache
new file mode 100644
index 0000000..91b1347
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/CXX.includecache
@@ -0,0 +1,10 @@
+#IncludeRegexLine: ^[ 	]*[#%][ 	]*(include|import)[ 	]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform: 
+
+/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/DependInfo.cmake b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/DependInfo.cmake
new file mode 100644
index 0000000..0931868
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/DependInfo.cmake
@@ -0,0 +1,32 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+  "CXX"
+  )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+  "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp" "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/main.cpp.o"
+  )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+  )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+  )
+
+# Targets to which this target links which contain Fortran sources.
+set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES
+  )
+
+# Targets to which this target links which contain Fortran sources.
+set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES
+  )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/build.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/build.make
new file mode 100644
index 0000000..680442a
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/build.make
@@ -0,0 +1,116 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Produce verbose output by default.
+VERBOSE = 1
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin
+
+# Include any dependencies generated for this target.
+include CMakeFiles/boo.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include CMakeFiles/boo.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/boo.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/boo.dir/flags.make
+
+CMakeFiles/boo.dir/codegen:
+.PHONY : CMakeFiles/boo.dir/codegen
+
+CMakeFiles/boo.dir/main.cpp.o: CMakeFiles/boo.dir/flags.make
+CMakeFiles/boo.dir/main.cpp.o: /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp
+	@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/boo.dir/main.cpp.o"
+	/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/boo.dir/main.cpp.o -c /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp
+
+CMakeFiles/boo.dir/main.cpp.i: cmake_force
+	@echo "Preprocessing CXX source to CMakeFiles/boo.dir/main.cpp.i"
+	/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp > CMakeFiles/boo.dir/main.cpp.i
+
+CMakeFiles/boo.dir/main.cpp.s: cmake_force
+	@echo "Compiling CXX source to assembly CMakeFiles/boo.dir/main.cpp.s"
+	/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp -o CMakeFiles/boo.dir/main.cpp.s
+
+# Object files for target boo
+boo_OBJECTS = \
+"CMakeFiles/boo.dir/main.cpp.o"
+
+# External object files for target boo
+boo_EXTERNAL_OBJECTS =
+
+boo: CMakeFiles/boo.dir/main.cpp.o
+boo: CMakeFiles/boo.dir/build.make
+boo: libfoo.a
+boo: CMakeFiles/boo.dir/link.txt
+	@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable boo"
+	$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/boo.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+CMakeFiles/boo.dir/build: boo
+.PHONY : CMakeFiles/boo.dir/build
+
+CMakeFiles/boo.dir/clean:
+	$(CMAKE_COMMAND) -P CMakeFiles/boo.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/boo.dir/clean
+
+CMakeFiles/boo.dir/depend:
+	cd /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/DependInfo.cmake
+.PHONY : CMakeFiles/boo.dir/depend
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/cmake_clean.cmake b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/cmake_clean.cmake
new file mode 100644
index 0000000..5527b21
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/cmake_clean.cmake
@@ -0,0 +1,10 @@
+file(REMOVE_RECURSE
+  "CMakeFiles/boo.dir/main.cpp.o"
+  "boo"
+  "boo.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+  include(CMakeFiles/boo.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/compiler_depend.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/compiler_depend.make
new file mode 100644
index 0000000..8226f71
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for boo.
+# This may be replaced when dependencies are built.
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/compiler_depend.ts b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/compiler_depend.ts
new file mode 100644
index 0000000..f075664
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for boo.
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.internal b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.internal
new file mode 100644
index 0000000..13a9111
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.internal
@@ -0,0 +1,5 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+CMakeFiles/boo.dir/main.cpp.o
+ /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.make
new file mode 100644
index 0000000..82b261e
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/depend.make
@@ -0,0 +1,5 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+CMakeFiles/boo.dir/main.cpp.o: \
+ /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/flags.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/flags.make
new file mode 100644
index 0000000..2761032
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+# compile CXX with /usr/bin/c++
+CXX_DEFINES = 
+
+CXX_INCLUDES = 
+
+CXX_FLAGS = -flto=auto -fno-fat-lto-objects
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/link.txt b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/link.txt
new file mode 100644
index 0000000..181fda5
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++ -flto=auto -fno-fat-lto-objects CMakeFiles/boo.dir/main.cpp.o -o boo  libfoo.a
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/main.cpp.o b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/main.cpp.o
new file mode 100644
index 0000000..d82d72e
Binary files /dev/null and b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/main.cpp.o differ
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/progress.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/progress.make
new file mode 100644
index 0000000..abadeb0
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/boo.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/cmake.check_cache b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/CXX.includecache b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/CXX.includecache
new file mode 100644
index 0000000..dd59102
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/CXX.includecache
@@ -0,0 +1,10 @@
+#IncludeRegexLine: ^[ 	]*[#%][ 	]*(include|import)[ 	]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform: 
+
+/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake
new file mode 100644
index 0000000..9aa7098
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake
@@ -0,0 +1,32 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+  "CXX"
+  )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+  "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp" "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/foo.cpp.o"
+  )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+  )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+  )
+
+# Targets to which this target links which contain Fortran sources.
+set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES
+  )
+
+# Targets to which this target links which contain Fortran sources.
+set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES
+  )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/build.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/build.make
new file mode 100644
index 0000000..aba1b60
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/build.make
@@ -0,0 +1,116 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Produce verbose output by default.
+VERBOSE = 1
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin
+
+# Include any dependencies generated for this target.
+include CMakeFiles/foo.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include CMakeFiles/foo.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/foo.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/foo.dir/flags.make
+
+CMakeFiles/foo.dir/codegen:
+.PHONY : CMakeFiles/foo.dir/codegen
+
+CMakeFiles/foo.dir/foo.cpp.o: CMakeFiles/foo.dir/flags.make
+CMakeFiles/foo.dir/foo.cpp.o: /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp
+	@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/foo.dir/foo.cpp.o"
+	/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/foo.dir/foo.cpp.o -c /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp
+
+CMakeFiles/foo.dir/foo.cpp.i: cmake_force
+	@echo "Preprocessing CXX source to CMakeFiles/foo.dir/foo.cpp.i"
+	/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp > CMakeFiles/foo.dir/foo.cpp.i
+
+CMakeFiles/foo.dir/foo.cpp.s: cmake_force
+	@echo "Compiling CXX source to assembly CMakeFiles/foo.dir/foo.cpp.s"
+	/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp -o CMakeFiles/foo.dir/foo.cpp.s
+
+# Object files for target foo
+foo_OBJECTS = \
+"CMakeFiles/foo.dir/foo.cpp.o"
+
+# External object files for target foo
+foo_EXTERNAL_OBJECTS =
+
+libfoo.a: CMakeFiles/foo.dir/foo.cpp.o
+libfoo.a: CMakeFiles/foo.dir/build.make
+libfoo.a: CMakeFiles/foo.dir/link.txt
+	@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX static library libfoo.a"
+	$(CMAKE_COMMAND) -P CMakeFiles/foo.dir/cmake_clean_target.cmake
+	$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/foo.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+CMakeFiles/foo.dir/build: libfoo.a
+.PHONY : CMakeFiles/foo.dir/build
+
+CMakeFiles/foo.dir/clean:
+	$(CMAKE_COMMAND) -P CMakeFiles/foo.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/foo.dir/clean
+
+CMakeFiles/foo.dir/depend:
+	cd /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/DependInfo.cmake
+.PHONY : CMakeFiles/foo.dir/depend
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean.cmake b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean.cmake
new file mode 100644
index 0000000..380ebe4
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean.cmake
@@ -0,0 +1,10 @@
+file(REMOVE_RECURSE
+  "CMakeFiles/foo.dir/foo.cpp.o"
+  "libfoo.a"
+  "libfoo.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+  include(CMakeFiles/foo.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake
new file mode 100644
index 0000000..455c772
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+  "libfoo.a"
+)
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/compiler_depend.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/compiler_depend.make
new file mode 100644
index 0000000..2c14480
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for foo.
+# This may be replaced when dependencies are built.
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/compiler_depend.ts b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/compiler_depend.ts
new file mode 100644
index 0000000..aa09be7
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for foo.
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.internal b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.internal
new file mode 100644
index 0000000..f9af1ea
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.internal
@@ -0,0 +1,5 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+CMakeFiles/foo.dir/foo.cpp.o
+ /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.make
new file mode 100644
index 0000000..f9bda5f
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/depend.make
@@ -0,0 +1,5 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+CMakeFiles/foo.dir/foo.cpp.o: \
+ /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/flags.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/flags.make
new file mode 100644
index 0000000..2761032
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+# compile CXX with /usr/bin/c++
+CXX_DEFINES = 
+
+CXX_INCLUDES = 
+
+CXX_FLAGS = -flto=auto -fno-fat-lto-objects
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/foo.cpp.o b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/foo.cpp.o
new file mode 100644
index 0000000..58074aa
Binary files /dev/null and b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/foo.cpp.o differ
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/link.txt b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/link.txt
new file mode 100644
index 0000000..47fe813
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/link.txt
@@ -0,0 +1,2 @@
+"/usr/bin/gcc-ar" qc libfoo.a CMakeFiles/foo.dir/foo.cpp.o
+"/usr/bin/gcc-ranlib" libfoo.a
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/progress.make b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/progress.make
new file mode 100644
index 0000000..8c8fb6f
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/foo.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 3
+CMAKE_PROGRESS_2 = 4
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/progress.marks b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/progress.marks
new file mode 100644
index 0000000..b8626c4
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+4
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/Makefile b/CMakeFiles/_CMakeLTOTest-CXX/bin/Makefile
new file mode 100644
index 0000000..ff318b0
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/Makefile
@@ -0,0 +1,231 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.31
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Produce verbose output by default.
+VERBOSE = 1
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+	@echo "Running CMake cache editor..."
+	/usr/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+	@echo "Running CMake to regenerate build system..."
+	/usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin//CMakeFiles/progress.marks
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/CMakeFiles 0
+.PHONY : all
+
+# The main codegen target
+codegen: cmake_check_build_system
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 codegen
+	@echo "Finished generating code"
+.PHONY : codegen
+
+# The main clean target
+clean:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+	$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named foo
+
+# Build rule for target.
+foo: cmake_check_build_system
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 foo
+.PHONY : foo
+
+# fast build rule for target.
+foo/fast:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/build
+.PHONY : foo/fast
+
+#=============================================================================
+# Target rules for targets named boo
+
+# Build rule for target.
+boo: cmake_check_build_system
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 boo
+.PHONY : boo
+
+# fast build rule for target.
+boo/fast:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/build
+.PHONY : boo/fast
+
+foo.o: foo.cpp.o
+.PHONY : foo.o
+
+# target to build an object file
+foo.cpp.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.cpp.o
+.PHONY : foo.cpp.o
+
+foo.i: foo.cpp.i
+.PHONY : foo.i
+
+# target to preprocess a source file
+foo.cpp.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.cpp.i
+.PHONY : foo.cpp.i
+
+foo.s: foo.cpp.s
+.PHONY : foo.s
+
+# target to generate assembly for a file
+foo.cpp.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/foo.dir/build.make CMakeFiles/foo.dir/foo.cpp.s
+.PHONY : foo.cpp.s
+
+main.o: main.cpp.o
+.PHONY : main.o
+
+# target to build an object file
+main.cpp.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/main.cpp.o
+.PHONY : main.cpp.o
+
+main.i: main.cpp.i
+.PHONY : main.i
+
+# target to preprocess a source file
+main.cpp.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/main.cpp.i
+.PHONY : main.cpp.i
+
+main.s: main.cpp.s
+.PHONY : main.s
+
+# target to generate assembly for a file
+main.cpp.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/boo.dir/build.make CMakeFiles/boo.dir/main.cpp.s
+.PHONY : main.cpp.s
+
+# Help Target
+help:
+	@echo "The following are some of the valid targets for this Makefile:"
+	@echo "... all (the default if no target is provided)"
+	@echo "... clean"
+	@echo "... depend"
+	@echo "... edit_cache"
+	@echo "... rebuild_cache"
+	@echo "... boo"
+	@echo "... foo"
+	@echo "... foo.o"
+	@echo "... foo.i"
+	@echo "... foo.s"
+	@echo "... main.o"
+	@echo "... main.i"
+	@echo "... main.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/cmake_install.cmake b/CMakeFiles/_CMakeLTOTest-CXX/bin/cmake_install.cmake
new file mode 100644
index 0000000..3400388
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/bin/cmake_install.cmake
@@ -0,0 +1,61 @@
+# Install script for directory: /home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/src
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+  set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+  if(BUILD_TYPE)
+    string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+  else()
+    set(CMAKE_INSTALL_CONFIG_NAME "")
+  endif()
+  message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+  if(COMPONENT)
+    message(STATUS "Install component: \"${COMPONENT}\"")
+    set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+  else()
+    set(CMAKE_INSTALL_COMPONENT)
+  endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+  set(CMAKE_INSTALL_SO_NO_EXE "0")
+endif()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+  set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+       "${CMAKE_INSTALL_MANIFEST_FILES}")
+if(CMAKE_INSTALL_LOCAL_ONLY)
+  file(WRITE "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/install_local_manifest.txt"
+     "${CMAKE_INSTALL_MANIFEST_CONTENT}")
+endif()
+if(CMAKE_INSTALL_COMPONENT)
+  if(CMAKE_INSTALL_COMPONENT MATCHES "^[a-zA-Z0-9_.+-]+$")
+    set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+  else()
+    string(MD5 CMAKE_INST_COMP_HASH "${CMAKE_INSTALL_COMPONENT}")
+    set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INST_COMP_HASH}.txt")
+    unset(CMAKE_INST_COMP_HASH)
+  endif()
+else()
+  set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+  file(WRITE "/home/n76310/Documents/Studium/HsNr/26_SS/CPP/sdl_runtime_compiler/CMakeFiles/_CMakeLTOTest-CXX/bin/${CMAKE_INSTALL_MANIFEST}"
+     "${CMAKE_INSTALL_MANIFEST_CONTENT}")
+endif()
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/bin/libfoo.a b/CMakeFiles/_CMakeLTOTest-CXX/bin/libfoo.a
new file mode 100644
index 0000000..8f53f48
Binary files /dev/null and b/CMakeFiles/_CMakeLTOTest-CXX/bin/libfoo.a differ
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt b/CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt
new file mode 100644
index 0000000..be67bed
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/src/CMakeLists.txt
@@ -0,0 +1,8 @@
+cmake_minimum_required(VERSION "3.31.2")
+project("lto-test" LANGUAGES CXX)
+
+cmake_policy(SET CMP0069 NEW)
+
+add_library(foo foo.cpp)
+add_executable(boo main.cpp)
+target_link_libraries(boo PUBLIC foo)
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp b/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp
new file mode 100644
index 0000000..1e56597
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/src/foo.cpp
@@ -0,0 +1,4 @@
+int foo()
+{
+  return 0x42;
+}
diff --git a/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp b/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp
new file mode 100644
index 0000000..5be0864
--- /dev/null
+++ b/CMakeFiles/_CMakeLTOTest-CXX/src/main.cpp
@@ -0,0 +1,6 @@
+int foo();
+
+int main()
+{
+  return foo();
+}
diff --git a/benchmark/bench_ai.cpp b/benchmark/bench_ai.cpp
index afbf0ee..770eda1 100644
--- a/benchmark/bench_ai.cpp
+++ b/benchmark/bench_ai.cpp
@@ -6,6 +6,9 @@
 #include "entities/player.hpp"
 #include "text/token.hpp"
 
+namespace
+Nimbin
+{
 // What's the per-frame cost of my AI system, and does it scale with the number of words?
 
 
@@ -39,3 +42,5 @@ static void BM_WordAiUpdate(benchmark::State& state)
     state.SetLabel("N=" + std::to_string(N));
 }
 BENCHMARK(BM_WordAiUpdate)->Arg(10)->Arg(50)->Arg(100)->Arg(200);
+
+} // namespace Nimbin
diff --git a/benchmark/bench_collision.cpp b/benchmark/bench_collision.cpp
index f9203d8..e021ae0 100644
--- a/benchmark/bench_collision.cpp
+++ b/benchmark/bench_collision.cpp
@@ -6,6 +6,9 @@
 #include "utils/globals.hpp"
 #include "utils/math.hpp"
 
+namespace
+Nimbin
+{
 
 // How does collision cost scale with the number of objects?
 
@@ -106,3 +109,5 @@ static void BM_PairwiseOverlap_Scaling(benchmark::State& state)
     state.SetLabel("N=" + std::to_string(N) + " pairs=" + std::to_string(N*(N-1)/2));
 }
 BENCHMARK(BM_PairwiseOverlap_Scaling)->Arg(10)->Arg(25)->Arg(50)->Arg(100)->Arg(200);
+
+} // namespace Nimbin
diff --git a/benchmark/bench_physics.cpp b/benchmark/bench_physics.cpp
index c9ec5a5..6db2fc6 100644
--- a/benchmark/bench_physics.cpp
+++ b/benchmark/bench_physics.cpp
@@ -6,6 +6,9 @@
 
 // Does my physics update scale linearly or quadratically with object count?
 
+namespace
+Nimbin
+{
 
 static void BM_PhysicsUpdateObjects(benchmark::State& state)
 {
@@ -36,3 +39,5 @@ static void BM_PhysicsUpdateObjects(benchmark::State& state)
     state.SetLabel("N=" + std::to_string(N));
 }
 BENCHMARK(BM_PhysicsUpdateObjects)->Arg(10)->Arg(50)->Arg(100)->Arg(200);
+
+} // namespace Nimbin
diff --git a/benchmark/bench_text_mesh.cpp b/benchmark/bench_text_mesh.cpp
index 5accf32..576fa05 100644
--- a/benchmark/bench_text_mesh.cpp
+++ b/benchmark/bench_text_mesh.cpp
@@ -3,6 +3,9 @@
 
 #include "text/mesh.hpp"
 
+namespace
+Nimbin
+{
 static const std::string FONT = "/usr/share/fonts/dejavu/DejaVuSansMono.ttf";
 
 // Single short word — fastest case
@@ -69,3 +72,5 @@ static void BM_BuildTextMesh_Depth(benchmark::State& state)
     state.SetLabel("depth=" + std::to_string(depth));
 }
 BENCHMARK(BM_BuildTextMesh_Depth)->Arg(20)->Arg(60)->Arg(140);
+
+} // namespace Nimbin
diff --git a/src/core/game.cpp b/src/core/game.cpp
index dcea0f0..1a87d3b 100644
--- a/src/core/game.cpp
+++ b/src/core/game.cpp
@@ -10,6 +10,9 @@
 #include "systems/physics_system.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 Game::~Game() = default;
 
@@ -82,3 +85,5 @@ Game::shutdown()
 {
     SDL_Log("Power off!");
 }
+
+} // namespace Nimbin
diff --git a/src/core/game.hpp b/src/core/game.hpp
index 9112de0..2d7b872 100644
--- a/src/core/game.hpp
+++ b/src/core/game.hpp
@@ -8,6 +8,9 @@
 #include "states/istate.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 class Game
 {
@@ -25,3 +28,5 @@ public:
     void render   ();
     void shutdown ();
 };
+
+} // namespace Nimbin
diff --git a/src/core/main.cpp b/src/core/main.cpp
index afa5989..02a1cc2 100644
--- a/src/core/main.cpp
+++ b/src/core/main.cpp
@@ -18,7 +18,7 @@ int main()
         return 1;
     }
 
-    Game game;
+    Nimbin::Game game;
     if (!game.init()) {
         SDL_Quit();
         return 1;
diff --git a/src/entities/camera.hpp b/src/entities/camera.hpp
index ac1030b..6155c77 100644
--- a/src/entities/camera.hpp
+++ b/src/entities/camera.hpp
@@ -6,6 +6,10 @@
 #include "utils/config.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
+
 struct Camera
 {
     Vec3 pos  {};
@@ -38,3 +42,5 @@ struct Camera
         };
     }
 };
+
+} // namespace Nimbin
diff --git a/src/entities/game_object.hpp b/src/entities/game_object.hpp
index 53c6da8..3592b95 100644
--- a/src/entities/game_object.hpp
+++ b/src/entities/game_object.hpp
@@ -5,6 +5,9 @@
 #include "utils/globals.hpp"
 #include "utils/light.hpp"
 
+namespace
+Nimbin
+{
 class Camera;
 class GlRenderer;
 
@@ -128,3 +131,5 @@ struct GameObject
         return { pos.x + ex, pos.y + shape.half_extents.y, pos.z + ez };
     }
 };
+
+} // namespace Nimbin
diff --git a/src/entities/plate.cpp b/src/entities/plate.cpp
index dd4e308..58aae05 100644
--- a/src/entities/plate.cpp
+++ b/src/entities/plate.cpp
@@ -4,6 +4,9 @@
 #include "plate.hpp"
 #include "rendering/gl_renderer.hpp"
 
+namespace
+Nimbin
+{
 
 void
 Plate::tick(double dt)
@@ -54,3 +57,5 @@ Plate::draw(GlRenderer& gl, const Camera& cam, const Light& light) const
     gl.set_Color    (wire_color.r, wire_color.g, wire_color.b);
     gl.draw_Box     (half_x, half_y, half_z);
 }
+
+} // namespace Nimbin
diff --git a/src/entities/plate.hpp b/src/entities/plate.hpp
index 0868880..b9b8eeb 100644
--- a/src/entities/plate.hpp
+++ b/src/entities/plate.hpp
@@ -6,6 +6,10 @@
 #include "utils/light.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
+
 class Camera;
 class GlRenderer;
 
@@ -36,3 +40,5 @@ struct Plate final : public SolidBox
     void tick(double dt);
     void draw(GlRenderer& gl, const Camera& cam, const Light& light) const override;
 };
+
+} // namespace Nimbin
diff --git a/src/entities/player.cpp b/src/entities/player.cpp
index c4d205b..3e49d08 100644
--- a/src/entities/player.cpp
+++ b/src/entities/player.cpp
@@ -1,6 +1,9 @@
 #include "entities/player.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 Player::Player()
        : pos   {8.0, 0.0, 8.0},
@@ -60,3 +63,5 @@ Player::compute_Movement(const FrameInput& input)
         _acc_z = ConfigPhysics::player_move_accel * (-sin*dir_x + cos*dir_z) * inv;
     }
 }
+
+} // namespace Nimbin
diff --git a/src/entities/player.hpp b/src/entities/player.hpp
index 1c4fec1..8087eb6 100644
--- a/src/entities/player.hpp
+++ b/src/entities/player.hpp
@@ -5,6 +5,9 @@
 #include "systems/input_system.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 struct PlayerCollision
 {
@@ -42,3 +45,5 @@ public:
     void   respawn         (const Vec3& spawn_pos);
 };
 
+
+} // namespace Nimbin
diff --git a/src/entities/pult.cpp b/src/entities/pult.cpp
index a0624af..7af3c0b 100644
--- a/src/entities/pult.cpp
+++ b/src/entities/pult.cpp
@@ -2,6 +2,9 @@
 #include "pult.hpp"
 #include "rendering/gl_renderer.hpp"
 
+namespace
+Nimbin
+{
 
 ///////////////////////////
 // PultButton
@@ -95,3 +98,5 @@ Pult::draw(GlRenderer& gl, const Camera& cam, const Light& light) const
     for (const PultButton* b : buttons)
         b->draw(gl, cam, light);
 }
+
+} // namespace Nimbin
diff --git a/src/entities/pult.hpp b/src/entities/pult.hpp
index 63fc6a8..007ec80 100644
--- a/src/entities/pult.hpp
+++ b/src/entities/pult.hpp
@@ -7,6 +7,9 @@
 #include "utils/light.hpp"
 #include "text/handler.hpp"
 
+namespace
+Nimbin
+{
 class Camera;
 class GlRenderer;
 
@@ -61,3 +64,5 @@ struct Pult : public SolidBox
     void tick(double dt);
     void draw(GlRenderer& gl, const Camera& cam, const Light& light) const override;
 };
+
+} // namespace Nimbin
diff --git a/src/entities/solid_box.hpp b/src/entities/solid_box.hpp
index dc91f5b..fbbb810 100644
--- a/src/entities/solid_box.hpp
+++ b/src/entities/solid_box.hpp
@@ -5,6 +5,10 @@
 #include "rendering/gl_renderer.hpp"
 #include "utils/light.hpp"
 
+namespace
+Nimbin
+{
+
 struct SolidBox : public GameObject
 {
     SDL_FColor fill_color { 0.55f, 0.55f, 0.75f, 1.0f };
@@ -43,3 +47,5 @@ struct SolidBox : public GameObject
         gl.draw_Box     (hx, hy, hz);
     }
 };
+
+} // namespace Nimbin
diff --git a/src/entities/world.cpp b/src/entities/world.cpp
index 2dc668e..762a22d 100644
--- a/src/entities/world.cpp
+++ b/src/entities/world.cpp
@@ -1,6 +1,9 @@
 #include "entities/world.hpp"
 #include "utils/frame_profiler.hpp"
 
+namespace
+Nimbin
+{
 
 World::World()
 {
@@ -69,3 +72,5 @@ World::draw(GlRenderer& gl, const Camera& camera, const Light& light) const
 Vec3
 World::get_SpawnPoint() const
 { return {0.0, 2.0, 0.0}; }
+
+} // namespace Nimbin
diff --git a/src/entities/world.hpp b/src/entities/world.hpp
index 8d27f6b..cdb02cb 100644
--- a/src/entities/world.hpp
+++ b/src/entities/world.hpp
@@ -8,6 +8,9 @@
 #include "rendering/gl_renderer.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 struct SweepResult
 {
@@ -43,3 +46,5 @@ public:
     inline static T
          get_BoxScale() { return static_cast<T>(ConfigGame::world_box_scale); }
 };
+
+} // namespace Nimbin
diff --git a/src/levels/director.cpp b/src/levels/director.cpp
index 2dbfb2e..cbe57c3 100644
--- a/src/levels/director.cpp
+++ b/src/levels/director.cpp
@@ -15,6 +15,9 @@
 #include "text/text.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 namespace
 Level
@@ -244,3 +247,5 @@ Director::try_Advance(GameContext& ctx, double dt,
 
 
 } // namespace Level
+
+} // namespace Nimbin
diff --git a/src/levels/director.hpp b/src/levels/director.hpp
index 3cc7c43..5324b35 100644
--- a/src/levels/director.hpp
+++ b/src/levels/director.hpp
@@ -10,6 +10,9 @@
 #include "levels/progression.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 class  CelebrationSystem;
 class  HintSystem;
@@ -105,3 +108,5 @@ public:
 
 
 } // namespace Level
+
+} // namespace Nimbin
diff --git a/src/levels/goal.cpp b/src/levels/goal.cpp
index 06fb066..26e3164 100644
--- a/src/levels/goal.cpp
+++ b/src/levels/goal.cpp
@@ -3,6 +3,9 @@
 #include "goal.hpp"
 #include "level.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Goal {
 
@@ -71,3 +74,5 @@ is_Satisfied(const Type& g, const Context& ctx)
 
 
 } // namespace Type
+
+} // namespace Nimbin
diff --git a/src/levels/goal.hpp b/src/levels/goal.hpp
index de5137e..69f24bb 100644
--- a/src/levels/goal.hpp
+++ b/src/levels/goal.hpp
@@ -6,6 +6,9 @@
 #include "entities/pult.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Goal
 {
@@ -58,3 +61,5 @@ struct Context {
 bool is_Satisfied(const Type& g, const Context& ctx);
 
 } // namespace Goal
+
+} // namespace Nimbin
diff --git a/src/levels/level.cpp b/src/levels/level.cpp
index 2a89b47..6be03de 100644
--- a/src/levels/level.cpp
+++ b/src/levels/level.cpp
@@ -2,6 +2,9 @@
 
 #include "level.hpp"
 
+namespace
+Nimbin
+{
 namespace
 Level
 {
@@ -47,3 +50,4 @@ contains_Pattern(const std::string& haystack, const std::string& needle)
 
 } // namespace Check
 } // namespace Level
+} // namespace Nimbin
diff --git a/src/levels/level.hpp b/src/levels/level.hpp
index c0cb580..6007a90 100644
--- a/src/levels/level.hpp
+++ b/src/levels/level.hpp
@@ -6,6 +6,9 @@
 #include "scene.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Level
 {
@@ -74,3 +77,5 @@ namespace Level
         { return levels.size(); }
 
 }
+
+} // namespace Nimbin
diff --git a/src/levels/level/char_copy.cpp b/src/levels/level/char_copy.cpp
index d6ba282..9df43d8 100644
--- a/src/levels/level/char_copy.cpp
+++ b/src/levels/level/char_copy.cpp
@@ -1,6 +1,9 @@
 #include "levels/level.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 Level::Data
 Level::build_CharCopy()
@@ -183,3 +186,5 @@ Place all three lines BEFORE the existing return.)",
         .dynamic_lib = false,
     };
 }
+
+} // namespace Nimbin
diff --git a/src/levels/level/sandbox.cpp b/src/levels/level/sandbox.cpp
index 821c922..65b37be 100644
--- a/src/levels/level/sandbox.cpp
+++ b/src/levels/level/sandbox.cpp
@@ -1,6 +1,9 @@
 #include "levels/level.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 Level::Data
 Level::build_Sandbox()
@@ -35,3 +38,5 @@ Then press the Compile pult. Edit and recompile freely.)",
         .dynamic_lib = true,
     };
 }
+
+} // namespace Nimbin
diff --git a/src/levels/level/tutorial.cpp b/src/levels/level/tutorial.cpp
index af4bab0..3b42afa 100644
--- a/src/levels/level/tutorial.cpp
+++ b/src/levels/level/tutorial.cpp
@@ -2,6 +2,9 @@
 #include "levels/level.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 Level::Data
 Level::build_Tutorial()
@@ -24,7 +27,7 @@ Level::build_Tutorial()
                     .words = {},
                 },
                 .goal    = Goal::ReachPlate{ "" },
-                .hint    = "Jump up the steps to the plate",
+                .hint    = "Jump on top of the green hovering plate",
                 .details = R"(Press SPACE to jump.
 
 Use [wasd] to walk.
@@ -74,11 +77,9 @@ Four walls surround you:
                     },
                 },
                 .goal    = Goal::CollectWord{ "hello" },
-                .hint    = "Walk into the floating word and press 'e'",
-                .details = R"(Words float in the air.
-
-Walk up to "hello" and press 'e' to pick it up.
-Picked words trail in front of you as you move.
+                .hint    = "Walk to the floating word and press 'e'",
+                .details = R"(Walk next to "hello" and press 'e' to pick it up.
+Picked up words will align in front of you.
 
 > hold SHIFT to free-look without turning your body.")
 )",
@@ -103,7 +104,7 @@ Picked words trail in front of you as you move.
                     Goal::CollectWord{ "e"    },
                     Goal::CollectWord{ "pressed" },
                 }},
-                .hint    = "Keep 'e' pressed and pick up all words.",
+                .hint    = "Keep 'e' pressed to pick up all words.",
                 .details = R"(You can carry several words at once.
 
 Collect "press", "any" and "key" with 'e'.
@@ -329,3 +330,5 @@ Jump onto the plate to start the first real level:
         .desc = "Learn the controls and the code-building loop.",
     };
 }
+
+} // namespace Nimbin
diff --git a/src/levels/progression.cpp b/src/levels/progression.cpp
index 5764027..7fa037f 100644
--- a/src/levels/progression.cpp
+++ b/src/levels/progression.cpp
@@ -1,5 +1,8 @@
 #include "progression.hpp"
 
+namespace
+Nimbin
+{
 
 namespace
 Level
@@ -29,3 +32,5 @@ Progression::get_GarantsForStep() const
 
 
 } // namespace
+
+} // namespace Nimbin
diff --git a/src/levels/progression.hpp b/src/levels/progression.hpp
index 8bcd1df..ffe5fe9 100644
--- a/src/levels/progression.hpp
+++ b/src/levels/progression.hpp
@@ -2,6 +2,9 @@
 
 #include "levels/level.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Level
 {
@@ -31,3 +34,5 @@ public:
 
 
 } // namespace
+
+} // namespace Nimbin
diff --git a/src/levels/scene.hpp b/src/levels/scene.hpp
index 6987cfb..e1072f0 100644
--- a/src/levels/scene.hpp
+++ b/src/levels/scene.hpp
@@ -6,6 +6,9 @@
 #include "text/token.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Scene
 {
@@ -62,3 +65,5 @@ struct Data
 };
 
 } // namespace Scene
+
+} // namespace Nimbin
diff --git a/src/rendering/floor_surface.cpp b/src/rendering/floor_surface.cpp
index 9ce4685..8e1a596 100644
--- a/src/rendering/floor_surface.cpp
+++ b/src/rendering/floor_surface.cpp
@@ -3,6 +3,9 @@
 #include "entities/camera.hpp"
 #include "floor_surface.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Floor
 {
@@ -83,3 +86,5 @@ Mandelbrot::draw(GlRenderer& gl, const Camera& cam, const Light& light) const
 }
 
 } // namespace Floor
+
+} // namespace Nimbin
diff --git a/src/rendering/floor_surface.hpp b/src/rendering/floor_surface.hpp
index aed221c..f641ea7 100644
--- a/src/rendering/floor_surface.hpp
+++ b/src/rendering/floor_surface.hpp
@@ -6,6 +6,9 @@
 #include "utils/globals.hpp"
 #include "utils/light.hpp"
 
+namespace
+Nimbin
+{
 
 class Camera;
 
@@ -42,3 +45,5 @@ public:
 };
 
 } // namespace Floor
+
+} // namespace Nimbin
diff --git a/src/rendering/gl_renderer.cpp b/src/rendering/gl_renderer.cpp
index be55da4..9a6bf4d 100644
--- a/src/rendering/gl_renderer.cpp
+++ b/src/rendering/gl_renderer.cpp
@@ -4,6 +4,10 @@
 #include "rendering/gl_renderer.hpp"
 #include "utils/frame_profiler.hpp"
 
+namespace
+Nimbin
+{
+
 // ─────────────────────────────────────────────────────────────────────────────
 // GLSL shaders
 // ─────────────────────────────────────────────────────────────────────────────
@@ -1291,3 +1295,5 @@ GlRenderer::resize_FBO_(int w, int h)
     create_FBO_(w, h);
 }
 
+
+} // namespace Nimbin
diff --git a/src/rendering/gl_renderer.hpp b/src/rendering/gl_renderer.hpp
index f67d8bd..f2ace19 100644
--- a/src/rendering/gl_renderer.hpp
+++ b/src/rendering/gl_renderer.hpp
@@ -7,6 +7,9 @@
 #include "utils/globals.hpp"
 #include "utils/light.hpp"
 
+namespace
+Nimbin
+{
 
 struct Mat4
 {
@@ -185,3 +188,5 @@ public:
                           const int*   indices, int index_count,
                           float r, float g, float b, float strength);
 };
+
+} // namespace Nimbin
diff --git a/src/rendering/wall_surfaces.cpp b/src/rendering/wall_surfaces.cpp
index f92667f..201e489 100644
--- a/src/rendering/wall_surfaces.cpp
+++ b/src/rendering/wall_surfaces.cpp
@@ -7,6 +7,9 @@
 #include "utils/math.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 
 namespace {
@@ -148,3 +151,5 @@ Surfaces::draw(GlRenderer& gl, const Camera& cam, const Light& light) const
 
 
 } // Wall
+
+} // namespace Nimbin
diff --git a/src/states/game_context.cpp b/src/states/game_context.cpp
index f83e5ba..0e829da 100644
--- a/src/states/game_context.cpp
+++ b/src/states/game_context.cpp
@@ -2,6 +2,9 @@
 
 #include "text/token.hpp"
 #include "states/game_context.hpp"
+namespace
+Nimbin
+{
 
 
 void
@@ -13,3 +16,5 @@ GameContext::drop_WordToFloor(Text::TokenPtr word, const Vec3& vel)
     word->body.vel  = vel;
     words.push_back(std::move(word));
 }
+
+} // namespace Nimbin
diff --git a/src/states/game_context.hpp b/src/states/game_context.hpp
index 7d39d22..94003ec 100644
--- a/src/states/game_context.hpp
+++ b/src/states/game_context.hpp
@@ -7,6 +7,9 @@
 #include "utils/globals.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 
 class  Camera;
@@ -34,3 +37,5 @@ struct GameContext
 
     void drop_WordToFloor(Text::TokenPtr word, const Vec3& vel);
 };
+
+} // namespace Nimbin
diff --git a/src/states/game_state.cpp b/src/states/game_state.cpp
index 4a9b8e2..f98437b 100644
--- a/src/states/game_state.cpp
+++ b/src/states/game_state.cpp
@@ -23,6 +23,9 @@
 #include "wall/label.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 GameState::GameState(size_t starting_level)
 {
@@ -55,7 +58,7 @@ GameState::GameState(size_t starting_level)
     _text_walls = { &_wall_editor };
 
     _wall_program = Text::Handler(Wall::Role::Program, World::get_BoxScale(),
-                             Text::LayoutMode::Snapped);
+                                  Text::LayoutMode::Snapped);
     _wall_program.set_Lexing      (false);
     _wall_program.set_ShowNumbers (false, false);
     _wall_program.set_DefaultStyle(Text::Token::depth_wall, 0.003f,
@@ -1545,3 +1548,5 @@ GameState::update_LabelFocus(double dt, const Camera& cam, float aspect, float f
 
     _focus_label_yaw = static_cast<float>(SDL_atan2(-cam.fwd.x, -cam.fwd.z));
 }
+
+} // namespace Nimbin
diff --git a/src/states/game_state.hpp b/src/states/game_state.hpp
index 4b85c46..1125764 100644
--- a/src/states/game_state.hpp
+++ b/src/states/game_state.hpp
@@ -30,6 +30,9 @@
 #include "wall/label.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 class GameState : public IState
 {
@@ -178,3 +181,5 @@ public:
     void     update       (double dt, const GlRenderer*) override;
     void     render       (SDL_Window&, GlRenderer&)     override;
 };
+
+} // namespace Nimbin
diff --git a/src/states/istate.hpp b/src/states/istate.hpp
index 2e483ce..d4df0c8 100644
--- a/src/states/istate.hpp
+++ b/src/states/istate.hpp
@@ -2,6 +2,9 @@
 
 #include <SDL3/SDL.h>
 
+namespace
+Nimbin
+{
 
 class Game;
 class GlRenderer;
@@ -19,3 +22,5 @@ public:
     virtual void update(double dt, const GlRenderer*)       = 0;
     virtual void render(SDL_Window&, GlRenderer&)           = 0;
 };
+
+} // namespace Nimbin
diff --git a/src/states/menu_state.cpp b/src/states/menu_state.cpp
index b863a97..d2b40be 100644
--- a/src/states/menu_state.cpp
+++ b/src/states/menu_state.cpp
@@ -6,6 +6,9 @@
 #include "rendering/gl_renderer.hpp"
 #include "states/game_state.hpp"
 
+namespace
+Nimbin
+{
 
 static constexpr float  TITLE_SCALE    = 0.018f;
 static constexpr float  ITEM_SCALE     = 0.012f;
@@ -347,3 +350,5 @@ MenuState::render(SDL_Window& window, GlRenderer& renderer)
 
     renderer.end_Frame(&window);
 }
+
+} // namespace Nimbin
diff --git a/src/states/menu_state.hpp b/src/states/menu_state.hpp
index c1941db..7f4b3d9 100644
--- a/src/states/menu_state.hpp
+++ b/src/states/menu_state.hpp
@@ -10,6 +10,9 @@
 #include "utils/globals.hpp"
 #include "utils/light.hpp"
 
+namespace
+Nimbin
+{
 
 class MenuState : public IState
 {
@@ -56,3 +59,5 @@ public:
     void update      (double dt, const GlRenderer*)  override;
     void render      (SDL_Window&, GlRenderer&)      override;
 };
+
+} // namespace Nimbin
diff --git a/src/systems/aim.hpp b/src/systems/aim.hpp
index 3cef6bb..2cfaa57 100644
--- a/src/systems/aim.hpp
+++ b/src/systems/aim.hpp
@@ -10,6 +10,9 @@
 #include "utils/globals.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Aim
 {
@@ -93,3 +96,5 @@ crosshair_Target(const Camera& camera,
 }
 
 }  // namespace Aim
+
+} // namespace Nimbin
diff --git a/src/systems/carry_lex.cpp b/src/systems/carry_lex.cpp
index aa60df8..2f8d953 100644
--- a/src/systems/carry_lex.cpp
+++ b/src/systems/carry_lex.cpp
@@ -7,6 +7,9 @@
 #include "text/text.hpp"
 #include "text/token.hpp"
 
+namespace
+Nimbin
+{
 
 // Re-lex the entire carried line as ONE source string, then assign each word a
 // context colour by mapping highlight spans onto its byte range. Mirrors
@@ -68,3 +71,5 @@ CarryLex::revert_ToSingle(Text::Token::Data* word)
     word->clear_Context();
     word->set_ColorSource(Text::ColorSource::Lint);
 }
+
+} // namespace Nimbin
diff --git a/src/systems/carry_lex.hpp b/src/systems/carry_lex.hpp
index 5f23839..4111bb7 100644
--- a/src/systems/carry_lex.hpp
+++ b/src/systems/carry_lex.hpp
@@ -1,5 +1,8 @@
 #pragma once
 
+namespace
+Nimbin
+{
 
 struct CarriedLine;
 
@@ -11,3 +14,5 @@ CarryLex
 void lex_CarriedLine (CarriedLine& carry);
 void revert_ToSingle (Text::Token::Data* word);
 }
+
+} // namespace Nimbin
diff --git a/src/systems/carry_system.cpp b/src/systems/carry_system.cpp
index ffda93d..9f1e99c 100644
--- a/src/systems/carry_system.cpp
+++ b/src/systems/carry_system.cpp
@@ -1,6 +1,9 @@
 #include "carry_system.hpp"
 #include "entities/camera.hpp"
 
+namespace
+Nimbin
+{
 
 bool
 CarriedLine::empty() const
@@ -179,3 +182,5 @@ CarriedLine::get_SlotPosition(const Vec3& anchor,
 
     return positions;
 }
+
+} // namespace Nimbin
diff --git a/src/systems/carry_system.hpp b/src/systems/carry_system.hpp
index 8c77b79..03e0d54 100644
--- a/src/systems/carry_system.hpp
+++ b/src/systems/carry_system.hpp
@@ -3,6 +3,9 @@
 #include "text/token.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 
 struct CarriedWordNode
@@ -40,3 +43,5 @@ struct CarriedLine
                                double carry_gap);
     static Vec3 get_LineAnchor(const Camera& camera, double carry_dist);
 };
+
+} // namespace Nimbin
diff --git a/src/systems/celebration_system.cpp b/src/systems/celebration_system.cpp
index 2e65e25..8d2a544 100644
--- a/src/systems/celebration_system.cpp
+++ b/src/systems/celebration_system.cpp
@@ -3,6 +3,9 @@
 #include "entities/world.hpp"
 #include "systems/particle_system.hpp"
 
+namespace
+Nimbin
+{
 
 void
 CelebrationSystem::start(const Camera& cam, double& glyph_yaw)
@@ -111,3 +114,5 @@ CelebrationSystem::draw(GlRenderer& gl, const Camera& cam, const Light& light) c
     if (!_active || !_banner) return;
     _banner->draw(gl, cam, light);
 }
+
+} // namespace Nimbin
diff --git a/src/systems/celebration_system.hpp b/src/systems/celebration_system.hpp
index c805705..8b134ea 100644
--- a/src/systems/celebration_system.hpp
+++ b/src/systems/celebration_system.hpp
@@ -3,6 +3,10 @@
 #include "utils/globals.hpp"
 #include "text/token.hpp"
 
+namespace
+Nimbin
+{
+
 class  GlRenderer;
 class  ParticleSystem;
 struct Camera;
@@ -25,3 +29,5 @@ public:
     bool   is_Active   () const;
     double get_Progress() const;
 };
+
+} // namespace Nimbin
diff --git a/src/systems/collision.cpp b/src/systems/collision.cpp
index 3695569..efe3031 100644
--- a/src/systems/collision.cpp
+++ b/src/systems/collision.cpp
@@ -4,6 +4,9 @@
 #include "entities/game_object.hpp"
 #include "systems/collision.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Collision
 {
@@ -154,3 +157,5 @@ swept_RayAabb(const Vec3& origin, const Vec3& dir,
 }
 
 }
+
+} // namespace Nimbin
diff --git a/src/systems/collision.hpp b/src/systems/collision.hpp
index d0acfaf..60db788 100644
--- a/src/systems/collision.hpp
+++ b/src/systems/collision.hpp
@@ -2,6 +2,10 @@
 
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
+
 class GameObject;
 
 namespace Collision
@@ -27,3 +31,5 @@ namespace Collision
     SweptResult swept_RayAabb  (const Vec3& origin, const Vec3& dir,
                                 const Vec3& box_min, const Vec3& box_max);
 }
+
+} // namespace Nimbin
diff --git a/src/systems/compiler_system.cpp b/src/systems/compiler_system.cpp
index 992ccda..1eccf2a 100644
--- a/src/systems/compiler_system.cpp
+++ b/src/systems/compiler_system.cpp
@@ -3,6 +3,9 @@
 #include "systems/compiler_system.hpp"
 #include "text/text.hpp"
 
+namespace
+Nimbin
+{
 
 CompilerSystem::~CompilerSystem()
 {
@@ -101,3 +104,5 @@ CompilerSystem::push_Line(Text::Handler& out, const std::string& line)
     out.append_Line(Text::ascii_Sanitize(line));
     _count++;
 }
+
+} // namespace Nimbin
diff --git a/src/systems/compiler_system.hpp b/src/systems/compiler_system.hpp
index 20564ae..5d03973 100644
--- a/src/systems/compiler_system.hpp
+++ b/src/systems/compiler_system.hpp
@@ -10,6 +10,9 @@
 #include "text/handler.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 struct CompilerSystem
 {
@@ -35,3 +38,5 @@ public:
 
     ~CompilerSystem();
 };
+
+} // namespace Nimbin
diff --git a/src/systems/cpp_highlight_system.hpp b/src/systems/cpp_highlight_system.hpp
index 5b1fe7d..6aab46c 100644
--- a/src/systems/cpp_highlight_system.hpp
+++ b/src/systems/cpp_highlight_system.hpp
@@ -8,6 +8,9 @@
 #include "text/text.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 class CppHighlightSystem
 {
@@ -73,3 +76,5 @@ private:
     }
 
 };
+
+} // namespace Nimbin
diff --git a/src/systems/dyn_loader_system.cpp b/src/systems/dyn_loader_system.cpp
index 715dda6..ac878b7 100644
--- a/src/systems/dyn_loader_system.cpp
+++ b/src/systems/dyn_loader_system.cpp
@@ -6,6 +6,9 @@
 #include "systems/dyn_loader_system.hpp"
 #include "text/text.hpp"
 
+namespace
+Nimbin
+{
 
 // Where game_mod_abi.h is installed at runtime, and the build scratch dir.
 static constexpr const char* MOD_INCLUDE_DIR = "/tmp/game_mod_include";
@@ -179,3 +182,5 @@ DynLoaderSystem::~DynLoaderSystem()
     if (_handle) dlclose(_handle);
     if (_pipe)   pclose(_pipe);
 }
+
+} // namespace Nimbin
diff --git a/src/systems/dyn_loader_system.hpp b/src/systems/dyn_loader_system.hpp
index 2da2b8c..8a227dd 100644
--- a/src/systems/dyn_loader_system.hpp
+++ b/src/systems/dyn_loader_system.hpp
@@ -6,6 +6,9 @@
 #include "text/handler.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 class DynLoaderSystem
 {
@@ -37,3 +40,5 @@ public:
 
     ~DynLoaderSystem();
 };
+
+} // namespace Nimbin
diff --git a/src/systems/freelook_system.cpp b/src/systems/freelook_system.cpp
index f505d10..60d4ea5 100644
--- a/src/systems/freelook_system.cpp
+++ b/src/systems/freelook_system.cpp
@@ -3,6 +3,9 @@
 
 #include "freelook_system.hpp"
 
+namespace
+Nimbin
+{
 
 static constexpr double
 FREELOOK_LERP_DUR = 0.20;
@@ -36,3 +39,5 @@ FreelookSystem::update(double dt)
         state.lerping = false;
     }
 }
+
+} // namespace Nimbin
diff --git a/src/systems/freelook_system.hpp b/src/systems/freelook_system.hpp
index c620935..451614c 100644
--- a/src/systems/freelook_system.hpp
+++ b/src/systems/freelook_system.hpp
@@ -3,6 +3,10 @@
 #include "utils/globals.hpp"
 #include "systems/carry_system.hpp"
 
+namespace
+Nimbin
+{
+
 struct FreelookState
 {
     double lerp_t {};
@@ -20,3 +24,5 @@ public:
     void end   ();
     void update(double dt);
 };
+
+} // namespace Nimbin
diff --git a/src/systems/hint_system.cpp b/src/systems/hint_system.cpp
index 196b4dc..f13daeb 100644
--- a/src/systems/hint_system.cpp
+++ b/src/systems/hint_system.cpp
@@ -2,6 +2,9 @@
 #include "systems/hint_system.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 HintSystem::HintSystem()
 {
@@ -37,3 +40,5 @@ HintSystem::update(double dt, const Camera& camera)
 void
 HintSystem::draw(GlRenderer& gl, const Camera& camera, const Light& light) const
 { _label.draw(gl, camera, light); }
+
+} // namespace Nimbin
diff --git a/src/systems/hint_system.hpp b/src/systems/hint_system.hpp
index 8ff6920..5d21574 100644
--- a/src/systems/hint_system.hpp
+++ b/src/systems/hint_system.hpp
@@ -5,6 +5,9 @@
 #include "entities/camera.hpp"
 #include "utils/light.hpp"
 
+namespace
+Nimbin
+{
 
 class GlRenderer;
 
@@ -28,3 +31,5 @@ public:
     const Text::Handler&
          get_Label() const { return _label; }
 };
+
+} // namespace Nimbin
diff --git a/src/systems/input_system.cpp b/src/systems/input_system.cpp
index 9758cd3..01dab3f 100644
--- a/src/systems/input_system.cpp
+++ b/src/systems/input_system.cpp
@@ -5,6 +5,9 @@
 #include "states/menu_state.hpp"
 #include "systems/input_system.hpp"
 
+namespace
+Nimbin
+{
 
 void
 InputSystem::handle_Event(Game& game, const SDL_Event& e, FrameInput& input)
@@ -143,3 +146,5 @@ InputSystem::handle_Event(Game& game, const SDL_Event& e, FrameInput& input)
             break;
     }
 }
+
+} // namespace Nimbin
diff --git a/src/systems/input_system.hpp b/src/systems/input_system.hpp
index 57ee956..53ed353 100644
--- a/src/systems/input_system.hpp
+++ b/src/systems/input_system.hpp
@@ -5,6 +5,9 @@
 
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 class Game;
 
@@ -61,3 +64,5 @@ struct InputSystem
 {
     void handle_Event(Game& game, const SDL_Event& e, FrameInput& input);
 };
+
+} // namespace Nimbin
diff --git a/src/systems/particle_system.cpp b/src/systems/particle_system.cpp
index 8401ddd..c0c3bd9 100644
--- a/src/systems/particle_system.cpp
+++ b/src/systems/particle_system.cpp
@@ -7,6 +7,9 @@
 #include "entities/game_object.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 namespace {
 
@@ -151,3 +154,5 @@ ParticleSystem::clear()
 {
     _particles.clear();
 }
+
+} // namespace Nimbin
diff --git a/src/systems/particle_system.hpp b/src/systems/particle_system.hpp
index 1d2239f..159ddf7 100644
--- a/src/systems/particle_system.hpp
+++ b/src/systems/particle_system.hpp
@@ -6,6 +6,9 @@
 #include "utils/globals.hpp"
 #include "utils/light.hpp"
 
+namespace
+Nimbin
+{
 
 class Camera;
 class GameObject;
@@ -39,3 +42,5 @@ public:
 
     void emit_FireworkBurst(const Vec3& center, SDL_FColor color, int count = 80);
 };
+
+} // namespace Nimbin
diff --git a/src/systems/physics_system.cpp b/src/systems/physics_system.cpp
index d3e122d..1302eee 100644
--- a/src/systems/physics_system.cpp
+++ b/src/systems/physics_system.cpp
@@ -10,6 +10,9 @@
 #include "utils/frame_profiler.hpp"
 #include "wall/label.hpp"
 
+namespace
+Nimbin
+{
 
 void
 PhysicsSystem::update_Player(Player& p, double acc_x, double acc_z, double dt)
@@ -524,3 +527,5 @@ PhysicsSystem::collide_Grid(const DynArray<GameObject*>& active)
         }
     }
 }
+
+} // namespace Nimbin
diff --git a/src/systems/physics_system.hpp b/src/systems/physics_system.hpp
index 8850654..05fb147 100644
--- a/src/systems/physics_system.hpp
+++ b/src/systems/physics_system.hpp
@@ -7,6 +7,9 @@
 #include "text/handler.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 struct Projectile;
 
@@ -68,3 +71,5 @@ public:
                                  CarriedLine& carried,
                                  const DynArray<GameObject*>& colliders);
 };
+
+} // namespace Nimbin
diff --git a/src/systems/pick_system.cpp b/src/systems/pick_system.cpp
index b6cb167..ba06e51 100644
--- a/src/systems/pick_system.cpp
+++ b/src/systems/pick_system.cpp
@@ -3,6 +3,10 @@
 #include "pick_system.hpp"
 #include "entities/world.hpp"
 
+namespace
+Nimbin
+{
+
 namespace
 PickSystem
 {
@@ -143,3 +147,5 @@ pick_WallToken(const Camera& camera, Text::Handler& wall)
 }
 
 }  // namespace PickSystem
+
+} // namespace Nimbin
diff --git a/src/systems/pick_system.hpp b/src/systems/pick_system.hpp
index a1e215a..133b423 100644
--- a/src/systems/pick_system.hpp
+++ b/src/systems/pick_system.hpp
@@ -7,6 +7,9 @@
 #include "utils/globals.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 enum class PickKind : uint8_t { None, Scenery, Word, WallWord };
 
@@ -31,3 +34,5 @@ namespace PickSystem
     Text::Token::Data*
     pick_WallToken(const Camera& camera, Text::Handler& wall);
 }
+
+} // namespace Nimbin
diff --git a/src/systems/plate_system.cpp b/src/systems/plate_system.cpp
index 3750d10..3c0d8df 100644
--- a/src/systems/plate_system.cpp
+++ b/src/systems/plate_system.cpp
@@ -3,6 +3,9 @@
 #include "states/game_state.hpp"
 #include "levels/director.hpp"
 
+namespace
+Nimbin
+{
 
 void
 PlateSystem::update(double dt,
@@ -36,3 +39,5 @@ PlateSystem::update(double dt,
             plate->pulse = 1.0;
     }
 }
+
+} // namespace Nimbin
diff --git a/src/systems/plate_system.hpp b/src/systems/plate_system.hpp
index a6a8a36..ebfdf02 100644
--- a/src/systems/plate_system.hpp
+++ b/src/systems/plate_system.hpp
@@ -3,6 +3,9 @@
 #include "entities/plate.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 class  Player;
 namespace Level { struct StepPlate; }
@@ -14,3 +17,5 @@ public:
     void update(double dt, const Player& player,
                 const DynArray<Level::StepPlate>& plates);
 };
+
+} // namespace Nimbin
diff --git a/src/systems/program_system.cpp b/src/systems/program_system.cpp
index 1d3fcb4..0b024b3 100644
--- a/src/systems/program_system.cpp
+++ b/src/systems/program_system.cpp
@@ -11,6 +11,9 @@
 #include "text/text.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 static const char* kProgramPath = "/tmp/game_prog";
 
@@ -191,3 +194,5 @@ ProgramSystem::push_Line(Text::Handler& out, const std::string& line)
     out.append_Line(Text::ascii_Sanitize(line));
     _count++;
 }
+
+} // namespace Nimbin
diff --git a/src/systems/program_system.hpp b/src/systems/program_system.hpp
index 5a63777..7e33c8b 100644
--- a/src/systems/program_system.hpp
+++ b/src/systems/program_system.hpp
@@ -7,6 +7,9 @@
 #include "text/handler.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 struct ProgramSystem
 {
@@ -36,3 +39,5 @@ public:
 
     ~ProgramSystem();
 };
+
+} // namespace Nimbin
diff --git a/src/systems/projectile_system.cpp b/src/systems/projectile_system.cpp
index e32f60b..05868b6 100644
--- a/src/systems/projectile_system.cpp
+++ b/src/systems/projectile_system.cpp
@@ -5,6 +5,9 @@
 #include "systems/collision.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 static inline double
 bounceVelocity(double v, double restitution)
@@ -502,3 +505,5 @@ ProjectileSystem::update(DynArray<Projectile>&        projectiles,
         }
     }
 }
+
+} // namespace Nimbin
diff --git a/src/systems/projectile_system.hpp b/src/systems/projectile_system.hpp
index 485676c..2859e71 100644
--- a/src/systems/projectile_system.hpp
+++ b/src/systems/projectile_system.hpp
@@ -5,6 +5,9 @@
 #include "utils/globals.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 static constexpr uint8_t BOUNCED_X = 1 << 0;
 static constexpr uint8_t BOUNCED_Z = 1 << 1;
@@ -87,3 +90,5 @@ struct ProjectileSystem
                 const DynArray<WallTextHitTest>& wall_text_hits,
                 double dt, bool program_running);
 };
+
+} // namespace Nimbin
diff --git a/src/systems/pult_system.cpp b/src/systems/pult_system.cpp
index 2290a39..49689a9 100644
--- a/src/systems/pult_system.cpp
+++ b/src/systems/pult_system.cpp
@@ -6,6 +6,9 @@
 #include "wall/label.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 void
 PultSystem::init(DynArray<GameObjectPtr>& scenery,
@@ -187,3 +190,5 @@ PultSystem::get_ConnectEditorPos() const
 {
     return _connect_editor ? _connect_editor->pos : Vec3{};
 }
+
+} // namespace Nimbin
diff --git a/src/systems/pult_system.hpp b/src/systems/pult_system.hpp
index 3f7501e..fb748d5 100644
--- a/src/systems/pult_system.hpp
+++ b/src/systems/pult_system.hpp
@@ -7,6 +7,10 @@
 #include "entities/pult.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
+
 class  GlRenderer;
 struct Light;
 struct Player;
@@ -46,3 +50,5 @@ public:
 
 
 };
+
+} // namespace Nimbin
diff --git a/src/systems/source_tokens.hpp b/src/systems/source_tokens.hpp
index f84ece3..0af3295 100644
--- a/src/systems/source_tokens.hpp
+++ b/src/systems/source_tokens.hpp
@@ -6,6 +6,9 @@
 
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 namespace SourceTokens
 {
 
@@ -133,3 +136,5 @@ copy_File(const std::string& from, const std::string& to)
 }
 
 }  // namespace SourceTokens
+
+} // namespace Nimbin
diff --git a/src/systems/wall_connection.cpp b/src/systems/wall_connection.cpp
index 4066014..23e9cdb 100644
--- a/src/systems/wall_connection.cpp
+++ b/src/systems/wall_connection.cpp
@@ -12,6 +12,9 @@
 #include "utils/light.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 namespace
 Wall
@@ -258,3 +261,5 @@ Connection::draw_Electric(GlRenderer& gl, const Camera& cam) const
 
 
 } 
+
+} // namespace Nimbin
diff --git a/src/systems/wall_connection.hpp b/src/systems/wall_connection.hpp
index d3df49b..f84e4da 100644
--- a/src/systems/wall_connection.hpp
+++ b/src/systems/wall_connection.hpp
@@ -4,6 +4,9 @@
 
 #include "text/token.hpp"
 
+namespace
+Nimbin
+{
 
 class Camera;
 class GlRenderer;
@@ -61,3 +64,5 @@ private:
 
 
 } // namespace Wall
+
+} // namespace Nimbin
diff --git a/src/systems/word_ai_system.cpp b/src/systems/word_ai_system.cpp
index 3498105..7663859 100644
--- a/src/systems/word_ai_system.cpp
+++ b/src/systems/word_ai_system.cpp
@@ -10,6 +10,9 @@
 #include "utils/config.hpp"
 #include "word_ai_system.hpp"
 
+namespace
+Nimbin
+{
 
 
 static Vec3
@@ -428,3 +431,5 @@ WordAiSystem::update_StolenTrail(Text::Token::Data& w, double dt)
 
     w.body.hover_phase += ConfigText3d::hover_speed * dt;
 }
+
+} // namespace Nimbin
diff --git a/src/systems/word_ai_system.hpp b/src/systems/word_ai_system.hpp
index 79a7199..e68636f 100644
--- a/src/systems/word_ai_system.hpp
+++ b/src/systems/word_ai_system.hpp
@@ -3,6 +3,9 @@
 #include "utils/globals.hpp"
 #include "text/token.hpp"
 
+namespace
+Nimbin
+{
 
 struct CarriedLine;
 struct Player;
@@ -40,3 +43,5 @@ public:
                  DynArray<Text::TokenPtr>& dropped,
                  double dt);
 };
+
+} // namespace Nimbin
diff --git a/src/systems/word_anim_system.cpp b/src/systems/word_anim_system.cpp
index 2ef3181..7826865 100644
--- a/src/systems/word_anim_system.cpp
+++ b/src/systems/word_anim_system.cpp
@@ -4,6 +4,9 @@
 #include "word_anim_system.hpp"
 #include "utils/config.hpp"
 
+namespace
+Nimbin
+{
 
 static constexpr double ANIM_ADD_DUR   = 0.20;
 
@@ -83,3 +86,5 @@ WordAnimSystem::update(DynArray<WordAnim_Add>&   anims_add,
             [](const WordAnim_Drop& d) { return d.complete; }),
         anims_drop.end());
 }
+
+} // namespace Nimbin
diff --git a/src/systems/word_anim_system.hpp b/src/systems/word_anim_system.hpp
index 02b8ef1..419382b 100644
--- a/src/systems/word_anim_system.hpp
+++ b/src/systems/word_anim_system.hpp
@@ -4,6 +4,9 @@
 #include "utils/globals.hpp"
 #include "text/token.hpp"
 
+namespace
+Nimbin
+{
 
 struct WordAnim_Add
 {
@@ -38,3 +41,5 @@ struct WordAnimSystem
                 DynArray<Text::TokenPtr>& words,
                 double dt);
 };
+
+} // namespace Nimbin
diff --git a/src/text/cpp_highlight.cpp b/src/text/cpp_highlight.cpp
index bb4332d..76f9824 100644
--- a/src/text/cpp_highlight.cpp
+++ b/src/text/cpp_highlight.cpp
@@ -7,6 +7,9 @@
 #include "text/text.hpp"
 #include "text/token.hpp"
 
+namespace
+Nimbin
+{
 extern "C" const TSLanguage* tree_sitter_cpp(void);
 
 namespace {
@@ -269,3 +272,5 @@ Text::CppHighlight::classify_Word(const std::string& word)
 
     return type;
 }
+
+} // namespace Nimbin
diff --git a/src/text/handler.cpp b/src/text/handler.cpp
index 073dbe1..32da50e 100644
--- a/src/text/handler.cpp
+++ b/src/text/handler.cpp
@@ -11,6 +11,9 @@
 #include "utils/config.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 namespace
 Text
@@ -1594,3 +1597,5 @@ Handler::kick(size_t word_index, const Vec3& projectile_vel, const Vec3& normal)
 
 
 } // namespace Text
+
+} // namespace Nimbin
diff --git a/src/text/handler.hpp b/src/text/handler.hpp
index 1257dad..dca5292 100644
--- a/src/text/handler.hpp
+++ b/src/text/handler.hpp
@@ -11,6 +11,9 @@
 #include "utils/light.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 class GlRenderer;
 
 namespace Text
@@ -224,3 +227,5 @@ private:
 
 
 } // namespace Text
+
+} // namespace Nimbin
diff --git a/src/text/line.cpp b/src/text/line.cpp
index 10461ab..107b2ba 100644
--- a/src/text/line.cpp
+++ b/src/text/line.cpp
@@ -2,6 +2,10 @@
 
 #include "text/token.hpp"
 
+namespace
+Nimbin
+{
+
 namespace
 Text
 {
@@ -43,3 +47,5 @@ Line::clear()
 
 
 } // namespace Text
+
+} // namespace Nimbin
diff --git a/src/text/mesh.cpp b/src/text/mesh.cpp
index 773f4d3..0f12844 100644
--- a/src/text/mesh.cpp
+++ b/src/text/mesh.cpp
@@ -18,6 +18,9 @@
 #include <ft2build.h>
 #include <unordered_map>
 
+namespace
+Nimbin
+{
 #include FT_FREETYPE_H
 #include FT_OUTLINE_H
 
@@ -398,3 +401,5 @@ TextMesh::build(const std::string& font_path,
     // Normals are cached per glyph — no whole-word recompute needed.
     return !verts.empty();
 }
+
+} // namespace Nimbin
diff --git a/src/text/mesh.hpp b/src/text/mesh.hpp
index 60180ae..7d12588 100644
--- a/src/text/mesh.hpp
+++ b/src/text/mesh.hpp
@@ -4,6 +4,9 @@
 
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 struct Vertex
 {
@@ -34,3 +37,5 @@ struct TextMesh
 
 
 
+
+} // namespace Nimbin
diff --git a/src/text/text.cpp b/src/text/text.cpp
index 1b35291..127bb25 100644
--- a/src/text/text.cpp
+++ b/src/text/text.cpp
@@ -1,5 +1,8 @@
 #include "text.hpp"
 
+namespace
+Nimbin
+{
 
 namespace
 Text
@@ -93,3 +96,5 @@ ascii_Sanitize(const std::string& in)
 
 
 } // namespace Text
+
+} // namespace Nimbin
diff --git a/src/text/text.hpp b/src/text/text.hpp
index 39ef26f..350b04e 100644
--- a/src/text/text.hpp
+++ b/src/text/text.hpp
@@ -4,6 +4,9 @@
 
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 namespace
 Text
@@ -88,3 +91,5 @@ Text
 
 
 } // namespace Text
+
+} // namespace Nimbin
diff --git a/src/text/token.cpp b/src/text/token.cpp
index d6f3d03..1b7c020 100644
--- a/src/text/token.cpp
+++ b/src/text/token.cpp
@@ -7,6 +7,9 @@
 #include "text/token.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 namespace Text
 {
 
@@ -435,3 +438,5 @@ Data::draw(GlRenderer& gl, const Camera& camera, const Light& light) const
 
 
 } // namespace Text
+
+} // namespace Nimbin
diff --git a/src/text/token.hpp b/src/text/token.hpp
index 20871c0..ba9e8e8 100644
--- a/src/text/token.hpp
+++ b/src/text/token.hpp
@@ -11,6 +11,10 @@
 #include "utils/globals.hpp"
 #include "utils/light.hpp"
 
+namespace
+Nimbin
+{
+
 class Camera;
 class GlRenderer;
 
@@ -220,3 +224,5 @@ Token
 
 
 } // namespace Text
+
+} // namespace Nimbin
diff --git a/src/text/token_db.cpp b/src/text/token_db.cpp
index d2f0ce1..15412cf 100644
--- a/src/text/token_db.cpp
+++ b/src/text/token_db.cpp
@@ -2,6 +2,9 @@
 
 #include "token.hpp"
 
+namespace
+Nimbin
+{
 namespace
 {
 
@@ -194,3 +197,4 @@ get_TestArrayAllKeywords()
 
 } // namespace TokenDB
 } // namespace Text
+} // namespace Nimbin
diff --git a/src/text/vim_buffer.cpp b/src/text/vim_buffer.cpp
index 4d6ae64..ec4ad20 100644
--- a/src/text/vim_buffer.cpp
+++ b/src/text/vim_buffer.cpp
@@ -1,5 +1,8 @@
 #include "vim_buffer.hpp"
 
+namespace
+Nimbin
+{
 
 void
 VimBuffer::load(const std::vector<std::string>& src)
@@ -659,3 +662,5 @@ VimBuffer::redo()
     clamp_Col();
     touch();
 }
+
+} // namespace Nimbin
diff --git a/src/text/vim_buffer.hpp b/src/text/vim_buffer.hpp
index 37fda83..81e2ff9 100644
--- a/src/text/vim_buffer.hpp
+++ b/src/text/vim_buffer.hpp
@@ -5,6 +5,9 @@
 #include <string>
 #include <vector>
 
+namespace
+Nimbin
+{
 class VimBuffer {
 public:
     enum class Mode   : uint8_t { Normal, Insert, Command };
@@ -123,3 +126,5 @@ private:
     int  get_Eff         ()      const;
     int  get_ClampRow    (int r) const;
 };
+
+} // namespace Nimbin
diff --git a/src/thirdparty/earcut/earcut.hpp b/src/thirdparty/earcut/earcut.hpp
index 1a6716e..21ab544 100644
--- a/src/thirdparty/earcut/earcut.hpp
+++ b/src/thirdparty/earcut/earcut.hpp
@@ -41,7 +41,7 @@ namespace detail {
 template <typename N = uint32_t>
 class Earcut {
 public:
-    DynArray<N> indices;
+    Nimbin::DynArray<N> indices;
     std::size_t vertices = 0;
 
     template <typename Polygon>
@@ -189,8 +189,8 @@ private:
             void operator()(T* ptr) { alloc_traits::deallocate(alloc, ptr, capacity); }
         };
 
-        DynArray<cpputils::unique_ptr<T, AllocDeleter>> memoryBlocks;
-        DynArray<std::size_t> blockCapacities;
+        Nimbin::DynArray<cpputils::unique_ptr<T, AllocDeleter>> memoryBlocks;
+        Nimbin::DynArray<std::size_t> blockCapacities;
         std::size_t currentBlockIndex = 0;
         std::size_t currentIndex = 0;
         std::size_t totalObjects = 0;
@@ -207,7 +207,7 @@ private:
     };
 
     cpputils::unique_ptr<ObjectPool<Node>> nodes;
-    DynArray<Node*> holeQueue;
+    Nimbin::DynArray<Node*> holeQueue;
 };
 
 template <typename N>
@@ -877,7 +877,7 @@ void Earcut<N>::removeNode(Node* p) {
 } // namespace detail
 
 template <typename N = uint32_t, typename Polygon>
-DynArray<N> earcut(const Polygon& poly) {
+Nimbin::DynArray<N> earcut(const Polygon& poly) {
     mapbox::detail::Earcut<N> earcut;
     earcut(poly);
     return std::move(earcut.indices);
diff --git a/src/utils/config.hpp b/src/utils/config.hpp
index b47640a..ce75632 100644
--- a/src/utils/config.hpp
+++ b/src/utils/config.hpp
@@ -2,6 +2,9 @@
 
 #include <SDL3/SDL.h>
 
+namespace
+Nimbin
+{
 namespace ConfigGame
 {
 static constexpr int   max_substeps    = 4;
@@ -155,3 +158,5 @@ namespace ConfigPult
 static constexpr double press_dur    = 0.18;
 static constexpr double label_height = 1.1;
 }
+
+} // namespace Nimbin
diff --git a/src/utils/frame_profiler.hpp b/src/utils/frame_profiler.hpp
index b9f58b9..6dab816 100644
--- a/src/utils/frame_profiler.hpp
+++ b/src/utils/frame_profiler.hpp
@@ -29,6 +29,10 @@
 #include <array>
 #include <cstdio>
 
+namespace
+Nimbin
+{
+
 #ifdef FRAME_PROFILER_DISABLED
 #  define FP_ZONE(name)  ((void)0)
 #  define FRAME_BEGIN()  ((void)0)
@@ -189,3 +193,5 @@ struct ScopedZone {
 #define FRAME_SORT_AVERAGE ::fp::frame().sort_mode = fp::SortMode::Avg;
 
 #endif // !FRAME_PROFILER_DISABLED
+
+} // namespace Nimbin
diff --git a/src/utils/globals.hpp b/src/utils/globals.hpp
index 295f801..e71fec0 100644
--- a/src/utils/globals.hpp
+++ b/src/utils/globals.hpp
@@ -8,6 +8,9 @@
 #include "cpputils/unique_ptr.hpp"
 #include "math.hpp"
 
+namespace
+Nimbin
+{
 
 using Math::Vec3;
 
@@ -34,3 +37,5 @@ using  CarriedWordNodePtr = cpputils::unique_ptr<CarriedWordNode>;
 
 struct GameObject;
 using  GameObjectPtr = cpputils::unique_ptr<GameObject>;
+
+} // namespace Nimbin
diff --git a/src/utils/light.hpp b/src/utils/light.hpp
index 934a47d..7a8f5e6 100644
--- a/src/utils/light.hpp
+++ b/src/utils/light.hpp
@@ -2,6 +2,9 @@
 
 #include "math.hpp"
 
+namespace
+Nimbin
+{
 struct Light {
     Vec3  sun_direction    { 0.3, -0.9, 0.2 };
     Vec3  sun_color        { 1.00, 0.95, 0.85 };
@@ -30,3 +33,5 @@ struct Light {
         if (len > 1e-6) flashlight_dir = flashlight_dir / len;
     }
 };
+
+} // namespace Nimbin
diff --git a/src/utils/math.hpp b/src/utils/math.hpp
index 4adbae8..6d71f98 100644
--- a/src/utils/math.hpp
+++ b/src/utils/math.hpp
@@ -3,6 +3,9 @@
 #include <SDL3/SDL_stdinc.h>
 #include <random>
 
+namespace
+Nimbin
+{
 
 namespace Random
 {
@@ -99,3 +102,5 @@ lerp(const Vec3& a, const Vec3& b, double t)
 { return { lerp(a.x, b.x, t), lerp(a.y, b.y, t), lerp(a.z, b.z, t) }; }
 
 } // namespace
+
+} // namespace Nimbin
diff --git a/src/wall/label.cpp b/src/wall/label.cpp
index 4acb157..9cbb69a 100644
--- a/src/wall/label.cpp
+++ b/src/wall/label.cpp
@@ -4,6 +4,9 @@
 #include "wall/label.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 
 // ── Label appearance ──────────────────────────────────────────────────────────
 
@@ -124,3 +127,5 @@ Wall::Label::draw(GlRenderer& gl, const Camera& camera, const Light& light) cons
 {
     label.draw(gl, camera, light);
 }
+
+} // namespace Nimbin
diff --git a/src/wall/label.hpp b/src/wall/label.hpp
index 061790d..20e80e5 100644
--- a/src/wall/label.hpp
+++ b/src/wall/label.hpp
@@ -7,6 +7,9 @@
 #include "text/handler.hpp"
 #include "wall/wall.hpp"
 
+namespace
+Nimbin
+{
 class  Camera;
 class  GlRenderer;
 struct Light;
@@ -27,3 +30,5 @@ namespace Wall
         void draw   (GlRenderer& gl, const Camera& camera, const Light& light) const;
     };
 }
+
+} // namespace Nimbin
diff --git a/src/wall/wall.cpp b/src/wall/wall.cpp
index 48ea0c1..972796b 100644
--- a/src/wall/wall.cpp
+++ b/src/wall/wall.cpp
@@ -6,6 +6,9 @@
 #include "text/text.hpp"
 #include "wall.hpp"
 
+namespace
+Nimbin
+{
 namespace
 Wall
 {
@@ -115,7 +118,7 @@ static std::unordered_map<std::string, DynArray<Text::TokenPtr>>
 g_info_cache;
 
 void
-show_TokenInfo(::Text::Handler& info, const std::string& token_text)
+show_TokenInfo(Text::Handler& info, const std::string& token_text)
 {
     auto it = g_info_cache.find(token_text);
     if (it == g_info_cache.end()) {
@@ -175,3 +178,5 @@ tilt_TwardEye(const Vec3& text_pos, const Vec3& eye_pos)
 
 
 } // namespace Wall
+
+} // namespace Nimbin
diff --git a/src/wall/wall.hpp b/src/wall/wall.hpp
index c020ee9..14cb2ac 100644
--- a/src/wall/wall.hpp
+++ b/src/wall/wall.hpp
@@ -4,6 +4,9 @@
 #include "utils/config.hpp"
 #include "utils/globals.hpp"
 
+namespace
+Nimbin
+{
 
 namespace Text { class Handler; }
 
@@ -67,3 +70,5 @@ namespace Wall
 
 
 } // namespace Wall
+
+} // namespace Nimbin
diff --git a/todo.txt b/todo.txt
index 26ea215..0b639da 100644
--- a/todo.txt
+++ b/todo.txt
@@ -1,3 +1,5 @@
+- bounce on corner doese not stick on editor wall
+- some tokens get bloom (think its bloom) directly after start on the editor wall
 - Pult Move to also move walls (swapp walls)
 - Pult Connect to connect to a wall and provide input
 - Search manpage -- c programm to find man page in /usr/share/man (for me)