diff --git a/BUILD_WINDOWS.md b/BUILD_WINDOWS.md
new file mode 100644
index 0000000..4e42973
--- /dev/null
+++ b/BUILD_WINDOWS.md
@@ -0,0 +1,43 @@
+# Windows (MSVC) Build Guide
+
+This project can be built with CMake on Windows using MSVC. The steps below
+use a clean out-of-source build directory (`build_clean`) and force fetching
+fmt/spdlog to avoid conflicts with system or Anaconda-provided versions.
+
+## Prerequisites
+
+- Visual Studio 2022 Build Tools (MSVC toolchain + CMake)
+- Git
+
+Tip: run these commands from a "x64 Native Tools Command Prompt for VS 2022"
+or a PowerShell that has MSVC tools on PATH.
+
+## Configure
+
+```powershell
+cmake -S . -B build_clean -DLIBOCULUS_FETCH_DEPS=ON -DLIBOCULUS_FORCE_FETCH_DEPS=ON
+```
+
+## Build
+
+```powershell
+cmake --build build_clean --config Debug --target occlient
+```
+
+## Outputs
+
+- Executable: `build_clean\bin\Debug\occlient.exe`
+- Library: `build_clean\lib\Debug\oculus.lib` (static on MSVC)
+
+## Run (example)
+
+```powershell
+.\build_clean\bin\Debug\occlient.exe -i "F:\Projects\liboculus\test\data\three_pings_8bit.raw" -v -o "F:\Projects\liboculus\test\data\out.raw"
+```
+
+## Troubleshooting
+
+- If CMake links against the wrong fmt/spdlog (e.g., Anaconda), use a fresh
+ build directory and keep `LIBOCULUS_FORCE_FETCH_DEPS=ON`.
+- If `build_clean` cannot be deleted, close Visual Studio or any process that
+ is holding files under `build_clean\.vs`.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b857406..adca274 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -3,7 +3,9 @@ project(liboculus)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
-add_compile_options(-std=c++17)
+if(NOT MSVC)
+ add_compile_options(-std=c++17)
+endif()
# == Code common to all builds =======================================
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
diff --git a/README.md b/README.md
index 3ef1334..8c498e7 100644
--- a/README.md
+++ b/README.md
@@ -57,6 +57,12 @@ make
Note the `CMakelists.txt` attempts to auto-detect ROS. Cmake build should be done in a session where ROS has not been loaded.
+### Windows (MSVC)
+
+See `BUILD_WINDOWS.md` for a repeatable Windows build flow that uses a clean
+out-of-source directory and forces fetching fmt/spdlog to avoid version
+conflicts.
+
## Logging
> [!NOTE] [fips](http://floooh.github.io/fips/) support has been removed from this version.
diff --git a/build_clean/ALL_BUILD.vcxproj b/build_clean/ALL_BUILD.vcxproj
new file mode 100644
index 0000000..621d3e1
--- /dev/null
+++ b/build_clean/ALL_BUILD.vcxproj
@@ -0,0 +1,196 @@
+
+
+
+ x64
+
+
+ false
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ ALL_BUILD
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ fmt
+
+
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}
+ occlient
+
+
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}
+ oculus
+
+
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ spdlog
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/ALL_BUILD.vcxproj.filters b/build_clean/ALL_BUILD.vcxproj.filters
new file mode 100644
index 0000000..38f4c51
--- /dev/null
+++ b/build_clean/ALL_BUILD.vcxproj.filters
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/build_clean/CMakeCache.txt b/build_clean/CMakeCache.txt
new file mode 100644
index 0000000..8cd0ec5
--- /dev/null
+++ b/build_clean/CMakeCache.txt
@@ -0,0 +1,652 @@
+# This is the CMakeCache file.
+# For build in directory: f:/Projects/liboculus/build_clean
+# It was generated by CMake: C:/Program Files/CMake/bin/cmake.exe
+# 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
+########################
+
+//The directory containing a CMake configuration file for Boost.
+Boost_DIR:PATH=D:/software/anaconda3/Library/lib/cmake/Boost-1.82.0
+
+//Path to a file.
+Boost_INCLUDE_DIR:PATH=D:/software/anaconda3/Library/include
+
+Boost_SYSTEM_LIBRARY_RELEASE:STRING=D:/software/anaconda3/Library/lib/libboost_system.lib
+
+//Path to a program.
+CMAKE_AR:FILEPATH=D:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/lib.exe
+
+//Semicolon separated list of supported configuration types, only
+// supports Debug, Release, MinSizeRel, and RelWithDebInfo, anything
+// else will be ignored.
+CMAKE_CONFIGURATION_TYPES:STRING=Debug;Release;MinSizeRel;RelWithDebInfo
+
+//Flags used by the CXX compiler during all build types.
+CMAKE_CXX_FLAGS:STRING=/DWIN32 /D_WINDOWS /W3 /GR /EHsc
+
+//Flags used by the CXX compiler during DEBUG builds.
+CMAKE_CXX_FLAGS_DEBUG:STRING=/MDd /Zi /Ob0 /Od /RTC1
+
+//Flags used by the CXX compiler during MINSIZEREL builds.
+CMAKE_CXX_FLAGS_MINSIZEREL:STRING=/MD /O1 /Ob1 /DNDEBUG
+
+//Flags used by the CXX compiler during RELEASE builds.
+CMAKE_CXX_FLAGS_RELEASE:STRING=/MD /O2 /Ob2 /DNDEBUG
+
+//Flags used by the CXX compiler during RELWITHDEBINFO builds.
+CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=/MD /Zi /O2 /Ob1 /DNDEBUG
+
+//Libraries linked by default with all C++ applications.
+CMAKE_CXX_STANDARD_LIBRARIES:STRING=kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib
+
+//Flags used by the C compiler during all build types.
+CMAKE_C_FLAGS:STRING=/DWIN32 /D_WINDOWS /W3
+
+//Flags used by the C compiler during DEBUG builds.
+CMAKE_C_FLAGS_DEBUG:STRING=/MDd /Zi /Ob0 /Od /RTC1
+
+//Flags used by the C compiler during MINSIZEREL builds.
+CMAKE_C_FLAGS_MINSIZEREL:STRING=/MD /O1 /Ob1 /DNDEBUG
+
+//Flags used by the C compiler during RELEASE builds.
+CMAKE_C_FLAGS_RELEASE:STRING=/MD /O2 /Ob2 /DNDEBUG
+
+//Flags used by the C compiler during RELWITHDEBINFO builds.
+CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=/MD /Zi /O2 /Ob1 /DNDEBUG
+
+//Libraries linked by default with all C applications.
+CMAKE_C_STANDARD_LIBRARIES:STRING=kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib
+
+//Flags used by the linker during all build types.
+CMAKE_EXE_LINKER_FLAGS:STRING=/machine:x64
+
+//Flags used by the linker during DEBUG builds.
+CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL
+
+//Flags used by the linker during MINSIZEREL builds.
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO
+
+//Flags used by the linker during RELEASE builds.
+CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO
+
+//Flags used by the linker during RELWITHDEBINFO builds.
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL
+
+//Value Computed by CMake.
+CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=F:/Projects/liboculus/build_clean/CMakeFiles/pkgRedirects
+
+//User executables (bin)
+CMAKE_INSTALL_BINDIR:PATH=bin
+
+//Read-only architecture-independent data (DATAROOTDIR)
+CMAKE_INSTALL_DATADIR:PATH=
+
+//Read-only architecture-independent data root (share)
+CMAKE_INSTALL_DATAROOTDIR:PATH=share
+
+//Documentation root (DATAROOTDIR/doc/PROJECT_NAME)
+CMAKE_INSTALL_DOCDIR:PATH=
+
+//C header files (include)
+CMAKE_INSTALL_INCLUDEDIR:PATH=include
+
+//Info documentation (DATAROOTDIR/info)
+CMAKE_INSTALL_INFODIR:PATH=
+
+//Object code libraries (lib)
+CMAKE_INSTALL_LIBDIR:PATH=lib
+
+//Program executables (libexec)
+CMAKE_INSTALL_LIBEXECDIR:PATH=libexec
+
+//Locale-dependent data (DATAROOTDIR/locale)
+CMAKE_INSTALL_LOCALEDIR:PATH=
+
+//Modifiable single-machine data (var)
+CMAKE_INSTALL_LOCALSTATEDIR:PATH=var
+
+//Man documentation (DATAROOTDIR/man)
+CMAKE_INSTALL_MANDIR:PATH=
+
+//C header files for non-gcc (/usr/include)
+CMAKE_INSTALL_OLDINCLUDEDIR:PATH=/usr/include
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=C:/Program Files (x86)/liboculus
+
+//Run-time variable data (LOCALSTATEDIR/run)
+CMAKE_INSTALL_RUNSTATEDIR:PATH=
+
+//System admin executables (sbin)
+CMAKE_INSTALL_SBINDIR:PATH=sbin
+
+//Modifiable architecture-independent data (com)
+CMAKE_INSTALL_SHAREDSTATEDIR:PATH=com
+
+//Read-only single-machine data (etc)
+CMAKE_INSTALL_SYSCONFDIR:PATH=etc
+
+//Path to a program.
+CMAKE_LINKER:FILEPATH=D:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/link.exe
+
+//Flags used by the linker during the creation of modules during
+// all build types.
+CMAKE_MODULE_LINKER_FLAGS:STRING=/machine:x64
+
+//Flags used by the linker during the creation of modules during
+// DEBUG builds.
+CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL
+
+//Flags used by the linker during the creation of modules during
+// MINSIZEREL builds.
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO
+
+//Flags used by the linker during the creation of modules during
+// RELEASE builds.
+CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO
+
+//Flags used by the linker during the creation of modules during
+// RELWITHDEBINFO builds.
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL
+
+//Path to a program.
+CMAKE_MT:FILEPATH=CMAKE_MT-NOTFOUND
+
+//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=liboculus
+
+//Value Computed by CMake
+CMAKE_PROJECT_VERSION:STATIC=1.13.0
+
+//Value Computed by CMake
+CMAKE_PROJECT_VERSION_MAJOR:STATIC=1
+
+//Value Computed by CMake
+CMAKE_PROJECT_VERSION_MINOR:STATIC=13
+
+//Value Computed by CMake
+CMAKE_PROJECT_VERSION_PATCH:STATIC=0
+
+//Value Computed by CMake
+CMAKE_PROJECT_VERSION_TWEAK:STATIC=
+
+//RC compiler
+CMAKE_RC_COMPILER:FILEPATH=rc
+
+//Flags for Windows Resource Compiler during all build types.
+CMAKE_RC_FLAGS:STRING=-DWIN32
+
+//Flags for Windows Resource Compiler during DEBUG builds.
+CMAKE_RC_FLAGS_DEBUG:STRING=-D_DEBUG
+
+//Flags for Windows Resource Compiler during MINSIZEREL builds.
+CMAKE_RC_FLAGS_MINSIZEREL:STRING=
+
+//Flags for Windows Resource Compiler during RELEASE builds.
+CMAKE_RC_FLAGS_RELEASE:STRING=
+
+//Flags for Windows Resource Compiler during RELWITHDEBINFO builds.
+CMAKE_RC_FLAGS_RELWITHDEBINFO:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during all build types.
+CMAKE_SHARED_LINKER_FLAGS:STRING=/machine:x64
+
+//Flags used by the linker during the creation of shared libraries
+// during DEBUG builds.
+CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL
+
+//Flags used by the linker during the creation of shared libraries
+// during MINSIZEREL builds.
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO
+
+//Flags used by the linker during the creation of shared libraries
+// during RELEASE builds.
+CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO
+
+//Flags used by the linker during the creation of shared libraries
+// during RELWITHDEBINFO builds.
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL
+
+//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=/machine:x64
+
+//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=FALSE
+
+//Directory under which to collect all populated content
+FETCHCONTENT_BASE_DIR:PATH=F:/Projects/liboculus/build_clean/_deps
+
+//Disables all attempts to download or update content and assumes
+// source dirs already exist
+FETCHCONTENT_FULLY_DISCONNECTED:BOOL=OFF
+
+//Enables QUIET option for all content population
+FETCHCONTENT_QUIET:BOOL=ON
+
+//When not empty, overrides where to find pre-populated content
+// for fmt
+FETCHCONTENT_SOURCE_DIR_FMT:PATH=
+
+//When not empty, overrides where to find pre-populated content
+// for spdlog
+FETCHCONTENT_SOURCE_DIR_SPDLOG:PATH=
+
+//Enables UPDATE_DISCONNECTED behavior for all content population
+FETCHCONTENT_UPDATES_DISCONNECTED:BOOL=OFF
+
+//Enables UPDATE_DISCONNECTED behavior just for population of fmt
+FETCHCONTENT_UPDATES_DISCONNECTED_FMT:BOOL=OFF
+
+//Enables UPDATE_DISCONNECTED behavior just for population of spdlog
+FETCHCONTENT_UPDATES_DISCONNECTED_SPDLOG:BOOL=OFF
+
+//Value Computed by CMake
+FMT_BINARY_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/fmt-build
+
+//Installation directory for cmake files, a relative path that
+// will be joined with C:/Program Files (x86)/liboculus or an absolute
+// path.
+FMT_CMAKE_DIR:STRING=lib/cmake/fmt
+
+//Generate the cuda-test target.
+FMT_CUDA_TEST:BOOL=OFF
+
+//Debug library postfix.
+FMT_DEBUG_POSTFIX:STRING=d
+
+//Generate the doc target.
+FMT_DOC:BOOL=OFF
+
+//Generate the fuzz target.
+FMT_FUZZ:BOOL=OFF
+
+//Installation directory for include files, a relative path that
+// will be joined with C:/Program Files (x86)/liboculus or an absolute
+// path.
+FMT_INC_DIR:STRING=include
+
+//Generate the install target.
+FMT_INSTALL:BOOL=ON
+
+//Value Computed by CMake
+FMT_IS_TOP_LEVEL:STATIC=OFF
+
+//Installation directory for libraries, a relative path that will
+// be joined to C:/Program Files (x86)/liboculus or an absolute
+// path.
+FMT_LIB_DIR:STRING=lib
+
+//Build a module instead of a traditional library.
+FMT_MODULE:BOOL=OFF
+
+//Include core requiring OS (Windows/Posix)
+FMT_OS:BOOL=ON
+
+//Enable extra warnings and expensive tests.
+FMT_PEDANTIC:BOOL=OFF
+
+//Installation directory for pkgconfig (.pc) files, a relative
+// path that will be joined with C:/Program Files (x86)/liboculus
+// or an absolute path.
+FMT_PKGCONFIG_DIR:STRING=lib/pkgconfig
+
+//Value Computed by CMake
+FMT_SOURCE_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/fmt-src
+
+//Expose headers with marking them as system.
+FMT_SYSTEM_HEADERS:BOOL=OFF
+
+//Generate the test target.
+FMT_TEST:BOOL=OFF
+
+//Halt the compilation with an error on compiler warnings.
+FMT_WERROR:BOOL=OFF
+
+//Git command line client
+GIT_EXECUTABLE:FILEPATH=D:/Program Files/Git/cmd/git.exe
+
+//Fetch fmt/spdlog if not found
+LIBOCULUS_FETCH_DEPS:BOOL=ON
+
+//Always fetch fmt/spdlog (ignore system)
+LIBOCULUS_FORCE_FETCH_DEPS:BOOL=ON
+
+//Build all artifacts
+SPDLOG_BUILD_ALL:BOOL=OFF
+
+//Build benchmarks (Requires https://github.com/google/benchmark.git
+// to be installed)
+SPDLOG_BUILD_BENCH:BOOL=OFF
+
+//Build example
+SPDLOG_BUILD_EXAMPLE:BOOL=OFF
+
+//Build header only example
+SPDLOG_BUILD_EXAMPLE_HO:BOOL=OFF
+
+//Build position independent code (-fPIC)
+SPDLOG_BUILD_PIC:BOOL=OFF
+
+//Build shared library
+SPDLOG_BUILD_SHARED:BOOL=OFF
+
+//Build tests
+SPDLOG_BUILD_TESTS:BOOL=OFF
+
+//Build tests using the header only version
+SPDLOG_BUILD_TESTS_HO:BOOL=OFF
+
+//Enable compiler warnings
+SPDLOG_BUILD_WARNINGS:BOOL=OFF
+
+//non supported option
+SPDLOG_CLOCK_COARSE:BOOL=OFF
+
+//Disable default logger creation
+SPDLOG_DISABLE_DEFAULT_LOGGER:BOOL=OFF
+
+//Build static or shared library using precompiled header to speed
+// up compilation time
+SPDLOG_ENABLE_PCH:BOOL=OFF
+
+//Use external fmt library instead of bundled
+SPDLOG_FMT_EXTERNAL:BOOL=ON
+
+//Use external fmt header-only library instead of bundled
+SPDLOG_FMT_EXTERNAL_HO:BOOL=OFF
+
+//Generate the install target
+SPDLOG_INSTALL:BOOL=OFF
+
+//prevent spdlog from using of std::atomic log levels (use only
+// if your code never modifies log levels concurrently
+SPDLOG_NO_ATOMIC_LEVELS:BOOL=OFF
+
+//Compile with -fno-exceptions. Call abort() on any spdlog exceptions
+SPDLOG_NO_EXCEPTIONS:BOOL=OFF
+
+//prevent spdlog from querying the thread id on each log call if
+// thread id is not needed
+SPDLOG_NO_THREAD_ID:BOOL=OFF
+
+//prevent spdlog from using thread local storage
+SPDLOG_NO_TLS:BOOL=OFF
+
+//Prevent from child processes to inherit log file descriptors
+SPDLOG_PREVENT_CHILD_FD:BOOL=OFF
+
+//Enable address sanitizer in tests
+SPDLOG_SANITIZE_ADDRESS:BOOL=OFF
+
+//Include as system headers (skip for clang-tidy).
+SPDLOG_SYSTEM_INCLUDES:BOOL=OFF
+
+//run clang-tidy
+SPDLOG_TIDY:BOOL=OFF
+
+//Use std::format instead of fmt library.
+SPDLOG_USE_STD_FORMAT:BOOL=OFF
+
+//Support wchar filenames
+SPDLOG_WCHAR_FILENAMES:BOOL=OFF
+
+//Support wchar api
+SPDLOG_WCHAR_SUPPORT:BOOL=OFF
+
+//The directory containing a CMake configuration file for boost_headers.
+boost_headers_DIR:PATH=D:/software/anaconda3/Library/lib/cmake/boost_headers-1.82.0
+
+//The directory containing a CMake configuration file for boost_system.
+boost_system_DIR:PATH=D:/software/anaconda3/Library/lib/cmake/boost_system-1.82.0
+
+//Value Computed by CMake
+liboculus_BINARY_DIR:STATIC=F:/Projects/liboculus/build_clean
+
+//Value Computed by CMake
+liboculus_IS_TOP_LEVEL:STATIC=ON
+
+//Value Computed by CMake
+liboculus_SOURCE_DIR:STATIC=F:/Projects/liboculus
+
+//Dependencies for the target
+oculus_LIB_DEPENDS:STATIC=general;fmt::fmt;general;spdlog::spdlog;general;Ws2_32;
+
+//Value Computed by CMake
+spdlog_BINARY_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/spdlog-build
+
+//Value Computed by CMake
+spdlog_IS_TOP_LEVEL:STATIC=OFF
+
+//Dependencies for the target
+spdlog_LIB_DEPENDS:STATIC=general;fmt::fmt;
+
+//Value Computed by CMake
+spdlog_SOURCE_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/spdlog-src
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//ADVANCED property for variable: Boost_DIR
+Boost_DIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_AR
+CMAKE_AR-ADVANCED:INTERNAL=1
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=f:/Projects/liboculus/build_clean
+//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=28
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=0
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cmake.exe
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cpack.exe
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=C:/Program Files/CMake/bin/ctest.exe
+//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
+//ADVANCED property for variable: CMAKE_CXX_STANDARD_LIBRARIES
+CMAKE_CXX_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS
+CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
+CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
+CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
+CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
+CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_STANDARD_LIBRARIES
+CMAKE_C_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
+//Executable file format
+CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown
+//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
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Visual Studio 17 2022
+//Generator instance identifier.
+CMAKE_GENERATOR_INSTANCE:INTERNAL=d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Test CMAKE_HAVE_LIBC_PTHREAD
+CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=
+//Have library pthreads
+CMAKE_HAVE_PTHREADS_CREATE:INTERNAL=
+//Have library pthread
+CMAKE_HAVE_PTHREAD_CREATE:INTERNAL=
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=F:/Projects/liboculus
+//ADVANCED property for variable: CMAKE_INSTALL_BINDIR
+CMAKE_INSTALL_BINDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_DATADIR
+CMAKE_INSTALL_DATADIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_DATAROOTDIR
+CMAKE_INSTALL_DATAROOTDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_DOCDIR
+CMAKE_INSTALL_DOCDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_INCLUDEDIR
+CMAKE_INSTALL_INCLUDEDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_INFODIR
+CMAKE_INSTALL_INFODIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_LIBDIR
+CMAKE_INSTALL_LIBDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_LIBEXECDIR
+CMAKE_INSTALL_LIBEXECDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_LOCALEDIR
+CMAKE_INSTALL_LOCALEDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_LOCALSTATEDIR
+CMAKE_INSTALL_LOCALSTATEDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_MANDIR
+CMAKE_INSTALL_MANDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_OLDINCLUDEDIR
+CMAKE_INSTALL_OLDINCLUDEDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_RUNSTATEDIR
+CMAKE_INSTALL_RUNSTATEDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_SBINDIR
+CMAKE_INSTALL_SBINDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_SHAREDSTATEDIR
+CMAKE_INSTALL_SHAREDSTATEDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_INSTALL_SYSCONFDIR
+CMAKE_INSTALL_SYSCONFDIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_LINKER
+CMAKE_LINKER-ADVANCED:INTERNAL=1
+//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
+//ADVANCED property for variable: CMAKE_MT
+CMAKE_MT-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=3
+//Platform information initialized
+CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
+//noop for ranlib
+CMAKE_RANLIB:INTERNAL=:
+//ADVANCED property for variable: CMAKE_RC_COMPILER
+CMAKE_RC_COMPILER-ADVANCED:INTERNAL=1
+CMAKE_RC_COMPILER_WORKS:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RC_FLAGS
+CMAKE_RC_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RC_FLAGS_DEBUG
+CMAKE_RC_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RC_FLAGS_MINSIZEREL
+CMAKE_RC_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RC_FLAGS_RELEASE
+CMAKE_RC_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RC_FLAGS_RELWITHDEBINFO
+CMAKE_RC_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=C:/Program Files/CMake/share/cmake-3.28
+//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
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+//Details about finding Boost
+FIND_PACKAGE_MESSAGE_DETAILS_Boost:INTERNAL=[D:/software/anaconda3/Library/lib/cmake/Boost-1.82.0/BoostConfig.cmake][cfound components: system ][v1.82.0(1.57)]
+//Details about finding Threads
+FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()]
+//ADVANCED property for variable: GIT_EXECUTABLE
+GIT_EXECUTABLE-ADVANCED:INTERNAL=1
+//CMAKE_INSTALL_PREFIX during last run
+_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX:INTERNAL=C:/Program Files (x86)/liboculus
+//ADVANCED property for variable: boost_headers_DIR
+boost_headers_DIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: boost_system_DIR
+boost_system_DIR-ADVANCED:INTERNAL=1
+
diff --git a/build_clean/CMakeFiles/3.28.0/CMakeCCompiler.cmake b/build_clean/CMakeFiles/3.28.0/CMakeCCompiler.cmake
new file mode 100644
index 0000000..27de546
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CMakeCCompiler.cmake
@@ -0,0 +1,74 @@
+set(CMAKE_C_COMPILER "d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/cl.exe")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "MSVC")
+set(CMAKE_C_COMPILER_VERSION "19.41.34120.0")
+set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "90")
+set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "OFF")
+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")
+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 "")
+
+set(CMAKE_C_PLATFORM_ID "Windows")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_COMPILER_FRONTEND_VARIANT "MSVC")
+set(CMAKE_C_SIMULATE_VERSION "")
+set(CMAKE_C_COMPILER_ARCHITECTURE_ID x64)
+
+set(MSVC_C_ARCHITECTURE_ID x64)
+
+set(CMAKE_AR "D:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/lib.exe")
+set(CMAKE_C_COMPILER_AR "")
+set(CMAKE_RANLIB ":")
+set(CMAKE_C_COMPILER_RANLIB "")
+set(CMAKE_LINKER "D:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/link.exe")
+set(CMAKE_MT "CMAKE_MT-NOTFOUND")
+set(CMAKE_TAPI "")
+set(CMAKE_COMPILER_IS_GNUCC )
+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 "")
+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 "")
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/build_clean/CMakeFiles/3.28.0/CMakeCXXCompiler.cmake b/build_clean/CMakeFiles/3.28.0/CMakeCXXCompiler.cmake
new file mode 100644
index 0000000..2f17d09
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CMakeCXXCompiler.cmake
@@ -0,0 +1,85 @@
+set(CMAKE_CXX_COMPILER "d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/cl.exe")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "MSVC")
+set(CMAKE_CXX_COMPILER_VERSION "19.41.34120.0")
+set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
+set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "OFF")
+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")
+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_CXX_PLATFORM_ID "Windows")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "MSVC")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+set(CMAKE_CXX_COMPILER_ARCHITECTURE_ID x64)
+
+set(MSVC_CXX_ARCHITECTURE_ID x64)
+
+set(CMAKE_AR "D:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/lib.exe")
+set(CMAKE_CXX_COMPILER_AR "")
+set(CMAKE_RANLIB ":")
+set(CMAKE_CXX_COMPILER_RANLIB "")
+set(CMAKE_LINKER "D:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/link.exe")
+set(CMAKE_MT "CMAKE_MT-NOTFOUND")
+set(CMAKE_TAPI "")
+set(CMAKE_COMPILER_IS_GNUCXX )
+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 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 "")
+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 "")
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/build_clean/CMakeFiles/3.28.0/CMakeDetermineCompilerABI_C.bin b/build_clean/CMakeFiles/3.28.0/CMakeDetermineCompilerABI_C.bin
new file mode 100644
index 0000000..792a71e
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CMakeDetermineCompilerABI_C.bin differ
diff --git a/build_clean/CMakeFiles/3.28.0/CMakeDetermineCompilerABI_CXX.bin b/build_clean/CMakeFiles/3.28.0/CMakeDetermineCompilerABI_CXX.bin
new file mode 100644
index 0000000..6060828
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CMakeDetermineCompilerABI_CXX.bin differ
diff --git a/build_clean/CMakeFiles/3.28.0/CMakeRCCompiler.cmake b/build_clean/CMakeFiles/3.28.0/CMakeRCCompiler.cmake
new file mode 100644
index 0000000..0f61961
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CMakeRCCompiler.cmake
@@ -0,0 +1,6 @@
+set(CMAKE_RC_COMPILER "rc")
+set(CMAKE_RC_COMPILER_ARG1 "")
+set(CMAKE_RC_COMPILER_LOADED 1)
+set(CMAKE_RC_SOURCE_FILE_EXTENSIONS rc;RC)
+set(CMAKE_RC_OUTPUT_EXTENSION .res)
+set(CMAKE_RC_COMPILER_ENV_VAR "RC")
diff --git a/build_clean/CMakeFiles/3.28.0/CMakeSystem.cmake b/build_clean/CMakeFiles/3.28.0/CMakeSystem.cmake
new file mode 100644
index 0000000..88ce365
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Windows-10.0.26200")
+set(CMAKE_HOST_SYSTEM_NAME "Windows")
+set(CMAKE_HOST_SYSTEM_VERSION "10.0.26200")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "AMD64")
+
+
+
+set(CMAKE_SYSTEM "Windows-10.0.26200")
+set(CMAKE_SYSTEM_NAME "Windows")
+set(CMAKE_SYSTEM_VERSION "10.0.26200")
+set(CMAKE_SYSTEM_PROCESSOR "AMD64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/CMakeCCompilerId.c b/build_clean/CMakeFiles/3.28.0/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 0000000..0a0ec9b
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,880 @@
+#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__)
+# 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(__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 "]";
+
+
+
+#if !defined(__STDC__) && !defined(__clang__)
+# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__)
+# define C_VERSION "90"
+# else
+# define C_VERSION
+# endif
+#elif __STDC_VERSION__ > 201710L
+# define C_VERSION "23"
+#elif __STDC_VERSION__ >= 201710L
+# define C_VERSION "17"
+#elif __STDC_VERSION__ >= 201000L
+# define C_VERSION "11"
+#elif __STDC_VERSION__ >= 199901L
+# 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/build_clean/CMakeFiles/3.28.0/CompilerIdC/CompilerIdC.exe b/build_clean/CMakeFiles/3.28.0/CompilerIdC/CompilerIdC.exe
new file mode 100644
index 0000000..09185c7
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdC/CompilerIdC.exe differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/CompilerIdC.vcxproj b/build_clean/CMakeFiles/3.28.0/CompilerIdC/CompilerIdC.vcxproj
new file mode 100644
index 0000000..38f433e
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdC/CompilerIdC.vcxproj
@@ -0,0 +1,72 @@
+
+
+
+
+ Debug
+ x64
+
+
+
+ {CAE07175-D007-4FC3-BFE8-47B392814159}
+ CompilerIdC
+ Win32Proj
+
+
+ 10.0.22621.0
+
+
+
+
+
+
+
+
+ x64
+
+
+ Application
+ v143
+
+ MultiByte
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.30319.1
+ .\
+ $(Configuration)\
+ false
+
+
+
+ Disabled
+ %(PreprocessorDefinitions)
+ false
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+
+ TurnOffAllWarnings
+
+
+
+
+
+ false
+ Console
+
+
+
+ for %%i in (cl.exe) do %40echo CMAKE_C_COMPILER=%%~$PATH:i
+
+
+
+
+
+
+
+
+
+
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CMakeCCompilerId.obj b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CMakeCCompilerId.obj
new file mode 100644
index 0000000..0bc3247
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CMakeCCompilerId.obj differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.exe.recipe b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.exe.recipe
new file mode 100644
index 0000000..1005495
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.exe.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CompilerIdC\CompilerIdC.exe
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.command.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.command.1.tlog
new file mode 100644
index 0000000..b676cfa
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.command.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.read.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.read.1.tlog
new file mode 100644
index 0000000..250e723
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.read.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.write.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.write.1.tlog
new file mode 100644
index 0000000..cf3e6d8
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CL.write.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/Cl.items.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/Cl.items.tlog
new file mode 100644
index 0000000..7619427
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/Cl.items.tlog
@@ -0,0 +1 @@
+F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CompilerIdC\CMakeCCompilerId.c;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CompilerIdC\Debug\CMakeCCompilerId.obj
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CompilerIdC.lastbuildstate b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CompilerIdC.lastbuildstate
new file mode 100644
index 0000000..236a30e
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/CompilerIdC.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CompilerIdC\|
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.command.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.command.1.tlog
new file mode 100644
index 0000000..9525783
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.command.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.read.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.read.1.tlog
new file mode 100644
index 0000000..707ee38
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.read.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.secondary.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.secondary.1.tlog
new file mode 100644
index 0000000..413f197
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.secondary.1.tlog
@@ -0,0 +1 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\COMPILERIDC\DEBUG\CMAKECCOMPILERID.OBJ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.write.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.write.1.tlog
new file mode 100644
index 0000000..2b25b48
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/CompilerIdC.tlog/link.write.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/vcpkg.applocal.log b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/vcpkg.applocal.log
new file mode 100644
index 0000000..e02abfc
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdC/Debug/vcpkg.applocal.log
@@ -0,0 +1 @@
+
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CMakeCXXCompilerId.cpp b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 0000000..9c9c90e
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,869 @@
+/* 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(__COMO__)
+# define COMPILER_ID "Comeau"
+ /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif 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__)
+# 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(__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 "]";
+
+
+
+#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L
+# if defined(__INTEL_CXX11_MODE__)
+# if defined(__cpp_aggregate_nsdmi)
+# define CXX_STD 201402L
+# else
+# define CXX_STD 201103L
+# endif
+# else
+# define CXX_STD 199711L
+# endif
+#elif defined(_MSC_VER) && defined(_MSVC_LANG)
+# define CXX_STD _MSVC_LANG
+#else
+# define CXX_STD __cplusplus
+#endif
+
+const char* info_language_standard_default = "INFO" ":" "standard_default["
+#if CXX_STD > 202002L
+ "23"
+#elif CXX_STD > 201703L
+ "20"
+#elif CXX_STD >= 201703L
+ "17"
+#elif CXX_STD >= 201402L
+ "14"
+#elif CXX_STD >= 201103L
+ "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/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CompilerIdCXX.exe b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CompilerIdCXX.exe
new file mode 100644
index 0000000..6168d9f
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CompilerIdCXX.exe differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CompilerIdCXX.vcxproj b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CompilerIdCXX.vcxproj
new file mode 100644
index 0000000..f180454
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CompilerIdCXX.vcxproj
@@ -0,0 +1,72 @@
+
+
+
+
+ Debug
+ x64
+
+
+
+ {CAE07175-D007-4FC3-BFE8-47B392814159}
+ CompilerIdCXX
+ Win32Proj
+
+
+ 10.0.22621.0
+
+
+
+
+
+
+
+
+ x64
+
+
+ Application
+ v143
+
+ MultiByte
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.30319.1
+ .\
+ $(Configuration)\
+ false
+
+
+
+ Disabled
+ %(PreprocessorDefinitions)
+ false
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+
+ TurnOffAllWarnings
+
+
+
+
+
+ false
+ Console
+
+
+
+ for %%i in (cl.exe) do %40echo CMAKE_CXX_COMPILER=%%~$PATH:i
+
+
+
+
+
+
+
+
+
+
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CMakeCXXCompilerId.obj b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CMakeCXXCompilerId.obj
new file mode 100644
index 0000000..07bcf9e
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CMakeCXXCompilerId.obj differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.exe.recipe b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.exe.recipe
new file mode 100644
index 0000000..71bb290
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.exe.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CompilerIdCXX\CompilerIdCXX.exe
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.command.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.command.1.tlog
new file mode 100644
index 0000000..6289884
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.command.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.read.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.read.1.tlog
new file mode 100644
index 0000000..973e819
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.read.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.write.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.write.1.tlog
new file mode 100644
index 0000000..9e23d2d
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CL.write.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/Cl.items.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/Cl.items.tlog
new file mode 100644
index 0000000..3ebc2d5
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/Cl.items.tlog
@@ -0,0 +1 @@
+F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CompilerIdCXX\CMakeCXXCompilerId.cpp;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CompilerIdCXX\Debug\CMakeCXXCompilerId.obj
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CompilerIdCXX.lastbuildstate b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CompilerIdCXX.lastbuildstate
new file mode 100644
index 0000000..371f04e
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/CompilerIdCXX.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CompilerIdCXX\|
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.command.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.command.1.tlog
new file mode 100644
index 0000000..42232bb
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.command.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.read.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.read.1.tlog
new file mode 100644
index 0000000..f832eed
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.read.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.secondary.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.secondary.1.tlog
new file mode 100644
index 0000000..b9c514b
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.secondary.1.tlog
@@ -0,0 +1 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\COMPILERIDCXX\DEBUG\CMAKECXXCOMPILERID.OBJ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.write.1.tlog b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.write.1.tlog
new file mode 100644
index 0000000..59093e2
Binary files /dev/null and b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/CompilerIdCXX.tlog/link.write.1.tlog differ
diff --git a/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/vcpkg.applocal.log b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/vcpkg.applocal.log
new file mode 100644
index 0000000..e02abfc
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/Debug/vcpkg.applocal.log
@@ -0,0 +1 @@
+
diff --git a/build_clean/CMakeFiles/3.28.0/VCTargetsPath.txt b/build_clean/CMakeFiles/3.28.0/VCTargetsPath.txt
new file mode 100644
index 0000000..baf8bdf
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/VCTargetsPath.txt
@@ -0,0 +1 @@
+d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Microsoft/VC/v170
diff --git a/build_clean/CMakeFiles/3.28.0/VCTargetsPath.vcxproj b/build_clean/CMakeFiles/3.28.0/VCTargetsPath.vcxproj
new file mode 100644
index 0000000..ccb7d62
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/VCTargetsPath.vcxproj
@@ -0,0 +1,31 @@
+
+
+
+
+ Debug
+ x64
+
+
+
+ {F3FC6D86-508D-3FB1-96D2-995F08B142EC}
+ Win32Proj
+ x64
+ 10.0.22621.0
+
+
+
+ x64
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+ echo VCTargetsPath=$(VCTargetsPath)
+
+
+
+
diff --git a/build_clean/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe b/build_clean/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe
new file mode 100644
index 0000000..7b50d14
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\x64\Debug\VCTargetsPath
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate b/build_clean/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate
new file mode 100644
index 0000000..740f916
--- /dev/null
+++ b/build_clean/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\|
diff --git a/build_clean/CMakeFiles/CMakeConfigureLog.yaml b/build_clean/CMakeFiles/CMakeConfigureLog.yaml
new file mode 100644
index 0000000..eaa0de0
--- /dev/null
+++ b/build_clean/CMakeFiles/CMakeConfigureLog.yaml
@@ -0,0 +1,452 @@
+
+---
+events:
+ -
+ kind: "message-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake:233 (message)"
+ - "CMakeLists.txt:2 (project)"
+ message: |
+ The system is: Windows - 10.0.26200 - AMD64
+ -
+ kind: "message-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:17 (message)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineCCompiler.cmake:123 (CMAKE_DETERMINE_COMPILER_ID)"
+ - "CMakeLists.txt:2 (project)"
+ message: |
+ Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
+ Compiler:
+ Build flags:
+ Id flags:
+
+ The output was:
+ 0
+ 适用于 .NET Framework MSBuild 版本 17.11.2+c078802d4
+ 生成启动时间为 2026/02/04 1:13:00。
+
+ 节点 1 上的项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdC\\CompilerIdC.vcxproj”(默认目标)。
+ PrepareForBuild:
+ 正在创建目录“Debug\\”。
+ 已启用结构化输出。编译器诊断的格式设置将反映错误层次结构。有关详细信息,请参阅 https://aka.ms/cpp/structured-output。
+ 正在创建目录“Debug\\CompilerIdC.tlog\\”。
+ InitializeBuildStatus:
+ 正在创建“Debug\\CompilerIdC.tlog\\unsuccessfulbuild”,因为已指定“AlwaysCreate”。
+ 正在对“Debug\\CompilerIdC.tlog\\unsuccessfulbuild”执行 Touch 任务。
+ VcpkgTripletSelection:
+ Using triplet "x64-windows" from "D:\\vcpkg\\installed\\x64-windows\\"
+ Using normalized configuration "Release"
+ ClCompile:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\CL.exe /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /nologo /W0 /WX- /diagnostics:column /Od /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"Debug\\\\" /Fd"Debug\\vc143.pdb" /external:W0 /Gd /TC /FC /errorReport:queue CMakeCCompilerId.c
+ CMakeCCompilerId.c
+ Link:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:".\\CompilerIdC.exe" /INCREMENTAL:NO /NOLOGO /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib" /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib\\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib "D:\\vcpkg\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:".\\CompilerIdC.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\\CompilerIdC.lib" /MACHINE:X64 Debug\\CMakeCCompilerId.obj
+ CompilerIdC.vcxproj -> F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdC\\CompilerIdC.exe
+ AppLocalFromInstalled:
+ pwsh.exe -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdC\\CompilerIdC.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "Debug\\CompilerIdC.tlog\\CompilerIdC.write.1u.tlog" "Debug\\vcpkg.applocal.log"
+ 'pwsh.exe' �����ڲ����ⲿ���Ҳ���ǿ����еij���
+ �����������
+ 命令“pwsh.exe -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdC\\CompilerIdC.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "Debug\\CompilerIdC.tlog\\CompilerIdC.write.1u.tlog" "Debug\\vcpkg.applocal.log"”已退出,代码为 9009。
+ "C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdC\\CompilerIdC.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "Debug\\CompilerIdC.tlog\\CompilerIdC.write.1u.tlog" "Debug\\vcpkg.applocal.log"
+ PostBuildEvent:
+ for %%i in (cl.exe) do @echo CMAKE_C_COMPILER=%%~$PATH:i
+ :VCEnd
+ CMAKE_C_COMPILER=d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\Hostx64\\x64\\cl.exe
+ FinalizeBuildStatus:
+ 正在删除文件“Debug\\CompilerIdC.tlog\\unsuccessfulbuild”。
+ 正在对“Debug\\CompilerIdC.tlog\\CompilerIdC.lastbuildstate”执行 Touch 任务。
+ 已完成生成项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdC\\CompilerIdC.vcxproj”(默认目标)的操作。
+
+ 已成功生成。
+ 0 个警告
+ 0 个错误
+
+ 已用时间 00:00:01.13
+
+
+ Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CompilerIdC.exe"
+
+ Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CompilerIdC.vcxproj"
+
+ The C compiler identification is MSVC, found in:
+ F:/Projects/liboculus/build_clean/CMakeFiles/3.28.0/CompilerIdC/CompilerIdC.exe
+
+ -
+ kind: "message-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:17 (message)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineCXXCompiler.cmake:126 (CMAKE_DETERMINE_COMPILER_ID)"
+ - "CMakeLists.txt:2 (project)"
+ message: |
+ Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
+ Compiler:
+ Build flags:
+ Id flags:
+
+ The output was:
+ 0
+ 适用于 .NET Framework MSBuild 版本 17.11.2+c078802d4
+ 生成启动时间为 2026/02/04 1:13:02。
+
+ 节点 1 上的项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdCXX\\CompilerIdCXX.vcxproj”(默认目标)。
+ PrepareForBuild:
+ 正在创建目录“Debug\\”。
+ 已启用结构化输出。编译器诊断的格式设置将反映错误层次结构。有关详细信息,请参阅 https://aka.ms/cpp/structured-output。
+ 正在创建目录“Debug\\CompilerIdCXX.tlog\\”。
+ InitializeBuildStatus:
+ 正在创建“Debug\\CompilerIdCXX.tlog\\unsuccessfulbuild”,因为已指定“AlwaysCreate”。
+ 正在对“Debug\\CompilerIdCXX.tlog\\unsuccessfulbuild”执行 Touch 任务。
+ VcpkgTripletSelection:
+ Using triplet "x64-windows" from "D:\\vcpkg\\installed\\x64-windows\\"
+ Using normalized configuration "Release"
+ ClCompile:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\CL.exe /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /nologo /W0 /WX- /diagnostics:column /Od /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"Debug\\\\" /Fd"Debug\\vc143.pdb" /external:W0 /Gd /TP /FC /errorReport:queue CMakeCXXCompilerId.cpp
+ CMakeCXXCompilerId.cpp
+ Link:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:".\\CompilerIdCXX.exe" /INCREMENTAL:NO /NOLOGO /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib" /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib\\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib "D:\\vcpkg\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:".\\CompilerIdCXX.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\\CompilerIdCXX.lib" /MACHINE:X64 Debug\\CMakeCXXCompilerId.obj
+ CompilerIdCXX.vcxproj -> F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdCXX\\CompilerIdCXX.exe
+ AppLocalFromInstalled:
+ pwsh.exe -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdCXX\\CompilerIdCXX.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "Debug\\CompilerIdCXX.tlog\\CompilerIdCXX.write.1u.tlog" "Debug\\vcpkg.applocal.log"
+ 'pwsh.exe' �����ڲ����ⲿ���Ҳ���ǿ����еij���
+ �����������
+ 命令“pwsh.exe -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdCXX\\CompilerIdCXX.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "Debug\\CompilerIdCXX.tlog\\CompilerIdCXX.write.1u.tlog" "Debug\\vcpkg.applocal.log"”已退出,代码为 9009。
+ "C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdCXX\\CompilerIdCXX.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "Debug\\CompilerIdCXX.tlog\\CompilerIdCXX.write.1u.tlog" "Debug\\vcpkg.applocal.log"
+ PostBuildEvent:
+ for %%i in (cl.exe) do @echo CMAKE_CXX_COMPILER=%%~$PATH:i
+ :VCEnd
+ CMAKE_CXX_COMPILER=d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\Hostx64\\x64\\cl.exe
+ FinalizeBuildStatus:
+ 正在删除文件“Debug\\CompilerIdCXX.tlog\\unsuccessfulbuild”。
+ 正在对“Debug\\CompilerIdCXX.tlog\\CompilerIdCXX.lastbuildstate”执行 Touch 任务。
+ 已完成生成项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\3.28.0\\CompilerIdCXX\\CompilerIdCXX.vcxproj”(默认目标)的操作。
+
+ 已成功生成。
+ 0 个警告
+ 0 个错误
+
+ 已用时间 00:00:01.08
+
+
+ Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CompilerIdCXX.exe"
+
+ Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CompilerIdCXX.vcxproj"
+
+ The CXX compiler identification is MSVC, found in:
+ F:/Projects/liboculus/build_clean/CMakeFiles/3.28.0/CompilerIdCXX/CompilerIdCXX.exe
+
+ -
+ kind: "try_compile-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:57 (try_compile)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+ - "CMakeLists.txt:2 (project)"
+ checks:
+ - "Detecting C compiler ABI info"
+ directories:
+ source: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-8zpwbh"
+ binary: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-8zpwbh"
+ cmakeVariables:
+ CMAKE_C_FLAGS: "/DWIN32 /D_WINDOWS /W3"
+ CMAKE_C_FLAGS_DEBUG: "/MDd /Zi /Ob0 /Od /RTC1"
+ CMAKE_EXE_LINKER_FLAGS: "/machine:x64"
+ buildResult:
+ variable: "CMAKE_C_ABI_COMPILED"
+ cached: true
+ stdout: |
+ Change Dir: 'F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-8zpwbh'
+
+ Run Build Command(s): "d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/amd64/MSBuild.exe" cmTC_f3e63.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:n
+ 适用于 .NET Framework MSBuild 版本 17.11.2+c078802d4
+ 生成启动时间为 2026/02/04 1:13:03。
+
+ 节点 1 上的项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-8zpwbh\\cmTC_f3e63.vcxproj”(默认目标)。
+ PrepareForBuild:
+ 正在创建目录“cmTC_f3e63.dir\\Debug\\”。
+ 已启用结构化输出。编译器诊断的格式设置将反映错误层次结构。有关详细信息,请参阅 https://aka.ms/cpp/structured-output。
+ 正在创建目录“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-8zpwbh\\Debug\\”。
+ 正在创建目录“cmTC_f3e63.dir\\Debug\\cmTC_f3e63.tlog\\”。
+ InitializeBuildStatus:
+ 正在创建“cmTC_f3e63.dir\\Debug\\cmTC_f3e63.tlog\\unsuccessfulbuild”,因为已指定“AlwaysCreate”。
+ 正在对“cmTC_f3e63.dir\\Debug\\cmTC_f3e63.tlog\\unsuccessfulbuild”执行 Touch 任务。
+ VcpkgTripletSelection:
+ Using triplet "x64-windows" from "D:\\vcpkg\\installed\\x64-windows\\"
+ Using normalized configuration "Release"
+ ClCompile:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\CL.exe /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_f3e63.dir\\Debug\\\\" /Fd"cmTC_f3e63.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "C:\\Program Files\\CMake\\share\\cmake-3.28\\Modules\\CMakeCCompilerABI.c"
+ 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.41.34120 版
+ 版权所有(C) Microsoft Corporation。保留所有权利。
+ cl /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_f3e63.dir\\Debug\\\\" /Fd"cmTC_f3e63.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "C:\\Program Files\\CMake\\share\\cmake-3.28\\Modules\\CMakeCCompilerABI.c"
+ CMakeCCompilerABI.c
+ Link:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:"F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-8zpwbh\\Debug\\cmTC_f3e63.exe" /INCREMENTAL /ILK:"cmTC_f3e63.dir\\Debug\\cmTC_f3e63.ilk" /NOLOGO /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib" /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib\\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib "D:\\vcpkg\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-8zpwbh/Debug/cmTC_f3e63.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-8zpwbh/Debug/cmTC_f3e63.lib" /MACHINE:X64 /machine:x64 cmTC_f3e63.dir\\Debug\\CMakeCCompilerABI.obj
+ cmTC_f3e63.vcxproj -> F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-8zpwbh\\Debug\\cmTC_f3e63.exe
+ AppLocalFromInstalled:
+ pwsh.exe -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-8zpwbh\\Debug\\cmTC_f3e63.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "cmTC_f3e63.dir\\Debug\\cmTC_f3e63.tlog\\cmTC_f3e63.write.1u.tlog" "cmTC_f3e63.dir\\Debug\\vcpkg.applocal.log"
+ 'pwsh.exe' �����ڲ����ⲿ���Ҳ���ǿ����еij���
+ �����������
+ 命令“pwsh.exe -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-8zpwbh\\Debug\\cmTC_f3e63.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "cmTC_f3e63.dir\\Debug\\cmTC_f3e63.tlog\\cmTC_f3e63.write.1u.tlog" "cmTC_f3e63.dir\\Debug\\vcpkg.applocal.log"”已退出,代码为 9009。
+ "C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-8zpwbh\\Debug\\cmTC_f3e63.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "cmTC_f3e63.dir\\Debug\\cmTC_f3e63.tlog\\cmTC_f3e63.write.1u.tlog" "cmTC_f3e63.dir\\Debug\\vcpkg.applocal.log"
+ FinalizeBuildStatus:
+ 正在删除文件“cmTC_f3e63.dir\\Debug\\cmTC_f3e63.tlog\\unsuccessfulbuild”。
+ 正在对“cmTC_f3e63.dir\\Debug\\cmTC_f3e63.tlog\\cmTC_f3e63.lastbuildstate”执行 Touch 任务。
+ 已完成生成项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-8zpwbh\\cmTC_f3e63.vcxproj”(默认目标)的操作。
+
+ 已成功生成。
+ 0 个警告
+ 0 个错误
+
+ 已用时间 00:00:01.19
+
+ exitCode: 0
+ -
+ kind: "try_compile-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:57 (try_compile)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
+ - "CMakeLists.txt:2 (project)"
+ checks:
+ - "Detecting CXX compiler ABI info"
+ directories:
+ source: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-een2jc"
+ binary: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-een2jc"
+ cmakeVariables:
+ CMAKE_CXX_FLAGS: "/DWIN32 /D_WINDOWS /W3 /GR /EHsc"
+ CMAKE_CXX_FLAGS_DEBUG: "/MDd /Zi /Ob0 /Od /RTC1"
+ CMAKE_EXE_LINKER_FLAGS: "/machine:x64"
+ buildResult:
+ variable: "CMAKE_CXX_ABI_COMPILED"
+ cached: true
+ stdout: |
+ Change Dir: 'F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-een2jc'
+
+ Run Build Command(s): "d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/amd64/MSBuild.exe" cmTC_3eb39.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:n
+ 适用于 .NET Framework MSBuild 版本 17.11.2+c078802d4
+ 生成启动时间为 2026/02/04 1:13:04。
+
+ 节点 1 上的项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-een2jc\\cmTC_3eb39.vcxproj”(默认目标)。
+ PrepareForBuild:
+ 正在创建目录“cmTC_3eb39.dir\\Debug\\”。
+ 已启用结构化输出。编译器诊断的格式设置将反映错误层次结构。有关详细信息,请参阅 https://aka.ms/cpp/structured-output。
+ 正在创建目录“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-een2jc\\Debug\\”。
+ 正在创建目录“cmTC_3eb39.dir\\Debug\\cmTC_3eb39.tlog\\”。
+ InitializeBuildStatus:
+ 正在创建“cmTC_3eb39.dir\\Debug\\cmTC_3eb39.tlog\\unsuccessfulbuild”,因为已指定“AlwaysCreate”。
+ 正在对“cmTC_3eb39.dir\\Debug\\cmTC_3eb39.tlog\\unsuccessfulbuild”执行 Touch 任务。
+ VcpkgTripletSelection:
+ Using triplet "x64-windows" from "D:\\vcpkg\\installed\\x64-windows\\"
+ Using normalized configuration "Release"
+ ClCompile:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\CL.exe /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_3eb39.dir\\Debug\\\\" /Fd"cmTC_3eb39.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TP /errorReport:queue "C:\\Program Files\\CMake\\share\\cmake-3.28\\Modules\\CMakeCXXCompilerABI.cpp"
+ 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.41.34120 版
+ 版权所有(C) Microsoft Corporation。保留所有权利。
+ cl /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_3eb39.dir\\Debug\\\\" /Fd"cmTC_3eb39.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TP /errorReport:queue "C:\\Program Files\\CMake\\share\\cmake-3.28\\Modules\\CMakeCXXCompilerABI.cpp"
+ CMakeCXXCompilerABI.cpp
+ Link:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:"F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-een2jc\\Debug\\cmTC_3eb39.exe" /INCREMENTAL /ILK:"cmTC_3eb39.dir\\Debug\\cmTC_3eb39.ilk" /NOLOGO /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib" /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib\\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib "D:\\vcpkg\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-een2jc/Debug/cmTC_3eb39.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-een2jc/Debug/cmTC_3eb39.lib" /MACHINE:X64 /machine:x64 cmTC_3eb39.dir\\Debug\\CMakeCXXCompilerABI.obj
+ cmTC_3eb39.vcxproj -> F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-een2jc\\Debug\\cmTC_3eb39.exe
+ AppLocalFromInstalled:
+ pwsh.exe -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-een2jc\\Debug\\cmTC_3eb39.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "cmTC_3eb39.dir\\Debug\\cmTC_3eb39.tlog\\cmTC_3eb39.write.1u.tlog" "cmTC_3eb39.dir\\Debug\\vcpkg.applocal.log"
+ 'pwsh.exe' �����ڲ����ⲿ���Ҳ���ǿ����еij���
+ �����������
+ 命令“pwsh.exe -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-een2jc\\Debug\\cmTC_3eb39.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "cmTC_3eb39.dir\\Debug\\cmTC_3eb39.tlog\\cmTC_3eb39.write.1u.tlog" "cmTC_3eb39.dir\\Debug\\vcpkg.applocal.log"”已退出,代码为 9009。
+ "C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -ExecutionPolicy Bypass -noprofile -File "D:\\vcpkg\\scripts\\buildsystems\\msbuild\\applocal.ps1" "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-een2jc\\Debug\\cmTC_3eb39.exe" "D:\\vcpkg\\installed\\x64-windows\\bin" "cmTC_3eb39.dir\\Debug\\cmTC_3eb39.tlog\\cmTC_3eb39.write.1u.tlog" "cmTC_3eb39.dir\\Debug\\vcpkg.applocal.log"
+ FinalizeBuildStatus:
+ 正在删除文件“cmTC_3eb39.dir\\Debug\\cmTC_3eb39.tlog\\unsuccessfulbuild”。
+ 正在对“cmTC_3eb39.dir\\Debug\\cmTC_3eb39.tlog\\cmTC_3eb39.lastbuildstate”执行 Touch 任务。
+ 已完成生成项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-een2jc\\cmTC_3eb39.vcxproj”(默认目标)的操作。
+
+ 已成功生成。
+ 0 个警告
+ 0 个错误
+
+ 已用时间 00:00:01.14
+
+ exitCode: 0
+ -
+ kind: "try_compile-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake:101 (try_compile)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CheckCSourceCompiles.cmake:52 (cmake_check_source_compiles)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/FindThreads.cmake:97 (CHECK_C_SOURCE_COMPILES)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/FindThreads.cmake:163 (_threads_check_libc)"
+ - "build_clean/_deps/spdlog-src/CMakeLists.txt:144 (find_package)"
+ checks:
+ - "Performing Test CMAKE_HAVE_LIBC_PTHREAD"
+ directories:
+ source: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-lgzvql"
+ binary: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-lgzvql"
+ cmakeVariables:
+ CMAKE_C_FLAGS: "/DWIN32 /D_WINDOWS /W3"
+ CMAKE_C_FLAGS_DEBUG: "/MDd /Zi /Ob0 /Od /RTC1"
+ CMAKE_EXE_LINKER_FLAGS: "/machine:x64"
+ CMAKE_MODULE_PATH: "F:/Projects/liboculus/cmake"
+ buildResult:
+ variable: "CMAKE_HAVE_LIBC_PTHREAD"
+ cached: true
+ stdout: |
+ Change Dir: 'F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-lgzvql'
+
+ Run Build Command(s): "d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/amd64/MSBuild.exe" cmTC_5df91.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:n
+ 适用于 .NET Framework MSBuild 版本 17.11.2+c078802d4
+ 生成启动时间为 2026/02/04 1:13:32。
+
+ 节点 1 上的项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\cmTC_5df91.vcxproj”(默认目标)。
+ PrepareForBuild:
+ 正在创建目录“cmTC_5df91.dir\\Debug\\”。
+ 已启用结构化输出。编译器诊断的格式设置将反映错误层次结构。有关详细信息,请参阅 https://aka.ms/cpp/structured-output。
+ 正在创建目录“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\Debug\\”。
+ 正在创建目录“cmTC_5df91.dir\\Debug\\cmTC_5df91.tlog\\”。
+ InitializeBuildStatus:
+ 正在创建“cmTC_5df91.dir\\Debug\\cmTC_5df91.tlog\\unsuccessfulbuild”,因为已指定“AlwaysCreate”。
+ 正在对“cmTC_5df91.dir\\Debug\\cmTC_5df91.tlog\\unsuccessfulbuild”执行 Touch 任务。
+ VcpkgTripletSelection:
+ Using triplet "x64-windows" from "D:\\vcpkg\\installed\\x64-windows\\"
+ Using normalized configuration "Release"
+ ClCompile:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\CL.exe /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D CMAKE_HAVE_LIBC_PTHREAD /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_5df91.dir\\Debug\\\\" /Fd"cmTC_5df91.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\src.c"
+ 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.41.34120 版
+ 版权所有(C) Microsoft Corporation。保留所有权利。
+ cl /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D CMAKE_HAVE_LIBC_PTHREAD /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_5df91.dir\\Debug\\\\" /Fd"cmTC_5df91.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\src.c"
+ src.c
+ F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\src.c(1,10): error C1083: 无法打开包括文件: “pthread.h”: No such file or directory [F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\cmTC_5df91.vcxproj]
+ 已完成生成项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\cmTC_5df91.vcxproj”(默认目标)的操作 - 失败。
+
+ 生成失败。
+
+ “F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\cmTC_5df91.vcxproj”(默认目标) (1) ->
+ (ClCompile 目标) ->
+ F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\src.c(1,10): error C1083: 无法打开包括文件: “pthread.h”: No such file or directory [F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-lgzvql\\cmTC_5df91.vcxproj]
+
+ 0 个警告
+ 1 个错误
+
+ 已用时间 00:00:00.34
+
+ exitCode: 1
+ -
+ kind: "try_compile-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CheckLibraryExists.cmake:69 (try_compile)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/FindThreads.cmake:112 (CHECK_LIBRARY_EXISTS)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/FindThreads.cmake:175 (_threads_check_lib)"
+ - "build_clean/_deps/spdlog-src/CMakeLists.txt:144 (find_package)"
+ checks:
+ - "Looking for pthread_create in pthreads"
+ directories:
+ source: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-bpj1cy"
+ binary: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-bpj1cy"
+ cmakeVariables:
+ CMAKE_C_FLAGS: "/DWIN32 /D_WINDOWS /W3"
+ CMAKE_C_FLAGS_DEBUG: "/MDd /Zi /Ob0 /Od /RTC1"
+ CMAKE_EXE_LINKER_FLAGS: "/machine:x64"
+ CMAKE_MODULE_PATH: "F:/Projects/liboculus/cmake"
+ buildResult:
+ variable: "CMAKE_HAVE_PTHREADS_CREATE"
+ cached: true
+ stdout: |
+ Change Dir: 'F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-bpj1cy'
+
+ Run Build Command(s): "d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/amd64/MSBuild.exe" cmTC_5cdea.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:n
+ 适用于 .NET Framework MSBuild 版本 17.11.2+c078802d4
+ 生成启动时间为 2026/02/04 1:13:32。
+
+ 节点 1 上的项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\cmTC_5cdea.vcxproj”(默认目标)。
+ PrepareForBuild:
+ 正在创建目录“cmTC_5cdea.dir\\Debug\\”。
+ 已启用结构化输出。编译器诊断的格式设置将反映错误层次结构。有关详细信息,请参阅 https://aka.ms/cpp/structured-output。
+ 正在创建目录“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\Debug\\”。
+ 正在创建目录“cmTC_5cdea.dir\\Debug\\cmTC_5cdea.tlog\\”。
+ InitializeBuildStatus:
+ 正在创建“cmTC_5cdea.dir\\Debug\\cmTC_5cdea.tlog\\unsuccessfulbuild”,因为已指定“AlwaysCreate”。
+ 正在对“cmTC_5cdea.dir\\Debug\\cmTC_5cdea.tlog\\unsuccessfulbuild”执行 Touch 任务。
+ VcpkgTripletSelection:
+ Using triplet "x64-windows" from "D:\\vcpkg\\installed\\x64-windows\\"
+ Using normalized configuration "Release"
+ ClCompile:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\CL.exe /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D CHECK_FUNCTION_EXISTS=pthread_create /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_5cdea.dir\\Debug\\\\" /Fd"cmTC_5cdea.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\CheckFunctionExists.c"
+ 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.41.34120 版
+ 版权所有(C) Microsoft Corporation。保留所有权利。
+ cl /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D CHECK_FUNCTION_EXISTS=pthread_create /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_5cdea.dir\\Debug\\\\" /Fd"cmTC_5cdea.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\CheckFunctionExists.c"
+ CheckFunctionExists.c
+ Link:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:"F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\Debug\\cmTC_5cdea.exe" /INCREMENTAL /ILK:"cmTC_5cdea.dir\\Debug\\cmTC_5cdea.ilk" /NOLOGO /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib" /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib\\manual-link" pthreads.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib "D:\\vcpkg\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-bpj1cy/Debug/cmTC_5cdea.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-bpj1cy/Debug/cmTC_5cdea.lib" /MACHINE:X64 /machine:x64 cmTC_5cdea.dir\\Debug\\CheckFunctionExists.obj
+ LINK : fatal error LNK1104: 无法打开文件“pthreads.lib” [F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\cmTC_5cdea.vcxproj]
+ 已完成生成项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\cmTC_5cdea.vcxproj”(默认目标)的操作 - 失败。
+
+ 生成失败。
+
+ “F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\cmTC_5cdea.vcxproj”(默认目标) (1) ->
+ (Link 目标) ->
+ LINK : fatal error LNK1104: 无法打开文件“pthreads.lib” [F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-bpj1cy\\cmTC_5cdea.vcxproj]
+
+ 0 个警告
+ 1 个错误
+
+ 已用时间 00:00:00.44
+
+ exitCode: 1
+ -
+ kind: "try_compile-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CheckLibraryExists.cmake:69 (try_compile)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/FindThreads.cmake:112 (CHECK_LIBRARY_EXISTS)"
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/FindThreads.cmake:176 (_threads_check_lib)"
+ - "build_clean/_deps/spdlog-src/CMakeLists.txt:144 (find_package)"
+ checks:
+ - "Looking for pthread_create in pthread"
+ directories:
+ source: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-zxxd2x"
+ binary: "F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-zxxd2x"
+ cmakeVariables:
+ CMAKE_C_FLAGS: "/DWIN32 /D_WINDOWS /W3"
+ CMAKE_C_FLAGS_DEBUG: "/MDd /Zi /Ob0 /Od /RTC1"
+ CMAKE_EXE_LINKER_FLAGS: "/machine:x64"
+ CMAKE_MODULE_PATH: "F:/Projects/liboculus/cmake"
+ buildResult:
+ variable: "CMAKE_HAVE_PTHREAD_CREATE"
+ cached: true
+ stdout: |
+ Change Dir: 'F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-zxxd2x'
+
+ Run Build Command(s): "d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/amd64/MSBuild.exe" cmTC_5f1de.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:n
+ 适用于 .NET Framework MSBuild 版本 17.11.2+c078802d4
+ 生成启动时间为 2026/02/04 1:13:33。
+
+ 节点 1 上的项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\cmTC_5f1de.vcxproj”(默认目标)。
+ PrepareForBuild:
+ 正在创建目录“cmTC_5f1de.dir\\Debug\\”。
+ 已启用结构化输出。编译器诊断的格式设置将反映错误层次结构。有关详细信息,请参阅 https://aka.ms/cpp/structured-output。
+ 正在创建目录“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\Debug\\”。
+ 正在创建目录“cmTC_5f1de.dir\\Debug\\cmTC_5f1de.tlog\\”。
+ InitializeBuildStatus:
+ 正在创建“cmTC_5f1de.dir\\Debug\\cmTC_5f1de.tlog\\unsuccessfulbuild”,因为已指定“AlwaysCreate”。
+ 正在对“cmTC_5f1de.dir\\Debug\\cmTC_5f1de.tlog\\unsuccessfulbuild”执行 Touch 任务。
+ VcpkgTripletSelection:
+ Using triplet "x64-windows" from "D:\\vcpkg\\installed\\x64-windows\\"
+ Using normalized configuration "Release"
+ ClCompile:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\CL.exe /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D CHECK_FUNCTION_EXISTS=pthread_create /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_5f1de.dir\\Debug\\\\" /Fd"cmTC_5f1de.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\CheckFunctionExists.c"
+ 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.41.34120 版
+ 版权所有(C) Microsoft Corporation。保留所有权利。
+ cl /c /I"D:\\vcpkg\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D CHECK_FUNCTION_EXISTS=pthread_create /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_5f1de.dir\\Debug\\\\" /Fd"cmTC_5f1de.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\CheckFunctionExists.c"
+ CheckFunctionExists.c
+ Link:
+ d:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:"F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\Debug\\cmTC_5f1de.exe" /INCREMENTAL /ILK:"cmTC_5f1de.dir\\Debug\\cmTC_5f1de.ilk" /NOLOGO /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib" /LIBPATH:"D:\\vcpkg\\installed\\x64-windows\\lib\\manual-link" pthread.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib "D:\\vcpkg\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-zxxd2x/Debug/cmTC_5f1de.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"F:/Projects/liboculus/build_clean/CMakeFiles/CMakeScratch/TryCompile-zxxd2x/Debug/cmTC_5f1de.lib" /MACHINE:X64 /machine:x64 cmTC_5f1de.dir\\Debug\\CheckFunctionExists.obj
+ LINK : fatal error LNK1104: 无法打开文件“pthread.lib” [F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\cmTC_5f1de.vcxproj]
+ 已完成生成项目“F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\cmTC_5f1de.vcxproj”(默认目标)的操作 - 失败。
+
+ 生成失败。
+
+ “F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\cmTC_5f1de.vcxproj”(默认目标) (1) ->
+ (Link 目标) ->
+ LINK : fatal error LNK1104: 无法打开文件“pthread.lib” [F:\\Projects\\liboculus\\build_clean\\CMakeFiles\\CMakeScratch\\TryCompile-zxxd2x\\cmTC_5f1de.vcxproj]
+
+ 0 个警告
+ 1 个错误
+
+ 已用时间 00:00:00.43
+
+ exitCode: 1
+...
diff --git a/build_clean/CMakeFiles/TargetDirectories.txt b/build_clean/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..d6d8c0d
--- /dev/null
+++ b/build_clean/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,11 @@
+F:/Projects/liboculus/build_clean/CMakeFiles/oculus.dir
+F:/Projects/liboculus/build_clean/CMakeFiles/occlient.dir
+F:/Projects/liboculus/build_clean/CMakeFiles/INSTALL.dir
+F:/Projects/liboculus/build_clean/CMakeFiles/ALL_BUILD.dir
+F:/Projects/liboculus/build_clean/CMakeFiles/ZERO_CHECK.dir
+F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/fmt.dir
+F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/INSTALL.dir
+F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/ALL_BUILD.dir
+F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/spdlog.dir
+F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/INSTALL.dir
+F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/ALL_BUILD.dir
diff --git a/build_clean/CMakeFiles/a20fe3502e13000081666672720c7365/INSTALL_force.rule b/build_clean/CMakeFiles/a20fe3502e13000081666672720c7365/INSTALL_force.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/CMakeFiles/a20fe3502e13000081666672720c7365/INSTALL_force.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/CMakeFiles/a2560759e1334c6eceaa0026c09d7f39/INSTALL_force.rule b/build_clean/CMakeFiles/a2560759e1334c6eceaa0026c09d7f39/INSTALL_force.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/CMakeFiles/a2560759e1334c6eceaa0026c09d7f39/INSTALL_force.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/CMakeFiles/c6591b38e0a7add7be28c2afad30e6f0/INSTALL_force.rule b/build_clean/CMakeFiles/c6591b38e0a7add7be28c2afad30e6f0/INSTALL_force.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/CMakeFiles/c6591b38e0a7add7be28c2afad30e6f0/INSTALL_force.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/CMakeFiles/c6591b38e0a7add7be28c2afad30e6f0/generate.stamp.rule b/build_clean/CMakeFiles/c6591b38e0a7add7be28c2afad30e6f0/generate.stamp.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/CMakeFiles/c6591b38e0a7add7be28c2afad30e6f0/generate.stamp.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/CMakeFiles/cmake.check_cache b/build_clean/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/build_clean/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/build_clean/CMakeFiles/generate.stamp b/build_clean/CMakeFiles/generate.stamp
new file mode 100644
index 0000000..9b5f49f
--- /dev/null
+++ b/build_clean/CMakeFiles/generate.stamp
@@ -0,0 +1 @@
+# CMake generation timestamp file for this directory.
diff --git a/build_clean/CMakeFiles/generate.stamp.depend b/build_clean/CMakeFiles/generate.stamp.depend
new file mode 100644
index 0000000..79470ad
--- /dev/null
+++ b/build_clean/CMakeFiles/generate.stamp.depend
@@ -0,0 +1,47 @@
+# CMake generation dependency list for this directory.
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeCInformation.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeCXXInformation.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeCommonLanguageInclude.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeGenericSystem.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeInitializeConfigs.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeLanguageInformation.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeRCInformation.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeSystemSpecificInformation.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeSystemSpecificInitialize.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CheckCSourceCompiles.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CheckIncludeFile.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CheckLibraryExists.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Compiler/CMakeCommonCompilerMacros.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Compiler/MSVC-C.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Compiler/MSVC-CXX.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Compiler/MSVC.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/shared_internal_commands.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FetchContent.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FetchContent/CMakeLists.cmake.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/FindBoost.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FindGit.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FindThreads.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows-Initialize.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows-MSVC-C.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows-MSVC-CXX.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows-MSVC.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/WindowsPaths.cmake
+D:/software/anaconda3/Library/lib/cmake/Boost-1.82.0/BoostConfig.cmake
+D:/software/anaconda3/Library/lib/cmake/Boost-1.82.0/BoostConfigVersion.cmake
+D:/software/anaconda3/Library/lib/cmake/BoostDetectToolset-1.82.0.cmake
+D:/software/anaconda3/Library/lib/cmake/boost_headers-1.82.0/boost_headers-config-version.cmake
+D:/software/anaconda3/Library/lib/cmake/boost_headers-1.82.0/boost_headers-config.cmake
+D:/software/anaconda3/Library/lib/cmake/boost_system-1.82.0/boost_system-config-version.cmake
+D:/software/anaconda3/Library/lib/cmake/boost_system-1.82.0/boost_system-config.cmake
+D:/software/anaconda3/Library/lib/cmake/boost_system-1.82.0/libboost_system-variant-shared.cmake
+D:/software/anaconda3/Library/lib/cmake/boost_system-1.82.0/libboost_system-variant-static.cmake
+F:/Projects/liboculus/CMakeLists.txt
+F:/Projects/liboculus/build_clean/CMakeFiles/3.28.0/CMakeCCompiler.cmake
+F:/Projects/liboculus/build_clean/CMakeFiles/3.28.0/CMakeCXXCompiler.cmake
+F:/Projects/liboculus/build_clean/CMakeFiles/3.28.0/CMakeRCCompiler.cmake
+F:/Projects/liboculus/build_clean/CMakeFiles/3.28.0/CMakeSystem.cmake
+F:/Projects/liboculus/cmake/BuildNonROS.cmake
+F:/Projects/liboculus/cmake/oculusConfig.cmake.in
diff --git a/build_clean/CMakeFiles/generate.stamp.list b/build_clean/CMakeFiles/generate.stamp.list
new file mode 100644
index 0000000..05ed676
--- /dev/null
+++ b/build_clean/CMakeFiles/generate.stamp.list
@@ -0,0 +1,3 @@
+F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
diff --git a/build_clean/CMakeFiles/oculusConfig.cmake b/build_clean/CMakeFiles/oculusConfig.cmake
new file mode 100644
index 0000000..2da8a3c
--- /dev/null
+++ b/build_clean/CMakeFiles/oculusConfig.cmake
@@ -0,0 +1,10 @@
+# - Config file for the oculus package
+# It defines the following variables
+# oculus_INCLUDE_DIRS - include directories for oculus
+# oculus_LIBRARY_DIRS - directories for oculus library
+
+# Compute paths
+get_filename_component(oculus_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+set(oculus_INCLUDE_DIRS "C:/Program Files (x86)/liboculus/include")
+set(oculus_LIBRARY_DIRS "F:/Projects/liboculus/build_clean/lib/$")
+set(oculus_LIBRARIES "oculus")
diff --git a/build_clean/Debug/fmtd.pdb b/build_clean/Debug/fmtd.pdb
new file mode 100644
index 0000000..f8ebb29
Binary files /dev/null and b/build_clean/Debug/fmtd.pdb differ
diff --git a/build_clean/INSTALL.vcxproj b/build_clean/INSTALL.vcxproj
new file mode 100644
index 0000000..e2c344c
--- /dev/null
+++ b/build_clean/INSTALL.vcxproj
@@ -0,0 +1,208 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ INSTALL
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\INSTALL_force
+ false
+ false
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ ALL_BUILD
+ false
+ Never
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/INSTALL.vcxproj.filters b/build_clean/INSTALL.vcxproj.filters
new file mode 100644
index 0000000..2da3c2a
--- /dev/null
+++ b/build_clean/INSTALL.vcxproj.filters
@@ -0,0 +1,13 @@
+
+
+
+
+ CMake Rules
+
+
+
+
+ {5452DAE2-34ED-3BE1-9357-BF0D24A6F395}
+
+
+
diff --git a/build_clean/ZERO_CHECK.vcxproj b/build_clean/ZERO_CHECK.vcxproj
new file mode 100644
index 0000000..359c690
--- /dev/null
+++ b/build_clean/ZERO_CHECK.vcxproj
@@ -0,0 +1,178 @@
+
+
+
+ x64
+
+
+ false
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ ZERO_CHECK
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ Always
+ true
+ Checking Build System
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/liboculus.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\CMakeLists.txt;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;F:\Projects\liboculus\build_clean\_deps\spdlog-src\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp;F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ true
+ Checking Build System
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/liboculus.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\CMakeLists.txt;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;F:\Projects\liboculus\build_clean\_deps\spdlog-src\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp;F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ true
+ Checking Build System
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/liboculus.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\CMakeLists.txt;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;F:\Projects\liboculus\build_clean\_deps\spdlog-src\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp;F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ true
+ Checking Build System
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/liboculus.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\CMakeLists.txt;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;F:\Projects\liboculus\build_clean\_deps\spdlog-src\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp;F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/ZERO_CHECK.vcxproj.filters b/build_clean/ZERO_CHECK.vcxproj.filters
new file mode 100644
index 0000000..ef5d361
--- /dev/null
+++ b/build_clean/ZERO_CHECK.vcxproj.filters
@@ -0,0 +1,13 @@
+
+
+
+
+ CMake Rules
+
+
+
+
+ {5452DAE2-34ED-3BE1-9357-BF0D24A6F395}
+
+
+
diff --git a/build_clean/_deps/fmt-build/ALL_BUILD.vcxproj b/build_clean/_deps/fmt-build/ALL_BUILD.vcxproj
new file mode 100644
index 0000000..f54dbd6
--- /dev/null
+++ b/build_clean/_deps/fmt-build/ALL_BUILD.vcxproj
@@ -0,0 +1,184 @@
+
+
+
+ x64
+
+
+ false
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ ALL_BUILD
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ F:\Projects\liboculus\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ fmt
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-build/ALL_BUILD.vcxproj.filters b/build_clean/_deps/fmt-build/ALL_BUILD.vcxproj.filters
new file mode 100644
index 0000000..2c9ea46
--- /dev/null
+++ b/build_clean/_deps/fmt-build/ALL_BUILD.vcxproj.filters
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-debug.cmake b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-debug.cmake
new file mode 100644
index 0000000..74c026c
--- /dev/null
+++ b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-debug.cmake
@@ -0,0 +1,19 @@
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "Debug".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "fmt::fmt" for configuration "Debug"
+set_property(TARGET fmt::fmt APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(fmt::fmt PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "CXX"
+ IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/lib/fmtd.lib"
+ )
+
+list(APPEND _cmake_import_check_targets fmt::fmt )
+list(APPEND _cmake_import_check_files_for_fmt::fmt "${_IMPORT_PREFIX}/lib/fmtd.lib" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
diff --git a/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-minsizerel.cmake b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-minsizerel.cmake
new file mode 100644
index 0000000..872468b
--- /dev/null
+++ b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-minsizerel.cmake
@@ -0,0 +1,19 @@
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "MinSizeRel".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "fmt::fmt" for configuration "MinSizeRel"
+set_property(TARGET fmt::fmt APPEND PROPERTY IMPORTED_CONFIGURATIONS MINSIZEREL)
+set_target_properties(fmt::fmt PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_MINSIZEREL "CXX"
+ IMPORTED_LOCATION_MINSIZEREL "${_IMPORT_PREFIX}/lib/fmt.lib"
+ )
+
+list(APPEND _cmake_import_check_targets fmt::fmt )
+list(APPEND _cmake_import_check_files_for_fmt::fmt "${_IMPORT_PREFIX}/lib/fmt.lib" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
diff --git a/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-release.cmake b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-release.cmake
new file mode 100644
index 0000000..67990d1
--- /dev/null
+++ b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-release.cmake
@@ -0,0 +1,19 @@
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "Release".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "fmt::fmt" for configuration "Release"
+set_property(TARGET fmt::fmt APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(fmt::fmt PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/fmt.lib"
+ )
+
+list(APPEND _cmake_import_check_targets fmt::fmt )
+list(APPEND _cmake_import_check_files_for_fmt::fmt "${_IMPORT_PREFIX}/lib/fmt.lib" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
diff --git a/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-relwithdebinfo.cmake b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-relwithdebinfo.cmake
new file mode 100644
index 0000000..d1ba772
--- /dev/null
+++ b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-relwithdebinfo.cmake
@@ -0,0 +1,19 @@
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "RelWithDebInfo".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "fmt::fmt" for configuration "RelWithDebInfo"
+set_property(TARGET fmt::fmt APPEND PROPERTY IMPORTED_CONFIGURATIONS RELWITHDEBINFO)
+set_target_properties(fmt::fmt PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELWITHDEBINFO "CXX"
+ IMPORTED_LOCATION_RELWITHDEBINFO "${_IMPORT_PREFIX}/lib/fmt.lib"
+ )
+
+list(APPEND _cmake_import_check_targets fmt::fmt )
+list(APPEND _cmake_import_check_files_for_fmt::fmt "${_IMPORT_PREFIX}/lib/fmt.lib" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
diff --git a/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets.cmake b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets.cmake
new file mode 100644
index 0000000..f655c53
--- /dev/null
+++ b/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets.cmake
@@ -0,0 +1,116 @@
+# Generated by CMake
+
+if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
+ message(FATAL_ERROR "CMake >= 2.8.0 required")
+endif()
+if(CMAKE_VERSION VERSION_LESS "2.8.3")
+ message(FATAL_ERROR "CMake >= 2.8.3 required")
+endif()
+cmake_policy(PUSH)
+cmake_policy(VERSION 2.8.3...3.26)
+#----------------------------------------------------------------
+# Generated CMake target import file.
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Protect against multiple inclusion, which would fail when already imported targets are added once more.
+set(_cmake_targets_defined "")
+set(_cmake_targets_not_defined "")
+set(_cmake_expected_targets "")
+foreach(_cmake_expected_target IN ITEMS fmt::fmt fmt::fmt-header-only)
+ list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
+ if(TARGET "${_cmake_expected_target}")
+ list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
+ else()
+ list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
+ endif()
+endforeach()
+unset(_cmake_expected_target)
+if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
+ unset(_cmake_targets_defined)
+ unset(_cmake_targets_not_defined)
+ unset(_cmake_expected_targets)
+ unset(CMAKE_IMPORT_FILE_VERSION)
+ cmake_policy(POP)
+ return()
+endif()
+if(NOT _cmake_targets_defined STREQUAL "")
+ string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
+ string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
+ message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
+endif()
+unset(_cmake_targets_defined)
+unset(_cmake_targets_not_defined)
+unset(_cmake_expected_targets)
+
+
+# Compute the installation prefix relative to this file.
+get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+if(_IMPORT_PREFIX STREQUAL "/")
+ set(_IMPORT_PREFIX "")
+endif()
+
+# Create imported target fmt::fmt
+add_library(fmt::fmt STATIC IMPORTED)
+
+set_target_properties(fmt::fmt PROPERTIES
+ INTERFACE_COMPILE_FEATURES "cxx_std_11"
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
+)
+
+# Create imported target fmt::fmt-header-only
+add_library(fmt::fmt-header-only INTERFACE IMPORTED)
+
+set_target_properties(fmt::fmt-header-only PROPERTIES
+ INTERFACE_COMPILE_DEFINITIONS "FMT_HEADER_ONLY=1"
+ INTERFACE_COMPILE_FEATURES "cxx_std_11"
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
+)
+
+if(CMAKE_VERSION VERSION_LESS 3.0.0)
+ message(FATAL_ERROR "This file relies on consumers using CMake 3.0.0 or greater.")
+endif()
+
+# Load information for each installed configuration.
+file(GLOB _cmake_config_files "${CMAKE_CURRENT_LIST_DIR}/fmt-targets-*.cmake")
+foreach(_cmake_config_file IN LISTS _cmake_config_files)
+ include("${_cmake_config_file}")
+endforeach()
+unset(_cmake_config_file)
+unset(_cmake_config_files)
+
+# Cleanup temporary variables.
+set(_IMPORT_PREFIX)
+
+# Loop over all imported files and verify that they actually exist
+foreach(_cmake_target IN LISTS _cmake_import_check_targets)
+ foreach(_cmake_file IN LISTS "_cmake_import_check_files_for_${_cmake_target}")
+ if(NOT EXISTS "${_cmake_file}")
+ message(FATAL_ERROR "The imported target \"${_cmake_target}\" references the file
+ \"${_cmake_file}\"
+but this file does not exist. Possible reasons include:
+* The file was deleted, renamed, or moved to another location.
+* An install or uninstall procedure did not complete successfully.
+* The installation package was faulty and contained
+ \"${CMAKE_CURRENT_LIST_FILE}\"
+but not all the files it references.
+")
+ endif()
+ endforeach()
+ unset(_cmake_file)
+ unset("_cmake_import_check_files_for_${_cmake_target}")
+endforeach()
+unset(_cmake_target)
+unset(_cmake_import_check_targets)
+
+# This file does not depend on other imported targets which have
+# been exported from the same project but in a separate export set.
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
+cmake_policy(POP)
diff --git a/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp b/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
new file mode 100644
index 0000000..9b5f49f
--- /dev/null
+++ b/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
@@ -0,0 +1 @@
+# CMake generation timestamp file for this directory.
diff --git a/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp.depend b/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp.depend
new file mode 100644
index 0000000..7f58496
--- /dev/null
+++ b/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp.depend
@@ -0,0 +1,16 @@
+# CMake generation dependency list for this directory.
+C:/Program Files/CMake/share/cmake-3.28/Modules/BasicConfigVersion-AnyNewerVersion.cmake.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakePackageConfigHelpers.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeParseArguments.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CheckCXXCompilerFlag.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CheckCXXSourceCompiles.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/GNUInstallDirs.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Internal/CheckCompilerFlag.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Internal/CheckFlagCommonConfig.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/WriteBasicConfigVersionFile.cmake
+F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+F:/Projects/liboculus/build_clean/_deps/fmt-src/support/cmake/JoinPaths.cmake
+F:/Projects/liboculus/build_clean/_deps/fmt-src/support/cmake/fmt-config.cmake.in
+F:/Projects/liboculus/build_clean/_deps/fmt-src/support/cmake/fmt.pc.in
diff --git a/build_clean/_deps/fmt-build/Debug/fmtd.lib b/build_clean/_deps/fmt-build/Debug/fmtd.lib
new file mode 100644
index 0000000..926b356
Binary files /dev/null and b/build_clean/_deps/fmt-build/Debug/fmtd.lib differ
diff --git a/build_clean/_deps/fmt-build/Debug/fmtd.pdb b/build_clean/_deps/fmt-build/Debug/fmtd.pdb
new file mode 100644
index 0000000..f8ebb29
Binary files /dev/null and b/build_clean/_deps/fmt-build/Debug/fmtd.pdb differ
diff --git a/build_clean/_deps/fmt-build/FMT.sln b/build_clean/_deps/fmt-build/FMT.sln
new file mode 100644
index 0000000..d84f976
--- /dev/null
+++ b/build_clean/_deps/fmt-build/FMT.sln
@@ -0,0 +1,67 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{B645C30E-A193-3CB7-8150-7A5EEB790106}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67} = {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "INSTALL", "INSTALL.vcxproj", "{6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B645C30E-A193-3CB7-8150-7A5EEB790106} = {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "..\..\\ZERO_CHECK.vcxproj", "{01F63164-BE1F-3EAC-B55E-CC9856C463C3}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fmt", "fmt.vcxproj", "{248AB58D-0A27-3451-AB2F-9F4063E13A67}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Release|x64 = Release|x64
+ MinSizeRel|x64 = MinSizeRel|x64
+ RelWithDebInfo|x64 = RelWithDebInfo|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Debug|x64.ActiveCfg = Debug|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Debug|x64.Build.0 = Debug|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Release|x64.ActiveCfg = Release|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Release|x64.Build.0 = Release|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.Debug|x64.ActiveCfg = Debug|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.Release|x64.ActiveCfg = Release|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Debug|x64.ActiveCfg = Debug|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Debug|x64.Build.0 = Debug|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Release|x64.ActiveCfg = Release|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Release|x64.Build.0 = Release|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Debug|x64.ActiveCfg = Debug|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Debug|x64.Build.0 = Debug|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Release|x64.ActiveCfg = Release|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Release|x64.Build.0 = Release|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {041BB4F1-58D0-3AE9-8654-74EC15F79E53}
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build_clean/_deps/fmt-build/INSTALL.vcxproj b/build_clean/_deps/fmt-build/INSTALL.vcxproj
new file mode 100644
index 0000000..7f89eb6
--- /dev/null
+++ b/build_clean/_deps/fmt-build/INSTALL.vcxproj
@@ -0,0 +1,208 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ INSTALL
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\INSTALL_force
+ false
+ false
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ ALL_BUILD
+ false
+ Never
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-build/INSTALL.vcxproj.filters b/build_clean/_deps/fmt-build/INSTALL.vcxproj.filters
new file mode 100644
index 0000000..7378597
--- /dev/null
+++ b/build_clean/_deps/fmt-build/INSTALL.vcxproj.filters
@@ -0,0 +1,13 @@
+
+
+
+
+ CMake Rules
+
+
+
+
+ {5452DAE2-34ED-3BE1-9357-BF0D24A6F395}
+
+
+
diff --git a/build_clean/_deps/fmt-build/cmake_install.cmake b/build_clean/_deps/fmt-build/cmake_install.cmake
new file mode 100644
index 0000000..8d21f68
--- /dev/null
+++ b/build_clean/_deps/fmt-build/cmake_install.cmake
@@ -0,0 +1,107 @@
+# Install script for directory: F:/Projects/liboculus/build_clean/_deps/fmt-src
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/liboculus")
+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 "Release")
+ 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()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
+ if(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Dd][Ee][Bb][Uu][Gg])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/Debug/fmtd.lib")
+ elseif(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Rr][Ee][Ll][Ee][Aa][Ss][Ee])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/Release/fmt.lib")
+ elseif(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Mm][Ii][Nn][Ss][Ii][Zz][Ee][Rr][Ee][Ll])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/MinSizeRel/fmt.lib")
+ elseif(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Rr][Ee][Ll][Ww][Ii][Tt][Hh][Dd][Ee][Bb][Ii][Nn][Ff][Oo])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/RelWithDebInfo/fmt.lib")
+ endif()
+endif()
+
+if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/fmt" TYPE FILE FILES
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/args.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/chrono.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/color.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/compile.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/core.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/format.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/format-inl.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/os.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/ostream.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/printf.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/ranges.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/std.h"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src/include/fmt/xchar.h"
+ )
+endif()
+
+if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt" TYPE FILE FILES
+ "F:/Projects/liboculus/build_clean/_deps/fmt-build/fmt-config.cmake"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-build/fmt-config-version.cmake"
+ )
+endif()
+
+if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
+ if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt/fmt-targets.cmake")
+ file(DIFFERENT _cmake_export_file_changed FILES
+ "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt/fmt-targets.cmake"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets.cmake")
+ if(_cmake_export_file_changed)
+ file(GLOB _cmake_old_config_files "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt/fmt-targets-*.cmake")
+ if(_cmake_old_config_files)
+ string(REPLACE ";" ", " _cmake_old_config_files_text "${_cmake_old_config_files}")
+ message(STATUS "Old export file \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt/fmt-targets.cmake\" will be replaced. Removing files [${_cmake_old_config_files_text}].")
+ unset(_cmake_old_config_files_text)
+ file(REMOVE ${_cmake_old_config_files})
+ endif()
+ unset(_cmake_old_config_files)
+ endif()
+ unset(_cmake_export_file_changed)
+ endif()
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt" TYPE FILE FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets.cmake")
+ if(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Dd][Ee][Bb][Uu][Gg])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt" TYPE FILE FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-debug.cmake")
+ endif()
+ if(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Mm][Ii][Nn][Ss][Ii][Zz][Ee][Rr][Ee][Ll])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt" TYPE FILE FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-minsizerel.cmake")
+ endif()
+ if(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Rr][Ee][Ll][Ww][Ii][Tt][Hh][Dd][Ee][Bb][Ii][Nn][Ff][Oo])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt" TYPE FILE FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-relwithdebinfo.cmake")
+ endif()
+ if(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Rr][Ee][Ll][Ee][Aa][Ss][Ee])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/fmt" TYPE FILE FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/Export/b834597d9b1628ff12ae4314c3a2e4b8/fmt-targets-release.cmake")
+ endif()
+endif()
+
+if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig" TYPE FILE FILES "F:/Projects/liboculus/build_clean/_deps/fmt-build/fmt.pc")
+endif()
+
diff --git a/build_clean/_deps/fmt-build/fmt-config-version.cmake b/build_clean/_deps/fmt-build/fmt-config-version.cmake
new file mode 100644
index 0000000..af9a9eb
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt-config-version.cmake
@@ -0,0 +1,43 @@
+# This is a basic version file for the Config-mode of find_package().
+# It is used by write_basic_package_version_file() as input file for configure_file()
+# to create a version-file which can be installed along a config.cmake file.
+#
+# The created file sets PACKAGE_VERSION_EXACT if the current version string and
+# the requested version string are exactly the same and it sets
+# PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version.
+# The variable CVF_VERSION must be set before calling configure_file().
+
+set(PACKAGE_VERSION "10.2.1")
+
+if (PACKAGE_FIND_VERSION_RANGE)
+ # Package version must be in the requested version range
+ if ((PACKAGE_FIND_VERSION_RANGE_MIN STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION_MIN)
+ OR ((PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_GREATER PACKAGE_FIND_VERSION_MAX)
+ OR (PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "EXCLUDE" AND PACKAGE_VERSION VERSION_GREATER_EQUAL PACKAGE_FIND_VERSION_MAX)))
+ set(PACKAGE_VERSION_COMPATIBLE FALSE)
+ else()
+ set(PACKAGE_VERSION_COMPATIBLE TRUE)
+ endif()
+else()
+ if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
+ set(PACKAGE_VERSION_COMPATIBLE FALSE)
+ else()
+ set(PACKAGE_VERSION_COMPATIBLE TRUE)
+ if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION)
+ set(PACKAGE_VERSION_EXACT TRUE)
+ endif()
+ endif()
+endif()
+
+
+# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
+if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "8" STREQUAL "")
+ return()
+endif()
+
+# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
+if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "8")
+ math(EXPR installedBits "8 * 8")
+ set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
+ set(PACKAGE_VERSION_UNSUITABLE TRUE)
+endif()
diff --git a/build_clean/_deps/fmt-build/fmt-config.cmake b/build_clean/_deps/fmt-build/fmt-config.cmake
new file mode 100644
index 0000000..c1b9de5
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt-config.cmake
@@ -0,0 +1,31 @@
+
+####### Expanded from @PACKAGE_INIT@ by configure_package_config_file() #######
+####### Any changes to this file will be overwritten by the next CMake run ####
+####### The input file was fmt-config.cmake.in ########
+
+get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE)
+
+macro(set_and_check _var _file)
+ set(${_var} "${_file}")
+ if(NOT EXISTS "${_file}")
+ message(FATAL_ERROR "File or directory ${_file} referenced by variable ${_var} does not exist !")
+ endif()
+endmacro()
+
+macro(check_required_components _NAME)
+ foreach(comp ${${_NAME}_FIND_COMPONENTS})
+ if(NOT ${_NAME}_${comp}_FOUND)
+ if(${_NAME}_FIND_REQUIRED_${comp})
+ set(${_NAME}_FOUND FALSE)
+ endif()
+ endif()
+ endforeach()
+endmacro()
+
+####################################################################################
+
+if (NOT TARGET fmt::fmt)
+ include(${CMAKE_CURRENT_LIST_DIR}/fmt-targets.cmake)
+endif ()
+
+check_required_components(fmt)
diff --git a/build_clean/_deps/fmt-build/fmt-targets.cmake b/build_clean/_deps/fmt-build/fmt-targets.cmake
new file mode 100644
index 0000000..d166683
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt-targets.cmake
@@ -0,0 +1,103 @@
+# Generated by CMake
+
+if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
+ message(FATAL_ERROR "CMake >= 2.8.0 required")
+endif()
+if(CMAKE_VERSION VERSION_LESS "2.8.3")
+ message(FATAL_ERROR "CMake >= 2.8.3 required")
+endif()
+cmake_policy(PUSH)
+cmake_policy(VERSION 2.8.3...3.26)
+#----------------------------------------------------------------
+# Generated CMake target import file.
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+if(CMAKE_VERSION VERSION_LESS 3.0.0)
+ message(FATAL_ERROR "This file relies on consumers using CMake 3.0.0 or greater.")
+endif()
+
+# Protect against multiple inclusion, which would fail when already imported targets are added once more.
+set(_cmake_targets_defined "")
+set(_cmake_targets_not_defined "")
+set(_cmake_expected_targets "")
+foreach(_cmake_expected_target IN ITEMS fmt::fmt fmt::fmt-header-only)
+ list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
+ if(TARGET "${_cmake_expected_target}")
+ list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
+ else()
+ list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
+ endif()
+endforeach()
+unset(_cmake_expected_target)
+if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
+ unset(_cmake_targets_defined)
+ unset(_cmake_targets_not_defined)
+ unset(_cmake_expected_targets)
+ unset(CMAKE_IMPORT_FILE_VERSION)
+ cmake_policy(POP)
+ return()
+endif()
+if(NOT _cmake_targets_defined STREQUAL "")
+ string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
+ string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
+ message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
+endif()
+unset(_cmake_targets_defined)
+unset(_cmake_targets_not_defined)
+unset(_cmake_expected_targets)
+
+
+# Create imported target fmt::fmt
+add_library(fmt::fmt STATIC IMPORTED)
+
+set_target_properties(fmt::fmt PROPERTIES
+ INTERFACE_COMPILE_FEATURES "cxx_std_11"
+ INTERFACE_INCLUDE_DIRECTORIES "F:/Projects/liboculus/build_clean/_deps/fmt-src/include"
+)
+
+# Create imported target fmt::fmt-header-only
+add_library(fmt::fmt-header-only INTERFACE IMPORTED)
+
+set_target_properties(fmt::fmt-header-only PROPERTIES
+ INTERFACE_COMPILE_DEFINITIONS "FMT_HEADER_ONLY=1"
+ INTERFACE_COMPILE_FEATURES "cxx_std_11"
+ INTERFACE_INCLUDE_DIRECTORIES "F:/Projects/liboculus/build_clean/_deps/fmt-src/include"
+)
+
+# Import target "fmt::fmt" for configuration "Debug"
+set_property(TARGET fmt::fmt APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(fmt::fmt PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "CXX"
+ IMPORTED_LOCATION_DEBUG "F:/Projects/liboculus/build_clean/_deps/fmt-build/Debug/fmtd.lib"
+ )
+
+# Import target "fmt::fmt" for configuration "Release"
+set_property(TARGET fmt::fmt APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(fmt::fmt PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "F:/Projects/liboculus/build_clean/_deps/fmt-build/Release/fmt.lib"
+ )
+
+# Import target "fmt::fmt" for configuration "MinSizeRel"
+set_property(TARGET fmt::fmt APPEND PROPERTY IMPORTED_CONFIGURATIONS MINSIZEREL)
+set_target_properties(fmt::fmt PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_MINSIZEREL "CXX"
+ IMPORTED_LOCATION_MINSIZEREL "F:/Projects/liboculus/build_clean/_deps/fmt-build/MinSizeRel/fmt.lib"
+ )
+
+# Import target "fmt::fmt" for configuration "RelWithDebInfo"
+set_property(TARGET fmt::fmt APPEND PROPERTY IMPORTED_CONFIGURATIONS RELWITHDEBINFO)
+set_target_properties(fmt::fmt PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELWITHDEBINFO "CXX"
+ IMPORTED_LOCATION_RELWITHDEBINFO "F:/Projects/liboculus/build_clean/_deps/fmt-build/RelWithDebInfo/fmt.lib"
+ )
+
+# This file does not depend on other imported targets which have
+# been exported from the same project but in a separate export set.
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
+cmake_policy(POP)
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.command.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.command.1.tlog
new file mode 100644
index 0000000..1add1fb
Binary files /dev/null and b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.command.1.tlog differ
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.read.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.read.1.tlog
new file mode 100644
index 0000000..cb46251
Binary files /dev/null and b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.read.1.tlog differ
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.write.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.write.1.tlog
new file mode 100644
index 0000000..1b9f678
Binary files /dev/null and b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CL.write.1.tlog differ
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Cl.items.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Cl.items.tlog
new file mode 100644
index 0000000..9c086ca
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Cl.items.tlog
@@ -0,0 +1,2 @@
+F:\Projects\liboculus\build_clean\_deps\fmt-src\src\format.cc;F:\Projects\liboculus\build_clean\_deps\fmt-build\fmt.dir\Debug\format.obj
+F:\Projects\liboculus\build_clean\_deps\fmt-src\src\os.cc;F:\Projects\liboculus\build_clean\_deps\fmt-build\fmt.dir\Debug\os.obj
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.command.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..4dcd73e
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\CMAKELISTS.TXT
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.read.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..81e5309
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,15 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\CMAKELISTS.TXT
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\BASICCONFIGVERSION-ANYNEWERVERSION.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECHECKCOMPILERFLAGCOMMONPATTERNS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEPACKAGECONFIGHELPERS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEPARSEARGUMENTS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKCXXCOMPILERFLAG.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKCXXSOURCECOMPILES.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\GNUINSTALLDIRS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\INTERNAL\CHECKCOMPILERFLAG.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\INTERNAL\CHECKFLAGCOMMONCONFIG.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\INTERNAL\CHECKSOURCECOMPILES.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\WRITEBASICCONFIGVERSIONFILE.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\SUPPORT\CMAKE\JOINPATHS.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\SUPPORT\CMAKE\FMT-CONFIG.CMAKE.IN
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\SUPPORT\CMAKE\FMT.PC.IN
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.write.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..9ea87b9
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-BUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib-link.read.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib-link.read.1.tlog
new file mode 100644
index 0000000..08cad2c
Binary files /dev/null and b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib-link.read.1.tlog differ
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib-link.write.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib-link.write.1.tlog
new file mode 100644
index 0000000..3c3707d
Binary files /dev/null and b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib-link.write.1.tlog differ
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib.command.1.tlog b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib.command.1.tlog
new file mode 100644
index 0000000..936c8f4
Binary files /dev/null and b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/Lib.command.1.tlog differ
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/fmt.lastbuildstate b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/fmt.lastbuildstate
new file mode 100644
index 0000000..06a6d9e
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmt.tlog/fmt.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\fmt-build\|
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/fmtd.lib.recipe b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmtd.lib.recipe
new file mode 100644
index 0000000..08e22dd
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.dir/Debug/fmtd.lib.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\x64\Debug\ZERO_CHECK
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/format.obj b/build_clean/_deps/fmt-build/fmt.dir/Debug/format.obj
new file mode 100644
index 0000000..9ba5711
Binary files /dev/null and b/build_clean/_deps/fmt-build/fmt.dir/Debug/format.obj differ
diff --git a/build_clean/_deps/fmt-build/fmt.dir/Debug/os.obj b/build_clean/_deps/fmt-build/fmt.dir/Debug/os.obj
new file mode 100644
index 0000000..c88da42
Binary files /dev/null and b/build_clean/_deps/fmt-build/fmt.dir/Debug/os.obj differ
diff --git a/build_clean/_deps/fmt-build/fmt.pc b/build_clean/_deps/fmt-build/fmt.pc
new file mode 100644
index 0000000..b7c8d4e
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.pc
@@ -0,0 +1,11 @@
+prefix=C:/Program Files (x86)/liboculus
+exec_prefix=C:/Program Files (x86)/liboculus
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: fmt
+Description: A modern formatting library
+Version: 10.2.1
+Libs: -L${libdir} -lfmt
+Cflags: -I${includedir}
+
diff --git a/build_clean/_deps/fmt-build/fmt.vcxproj b/build_clean/_deps/fmt-build/fmt.vcxproj
new file mode 100644
index 0000000..d93f447
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.vcxproj
@@ -0,0 +1,307 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ fmt
+ NoUpgrade
+
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\Debug\
+ fmt.dir\Debug\
+ fmtd
+ .lib
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\Release\
+ fmt.dir\Release\
+ fmt
+ .lib
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\MinSizeRel\
+ fmt.dir\MinSizeRel\
+ fmt
+ .lib
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\RelWithDebInfo\
+ fmt.dir\RelWithDebInfo\
+ fmt
+ .lib
+
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ EnableFastChecks
+ ProgramDatabase
+ Sync
+ Disabled
+ stdcpp17
+ Disabled
+ NotUsing
+ MultiThreadedDebugDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;CMAKE_INTDIR="Debug"
+ $(IntDir)
+ F:\Projects\liboculus\build_clean\Debug\fmtd.pdb
+
+
+ %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;CMAKE_INTDIR=\"Debug\"
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ Sync
+ AnySuitable
+ stdcpp17
+ MaxSpeed
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;CMAKE_INTDIR="Release"
+ $(IntDir)
+
+
+ F:\Projects\liboculus\build_clean\Release\fmt.pdb
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;CMAKE_INTDIR=\"Release\"
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ Sync
+ OnlyExplicitInline
+ stdcpp17
+ MinSpace
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;CMAKE_INTDIR="MinSizeRel"
+ $(IntDir)
+
+
+ F:\Projects\liboculus\build_clean\MinSizeRel\fmt.pdb
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;CMAKE_INTDIR=\"MinSizeRel\"
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ ProgramDatabase
+ Sync
+ OnlyExplicitInline
+ stdcpp17
+ MaxSpeed
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;CMAKE_INTDIR="RelWithDebInfo"
+ $(IntDir)
+ F:\Projects\liboculus\build_clean\RelWithDebInfo\fmt.pdb
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;CMAKE_INTDIR=\"RelWithDebInfo\"
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\BasicConfigVersion-AnyNewerVersion.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCheckCompilerFlagCommonPatterns.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakePackageConfigHelpers.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeParseArguments.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCXXSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckCompilerFlag.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckFlagCommonConfig.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\WriteBasicConfigVersionFile.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\JoinPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt-config.cmake.in;F:\Projects\liboculus\build_clean\_deps\fmt-src\support\cmake\fmt.pc.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-build\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-build/fmt.vcxproj.filters b/build_clean/_deps/fmt-build/fmt.vcxproj.filters
new file mode 100644
index 0000000..4d766a6
--- /dev/null
+++ b/build_clean/_deps/fmt-build/fmt.vcxproj.filters
@@ -0,0 +1,67 @@
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+
+
+
+
+
+
+
+
+
+ {CA099077-FA06-3370-B8A4-F78603ABAEB9}
+
+
+ {F68D873A-1EB1-3763-9D9A-472A77062F9F}
+
+
+
diff --git a/build_clean/_deps/fmt-src b/build_clean/_deps/fmt-src
new file mode 160000
index 0000000..e69e5f9
--- /dev/null
+++ b/build_clean/_deps/fmt-src
@@ -0,0 +1 @@
+Subproject commit e69e5f977d458f2650bb346dadf2ad30c5320281
diff --git a/build_clean/_deps/fmt-subbuild/ALL_BUILD.vcxproj b/build_clean/_deps/fmt-subbuild/ALL_BUILD.vcxproj
new file mode 100644
index 0000000..e03f9bb
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/ALL_BUILD.vcxproj
@@ -0,0 +1,87 @@
+
+
+
+ x64
+
+
+ false
+
+
+
+ Debug
+ x64
+
+
+
+ {E4FA5A8E-CECF-304E-955E-287D999E2D0A}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ ALL_BUILD
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ %(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/fmt-subbuild -BF:/Projects/liboculus/build_clean/_deps/fmt-subbuild --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\PatchInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\RepositoryInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\UpdateInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\cfgcmd.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitclone.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitupdate.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\mkdirs.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\tmp\fmt-populate-mkdirs.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+ {00B41E84-417A-37AC-A5B4-52FB9129912D}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {7AFE78C4-95A8-3D3E-95F5-C5EE871CD64D}
+ fmt-populate
+ false
+ Never
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-subbuild/ALL_BUILD.vcxproj.filters b/build_clean/_deps/fmt-subbuild/ALL_BUILD.vcxproj.filters
new file mode 100644
index 0000000..f6e0a2c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/ALL_BUILD.vcxproj.filters
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/build_clean/_deps/fmt-subbuild/CMakeCache.txt b/build_clean/_deps/fmt-subbuild/CMakeCache.txt
new file mode 100644
index 0000000..8c882df
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeCache.txt
@@ -0,0 +1,104 @@
+# This is the CMakeCache file.
+# For build in directory: f:/Projects/liboculus/build_clean/_deps/fmt-subbuild
+# It was generated by CMake: C:/Program Files/CMake/bin/cmake.exe
+# 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
+########################
+
+//No help, variable specified on the command line.
+CMAKE_CONFIGURATION_TYPES:STRING=Debug
+
+//Value Computed by CMake.
+CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/pkgRedirects
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=C:/Program Files (x86)/fmt-populate
+
+//No help, variable specified on the command line.
+CMAKE_MAKE_PROGRAM:FILEPATH=d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/amd64/MSBuild.exe
+
+//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=fmt-populate
+
+//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
+
+//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=FALSE
+
+//Value Computed by CMake
+fmt-populate_BINARY_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/fmt-subbuild
+
+//Value Computed by CMake
+fmt-populate_IS_TOP_LEVEL:STATIC=ON
+
+//Value Computed by CMake
+fmt-populate_SOURCE_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/fmt-subbuild
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=f:/Projects/liboculus/build_clean/_deps/fmt-subbuild
+//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=28
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=0
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cmake.exe
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cpack.exe
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=C:/Program Files/CMake/bin/ctest.exe
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Visual Studio 17 2022
+//No help, variable specified on the command line.
+CMAKE_GENERATOR_INSTANCE:INTERNAL=d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools
+//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=F:/Projects/liboculus/build_clean/_deps/fmt-subbuild
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
+//Platform information initialized
+CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=C:/Program Files/CMake/share/cmake-3.28
+//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_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/CMakeSystem.cmake b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/CMakeSystem.cmake
new file mode 100644
index 0000000..88ce365
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Windows-10.0.26200")
+set(CMAKE_HOST_SYSTEM_NAME "Windows")
+set(CMAKE_HOST_SYSTEM_VERSION "10.0.26200")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "AMD64")
+
+
+
+set(CMAKE_SYSTEM "Windows-10.0.26200")
+set(CMAKE_SYSTEM_NAME "Windows")
+set(CMAKE_SYSTEM_VERSION "10.0.26200")
+set(CMAKE_SYSTEM_PROCESSOR "AMD64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath.txt b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath.txt
new file mode 100644
index 0000000..baf8bdf
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath.txt
@@ -0,0 +1 @@
+d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Microsoft/VC/v170
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath.vcxproj b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath.vcxproj
new file mode 100644
index 0000000..ccb7d62
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath.vcxproj
@@ -0,0 +1,31 @@
+
+
+
+
+ Debug
+ x64
+
+
+
+ {F3FC6D86-508D-3FB1-96D2-995F08B142EC}
+ Win32Proj
+ x64
+ 10.0.22621.0
+
+
+
+ x64
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+ echo VCTargetsPath=$(VCTargetsPath)
+
+
+
+
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe
new file mode 100644
index 0000000..74e252a
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\3.28.0\x64\Debug\VCTargetsPath
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate
new file mode 100644
index 0000000..b66a17d
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\3.28.0\|
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/588fa9c3aac8e88cdf47e06f242215ab/fmt-populate-complete.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/588fa9c3aac8e88cdf47e06f242215ab/fmt-populate-complete.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/588fa9c3aac8e88cdf47e06f242215ab/fmt-populate-complete.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-build.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-build.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-build.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-configure.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-configure.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-configure.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-download.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-download.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-download.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-install.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-install.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-install.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-mkdir.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-mkdir.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-mkdir.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-patch.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-patch.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-patch.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-test.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-test.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-test.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-update.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-update.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-update.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/8dc4cdd2e11c87b73a3d8879cc6bcf23/fmt-populate.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/8dc4cdd2e11c87b73a3d8879cc6bcf23/fmt-populate.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/8dc4cdd2e11c87b73a3d8879cc6bcf23/fmt-populate.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/8dc4cdd2e11c87b73a3d8879cc6bcf23/generate.stamp.rule b/build_clean/_deps/fmt-subbuild/CMakeFiles/8dc4cdd2e11c87b73a3d8879cc6bcf23/generate.stamp.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/8dc4cdd2e11c87b73a3d8879cc6bcf23/generate.stamp.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/CMakeConfigureLog.yaml b/build_clean/_deps/fmt-subbuild/CMakeFiles/CMakeConfigureLog.yaml
new file mode 100644
index 0000000..66c16e9
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/CMakeConfigureLog.yaml
@@ -0,0 +1,11 @@
+
+---
+events:
+ -
+ kind: "message-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake:233 (message)"
+ - "CMakeLists.txt:16 (project)"
+ message: |
+ The system is: Windows - 10.0.26200 - AMD64
+...
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/Debug/fmt-populate-complete b/build_clean/_deps/fmt-subbuild/CMakeFiles/Debug/fmt-populate-complete
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/TargetDirectories.txt b/build_clean/_deps/fmt-subbuild/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..0b4b817
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,3 @@
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate.dir
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/ALL_BUILD.dir
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/ZERO_CHECK.dir
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/cmake.check_cache b/build_clean/_deps/fmt-subbuild/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate.dir/Labels.json b/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate.dir/Labels.json
new file mode 100644
index 0000000..c752c10
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate.dir/Labels.json
@@ -0,0 +1,46 @@
+{
+ "sources" :
+ [
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/8dc4cdd2e11c87b73a3d8879cc6bcf23/fmt-populate.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/588fa9c3aac8e88cdf47e06f242215ab/fmt-populate-complete.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-build.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-configure.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-download.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-install.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-mkdir.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-patch.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-test.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-update.rule"
+ }
+ ],
+ "target" :
+ {
+ "labels" :
+ [
+ "fmt-populate"
+ ],
+ "name" : "fmt-populate"
+ }
+}
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate.dir/Labels.txt b/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate.dir/Labels.txt
new file mode 100644
index 0000000..62f0bc1
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate.dir/Labels.txt
@@ -0,0 +1,14 @@
+# Target labels
+ fmt-populate
+# Source files and their labels
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/fmt-populate
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/8dc4cdd2e11c87b73a3d8879cc6bcf23/fmt-populate.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/588fa9c3aac8e88cdf47e06f242215ab/fmt-populate-complete.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-build.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-configure.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-download.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-install.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-mkdir.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-patch.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-test.rule
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/84763929291837ac3f5f9d8dfc095f7c/fmt-populate-update.rule
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp b/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp
new file mode 100644
index 0000000..9b5f49f
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp
@@ -0,0 +1 @@
+# CMake generation timestamp file for this directory.
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp.depend b/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp.depend
new file mode 100644
index 0000000..1c59ab5
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp.depend
@@ -0,0 +1,20 @@
+# CMake generation dependency list for this directory.
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeGenericSystem.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeInitializeConfigs.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeSystemSpecificInformation.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeSystemSpecificInitialize.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/PatchInfo.txt.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/RepositoryInfo.txt.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/UpdateInfo.txt.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/cfgcmd.txt.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/gitclone.cmake.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/gitupdate.cmake.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/mkdirs.cmake.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/shared_internal_commands.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows-Initialize.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/WindowsPaths.cmake
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/3.28.0/CMakeSystem.cmake
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeLists.txt
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-mkdirs.cmake
diff --git a/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp.list b/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp.list
new file mode 100644
index 0000000..d5586cc
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp.list
@@ -0,0 +1 @@
+F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp
diff --git a/build_clean/_deps/fmt-subbuild/CMakeLists.txt b/build_clean/_deps/fmt-subbuild/CMakeLists.txt
new file mode 100644
index 0000000..1af8a97
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/CMakeLists.txt
@@ -0,0 +1,42 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+cmake_minimum_required(VERSION 3.28.0)
+
+# Reject any attempt to use a toolchain file. We must not use one because
+# we could be downloading it here. If the CMAKE_TOOLCHAIN_FILE environment
+# variable is set, the cache variable will have been initialized from it.
+unset(CMAKE_TOOLCHAIN_FILE CACHE)
+unset(ENV{CMAKE_TOOLCHAIN_FILE})
+
+# We name the project and the target for the ExternalProject_Add() call
+# to something that will highlight to the user what we are working on if
+# something goes wrong and an error message is produced.
+
+project(fmt-populate NONE)
+
+
+# Pass through things we've already detected in the main project to avoid
+# paying the cost of redetecting them again in ExternalProject_Add()
+set(GIT_EXECUTABLE [==[D:/Program Files/Git/cmd/git.exe]==])
+set(GIT_VERSION_STRING [==[2.50.1.windows.1]==])
+set_property(GLOBAL PROPERTY _CMAKE_FindGit_GIT_EXECUTABLE_VERSION
+ [==[D:/Program Files/Git/cmd/git.exe;2.50.1.windows.1]==]
+)
+
+
+include(ExternalProject)
+ExternalProject_Add(fmt-populate
+ "UPDATE_DISCONNECTED" "False" "GIT_REPOSITORY" "https://github.com/fmtlib/fmt.git" "EXTERNALPROJECT_INTERNAL_ARGUMENT_SEPARATOR" "GIT_TAG" "10.2.1"
+ SOURCE_DIR "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ BINARY_DIR "F:/Projects/liboculus/build_clean/_deps/fmt-build"
+ CONFIGURE_COMMAND ""
+ BUILD_COMMAND ""
+ INSTALL_COMMAND ""
+ TEST_COMMAND ""
+ USES_TERMINAL_DOWNLOAD YES
+ USES_TERMINAL_UPDATE YES
+ USES_TERMINAL_PATCH YES
+)
+
+
diff --git a/build_clean/_deps/fmt-subbuild/ZERO_CHECK.vcxproj b/build_clean/_deps/fmt-subbuild/ZERO_CHECK.vcxproj
new file mode 100644
index 0000000..8729379
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/ZERO_CHECK.vcxproj
@@ -0,0 +1,76 @@
+
+
+
+ x64
+
+
+ false
+
+
+
+ Debug
+ x64
+
+
+
+ {00B41E84-417A-37AC-A5B4-52FB9129912D}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ ZERO_CHECK
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ %(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ Always
+ true
+ Checking Build System
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/fmt-subbuild -BF:/Projects/liboculus/build_clean/_deps/fmt-subbuild --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\PatchInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\RepositoryInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\UpdateInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\cfgcmd.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitclone.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitupdate.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\mkdirs.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\tmp\fmt-populate-mkdirs.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-subbuild/ZERO_CHECK.vcxproj.filters b/build_clean/_deps/fmt-subbuild/ZERO_CHECK.vcxproj.filters
new file mode 100644
index 0000000..ec5dbc3
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/ZERO_CHECK.vcxproj.filters
@@ -0,0 +1,13 @@
+
+
+
+
+ CMake Rules
+
+
+
+
+ {D4074039-98E5-3540-BFBC-769267FB5287}
+
+
+
diff --git a/build_clean/_deps/fmt-subbuild/cmake_install.cmake b/build_clean/_deps/fmt-subbuild/cmake_install.cmake
new file mode 100644
index 0000000..8c687ab
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/cmake_install.cmake
@@ -0,0 +1,44 @@
+# Install script for directory: F:/Projects/liboculus/build_clean/_deps/fmt-subbuild
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/fmt-populate")
+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 "Debug")
+ 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()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+ set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+ set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+ "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/${CMAKE_INSTALL_MANIFEST}"
+ "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-build b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-build
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-configure b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-configure
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-done b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-done
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-download b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-download
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-install b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-install
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-mkdir b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-mkdir
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-patch b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-patch
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-test b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-test
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitclone-lastrun.txt b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitclone-lastrun.txt
new file mode 100644
index 0000000..e14c745
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitclone-lastrun.txt
@@ -0,0 +1,15 @@
+# This is a generated file and its contents are an internal implementation detail.
+# The download step will be re-executed if anything in this file changes.
+# No other meaning or use of this file is supported.
+
+method=git
+command=C:/Program Files/CMake/bin/cmake.exe;-P;F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitclone.cmake
+source_dir=F:/Projects/liboculus/build_clean/_deps/fmt-src
+work_dir=F:/Projects/liboculus/build_clean/_deps
+repository=https://github.com/fmtlib/fmt.git
+remote=origin
+init_submodules=TRUE
+recurse_submodules=--recursive
+submodules=
+CMP0097=NEW
+
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitinfo.txt b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitinfo.txt
new file mode 100644
index 0000000..e14c745
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitinfo.txt
@@ -0,0 +1,15 @@
+# This is a generated file and its contents are an internal implementation detail.
+# The download step will be re-executed if anything in this file changes.
+# No other meaning or use of this file is supported.
+
+method=git
+command=C:/Program Files/CMake/bin/cmake.exe;-P;F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitclone.cmake
+source_dir=F:/Projects/liboculus/build_clean/_deps/fmt-src
+work_dir=F:/Projects/liboculus/build_clean/_deps
+repository=https://github.com/fmtlib/fmt.git
+remote=origin
+init_submodules=TRUE
+recurse_submodules=--recursive
+submodules=
+CMP0097=NEW
+
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-patch-info.txt b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-patch-info.txt
new file mode 100644
index 0000000..53e1e1e
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-patch-info.txt
@@ -0,0 +1,6 @@
+# This is a generated file and its contents are an internal implementation detail.
+# The update step will be re-executed if anything in this file changes.
+# No other meaning or use of this file is supported.
+
+command=
+work_dir=
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-update-info.txt b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-update-info.txt
new file mode 100644
index 0000000..b5d2a65
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-update-info.txt
@@ -0,0 +1,7 @@
+# This is a generated file and its contents are an internal implementation detail.
+# The patch step will be re-executed if anything in this file changes.
+# No other meaning or use of this file is supported.
+
+command (connected)=C:/Program Files/CMake/bin/cmake.exe;-Dcan_fetch=YES;-P;F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitupdate.cmake
+command (disconnected)=C:/Program Files/CMake/bin/cmake.exe;-Dcan_fetch=NO;-P;F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitupdate.cmake
+work_dir=F:/Projects/liboculus/build_clean/_deps/fmt-src
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-cfgcmd.txt b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-cfgcmd.txt
new file mode 100644
index 0000000..6a6ed5f
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-cfgcmd.txt
@@ -0,0 +1 @@
+cmd=''
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitclone.cmake b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitclone.cmake
new file mode 100644
index 0000000..eecb3ca
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitclone.cmake
@@ -0,0 +1,73 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+cmake_minimum_required(VERSION 3.5)
+
+if(EXISTS "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitclone-lastrun.txt" AND EXISTS "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitinfo.txt" AND
+ "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitclone-lastrun.txt" IS_NEWER_THAN "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitinfo.txt")
+ message(STATUS
+ "Avoiding repeated git clone, stamp file is up to date: "
+ "'F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitclone-lastrun.txt'"
+ )
+ return()
+endif()
+
+execute_process(
+ COMMAND ${CMAKE_COMMAND} -E rm -rf "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ RESULT_VARIABLE error_code
+)
+if(error_code)
+ message(FATAL_ERROR "Failed to remove directory: 'F:/Projects/liboculus/build_clean/_deps/fmt-src'")
+endif()
+
+# try the clone 3 times in case there is an odd git clone issue
+set(error_code 1)
+set(number_of_tries 0)
+while(error_code AND number_of_tries LESS 3)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe"
+ clone --no-checkout --config "advice.detachedHead=false" "https://github.com/fmtlib/fmt.git" "fmt-src"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps"
+ RESULT_VARIABLE error_code
+ )
+ math(EXPR number_of_tries "${number_of_tries} + 1")
+endwhile()
+if(number_of_tries GREATER 1)
+ message(STATUS "Had to git clone more than once: ${number_of_tries} times.")
+endif()
+if(error_code)
+ message(FATAL_ERROR "Failed to clone repository: 'https://github.com/fmtlib/fmt.git'")
+endif()
+
+execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe"
+ checkout "10.2.1" --
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ RESULT_VARIABLE error_code
+)
+if(error_code)
+ message(FATAL_ERROR "Failed to checkout tag: '10.2.1'")
+endif()
+
+set(init_submodules TRUE)
+if(init_submodules)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe"
+ submodule update --recursive --init
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ RESULT_VARIABLE error_code
+ )
+endif()
+if(error_code)
+ message(FATAL_ERROR "Failed to update submodules in: 'F:/Projects/liboculus/build_clean/_deps/fmt-src'")
+endif()
+
+# Complete success, update the script-last-run stamp file:
+#
+execute_process(
+ COMMAND ${CMAKE_COMMAND} -E copy "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitinfo.txt" "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitclone-lastrun.txt"
+ RESULT_VARIABLE error_code
+)
+if(error_code)
+ message(FATAL_ERROR "Failed to copy script-last-run stamp file: 'F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/fmt-populate-gitclone-lastrun.txt'")
+endif()
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitupdate.cmake b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitupdate.cmake
new file mode 100644
index 0000000..4fc50bc
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitupdate.cmake
@@ -0,0 +1,292 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+cmake_minimum_required(VERSION 3.5)
+
+function(do_fetch)
+ message(VERBOSE "Fetching latest from the remote origin")
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git fetch --tags --force "origin"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ COMMAND_ERROR_IS_FATAL LAST
+ )
+endfunction()
+
+function(get_hash_for_ref ref out_var err_var)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git rev-parse "${ref}^0"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE ref_hash
+ ERROR_VARIABLE error_msg
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ if(error_code)
+ set(${out_var} "" PARENT_SCOPE)
+ else()
+ set(${out_var} "${ref_hash}" PARENT_SCOPE)
+ endif()
+ set(${err_var} "${error_msg}" PARENT_SCOPE)
+endfunction()
+
+get_hash_for_ref(HEAD head_sha error_msg)
+if(head_sha STREQUAL "")
+ message(FATAL_ERROR "Failed to get the hash for HEAD:\n${error_msg}")
+endif()
+
+
+execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git show-ref "10.2.1"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ OUTPUT_VARIABLE show_ref_output
+)
+if(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/remotes/")
+ # Given a full remote/branch-name and we know about it already. Since
+ # branches can move around, we should always fetch, if permitted.
+ if(can_fetch)
+ do_fetch()
+ endif()
+ set(checkout_name "10.2.1")
+
+elseif(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/tags/")
+ # Given a tag name that we already know about. We don't know if the tag we
+ # have matches the remote though (tags can move), so we should fetch. As a
+ # special case to preserve backward compatibility, if we are already at the
+ # same commit as the tag we hold locally, don't do a fetch and assume the tag
+ # hasn't moved on the remote.
+ # FIXME: We should provide an option to always fetch for this case
+ get_hash_for_ref("10.2.1" tag_sha error_msg)
+ if(tag_sha STREQUAL head_sha)
+ message(VERBOSE "Already at requested tag: ${tag_sha}")
+ return()
+ endif()
+
+ if(can_fetch)
+ do_fetch()
+ endif()
+ set(checkout_name "10.2.1")
+
+elseif(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/heads/")
+ # Given a branch name without any remote and we already have a branch by that
+ # name. We might already have that branch checked out or it might be a
+ # different branch. It isn't fully safe to use a bare branch name without the
+ # remote, so do a fetch (if allowed) and replace the ref with one that
+ # includes the remote.
+ if(can_fetch)
+ do_fetch()
+ endif()
+ set(checkout_name "origin/10.2.1")
+
+else()
+ get_hash_for_ref("10.2.1" tag_sha error_msg)
+ if(tag_sha STREQUAL head_sha)
+ # Have the right commit checked out already
+ message(VERBOSE "Already at requested ref: ${tag_sha}")
+ return()
+
+ elseif(tag_sha STREQUAL "")
+ # We don't know about this ref yet, so we have no choice but to fetch.
+ if(NOT can_fetch)
+ message(FATAL_ERROR
+ "Requested git ref \"10.2.1\" is not present locally, and not "
+ "allowed to contact remote due to UPDATE_DISCONNECTED setting."
+ )
+ endif()
+
+ # We deliberately swallow any error message at the default log level
+ # because it can be confusing for users to see a failed git command.
+ # That failure is being handled here, so it isn't an error.
+ if(NOT error_msg STREQUAL "")
+ message(VERBOSE "${error_msg}")
+ endif()
+ do_fetch()
+ set(checkout_name "10.2.1")
+
+ else()
+ # We have the commit, so we know we were asked to find a commit hash
+ # (otherwise it would have been handled further above), but we don't
+ # have that commit checked out yet. We don't need to fetch from the remote.
+ set(checkout_name "10.2.1")
+ if(NOT error_msg STREQUAL "")
+ message(WARNING "${error_msg}")
+ endif()
+
+ endif()
+endif()
+
+set(git_update_strategy "REBASE")
+if(git_update_strategy STREQUAL "")
+ # Backward compatibility requires REBASE as the default behavior
+ set(git_update_strategy REBASE)
+endif()
+
+if(git_update_strategy MATCHES "^REBASE(_CHECKOUT)?$")
+ # Asked to potentially try to rebase first, maybe with fallback to checkout.
+ # We can't if we aren't already on a branch and we shouldn't if that local
+ # branch isn't tracking the one we want to checkout.
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git symbolic-ref -q HEAD
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ OUTPUT_VARIABLE current_branch
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ # Don't test for an error. If this isn't a branch, we get a non-zero error
+ # code but empty output.
+ )
+
+ if(current_branch STREQUAL "")
+ # Not on a branch, checkout is the only sensible option since any rebase
+ # would always fail (and backward compatibility requires us to checkout in
+ # this situation)
+ set(git_update_strategy CHECKOUT)
+
+ else()
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git for-each-ref "--format=%(upstream:short)" "${current_branch}"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ OUTPUT_VARIABLE upstream_branch
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ COMMAND_ERROR_IS_FATAL ANY # There is no error if no upstream is set
+ )
+ if(NOT upstream_branch STREQUAL checkout_name)
+ # Not safe to rebase when asked to checkout a different branch to the one
+ # we are tracking. If we did rebase, we could end up with arbitrary
+ # commits added to the ref we were asked to checkout if the current local
+ # branch happens to be able to rebase onto the target branch. There would
+ # be no error message and the user wouldn't know this was occurring.
+ set(git_update_strategy CHECKOUT)
+ endif()
+
+ endif()
+elseif(NOT git_update_strategy STREQUAL "CHECKOUT")
+ message(FATAL_ERROR "Unsupported git update strategy: ${git_update_strategy}")
+endif()
+
+
+# Check if stash is needed
+execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git status --porcelain
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE repo_status
+)
+if(error_code)
+ message(FATAL_ERROR "Failed to get the status")
+endif()
+string(LENGTH "${repo_status}" need_stash)
+
+# If not in clean state, stash changes in order to be able to perform a
+# rebase or checkout without losing those changes permanently
+if(need_stash)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash save --quiet;--include-untracked
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+endif()
+
+if(git_update_strategy STREQUAL "CHECKOUT")
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git checkout "${checkout_name}"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+else()
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git rebase "${checkout_name}"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE rebase_output
+ ERROR_VARIABLE rebase_output
+ )
+ if(error_code)
+ # Rebase failed, undo the rebase attempt before continuing
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git rebase --abort
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ )
+
+ if(NOT git_update_strategy STREQUAL "REBASE_CHECKOUT")
+ # Not allowed to do a checkout as a fallback, so cannot proceed
+ if(need_stash)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash pop --index --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ )
+ endif()
+ message(FATAL_ERROR "\nFailed to rebase in: 'F:/Projects/liboculus/build_clean/_deps/fmt-src'."
+ "\nOutput from the attempted rebase follows:"
+ "\n${rebase_output}"
+ "\n\nYou will have to resolve the conflicts manually")
+ endif()
+
+ # Fall back to checkout. We create an annotated tag so that the user
+ # can manually inspect the situation and revert if required.
+ # We can't log the failed rebase output because MSVC sees it and
+ # intervenes, causing the build to fail even though it completes.
+ # Write it to a file instead.
+ string(TIMESTAMP tag_timestamp "%Y%m%dT%H%M%S" UTC)
+ set(tag_name _cmake_ExternalProject_moved_from_here_${tag_timestamp}Z)
+ set(error_log_file ${CMAKE_CURRENT_LIST_DIR}/rebase_error_${tag_timestamp}Z.log)
+ file(WRITE ${error_log_file} "${rebase_output}")
+ message(WARNING "Rebase failed, output has been saved to ${error_log_file}"
+ "\nFalling back to checkout, previous commit tagged as ${tag_name}")
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git tag -a
+ -m "ExternalProject attempting to move from here to ${checkout_name}"
+ ${tag_name}
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git checkout "${checkout_name}"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+ endif()
+endif()
+
+if(need_stash)
+ # Put back the stashed changes
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash pop --index --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ # Stash pop --index failed: Try again dropping the index
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git reset --hard --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ )
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash pop --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ # Stash pop failed: Restore previous state.
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git reset --hard --quiet ${head_sha}
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ )
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash pop --index --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ )
+ message(FATAL_ERROR "\nFailed to unstash changes in: 'F:/Projects/liboculus/build_clean/_deps/fmt-src'."
+ "\nYou will have to resolve the conflicts manually")
+ endif()
+ endif()
+endif()
+
+set(init_submodules "TRUE")
+if(init_submodules)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe"
+ --git-dir=.git
+ submodule update --recursive --init
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+endif()
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-mkdirs.cmake b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-mkdirs.cmake
new file mode 100644
index 0000000..56b55cd
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-mkdirs.cmake
@@ -0,0 +1,22 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+cmake_minimum_required(VERSION 3.5)
+
+file(MAKE_DIRECTORY
+ "F:/Projects/liboculus/build_clean/_deps/fmt-src"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-build"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src"
+ "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp"
+)
+
+set(configSubDirs Debug)
+foreach(subDir IN LISTS configSubDirs)
+ file(MAKE_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/${subDir}")
+endforeach()
+if(cfgdir)
+ file(MAKE_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp${cfgdir}") # cfgdir has leading slash
+endif()
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate.sln b/build_clean/_deps/fmt-subbuild/fmt-populate.sln
new file mode 100644
index 0000000..599aede
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate.sln
@@ -0,0 +1,47 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CMakePredefinedTargets", "CMakePredefinedTargets", "{BF171BAA-8C11-35D4-92DD-9D08E8E5396A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ExternalProjectTargets", "ExternalProjectTargets", "{621DD5E8-EC12-342C-A9B9-B927EFFEDB25}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "fmt-populate", "ExternalProjectTargets\fmt-populate", "{EA0AC85B-D26D-35DA-BA8F-8F2735E2B92D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{E4FA5A8E-CECF-304E-955E-287D999E2D0A}"
+ ProjectSection(ProjectDependencies) = postProject
+ {00B41E84-417A-37AC-A5B4-52FB9129912D} = {00B41E84-417A-37AC-A5B4-52FB9129912D}
+ {7AFE78C4-95A8-3D3E-95F5-C5EE871CD64D} = {7AFE78C4-95A8-3D3E-95F5-C5EE871CD64D}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "ZERO_CHECK.vcxproj", "{00B41E84-417A-37AC-A5B4-52FB9129912D}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fmt-populate", "fmt-populate.vcxproj", "{7AFE78C4-95A8-3D3E-95F5-C5EE871CD64D}"
+ ProjectSection(ProjectDependencies) = postProject
+ {00B41E84-417A-37AC-A5B4-52FB9129912D} = {00B41E84-417A-37AC-A5B4-52FB9129912D}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {E4FA5A8E-CECF-304E-955E-287D999E2D0A}.Debug|x64.ActiveCfg = Debug|x64
+ {00B41E84-417A-37AC-A5B4-52FB9129912D}.Debug|x64.ActiveCfg = Debug|x64
+ {00B41E84-417A-37AC-A5B4-52FB9129912D}.Debug|x64.Build.0 = Debug|x64
+ {7AFE78C4-95A8-3D3E-95F5-C5EE871CD64D}.Debug|x64.ActiveCfg = Debug|x64
+ {7AFE78C4-95A8-3D3E-95F5-C5EE871CD64D}.Debug|x64.Build.0 = Debug|x64
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {E4FA5A8E-CECF-304E-955E-287D999E2D0A} = {BF171BAA-8C11-35D4-92DD-9D08E8E5396A}
+ {00B41E84-417A-37AC-A5B4-52FB9129912D} = {BF171BAA-8C11-35D4-92DD-9D08E8E5396A}
+ {EA0AC85B-D26D-35DA-BA8F-8F2735E2B92D} = {621DD5E8-EC12-342C-A9B9-B927EFFEDB25}
+ {7AFE78C4-95A8-3D3E-95F5-C5EE871CD64D} = {EA0AC85B-D26D-35DA-BA8F-8F2735E2B92D}
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {E4CAB15B-B60F-3A9C-A0F3-0E5B8AD57182}
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate.vcxproj b/build_clean/_deps/fmt-subbuild/fmt-populate.vcxproj
new file mode 100644
index 0000000..21d54c6
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate.vcxproj
@@ -0,0 +1,301 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+
+ {7AFE78C4-95A8-3D3E-95F5-C5EE871CD64D}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ fmt-populate
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ %(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ true
+ Creating directories for 'fmt-populate'
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -Dcfgdir=/Debug -P F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-mkdirs.cmake
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-mkdir
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-mkdir
+ false
+
+
+
+
+ Performing download step (git clone) for 'fmt-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -P F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitclone.cmake
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-download
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\fmt-populate-gitinfo.txt;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-mkdir;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-download
+ false
+
+
+
+
+ Performing update step for 'fmt-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-src
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -Dcan_fetch=YES -P F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitupdate.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\tmp\fmt-populate-gitupdate.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\fmt-populate-update-info.txt;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-download;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-update
+ false
+ false
+
+
+
+
+ No patch step for 'fmt-populate'
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-patch
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\fmt-populate-patch-info.txt;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-update;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-patch
+ false
+ false
+
+
+
+
+ true
+ No configure step for 'fmt-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-configure
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\tmp\fmt-populate-cfgcmd.txt;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-patch;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-configure
+ false
+
+
+
+
+ true
+ No build step for 'fmt-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-build
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-configure;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-build
+ false
+
+
+
+
+ true
+ No install step for 'fmt-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-install
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-build;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-install
+ false
+
+
+
+
+ true
+ No test step for 'fmt-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-test
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-install;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-test
+ false
+
+
+
+
+ true
+ Completed 'fmt-populate'
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -E make_directory F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/Debug
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/Debug/fmt-populate-complete
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-done
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-install;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-mkdir;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-download;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-update;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-patch;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-configure;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-build;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\src\fmt-populate-stamp\Debug\fmt-populate-test;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\Debug\fmt-populate-complete
+ false
+ false
+
+
+
+
+ true
+
+ setlocal
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\Debug\fmt-populate-complete;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\fmt-populate
+ false
+ false
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/fmt-subbuild -BF:/Projects/liboculus/build_clean/_deps/fmt-subbuild --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\PatchInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\RepositoryInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\UpdateInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\cfgcmd.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitclone.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitupdate.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\mkdirs.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\fmt-populate-prefix\tmp\fmt-populate-mkdirs.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+
+ {00B41E84-417A-37AC-A5B4-52FB9129912D}
+ ZERO_CHECK
+ false
+ Never
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-subbuild/fmt-populate.vcxproj.filters b/build_clean/_deps/fmt-subbuild/fmt-populate.vcxproj.filters
new file mode 100644
index 0000000..630f0dc
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/fmt-populate.vcxproj.filters
@@ -0,0 +1,44 @@
+
+
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+
+
+
+
+
+
+ {D4074039-98E5-3540-BFBC-769267FB5287}
+
+
+
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.recipe b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.recipe
new file mode 100644
index 0000000..aadd0a7
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.recipe
@@ -0,0 +1,17 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\x64\Debug\ZERO_CHECK
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\x64\Debug\fmt-populate
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\x64\Debug\ALL_BUILD
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/ALL_BUILD.lastbuildstate b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/ALL_BUILD.lastbuildstate
new file mode 100644
index 0000000..17bad98
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/ALL_BUILD.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\|
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.command.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..f8db08d
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKELISTS.TXT
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/fmt-subbuild -BF:/Projects/liboculus/build_clean/_deps/fmt-subbuild --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.read.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..c63bb3b
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,19 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKELISTS.TXT
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\PATCHINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\REPOSITORYINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\UPDATEINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\CFGCMD.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITCLONE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITUPDATE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\MKDIRS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\TMP\FMT-POPULATE-MKDIRS.CMAKE
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.write.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..d360f31
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe
new file mode 100644
index 0000000..0ed1750
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\x64\Debug\ZERO_CHECK
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..92f6df8
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\8DC4CDD2E11C87B73A3D8879CC6BCF23\GENERATE.STAMP.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/fmt-subbuild -BF:/Projects/liboculus/build_clean/_deps/fmt-subbuild --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..9cf9503
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,20 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\8DC4CDD2E11C87B73A3D8879CC6BCF23\GENERATE.STAMP.RULE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\PATCHINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\REPOSITORYINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\UPDATEINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\CFGCMD.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITCLONE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITUPDATE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\MKDIRS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\TMP\FMT-POPULATE-MKDIRS.CMAKE
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..6e4c73f
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\8DC4CDD2E11C87B73A3D8879CC6BCF23\GENERATE.STAMP.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate
new file mode 100644
index 0000000..17bad98
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\|
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.recipe b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.recipe
new file mode 100644
index 0000000..6f3e0b2
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.recipe
@@ -0,0 +1,14 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\x64\Debug\ZERO_CHECK
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\x64\Debug\fmt-populate
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.command.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..46005c7
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,150 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-MKDIR.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -Dcfgdir=/Debug -P F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-mkdirs.cmake
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-mkdir
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-DOWNLOAD.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -P F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitclone.cmake
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-download
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-UPDATE.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-src
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -Dcan_fetch=YES -P F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/tmp/fmt-populate-gitupdate.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-PATCH.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-patch
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-CONFIGURE.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-configure
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-BUILD.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-build
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-INSTALL.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-install
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-TEST.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\fmt-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-test
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\588FA9C3AAC8E88CDF47E06F242215AB\FMT-POPULATE-COMPLETE.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -E make_directory F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/Debug
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/Debug/fmt-populate-complete
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/fmt-populate-prefix/src/fmt-populate-stamp/Debug/fmt-populate-done
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\8DC4CDD2E11C87B73A3D8879CC6BCF23\FMT-POPULATE.RULE
+setlocal
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKELISTS.TXT
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/fmt-subbuild -BF:/Projects/liboculus/build_clean/_deps/fmt-subbuild --check-stamp-file F:/Projects/liboculus/build_clean/_deps/fmt-subbuild/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.read.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..8270620
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,50 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-MKDIR.RULE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-DOWNLOAD.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\FMT-POPULATE-GITINFO.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-MKDIR
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-UPDATE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\TMP\FMT-POPULATE-GITUPDATE.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\FMT-POPULATE-UPDATE-INFO.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-DOWNLOAD
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-PATCH.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\FMT-POPULATE-PATCH-INFO.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-UPDATE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-CONFIGURE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\TMP\FMT-POPULATE-CFGCMD.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-PATCH
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-BUILD.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-CONFIGURE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-INSTALL.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-BUILD
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-TEST.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-INSTALL
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\588FA9C3AAC8E88CDF47E06F242215AB\FMT-POPULATE-COMPLETE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-INSTALL
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-MKDIR
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-DOWNLOAD
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-UPDATE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-PATCH
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-CONFIGURE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-BUILD
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-TEST
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\8DC4CDD2E11C87B73A3D8879CC6BCF23\FMT-POPULATE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\DEBUG\FMT-POPULATE-COMPLETE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKELISTS.TXT
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\PATCHINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\REPOSITORYINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\UPDATEINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\CFGCMD.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITCLONE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITUPDATE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\MKDIRS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\TMP\FMT-POPULATE-MKDIRS.CMAKE
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.write.1.tlog b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..678609a
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,22 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-MKDIR.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-MKDIR
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-DOWNLOAD.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-DOWNLOAD
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-UPDATE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-UPDATE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-PATCH.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-PATCH
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-CONFIGURE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-CONFIGURE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-BUILD.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-BUILD
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-INSTALL.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-INSTALL
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\84763929291837AC3F5F9D8DFC095F7C\FMT-POPULATE-TEST.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\FMT-POPULATE-PREFIX\SRC\FMT-POPULATE-STAMP\DEBUG\FMT-POPULATE-TEST
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\588FA9C3AAC8E88CDF47E06F242215AB\FMT-POPULATE-COMPLETE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\DEBUG\FMT-POPULATE-COMPLETE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\8DC4CDD2E11C87B73A3D8879CC6BCF23\FMT-POPULATE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\FMT-POPULATE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SUBBUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/fmt-populate.lastbuildstate b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/fmt-populate.lastbuildstate
new file mode 100644
index 0000000..17bad98
--- /dev/null
+++ b/build_clean/_deps/fmt-subbuild/x64/Debug/fmt-populate/fmt-populate.tlog/fmt-populate.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\fmt-subbuild\|
diff --git a/build_clean/_deps/spdlog-build/ALL_BUILD.vcxproj b/build_clean/_deps/spdlog-build/ALL_BUILD.vcxproj
new file mode 100644
index 0000000..bcfcc29
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/ALL_BUILD.vcxproj
@@ -0,0 +1,184 @@
+
+
+
+ x64
+
+
+ false
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ ALL_BUILD
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ F:\Projects\liboculus\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ F:\Projects\liboculus\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ spdlog
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-build/ALL_BUILD.vcxproj.filters b/build_clean/_deps/spdlog-build/ALL_BUILD.vcxproj.filters
new file mode 100644
index 0000000..1440c27
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/ALL_BUILD.vcxproj.filters
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp b/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
new file mode 100644
index 0000000..9b5f49f
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
@@ -0,0 +1 @@
+# CMake generation timestamp file for this directory.
diff --git a/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp.depend b/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp.depend
new file mode 100644
index 0000000..c2ba988
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp.depend
@@ -0,0 +1,12 @@
+# CMake generation dependency list for this directory.
+C:/Program Files/CMake/share/cmake-3.28/Modules/CheckCSourceCompiles.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CheckIncludeFile.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CheckLibraryExists.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FindPackageMessage.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/FindThreads.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/GNUInstallDirs.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake
+F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+F:/Projects/liboculus/build_clean/_deps/spdlog-src/cmake/ide.cmake
+F:/Projects/liboculus/build_clean/_deps/spdlog-src/cmake/utils.cmake
diff --git a/build_clean/_deps/spdlog-build/Debug/spdlogd.lib b/build_clean/_deps/spdlog-build/Debug/spdlogd.lib
new file mode 100644
index 0000000..93be336
Binary files /dev/null and b/build_clean/_deps/spdlog-build/Debug/spdlogd.lib differ
diff --git a/build_clean/_deps/spdlog-build/Debug/spdlogd.pdb b/build_clean/_deps/spdlog-build/Debug/spdlogd.pdb
new file mode 100644
index 0000000..bff092f
Binary files /dev/null and b/build_clean/_deps/spdlog-build/Debug/spdlogd.pdb differ
diff --git a/build_clean/_deps/spdlog-build/INSTALL.vcxproj b/build_clean/_deps/spdlog-build/INSTALL.vcxproj
new file mode 100644
index 0000000..6d30b1c
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/INSTALL.vcxproj
@@ -0,0 +1,208 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ INSTALL
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ Always
+
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+
+
+
+
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\INSTALL_force
+ false
+ false
+ true
+
+ setlocal
+cd .
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\INSTALL_force
+ false
+ false
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ ALL_BUILD
+ false
+ Never
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-build/INSTALL.vcxproj.filters b/build_clean/_deps/spdlog-build/INSTALL.vcxproj.filters
new file mode 100644
index 0000000..22cdba7
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/INSTALL.vcxproj.filters
@@ -0,0 +1,13 @@
+
+
+
+
+ CMake Rules
+
+
+
+
+ {5452DAE2-34ED-3BE1-9357-BF0D24A6F395}
+
+
+
diff --git a/build_clean/_deps/spdlog-build/cmake_install.cmake b/build_clean/_deps/spdlog-build/cmake_install.cmake
new file mode 100644
index 0000000..f655779
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/cmake_install.cmake
@@ -0,0 +1,34 @@
+# Install script for directory: F:/Projects/liboculus/build_clean/_deps/spdlog-src
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/liboculus")
+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 "Release")
+ 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()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/async.obj b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/async.obj
new file mode 100644
index 0000000..15467a0
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/async.obj differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/cfg.obj b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/cfg.obj
new file mode 100644
index 0000000..b41e32d
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/cfg.obj differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/color_sinks.obj b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/color_sinks.obj
new file mode 100644
index 0000000..2aa0807
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/color_sinks.obj differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/file_sinks.obj b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/file_sinks.obj
new file mode 100644
index 0000000..ff193cc
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/file_sinks.obj differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.obj b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.obj
new file mode 100644
index 0000000..034189a
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.obj differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.13268.write.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.13268.write.1.tlog
new file mode 100644
index 0000000..5c8ae2a
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.13268.write.1.tlog differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.command.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.command.1.tlog
new file mode 100644
index 0000000..1208ca0
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.command.1.tlog differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.read.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.read.1.tlog
new file mode 100644
index 0000000..4c6b77b
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CL.read.1.tlog differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Cl.items.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Cl.items.tlog
new file mode 100644
index 0000000..8f5712e
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Cl.items.tlog
@@ -0,0 +1,6 @@
+F:\Projects\liboculus\build_clean\_deps\spdlog-src\src\spdlog.cpp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\spdlog.dir\Debug\spdlog.obj
+F:\Projects\liboculus\build_clean\_deps\spdlog-src\src\stdout_sinks.cpp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\spdlog.dir\Debug\stdout_sinks.obj
+F:\Projects\liboculus\build_clean\_deps\spdlog-src\src\color_sinks.cpp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\spdlog.dir\Debug\color_sinks.obj
+F:\Projects\liboculus\build_clean\_deps\spdlog-src\src\file_sinks.cpp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\spdlog.dir\Debug\file_sinks.obj
+F:\Projects\liboculus\build_clean\_deps\spdlog-src\src\async.cpp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\spdlog.dir\Debug\async.obj
+F:\Projects\liboculus\build_clean\_deps\spdlog-src\src\cfg.cpp;F:\Projects\liboculus\build_clean\_deps\spdlog-build\spdlog.dir\Debug\cfg.obj
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.command.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..7b2c482
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SRC\CMAKELISTS.TXT
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.read.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..36b5c39
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,11 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SRC\CMAKELISTS.TXT
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKCSOURCECOMPILES.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKINCLUDEFILE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKLIBRARYEXISTS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDPACKAGEHANDLESTANDARDARGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDPACKAGEMESSAGE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDTHREADS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\GNUINSTALLDIRS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\INTERNAL\CHECKSOURCECOMPILES.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SRC\CMAKE\IDE.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SRC\CMAKE\UTILS.CMAKE
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.write.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..cf6ca91
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SRC\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-BUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib-link.read.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib-link.read.1.tlog
new file mode 100644
index 0000000..7b63829
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib-link.read.1.tlog differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib-link.write.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib-link.write.1.tlog
new file mode 100644
index 0000000..2dc4530
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib-link.write.1.tlog differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib.command.1.tlog b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib.command.1.tlog
new file mode 100644
index 0000000..8c77cea
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/Lib.command.1.tlog differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/spdlog.lastbuildstate b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/spdlog.lastbuildstate
new file mode 100644
index 0000000..03c264e
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlog.tlog/spdlog.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\spdlog-build\|
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlogd.lib.recipe b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlogd.lib.recipe
new file mode 100644
index 0000000..08e22dd
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/spdlogd.lib.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\x64\Debug\ZERO_CHECK
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-build/spdlog.dir/Debug/stdout_sinks.obj b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/stdout_sinks.obj
new file mode 100644
index 0000000..19c95bb
Binary files /dev/null and b/build_clean/_deps/spdlog-build/spdlog.dir/Debug/stdout_sinks.obj differ
diff --git a/build_clean/_deps/spdlog-build/spdlog.sln b/build_clean/_deps/spdlog-build/spdlog.sln
new file mode 100644
index 0000000..b14c2fb
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.sln
@@ -0,0 +1,81 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{B645C30E-A193-3CB7-8150-7A5EEB790106}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA} = {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "INSTALL", "INSTALL.vcxproj", "{6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B645C30E-A193-3CB7-8150-7A5EEB790106} = {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "..\..\\ZERO_CHECK.vcxproj", "{01F63164-BE1F-3EAC-B55E-CC9856C463C3}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fmt", "..\fmt-build\fmt.vcxproj", "{248AB58D-0A27-3451-AB2F-9F4063E13A67}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spdlog", "spdlog.vcxproj", "{AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67} = {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Release|x64 = Release|x64
+ MinSizeRel|x64 = MinSizeRel|x64
+ RelWithDebInfo|x64 = RelWithDebInfo|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Debug|x64.ActiveCfg = Debug|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Debug|x64.Build.0 = Debug|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Release|x64.ActiveCfg = Release|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Release|x64.Build.0 = Release|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.Debug|x64.ActiveCfg = Debug|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.Release|x64.ActiveCfg = Release|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Debug|x64.ActiveCfg = Debug|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Debug|x64.Build.0 = Debug|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Release|x64.ActiveCfg = Release|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Release|x64.Build.0 = Release|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Debug|x64.ActiveCfg = Debug|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Debug|x64.Build.0 = Debug|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Release|x64.ActiveCfg = Release|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Release|x64.Build.0 = Release|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.Debug|x64.ActiveCfg = Debug|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.Debug|x64.Build.0 = Debug|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.Release|x64.ActiveCfg = Release|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.Release|x64.Build.0 = Release|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {B91B868F-FEFB-37E5-B940-F7E821BBBB62}
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build_clean/_deps/spdlog-build/spdlog.vcxproj b/build_clean/_deps/spdlog-build/spdlog.vcxproj
new file mode 100644
index 0000000..59af49c
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.vcxproj
@@ -0,0 +1,401 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ spdlog
+ NoUpgrade
+
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\Debug\
+ spdlog.dir\Debug\
+ spdlogd
+ .lib
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\Release\
+ spdlog.dir\Release\
+ spdlog
+ .lib
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\MinSizeRel\
+ spdlog.dir\MinSizeRel\
+ spdlog
+ .lib
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\RelWithDebInfo\
+ spdlog.dir\RelWithDebInfo\
+ spdlog
+ .lib
+
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ %(AdditionalOptions) /Zc:__cplusplus
+ $(IntDir)
+ EnableFastChecks
+ ProgramDatabase
+ Sync
+ Disabled
+ stdcpp17
+ true
+ Disabled
+ NotUsing
+ MultiThreadedDebugDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="Debug"
+ $(IntDir)
+
+
+ %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"Debug\"
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ %(AdditionalOptions) /Zc:__cplusplus
+ $(IntDir)
+ Sync
+ AnySuitable
+ stdcpp17
+ true
+ MaxSpeed
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="Release"
+ $(IntDir)
+
+
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"Release\"
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ %(AdditionalOptions) /Zc:__cplusplus
+ $(IntDir)
+ Sync
+ OnlyExplicitInline
+ stdcpp17
+ true
+ MinSpace
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="MinSizeRel"
+ $(IntDir)
+
+
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"MinSizeRel\"
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ %(AdditionalOptions) /Zc:__cplusplus
+ $(IntDir)
+ ProgramDatabase
+ Sync
+ OnlyExplicitInline
+ stdcpp17
+ true
+ MaxSpeed
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="RelWithDebInfo"
+ $(IntDir)
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"RelWithDebInfo\"
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;F:\Projects\liboculus\build_clean\_deps\fmt-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-src/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-build/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\GNUInstallDirs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Internal\CheckSourceCompiles.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\ide.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-src\cmake\utils.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-build\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ fmt
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-build/spdlog.vcxproj.filters b/build_clean/_deps/spdlog-build/spdlog.vcxproj.filters
new file mode 100644
index 0000000..ded36fe
--- /dev/null
+++ b/build_clean/_deps/spdlog-build/spdlog.vcxproj.filters
@@ -0,0 +1,348 @@
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\details
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\sinks
+
+
+ Header Files\spdlog\fmt
+
+
+ Header Files\spdlog\fmt
+
+
+ Header Files\spdlog\fmt
+
+
+ Header Files\spdlog\fmt
+
+
+ Header Files\spdlog\fmt
+
+
+ Header Files\spdlog\fmt
+
+
+ Header Files\spdlog\fmt
+
+
+ Header Files\spdlog\fmt
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+ Header Files\spdlog\fmt\bundled
+
+
+
+
+
+
+
+ {CA099077-FA06-3370-B8A4-F78603ABAEB9}
+
+
+ {57B1E9B5-F13C-3B7C-8CE7-88FBA965EB34}
+
+
+ {390E64F5-9697-3169-8E6F-362E60B99480}
+
+
+ {96F74674-A109-3942-B32F-ED314B2329E9}
+
+
+ {6B8154C5-470B-3A9E-8B34-4CE26554EBFC}
+
+
+ {749FA576-DEE2-339B-8F23-78546C8C8ABB}
+
+
+ {F68D873A-1EB1-3763-9D9A-472A77062F9F}
+
+
+
diff --git a/build_clean/_deps/spdlog-src b/build_clean/_deps/spdlog-src
new file mode 160000
index 0000000..7c02e20
--- /dev/null
+++ b/build_clean/_deps/spdlog-src
@@ -0,0 +1 @@
+Subproject commit 7c02e204c92545f869e2f04edaab1f19fe8b19fd
diff --git a/build_clean/_deps/spdlog-subbuild/ALL_BUILD.vcxproj b/build_clean/_deps/spdlog-subbuild/ALL_BUILD.vcxproj
new file mode 100644
index 0000000..b02b726
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/ALL_BUILD.vcxproj
@@ -0,0 +1,87 @@
+
+
+
+ x64
+
+
+ false
+
+
+
+ Debug
+ x64
+
+
+
+ {EE7A09F4-222B-3A25-99B6-96700E5D42DD}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ ALL_BUILD
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ %(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild -BF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\PatchInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\RepositoryInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\UpdateInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\cfgcmd.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitclone.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitupdate.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\mkdirs.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\tmp\spdlog-populate-mkdirs.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+ {2AFB7BC7-4153-3120-AEEA-B36F494E5D97}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {98986E82-6FAE-3632-BA43-8B20FB958DFB}
+ spdlog-populate
+ false
+ Never
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-subbuild/ALL_BUILD.vcxproj.filters b/build_clean/_deps/spdlog-subbuild/ALL_BUILD.vcxproj.filters
new file mode 100644
index 0000000..3f253b3
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/ALL_BUILD.vcxproj.filters
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeCache.txt b/build_clean/_deps/spdlog-subbuild/CMakeCache.txt
new file mode 100644
index 0000000..f047a3d
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeCache.txt
@@ -0,0 +1,104 @@
+# This is the CMakeCache file.
+# For build in directory: f:/Projects/liboculus/build_clean/_deps/spdlog-subbuild
+# It was generated by CMake: C:/Program Files/CMake/bin/cmake.exe
+# 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
+########################
+
+//No help, variable specified on the command line.
+CMAKE_CONFIGURATION_TYPES:STRING=Debug
+
+//Value Computed by CMake.
+CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/pkgRedirects
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=C:/Program Files (x86)/spdlog-populate
+
+//No help, variable specified on the command line.
+CMAKE_MAKE_PROGRAM:FILEPATH=d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/amd64/MSBuild.exe
+
+//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=spdlog-populate
+
+//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
+
+//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=FALSE
+
+//Value Computed by CMake
+spdlog-populate_BINARY_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild
+
+//Value Computed by CMake
+spdlog-populate_IS_TOP_LEVEL:STATIC=ON
+
+//Value Computed by CMake
+spdlog-populate_SOURCE_DIR:STATIC=F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=f:/Projects/liboculus/build_clean/_deps/spdlog-subbuild
+//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=28
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=0
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cmake.exe
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cpack.exe
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=C:/Program Files/CMake/bin/ctest.exe
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Visual Studio 17 2022
+//No help, variable specified on the command line.
+CMAKE_GENERATOR_INSTANCE:INTERNAL=d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools
+//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=F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
+//Platform information initialized
+CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=C:/Program Files/CMake/share/cmake-3.28
+//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_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/1aa71237a69000b6072d784eee27357c/spdlog-populate-complete.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/1aa71237a69000b6072d784eee27357c/spdlog-populate-complete.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/1aa71237a69000b6072d784eee27357c/spdlog-populate-complete.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/CMakeSystem.cmake b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/CMakeSystem.cmake
new file mode 100644
index 0000000..88ce365
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Windows-10.0.26200")
+set(CMAKE_HOST_SYSTEM_NAME "Windows")
+set(CMAKE_HOST_SYSTEM_VERSION "10.0.26200")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "AMD64")
+
+
+
+set(CMAKE_SYSTEM "Windows-10.0.26200")
+set(CMAKE_SYSTEM_NAME "Windows")
+set(CMAKE_SYSTEM_VERSION "10.0.26200")
+set(CMAKE_SYSTEM_PROCESSOR "AMD64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath.txt b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath.txt
new file mode 100644
index 0000000..baf8bdf
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath.txt
@@ -0,0 +1 @@
+d:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Microsoft/VC/v170
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath.vcxproj b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath.vcxproj
new file mode 100644
index 0000000..ccb7d62
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath.vcxproj
@@ -0,0 +1,31 @@
+
+
+
+
+ Debug
+ x64
+
+
+
+ {F3FC6D86-508D-3FB1-96D2-995F08B142EC}
+ Win32Proj
+ x64
+ 10.0.22621.0
+
+
+
+ x64
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+ echo VCTargetsPath=$(VCTargetsPath)
+
+
+
+
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe
new file mode 100644
index 0000000..e376713
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\3.28.0\x64\Debug\VCTargetsPath
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate
new file mode 100644
index 0000000..c0f3887
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/VCTargetsPath/x64/Debug/VCTargetsPath.tlog/VCTargetsPath.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\3.28.0\|
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-build.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-build.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-build.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-configure.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-configure.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-configure.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-download.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-download.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-download.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-install.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-install.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-install.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-mkdir.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-mkdir.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-mkdir.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-patch.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-patch.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-patch.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-test.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-test.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-test.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-update.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-update.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-update.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/CMakeConfigureLog.yaml b/build_clean/_deps/spdlog-subbuild/CMakeFiles/CMakeConfigureLog.yaml
new file mode 100644
index 0000000..66c16e9
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/CMakeConfigureLog.yaml
@@ -0,0 +1,11 @@
+
+---
+events:
+ -
+ kind: "message-v1"
+ backtrace:
+ - "C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake:233 (message)"
+ - "CMakeLists.txt:16 (project)"
+ message: |
+ The system is: Windows - 10.0.26200 - AMD64
+...
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/Debug/spdlog-populate-complete b/build_clean/_deps/spdlog-subbuild/CMakeFiles/Debug/spdlog-populate-complete
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/TargetDirectories.txt b/build_clean/_deps/spdlog-subbuild/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..417ba0d
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,3 @@
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate.dir
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/ALL_BUILD.dir
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/ZERO_CHECK.dir
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/c1cfc6ccee22d1cd00018b762e6c3298/generate.stamp.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/c1cfc6ccee22d1cd00018b762e6c3298/generate.stamp.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/c1cfc6ccee22d1cd00018b762e6c3298/generate.stamp.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/c1cfc6ccee22d1cd00018b762e6c3298/spdlog-populate.rule b/build_clean/_deps/spdlog-subbuild/CMakeFiles/c1cfc6ccee22d1cd00018b762e6c3298/spdlog-populate.rule
new file mode 100644
index 0000000..2d3998c
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/c1cfc6ccee22d1cd00018b762e6c3298/spdlog-populate.rule
@@ -0,0 +1 @@
+# generated from CMake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/cmake.check_cache b/build_clean/_deps/spdlog-subbuild/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp b/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp
new file mode 100644
index 0000000..9b5f49f
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp
@@ -0,0 +1 @@
+# CMake generation timestamp file for this directory.
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp.depend b/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp.depend
new file mode 100644
index 0000000..66f4ef4
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp.depend
@@ -0,0 +1,20 @@
+# CMake generation dependency list for this directory.
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeGenericSystem.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeInitializeConfigs.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeSystemSpecificInformation.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/CMakeSystemSpecificInitialize.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/PatchInfo.txt.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/RepositoryInfo.txt.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/UpdateInfo.txt.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/cfgcmd.txt.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/gitclone.cmake.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/gitupdate.cmake.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/mkdirs.cmake.in
+C:/Program Files/CMake/share/cmake-3.28/Modules/ExternalProject/shared_internal_commands.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows-Initialize.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/Windows.cmake
+C:/Program Files/CMake/share/cmake-3.28/Modules/Platform/WindowsPaths.cmake
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/3.28.0/CMakeSystem.cmake
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeLists.txt
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-mkdirs.cmake
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp.list b/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp.list
new file mode 100644
index 0000000..d113a2b
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp.list
@@ -0,0 +1 @@
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate.dir/Labels.json b/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate.dir/Labels.json
new file mode 100644
index 0000000..f4513fd
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate.dir/Labels.json
@@ -0,0 +1,46 @@
+{
+ "sources" :
+ [
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/c1cfc6ccee22d1cd00018b762e6c3298/spdlog-populate.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/1aa71237a69000b6072d784eee27357c/spdlog-populate-complete.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-build.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-configure.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-download.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-install.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-mkdir.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-patch.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-test.rule"
+ },
+ {
+ "file" : "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-update.rule"
+ }
+ ],
+ "target" :
+ {
+ "labels" :
+ [
+ "spdlog-populate"
+ ],
+ "name" : "spdlog-populate"
+ }
+}
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate.dir/Labels.txt b/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate.dir/Labels.txt
new file mode 100644
index 0000000..b528d82
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate.dir/Labels.txt
@@ -0,0 +1,14 @@
+# Target labels
+ spdlog-populate
+# Source files and their labels
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/spdlog-populate
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/c1cfc6ccee22d1cd00018b762e6c3298/spdlog-populate.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/1aa71237a69000b6072d784eee27357c/spdlog-populate-complete.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-build.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-configure.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-download.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-install.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-mkdir.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-patch.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-test.rule
+F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/90d5625d4329c76d296f64d78c5d9cfd/spdlog-populate-update.rule
diff --git a/build_clean/_deps/spdlog-subbuild/CMakeLists.txt b/build_clean/_deps/spdlog-subbuild/CMakeLists.txt
new file mode 100644
index 0000000..12e56ea
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/CMakeLists.txt
@@ -0,0 +1,42 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+cmake_minimum_required(VERSION 3.28.0)
+
+# Reject any attempt to use a toolchain file. We must not use one because
+# we could be downloading it here. If the CMAKE_TOOLCHAIN_FILE environment
+# variable is set, the cache variable will have been initialized from it.
+unset(CMAKE_TOOLCHAIN_FILE CACHE)
+unset(ENV{CMAKE_TOOLCHAIN_FILE})
+
+# We name the project and the target for the ExternalProject_Add() call
+# to something that will highlight to the user what we are working on if
+# something goes wrong and an error message is produced.
+
+project(spdlog-populate NONE)
+
+
+# Pass through things we've already detected in the main project to avoid
+# paying the cost of redetecting them again in ExternalProject_Add()
+set(GIT_EXECUTABLE [==[D:/Program Files/Git/cmd/git.exe]==])
+set(GIT_VERSION_STRING [==[2.50.1.windows.1]==])
+set_property(GLOBAL PROPERTY _CMAKE_FindGit_GIT_EXECUTABLE_VERSION
+ [==[D:/Program Files/Git/cmd/git.exe;2.50.1.windows.1]==]
+)
+
+
+include(ExternalProject)
+ExternalProject_Add(spdlog-populate
+ "UPDATE_DISCONNECTED" "False" "GIT_REPOSITORY" "https://github.com/gabime/spdlog.git" "EXTERNALPROJECT_INTERNAL_ARGUMENT_SEPARATOR" "GIT_TAG" "v1.13.0"
+ SOURCE_DIR "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ BINARY_DIR "F:/Projects/liboculus/build_clean/_deps/spdlog-build"
+ CONFIGURE_COMMAND ""
+ BUILD_COMMAND ""
+ INSTALL_COMMAND ""
+ TEST_COMMAND ""
+ USES_TERMINAL_DOWNLOAD YES
+ USES_TERMINAL_UPDATE YES
+ USES_TERMINAL_PATCH YES
+)
+
+
diff --git a/build_clean/_deps/spdlog-subbuild/ZERO_CHECK.vcxproj b/build_clean/_deps/spdlog-subbuild/ZERO_CHECK.vcxproj
new file mode 100644
index 0000000..2bb8d83
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/ZERO_CHECK.vcxproj
@@ -0,0 +1,76 @@
+
+
+
+ x64
+
+
+ false
+
+
+
+ Debug
+ x64
+
+
+
+ {2AFB7BC7-4153-3120-AEEA-B36F494E5D97}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ ZERO_CHECK
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ %(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ Always
+ true
+ Checking Build System
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild -BF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\PatchInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\RepositoryInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\UpdateInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\cfgcmd.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitclone.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitupdate.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\mkdirs.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeLists.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\tmp\spdlog-populate-mkdirs.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-subbuild/ZERO_CHECK.vcxproj.filters b/build_clean/_deps/spdlog-subbuild/ZERO_CHECK.vcxproj.filters
new file mode 100644
index 0000000..01c39a7
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/ZERO_CHECK.vcxproj.filters
@@ -0,0 +1,13 @@
+
+
+
+
+ CMake Rules
+
+
+
+
+ {40AC6708-758A-3723-9F75-EF3D802C625A}
+
+
+
diff --git a/build_clean/_deps/spdlog-subbuild/cmake_install.cmake b/build_clean/_deps/spdlog-subbuild/cmake_install.cmake
new file mode 100644
index 0000000..57f82d0
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/cmake_install.cmake
@@ -0,0 +1,44 @@
+# Install script for directory: F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/spdlog-populate")
+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 "Debug")
+ 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()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+ set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+ set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+ "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/${CMAKE_INSTALL_MANIFEST}"
+ "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-build b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-build
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-configure b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-configure
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-done b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-done
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-download b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-download
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-install b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-install
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-mkdir b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-mkdir
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-patch b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-patch
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-test b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-test
new file mode 100644
index 0000000..e69de29
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitclone-lastrun.txt b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitclone-lastrun.txt
new file mode 100644
index 0000000..7888d6e
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitclone-lastrun.txt
@@ -0,0 +1,15 @@
+# This is a generated file and its contents are an internal implementation detail.
+# The download step will be re-executed if anything in this file changes.
+# No other meaning or use of this file is supported.
+
+method=git
+command=C:/Program Files/CMake/bin/cmake.exe;-P;F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitclone.cmake
+source_dir=F:/Projects/liboculus/build_clean/_deps/spdlog-src
+work_dir=F:/Projects/liboculus/build_clean/_deps
+repository=https://github.com/gabime/spdlog.git
+remote=origin
+init_submodules=TRUE
+recurse_submodules=--recursive
+submodules=
+CMP0097=NEW
+
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitinfo.txt b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitinfo.txt
new file mode 100644
index 0000000..7888d6e
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitinfo.txt
@@ -0,0 +1,15 @@
+# This is a generated file and its contents are an internal implementation detail.
+# The download step will be re-executed if anything in this file changes.
+# No other meaning or use of this file is supported.
+
+method=git
+command=C:/Program Files/CMake/bin/cmake.exe;-P;F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitclone.cmake
+source_dir=F:/Projects/liboculus/build_clean/_deps/spdlog-src
+work_dir=F:/Projects/liboculus/build_clean/_deps
+repository=https://github.com/gabime/spdlog.git
+remote=origin
+init_submodules=TRUE
+recurse_submodules=--recursive
+submodules=
+CMP0097=NEW
+
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-patch-info.txt b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-patch-info.txt
new file mode 100644
index 0000000..53e1e1e
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-patch-info.txt
@@ -0,0 +1,6 @@
+# This is a generated file and its contents are an internal implementation detail.
+# The update step will be re-executed if anything in this file changes.
+# No other meaning or use of this file is supported.
+
+command=
+work_dir=
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-update-info.txt b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-update-info.txt
new file mode 100644
index 0000000..ae7ead8
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-update-info.txt
@@ -0,0 +1,7 @@
+# This is a generated file and its contents are an internal implementation detail.
+# The patch step will be re-executed if anything in this file changes.
+# No other meaning or use of this file is supported.
+
+command (connected)=C:/Program Files/CMake/bin/cmake.exe;-Dcan_fetch=YES;-P;F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitupdate.cmake
+command (disconnected)=C:/Program Files/CMake/bin/cmake.exe;-Dcan_fetch=NO;-P;F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitupdate.cmake
+work_dir=F:/Projects/liboculus/build_clean/_deps/spdlog-src
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-cfgcmd.txt b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-cfgcmd.txt
new file mode 100644
index 0000000..6a6ed5f
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-cfgcmd.txt
@@ -0,0 +1 @@
+cmd=''
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitclone.cmake b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitclone.cmake
new file mode 100644
index 0000000..f4ade6f
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitclone.cmake
@@ -0,0 +1,73 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+cmake_minimum_required(VERSION 3.5)
+
+if(EXISTS "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitclone-lastrun.txt" AND EXISTS "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitinfo.txt" AND
+ "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitclone-lastrun.txt" IS_NEWER_THAN "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitinfo.txt")
+ message(STATUS
+ "Avoiding repeated git clone, stamp file is up to date: "
+ "'F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitclone-lastrun.txt'"
+ )
+ return()
+endif()
+
+execute_process(
+ COMMAND ${CMAKE_COMMAND} -E rm -rf "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ RESULT_VARIABLE error_code
+)
+if(error_code)
+ message(FATAL_ERROR "Failed to remove directory: 'F:/Projects/liboculus/build_clean/_deps/spdlog-src'")
+endif()
+
+# try the clone 3 times in case there is an odd git clone issue
+set(error_code 1)
+set(number_of_tries 0)
+while(error_code AND number_of_tries LESS 3)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe"
+ clone --no-checkout --config "advice.detachedHead=false" "https://github.com/gabime/spdlog.git" "spdlog-src"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps"
+ RESULT_VARIABLE error_code
+ )
+ math(EXPR number_of_tries "${number_of_tries} + 1")
+endwhile()
+if(number_of_tries GREATER 1)
+ message(STATUS "Had to git clone more than once: ${number_of_tries} times.")
+endif()
+if(error_code)
+ message(FATAL_ERROR "Failed to clone repository: 'https://github.com/gabime/spdlog.git'")
+endif()
+
+execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe"
+ checkout "v1.13.0" --
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ RESULT_VARIABLE error_code
+)
+if(error_code)
+ message(FATAL_ERROR "Failed to checkout tag: 'v1.13.0'")
+endif()
+
+set(init_submodules TRUE)
+if(init_submodules)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe"
+ submodule update --recursive --init
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ RESULT_VARIABLE error_code
+ )
+endif()
+if(error_code)
+ message(FATAL_ERROR "Failed to update submodules in: 'F:/Projects/liboculus/build_clean/_deps/spdlog-src'")
+endif()
+
+# Complete success, update the script-last-run stamp file:
+#
+execute_process(
+ COMMAND ${CMAKE_COMMAND} -E copy "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitinfo.txt" "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitclone-lastrun.txt"
+ RESULT_VARIABLE error_code
+)
+if(error_code)
+ message(FATAL_ERROR "Failed to copy script-last-run stamp file: 'F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/spdlog-populate-gitclone-lastrun.txt'")
+endif()
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitupdate.cmake b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitupdate.cmake
new file mode 100644
index 0000000..2623754
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitupdate.cmake
@@ -0,0 +1,292 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+cmake_minimum_required(VERSION 3.5)
+
+function(do_fetch)
+ message(VERBOSE "Fetching latest from the remote origin")
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git fetch --tags --force "origin"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ COMMAND_ERROR_IS_FATAL LAST
+ )
+endfunction()
+
+function(get_hash_for_ref ref out_var err_var)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git rev-parse "${ref}^0"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE ref_hash
+ ERROR_VARIABLE error_msg
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ if(error_code)
+ set(${out_var} "" PARENT_SCOPE)
+ else()
+ set(${out_var} "${ref_hash}" PARENT_SCOPE)
+ endif()
+ set(${err_var} "${error_msg}" PARENT_SCOPE)
+endfunction()
+
+get_hash_for_ref(HEAD head_sha error_msg)
+if(head_sha STREQUAL "")
+ message(FATAL_ERROR "Failed to get the hash for HEAD:\n${error_msg}")
+endif()
+
+
+execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git show-ref "v1.13.0"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ OUTPUT_VARIABLE show_ref_output
+)
+if(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/remotes/")
+ # Given a full remote/branch-name and we know about it already. Since
+ # branches can move around, we should always fetch, if permitted.
+ if(can_fetch)
+ do_fetch()
+ endif()
+ set(checkout_name "v1.13.0")
+
+elseif(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/tags/")
+ # Given a tag name that we already know about. We don't know if the tag we
+ # have matches the remote though (tags can move), so we should fetch. As a
+ # special case to preserve backward compatibility, if we are already at the
+ # same commit as the tag we hold locally, don't do a fetch and assume the tag
+ # hasn't moved on the remote.
+ # FIXME: We should provide an option to always fetch for this case
+ get_hash_for_ref("v1.13.0" tag_sha error_msg)
+ if(tag_sha STREQUAL head_sha)
+ message(VERBOSE "Already at requested tag: ${tag_sha}")
+ return()
+ endif()
+
+ if(can_fetch)
+ do_fetch()
+ endif()
+ set(checkout_name "v1.13.0")
+
+elseif(show_ref_output MATCHES "^[a-z0-9]+[ \\t]+refs/heads/")
+ # Given a branch name without any remote and we already have a branch by that
+ # name. We might already have that branch checked out or it might be a
+ # different branch. It isn't fully safe to use a bare branch name without the
+ # remote, so do a fetch (if allowed) and replace the ref with one that
+ # includes the remote.
+ if(can_fetch)
+ do_fetch()
+ endif()
+ set(checkout_name "origin/v1.13.0")
+
+else()
+ get_hash_for_ref("v1.13.0" tag_sha error_msg)
+ if(tag_sha STREQUAL head_sha)
+ # Have the right commit checked out already
+ message(VERBOSE "Already at requested ref: ${tag_sha}")
+ return()
+
+ elseif(tag_sha STREQUAL "")
+ # We don't know about this ref yet, so we have no choice but to fetch.
+ if(NOT can_fetch)
+ message(FATAL_ERROR
+ "Requested git ref \"v1.13.0\" is not present locally, and not "
+ "allowed to contact remote due to UPDATE_DISCONNECTED setting."
+ )
+ endif()
+
+ # We deliberately swallow any error message at the default log level
+ # because it can be confusing for users to see a failed git command.
+ # That failure is being handled here, so it isn't an error.
+ if(NOT error_msg STREQUAL "")
+ message(VERBOSE "${error_msg}")
+ endif()
+ do_fetch()
+ set(checkout_name "v1.13.0")
+
+ else()
+ # We have the commit, so we know we were asked to find a commit hash
+ # (otherwise it would have been handled further above), but we don't
+ # have that commit checked out yet. We don't need to fetch from the remote.
+ set(checkout_name "v1.13.0")
+ if(NOT error_msg STREQUAL "")
+ message(WARNING "${error_msg}")
+ endif()
+
+ endif()
+endif()
+
+set(git_update_strategy "REBASE")
+if(git_update_strategy STREQUAL "")
+ # Backward compatibility requires REBASE as the default behavior
+ set(git_update_strategy REBASE)
+endif()
+
+if(git_update_strategy MATCHES "^REBASE(_CHECKOUT)?$")
+ # Asked to potentially try to rebase first, maybe with fallback to checkout.
+ # We can't if we aren't already on a branch and we shouldn't if that local
+ # branch isn't tracking the one we want to checkout.
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git symbolic-ref -q HEAD
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ OUTPUT_VARIABLE current_branch
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ # Don't test for an error. If this isn't a branch, we get a non-zero error
+ # code but empty output.
+ )
+
+ if(current_branch STREQUAL "")
+ # Not on a branch, checkout is the only sensible option since any rebase
+ # would always fail (and backward compatibility requires us to checkout in
+ # this situation)
+ set(git_update_strategy CHECKOUT)
+
+ else()
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git for-each-ref "--format=%(upstream:short)" "${current_branch}"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ OUTPUT_VARIABLE upstream_branch
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ COMMAND_ERROR_IS_FATAL ANY # There is no error if no upstream is set
+ )
+ if(NOT upstream_branch STREQUAL checkout_name)
+ # Not safe to rebase when asked to checkout a different branch to the one
+ # we are tracking. If we did rebase, we could end up with arbitrary
+ # commits added to the ref we were asked to checkout if the current local
+ # branch happens to be able to rebase onto the target branch. There would
+ # be no error message and the user wouldn't know this was occurring.
+ set(git_update_strategy CHECKOUT)
+ endif()
+
+ endif()
+elseif(NOT git_update_strategy STREQUAL "CHECKOUT")
+ message(FATAL_ERROR "Unsupported git update strategy: ${git_update_strategy}")
+endif()
+
+
+# Check if stash is needed
+execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git status --porcelain
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE repo_status
+)
+if(error_code)
+ message(FATAL_ERROR "Failed to get the status")
+endif()
+string(LENGTH "${repo_status}" need_stash)
+
+# If not in clean state, stash changes in order to be able to perform a
+# rebase or checkout without losing those changes permanently
+if(need_stash)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash save --quiet;--include-untracked
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+endif()
+
+if(git_update_strategy STREQUAL "CHECKOUT")
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git checkout "${checkout_name}"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+else()
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git rebase "${checkout_name}"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE rebase_output
+ ERROR_VARIABLE rebase_output
+ )
+ if(error_code)
+ # Rebase failed, undo the rebase attempt before continuing
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git rebase --abort
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ )
+
+ if(NOT git_update_strategy STREQUAL "REBASE_CHECKOUT")
+ # Not allowed to do a checkout as a fallback, so cannot proceed
+ if(need_stash)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash pop --index --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ )
+ endif()
+ message(FATAL_ERROR "\nFailed to rebase in: 'F:/Projects/liboculus/build_clean/_deps/spdlog-src'."
+ "\nOutput from the attempted rebase follows:"
+ "\n${rebase_output}"
+ "\n\nYou will have to resolve the conflicts manually")
+ endif()
+
+ # Fall back to checkout. We create an annotated tag so that the user
+ # can manually inspect the situation and revert if required.
+ # We can't log the failed rebase output because MSVC sees it and
+ # intervenes, causing the build to fail even though it completes.
+ # Write it to a file instead.
+ string(TIMESTAMP tag_timestamp "%Y%m%dT%H%M%S" UTC)
+ set(tag_name _cmake_ExternalProject_moved_from_here_${tag_timestamp}Z)
+ set(error_log_file ${CMAKE_CURRENT_LIST_DIR}/rebase_error_${tag_timestamp}Z.log)
+ file(WRITE ${error_log_file} "${rebase_output}")
+ message(WARNING "Rebase failed, output has been saved to ${error_log_file}"
+ "\nFalling back to checkout, previous commit tagged as ${tag_name}")
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git tag -a
+ -m "ExternalProject attempting to move from here to ${checkout_name}"
+ ${tag_name}
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git checkout "${checkout_name}"
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+ endif()
+endif()
+
+if(need_stash)
+ # Put back the stashed changes
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash pop --index --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ # Stash pop --index failed: Try again dropping the index
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git reset --hard --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ )
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash pop --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ # Stash pop failed: Restore previous state.
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git reset --hard --quiet ${head_sha}
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ )
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe" --git-dir=.git stash pop --index --quiet
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ )
+ message(FATAL_ERROR "\nFailed to unstash changes in: 'F:/Projects/liboculus/build_clean/_deps/spdlog-src'."
+ "\nYou will have to resolve the conflicts manually")
+ endif()
+ endif()
+endif()
+
+set(init_submodules "TRUE")
+if(init_submodules)
+ execute_process(
+ COMMAND "D:/Program Files/Git/cmd/git.exe"
+ --git-dir=.git
+ submodule update --recursive --init
+ WORKING_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ COMMAND_ERROR_IS_FATAL ANY
+ )
+endif()
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-mkdirs.cmake b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-mkdirs.cmake
new file mode 100644
index 0000000..3a326d1
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-mkdirs.cmake
@@ -0,0 +1,22 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+cmake_minimum_required(VERSION 3.5)
+
+file(MAKE_DIRECTORY
+ "F:/Projects/liboculus/build_clean/_deps/spdlog-src"
+ "F:/Projects/liboculus/build_clean/_deps/spdlog-build"
+ "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix"
+ "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp"
+ "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp"
+ "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src"
+ "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp"
+)
+
+set(configSubDirs Debug)
+foreach(subDir IN LISTS configSubDirs)
+ file(MAKE_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/${subDir}")
+endforeach()
+if(cfgdir)
+ file(MAKE_DIRECTORY "F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp${cfgdir}") # cfgdir has leading slash
+endif()
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate.sln b/build_clean/_deps/spdlog-subbuild/spdlog-populate.sln
new file mode 100644
index 0000000..cc56351
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate.sln
@@ -0,0 +1,47 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CMakePredefinedTargets", "CMakePredefinedTargets", "{A95A18F7-FB31-3206-A4CA-C703E804A5A7}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ExternalProjectTargets", "ExternalProjectTargets", "{17C52A58-799D-3492-B74E-B932631DA7CE}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "spdlog-populate", "ExternalProjectTargets\spdlog-populate", "{4579AD07-3D6A-36F1-A323-1596A6D2D2AB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{EE7A09F4-222B-3A25-99B6-96700E5D42DD}"
+ ProjectSection(ProjectDependencies) = postProject
+ {2AFB7BC7-4153-3120-AEEA-B36F494E5D97} = {2AFB7BC7-4153-3120-AEEA-B36F494E5D97}
+ {98986E82-6FAE-3632-BA43-8B20FB958DFB} = {98986E82-6FAE-3632-BA43-8B20FB958DFB}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "ZERO_CHECK.vcxproj", "{2AFB7BC7-4153-3120-AEEA-B36F494E5D97}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spdlog-populate", "spdlog-populate.vcxproj", "{98986E82-6FAE-3632-BA43-8B20FB958DFB}"
+ ProjectSection(ProjectDependencies) = postProject
+ {2AFB7BC7-4153-3120-AEEA-B36F494E5D97} = {2AFB7BC7-4153-3120-AEEA-B36F494E5D97}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {EE7A09F4-222B-3A25-99B6-96700E5D42DD}.Debug|x64.ActiveCfg = Debug|x64
+ {2AFB7BC7-4153-3120-AEEA-B36F494E5D97}.Debug|x64.ActiveCfg = Debug|x64
+ {2AFB7BC7-4153-3120-AEEA-B36F494E5D97}.Debug|x64.Build.0 = Debug|x64
+ {98986E82-6FAE-3632-BA43-8B20FB958DFB}.Debug|x64.ActiveCfg = Debug|x64
+ {98986E82-6FAE-3632-BA43-8B20FB958DFB}.Debug|x64.Build.0 = Debug|x64
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {EE7A09F4-222B-3A25-99B6-96700E5D42DD} = {A95A18F7-FB31-3206-A4CA-C703E804A5A7}
+ {2AFB7BC7-4153-3120-AEEA-B36F494E5D97} = {A95A18F7-FB31-3206-A4CA-C703E804A5A7}
+ {4579AD07-3D6A-36F1-A323-1596A6D2D2AB} = {17C52A58-799D-3492-B74E-B932631DA7CE}
+ {98986E82-6FAE-3632-BA43-8B20FB958DFB} = {4579AD07-3D6A-36F1-A323-1596A6D2D2AB}
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {CA8B5CA4-C9A6-338B-80A6-4B29056B43B9}
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate.vcxproj b/build_clean/_deps/spdlog-subbuild/spdlog-populate.vcxproj
new file mode 100644
index 0000000..1adaf6d
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate.vcxproj
@@ -0,0 +1,301 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+
+ {98986E82-6FAE-3632-BA43-8B20FB958DFB}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ spdlog-populate
+ NoUpgrade
+
+
+
+ Utility
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ $(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+ %(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+
+
+ true
+ Creating directories for 'spdlog-populate'
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -Dcfgdir=/Debug -P F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-mkdirs.cmake
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-mkdir
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ %(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-mkdir
+ false
+
+
+
+
+ Performing download step (git clone) for 'spdlog-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -P F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitclone.cmake
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-download
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\spdlog-populate-gitinfo.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-mkdir;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-download
+ false
+
+
+
+
+ Performing update step for 'spdlog-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-src
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -Dcan_fetch=YES -P F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitupdate.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\tmp\spdlog-populate-gitupdate.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\spdlog-populate-update-info.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-download;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-update
+ false
+ false
+
+
+
+
+ No patch step for 'spdlog-populate'
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-patch
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\spdlog-populate-patch-info.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-update;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-patch
+ false
+ false
+
+
+
+
+ true
+ No configure step for 'spdlog-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-configure
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\tmp\spdlog-populate-cfgcmd.txt;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-patch;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-configure
+ false
+
+
+
+
+ true
+ No build step for 'spdlog-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-build
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-configure;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-build
+ false
+
+
+
+
+ true
+ No install step for 'spdlog-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-install
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-build;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-install
+ false
+
+
+
+
+ true
+ No test step for 'spdlog-populate'
+ setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-test
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-install;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-test
+ false
+
+
+
+
+ true
+ Completed 'spdlog-populate'
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -E make_directory F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/Debug
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/Debug/spdlog-populate-complete
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-done
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-install;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-mkdir;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-download;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-update;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-patch;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-configure;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-build;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\src\spdlog-populate-stamp\Debug\spdlog-populate-test;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\Debug\spdlog-populate-complete
+ false
+ false
+
+
+
+
+ true
+
+ setlocal
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\Debug\spdlog-populate-complete;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\spdlog-populate
+ false
+ false
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild -BF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\PatchInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\RepositoryInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\UpdateInfo.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\cfgcmd.txt.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitclone.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\gitupdate.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\mkdirs.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\spdlog-populate-prefix\tmp\spdlog-populate-mkdirs.cmake;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+
+ {2AFB7BC7-4153-3120-AEEA-B36F494E5D97}
+ ZERO_CHECK
+ false
+ Never
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-subbuild/spdlog-populate.vcxproj.filters b/build_clean/_deps/spdlog-subbuild/spdlog-populate.vcxproj.filters
new file mode 100644
index 0000000..e38a527
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/spdlog-populate.vcxproj.filters
@@ -0,0 +1,44 @@
+
+
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+ CMake Rules
+
+
+
+
+
+
+
+
+ {40AC6708-758A-3723-9F75-EF3D802C625A}
+
+
+
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.recipe b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.recipe
new file mode 100644
index 0000000..477a5a3
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.recipe
@@ -0,0 +1,17 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\x64\Debug\ZERO_CHECK
+
+
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\x64\Debug\spdlog-populate
+
+
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\x64\Debug\ALL_BUILD
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/ALL_BUILD.lastbuildstate b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/ALL_BUILD.lastbuildstate
new file mode 100644
index 0000000..e5f043f
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/ALL_BUILD.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\|
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.command.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..7ad1e3f
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKELISTS.TXT
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild -BF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.read.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..a8a64a9
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,19 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKELISTS.TXT
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\PATCHINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\REPOSITORYINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\UPDATEINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\CFGCMD.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITCLONE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITUPDATE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\MKDIRS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\TMP\SPDLOG-POPULATE-MKDIRS.CMAKE
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.write.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..9afa838
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ALL_BUILD/ALL_BUILD.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe
new file mode 100644
index 0000000..80296fc
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\x64\Debug\ZERO_CHECK
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..b4da264
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\C1CFC6CCEE22D1CD00018B762E6C3298\GENERATE.STAMP.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild -BF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..dd1e664
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,20 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\C1CFC6CCEE22D1CD00018B762E6C3298\GENERATE.STAMP.RULE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\PATCHINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\REPOSITORYINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\UPDATEINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\CFGCMD.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITCLONE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITUPDATE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\MKDIRS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\TMP\SPDLOG-POPULATE-MKDIRS.CMAKE
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..929ff1e
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\C1CFC6CCEE22D1CD00018B762E6C3298\GENERATE.STAMP.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate
new file mode 100644
index 0000000..e5f043f
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\|
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.recipe b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.recipe
new file mode 100644
index 0000000..05411ac
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.recipe
@@ -0,0 +1,14 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\x64\Debug\ZERO_CHECK
+
+
+ F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\x64\Debug\spdlog-populate
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.command.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..9c8e991
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,150 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-MKDIR.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -Dcfgdir=/Debug -P F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-mkdirs.cmake
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-mkdir
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-DOWNLOAD.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -P F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitclone.cmake
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-download
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-UPDATE.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-src
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -Dcan_fetch=YES -P F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/tmp/spdlog-populate-gitupdate.cmake
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-PATCH.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-patch
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-CONFIGURE.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-configure
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-BUILD.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-build
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-INSTALL.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-install
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-TEST.RULE
+setlocal
+cd F:\Projects\liboculus\build_clean\_deps\spdlog-build
+if %errorlevel% neq 0 goto :cmEnd
+F:
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E echo_append
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-test
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\1AA71237A69000B6072D784EEE27357C\SPDLOG-POPULATE-COMPLETE.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -E make_directory F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/Debug
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/Debug/spdlog-populate-complete
+if %errorlevel% neq 0 goto :cmEnd
+"C:\Program Files\CMake\bin\cmake.exe" -E touch F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/spdlog-populate-prefix/src/spdlog-populate-stamp/Debug/spdlog-populate-done
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\C1CFC6CCEE22D1CD00018B762E6C3298\SPDLOG-POPULATE.RULE
+setlocal
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKELISTS.TXT
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild -BF:/Projects/liboculus/build_clean/_deps/spdlog-subbuild --check-stamp-file F:/Projects/liboculus/build_clean/_deps/spdlog-subbuild/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.read.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..1327213
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,50 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-MKDIR.RULE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-DOWNLOAD.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\SPDLOG-POPULATE-GITINFO.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-MKDIR
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-UPDATE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\TMP\SPDLOG-POPULATE-GITUPDATE.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\SPDLOG-POPULATE-UPDATE-INFO.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-DOWNLOAD
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-PATCH.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\SPDLOG-POPULATE-PATCH-INFO.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-UPDATE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-CONFIGURE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\TMP\SPDLOG-POPULATE-CFGCMD.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-PATCH
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-BUILD.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-CONFIGURE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-INSTALL.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-BUILD
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-TEST.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-INSTALL
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\1AA71237A69000B6072D784EEE27357C\SPDLOG-POPULATE-COMPLETE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-INSTALL
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-MKDIR
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-DOWNLOAD
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-UPDATE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-PATCH
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-CONFIGURE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-BUILD
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-TEST
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\C1CFC6CCEE22D1CD00018B762E6C3298\SPDLOG-POPULATE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\DEBUG\SPDLOG-POPULATE-COMPLETE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKELISTS.TXT
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\PATCHINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\REPOSITORYINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\UPDATEINFO.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\CFGCMD.TXT.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITCLONE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\GITUPDATE.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\MKDIRS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\TMP\SPDLOG-POPULATE-MKDIRS.CMAKE
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.write.1.tlog b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..0ea3c74
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,22 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-MKDIR.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-MKDIR
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-DOWNLOAD.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-DOWNLOAD
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-UPDATE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-UPDATE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-PATCH.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-PATCH
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-CONFIGURE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-CONFIGURE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-BUILD.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-BUILD
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-INSTALL.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-INSTALL
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\90D5625D4329C76D296F64D78C5D9CFD\SPDLOG-POPULATE-TEST.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\SPDLOG-POPULATE-PREFIX\SRC\SPDLOG-POPULATE-STAMP\DEBUG\SPDLOG-POPULATE-TEST
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\1AA71237A69000B6072D784EEE27357C\SPDLOG-POPULATE-COMPLETE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\DEBUG\SPDLOG-POPULATE-COMPLETE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\C1CFC6CCEE22D1CD00018B762E6C3298\SPDLOG-POPULATE.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\SPDLOG-POPULATE
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SUBBUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/spdlog-populate.lastbuildstate b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/spdlog-populate.lastbuildstate
new file mode 100644
index 0000000..e5f043f
--- /dev/null
+++ b/build_clean/_deps/spdlog-subbuild/x64/Debug/spdlog-populate/spdlog-populate.tlog/spdlog-populate.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\_deps\spdlog-subbuild\|
diff --git a/build_clean/bin/Debug/occlient.exe b/build_clean/bin/Debug/occlient.exe
new file mode 100644
index 0000000..4664a6c
Binary files /dev/null and b/build_clean/bin/Debug/occlient.exe differ
diff --git a/build_clean/bin/Debug/occlient.pdb b/build_clean/bin/Debug/occlient.pdb
new file mode 100644
index 0000000..9fae18f
Binary files /dev/null and b/build_clean/bin/Debug/occlient.pdb differ
diff --git a/build_clean/cmake_install.cmake b/build_clean/cmake_install.cmake
new file mode 100644
index 0000000..79b3c0a
--- /dev/null
+++ b/build_clean/cmake_install.cmake
@@ -0,0 +1,58 @@
+# Install script for directory: F:/Projects/liboculus
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/liboculus")
+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 "Release")
+ 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()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for the subdirectory.
+ include("F:/Projects/liboculus/build_clean/_deps/fmt-build/cmake_install.cmake")
+endif()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for the subdirectory.
+ include("F:/Projects/liboculus/build_clean/_deps/spdlog-build/cmake_install.cmake")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT STREQUAL "dev" OR NOT CMAKE_INSTALL_COMPONENT)
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/oculus/cmake" TYPE FILE FILES "F:/Projects/liboculus/build_clean/CMakeFiles/oculusConfig.cmake")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+ set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+ set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+ "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "F:/Projects/liboculus/build_clean/${CMAKE_INSTALL_MANIFEST}"
+ "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/build_clean/lib/Debug/oculus.lib b/build_clean/lib/Debug/oculus.lib
new file mode 100644
index 0000000..7f991d3
Binary files /dev/null and b/build_clean/lib/Debug/oculus.lib differ
diff --git a/build_clean/lib/Debug/oculus.pdb b/build_clean/lib/Debug/oculus.pdb
new file mode 100644
index 0000000..5529747
Binary files /dev/null and b/build_clean/lib/Debug/oculus.pdb differ
diff --git a/build_clean/liboculus.sln b/build_clean/liboculus.sln
new file mode 100644
index 0000000..8001cd0
--- /dev/null
+++ b/build_clean/liboculus.sln
@@ -0,0 +1,115 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{B645C30E-A193-3CB7-8150-7A5EEB790106}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67} = {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593} = {A9D351F8-A4DE-3400-B64E-D86C48C50593}
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8} = {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA} = {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "INSTALL", "INSTALL.vcxproj", "{6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B645C30E-A193-3CB7-8150-7A5EEB790106} = {B645C30E-A193-3CB7-8150-7A5EEB790106}
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "ZERO_CHECK.vcxproj", "{01F63164-BE1F-3EAC-B55E-CC9856C463C3}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fmt", "_deps\fmt-build\fmt.vcxproj", "{248AB58D-0A27-3451-AB2F-9F4063E13A67}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "occlient", "occlient.vcxproj", "{A9D351F8-A4DE-3400-B64E-D86C48C50593}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67} = {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8} = {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA} = {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "oculus", "oculus.vcxproj", "{67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67} = {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA} = {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spdlog", "_deps\spdlog-build\spdlog.vcxproj", "{AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}"
+ ProjectSection(ProjectDependencies) = postProject
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3} = {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67} = {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Release|x64 = Release|x64
+ MinSizeRel|x64 = MinSizeRel|x64
+ RelWithDebInfo|x64 = RelWithDebInfo|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Debug|x64.ActiveCfg = Debug|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Debug|x64.Build.0 = Debug|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Release|x64.ActiveCfg = Release|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.Release|x64.Build.0 = Release|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {B645C30E-A193-3CB7-8150-7A5EEB790106}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.Debug|x64.ActiveCfg = Debug|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.Release|x64.ActiveCfg = Release|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {6781ABD9-0FB2-378E-A59C-54C1FA9F6AF6}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Debug|x64.ActiveCfg = Debug|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Debug|x64.Build.0 = Debug|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Release|x64.ActiveCfg = Release|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.Release|x64.Build.0 = Release|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Debug|x64.ActiveCfg = Debug|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Debug|x64.Build.0 = Debug|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Release|x64.ActiveCfg = Release|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.Release|x64.Build.0 = Release|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}.Debug|x64.ActiveCfg = Debug|x64
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}.Debug|x64.Build.0 = Debug|x64
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}.Release|x64.ActiveCfg = Release|x64
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}.Release|x64.Build.0 = Release|x64
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}.Debug|x64.ActiveCfg = Debug|x64
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}.Debug|x64.Build.0 = Debug|x64
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}.Release|x64.ActiveCfg = Release|x64
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}.Release|x64.Build.0 = Release|x64
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.Debug|x64.ActiveCfg = Debug|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.Debug|x64.Build.0 = Debug|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.Release|x64.ActiveCfg = Release|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.Release|x64.Build.0 = Release|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {85C6E877-F90C-3D32-9CF0-E239B0E579FA}
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build_clean/occlient.dir/Debug/occlient.exe.recipe b/build_clean/occlient.dir/Debug/occlient.exe.recipe
new file mode 100644
index 0000000..eec2977
--- /dev/null
+++ b/build_clean/occlient.dir/Debug/occlient.exe.recipe
@@ -0,0 +1,14 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\x64\Debug\ZERO_CHECK
+
+
+ F:\Projects\liboculus\build_clean\bin\Debug\occlient.exe
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/occlient.dir/Debug/occlient.ilk b/build_clean/occlient.dir/Debug/occlient.ilk
new file mode 100644
index 0000000..8599c5b
Binary files /dev/null and b/build_clean/occlient.dir/Debug/occlient.ilk differ
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/CL.command.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/CL.command.1.tlog
new file mode 100644
index 0000000..d08160b
Binary files /dev/null and b/build_clean/occlient.dir/Debug/occlient.tlog/CL.command.1.tlog differ
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/CL.read.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/CL.read.1.tlog
new file mode 100644
index 0000000..432941b
Binary files /dev/null and b/build_clean/occlient.dir/Debug/occlient.tlog/CL.read.1.tlog differ
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/CL.write.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/CL.write.1.tlog
new file mode 100644
index 0000000..97215a1
Binary files /dev/null and b/build_clean/occlient.dir/Debug/occlient.tlog/CL.write.1.tlog differ
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/Cl.items.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/Cl.items.tlog
new file mode 100644
index 0000000..642267d
--- /dev/null
+++ b/build_clean/occlient.dir/Debug/occlient.tlog/Cl.items.tlog
@@ -0,0 +1 @@
+F:\Projects\liboculus\tools\oculus_client.cpp;F:\Projects\liboculus\build_clean\occlient.dir\Debug\oculus_client.obj
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.command.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..a954faf
--- /dev/null
+++ b/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\CMAKELISTS.TXT
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.read.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..65c105b
--- /dev/null
+++ b/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,46 @@
+^F:\PROJECTS\LIBOCULUS\CMAKELISTS.TXT
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECXXINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECOMMONLANGUAGEINCLUDE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKELANGUAGEINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKERCINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKCSOURCECOMPILES.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKINCLUDEFILE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKLIBRARYEXISTS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\CMAKECOMMONCOMPILERMACROS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC-C.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC-CXX.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FETCHCONTENT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FETCHCONTENT\CMAKELISTS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDBOOST.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDGIT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDPACKAGEHANDLESTANDARDARGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDPACKAGEMESSAGE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDTHREADS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC-C.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC-CXX.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST-1.82.0\BOOSTCONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST-1.82.0\BOOSTCONFIGVERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOSTDETECTTOOLSET-1.82.0.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_HEADERS-1.82.0\BOOST_HEADERS-CONFIG-VERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_HEADERS-1.82.0\BOOST_HEADERS-CONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\BOOST_SYSTEM-CONFIG-VERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\BOOST_SYSTEM-CONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\LIBBOOST_SYSTEM-VARIANT-SHARED.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\LIBBOOST_SYSTEM-VARIANT-STATIC.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKECCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKECXXCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKERCCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\CMAKE\BUILDNONROS.CMAKE
+F:\PROJECTS\LIBOCULUS\CMAKE\OCULUSCONFIG.CMAKE.IN
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.write.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..4befc11
--- /dev/null
+++ b/build_clean/occlient.dir/Debug/occlient.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/link.command.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/link.command.1.tlog
new file mode 100644
index 0000000..d3ab9d6
Binary files /dev/null and b/build_clean/occlient.dir/Debug/occlient.tlog/link.command.1.tlog differ
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/link.read.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/link.read.1.tlog
new file mode 100644
index 0000000..d576bc5
Binary files /dev/null and b/build_clean/occlient.dir/Debug/occlient.tlog/link.read.1.tlog differ
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/link.secondary.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/link.secondary.1.tlog
new file mode 100644
index 0000000..06b5906
--- /dev/null
+++ b/build_clean/occlient.dir/Debug/occlient.tlog/link.secondary.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\OCCLIENT.DIR\DEBUG\OCULUS_CLIENT.OBJ
+F:\Projects\liboculus\build_clean\occlient.dir\Debug\occlient.ilk
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/link.write.1.tlog b/build_clean/occlient.dir/Debug/occlient.tlog/link.write.1.tlog
new file mode 100644
index 0000000..75e7aea
Binary files /dev/null and b/build_clean/occlient.dir/Debug/occlient.tlog/link.write.1.tlog differ
diff --git a/build_clean/occlient.dir/Debug/occlient.tlog/occlient.lastbuildstate b/build_clean/occlient.dir/Debug/occlient.tlog/occlient.lastbuildstate
new file mode 100644
index 0000000..419b6d6
--- /dev/null
+++ b/build_clean/occlient.dir/Debug/occlient.tlog/occlient.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\|
diff --git a/build_clean/occlient.dir/Debug/oculus_client.obj b/build_clean/occlient.dir/Debug/oculus_client.obj
new file mode 100644
index 0000000..3780d06
Binary files /dev/null and b/build_clean/occlient.dir/Debug/oculus_client.obj differ
diff --git a/build_clean/occlient.dir/Debug/vc143.pdb b/build_clean/occlient.dir/Debug/vc143.pdb
new file mode 100644
index 0000000..569ee0b
Binary files /dev/null and b/build_clean/occlient.dir/Debug/vc143.pdb differ
diff --git a/build_clean/occlient.dir/Debug/vcpkg.applocal.log b/build_clean/occlient.dir/Debug/vcpkg.applocal.log
new file mode 100644
index 0000000..e02abfc
--- /dev/null
+++ b/build_clean/occlient.dir/Debug/vcpkg.applocal.log
@@ -0,0 +1 @@
+
diff --git a/build_clean/occlient.vcxproj b/build_clean/occlient.vcxproj
new file mode 100644
index 0000000..028d2d9
--- /dev/null
+++ b/build_clean/occlient.vcxproj
@@ -0,0 +1,345 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {A9D351F8-A4DE-3400-B64E-D86C48C50593}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ occlient
+ NoUpgrade
+
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+ Application
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ F:\Projects\liboculus\build_clean\bin\Debug\
+ occlient.dir\Debug\
+ occlient
+ .exe
+ true
+ true
+ F:\Projects\liboculus\build_clean\bin\Release\
+ occlient.dir\Release\
+ occlient
+ .exe
+ false
+ true
+ F:\Projects\liboculus\build_clean\bin\MinSizeRel\
+ occlient.dir\MinSizeRel\
+ occlient
+ .exe
+ false
+ true
+ F:\Projects\liboculus\build_clean\bin\RelWithDebInfo\
+ occlient.dir\RelWithDebInfo\
+ occlient
+ .exe
+ true
+ true
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ EnableFastChecks
+ ProgramDatabase
+ Sync
+ Disabled
+ stdcpp17
+ Disabled
+ NotUsing
+ MultiThreadedDebugDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="Debug"
+ $(IntDir)
+
+
+ %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"Debug\"
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ lib\Debug\oculus.lib;_deps\spdlog-build\Debug\spdlogd.lib;_deps\fmt-build\Debug\fmtd.lib;Ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib
+ D:/software/anaconda3/Library/lib;D:/software/anaconda3/Library/lib/$(Configuration);%(AdditionalLibraryDirectories)
+ %(AdditionalOptions) /machine:x64
+ true
+ %(IgnoreSpecificDefaultLibraries)
+ F:/Projects/liboculus/build_clean/Debug/occlient.lib
+ F:/Projects/liboculus/build_clean/bin/Debug/occlient.pdb
+ Console
+
+
+ false
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ Sync
+ AnySuitable
+ stdcpp17
+ MaxSpeed
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="Release"
+ $(IntDir)
+
+
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"Release\"
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ lib\Release\oculus.lib;_deps\spdlog-build\Release\spdlog.lib;_deps\fmt-build\Release\fmt.lib;Ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib
+ D:/software/anaconda3/Library/lib;D:/software/anaconda3/Library/lib/$(Configuration);%(AdditionalLibraryDirectories)
+ %(AdditionalOptions) /machine:x64
+ false
+ %(IgnoreSpecificDefaultLibraries)
+ F:/Projects/liboculus/build_clean/Release/occlient.lib
+ F:/Projects/liboculus/build_clean/bin/Release/occlient.pdb
+ Console
+
+
+ false
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ Sync
+ OnlyExplicitInline
+ stdcpp17
+ MinSpace
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="MinSizeRel"
+ $(IntDir)
+
+
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"MinSizeRel\"
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ lib\MinSizeRel\oculus.lib;_deps\spdlog-build\MinSizeRel\spdlog.lib;_deps\fmt-build\MinSizeRel\fmt.lib;Ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib
+ D:/software/anaconda3/Library/lib;D:/software/anaconda3/Library/lib/$(Configuration);%(AdditionalLibraryDirectories)
+ %(AdditionalOptions) /machine:x64
+ false
+ %(IgnoreSpecificDefaultLibraries)
+ F:/Projects/liboculus/build_clean/MinSizeRel/occlient.lib
+ F:/Projects/liboculus/build_clean/bin/MinSizeRel/occlient.pdb
+ Console
+
+
+ false
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ ProgramDatabase
+ Sync
+ OnlyExplicitInline
+ stdcpp17
+ MaxSpeed
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="RelWithDebInfo"
+ $(IntDir)
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"RelWithDebInfo\"
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ lib\RelWithDebInfo\oculus.lib;_deps\spdlog-build\RelWithDebInfo\spdlog.lib;_deps\fmt-build\RelWithDebInfo\fmt.lib;Ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib
+ D:/software/anaconda3/Library/lib;D:/software/anaconda3/Library/lib/$(Configuration);%(AdditionalLibraryDirectories)
+ %(AdditionalOptions) /machine:x64
+ true
+ %(IgnoreSpecificDefaultLibraries)
+ F:/Projects/liboculus/build_clean/RelWithDebInfo/occlient.lib
+ F:/Projects/liboculus/build_clean/bin/RelWithDebInfo/occlient.pdb
+ Console
+
+
+ false
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ fmt
+
+
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}
+ oculus
+
+
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ spdlog
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/occlient.vcxproj.filters b/build_clean/occlient.vcxproj.filters
new file mode 100644
index 0000000..04a7160
--- /dev/null
+++ b/build_clean/occlient.vcxproj.filters
@@ -0,0 +1,16 @@
+
+
+
+
+ Source Files
+
+
+
+
+
+
+
+ {F68D873A-1EB1-3763-9D9A-472A77062F9F}
+
+
+
diff --git a/build_clean/oculus.dir/Debug/DataRx.obj b/build_clean/oculus.dir/Debug/DataRx.obj
new file mode 100644
index 0000000..6930f32
Binary files /dev/null and b/build_clean/oculus.dir/Debug/DataRx.obj differ
diff --git a/build_clean/oculus.dir/Debug/IoServiceThread.obj b/build_clean/oculus.dir/Debug/IoServiceThread.obj
new file mode 100644
index 0000000..fc32a70
Binary files /dev/null and b/build_clean/oculus.dir/Debug/IoServiceThread.obj differ
diff --git a/build_clean/oculus.dir/Debug/OculusMessageHandler.obj b/build_clean/oculus.dir/Debug/OculusMessageHandler.obj
new file mode 100644
index 0000000..a1714ab
Binary files /dev/null and b/build_clean/oculus.dir/Debug/OculusMessageHandler.obj differ
diff --git a/build_clean/oculus.dir/Debug/SimpleFireMessage.obj b/build_clean/oculus.dir/Debug/SimpleFireMessage.obj
new file mode 100644
index 0000000..7026c18
Binary files /dev/null and b/build_clean/oculus.dir/Debug/SimpleFireMessage.obj differ
diff --git a/build_clean/oculus.dir/Debug/SonarConfiguration.obj b/build_clean/oculus.dir/Debug/SonarConfiguration.obj
new file mode 100644
index 0000000..df758d0
Binary files /dev/null and b/build_clean/oculus.dir/Debug/SonarConfiguration.obj differ
diff --git a/build_clean/oculus.dir/Debug/SonarPlayer.obj b/build_clean/oculus.dir/Debug/SonarPlayer.obj
new file mode 100644
index 0000000..c2a9e8b
Binary files /dev/null and b/build_clean/oculus.dir/Debug/SonarPlayer.obj differ
diff --git a/build_clean/oculus.dir/Debug/SonarStatus.obj b/build_clean/oculus.dir/Debug/SonarStatus.obj
new file mode 100644
index 0000000..1eee58d
Binary files /dev/null and b/build_clean/oculus.dir/Debug/SonarStatus.obj differ
diff --git a/build_clean/oculus.dir/Debug/StatusRx.obj b/build_clean/oculus.dir/Debug/StatusRx.obj
new file mode 100644
index 0000000..a6b655d
Binary files /dev/null and b/build_clean/oculus.dir/Debug/StatusRx.obj differ
diff --git a/build_clean/oculus.dir/Debug/oculus.lib.recipe b/build_clean/oculus.dir/Debug/oculus.lib.recipe
new file mode 100644
index 0000000..08e22dd
--- /dev/null
+++ b/build_clean/oculus.dir/Debug/oculus.lib.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\x64\Debug\ZERO_CHECK
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/CL.command.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/CL.command.1.tlog
new file mode 100644
index 0000000..c1257e9
Binary files /dev/null and b/build_clean/oculus.dir/Debug/oculus.tlog/CL.command.1.tlog differ
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/CL.read.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/CL.read.1.tlog
new file mode 100644
index 0000000..8eb4a8e
Binary files /dev/null and b/build_clean/oculus.dir/Debug/oculus.tlog/CL.read.1.tlog differ
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/CL.write.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/CL.write.1.tlog
new file mode 100644
index 0000000..4090674
Binary files /dev/null and b/build_clean/oculus.dir/Debug/oculus.tlog/CL.write.1.tlog differ
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/Cl.items.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/Cl.items.tlog
new file mode 100644
index 0000000..b545fbb
--- /dev/null
+++ b/build_clean/oculus.dir/Debug/oculus.tlog/Cl.items.tlog
@@ -0,0 +1,8 @@
+F:\Projects\liboculus\src\DataRx.cpp;F:\Projects\liboculus\build_clean\oculus.dir\Debug\DataRx.obj
+F:\Projects\liboculus\src\SonarConfiguration.cpp;F:\Projects\liboculus\build_clean\oculus.dir\Debug\SonarConfiguration.obj
+F:\Projects\liboculus\src\SonarStatus.cpp;F:\Projects\liboculus\build_clean\oculus.dir\Debug\SonarStatus.obj
+F:\Projects\liboculus\src\StatusRx.cpp;F:\Projects\liboculus\build_clean\oculus.dir\Debug\StatusRx.obj
+F:\Projects\liboculus\src\SonarPlayer.cpp;F:\Projects\liboculus\build_clean\oculus.dir\Debug\SonarPlayer.obj
+F:\Projects\liboculus\src\OculusMessageHandler.cpp;F:\Projects\liboculus\build_clean\oculus.dir\Debug\OculusMessageHandler.obj
+F:\Projects\liboculus\src\SimpleFireMessage.cpp;F:\Projects\liboculus\build_clean\oculus.dir\Debug\SimpleFireMessage.obj
+F:\Projects\liboculus\src\IoServiceThread.cpp;F:\Projects\liboculus\build_clean\oculus.dir\Debug\IoServiceThread.obj
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.command.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..a954faf
--- /dev/null
+++ b/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\CMAKELISTS.TXT
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.read.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..65c105b
--- /dev/null
+++ b/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,46 @@
+^F:\PROJECTS\LIBOCULUS\CMAKELISTS.TXT
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECXXINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECOMMONLANGUAGEINCLUDE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKELANGUAGEINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKERCINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKCSOURCECOMPILES.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKINCLUDEFILE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKLIBRARYEXISTS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\CMAKECOMMONCOMPILERMACROS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC-C.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC-CXX.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FETCHCONTENT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FETCHCONTENT\CMAKELISTS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDBOOST.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDGIT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDPACKAGEHANDLESTANDARDARGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDPACKAGEMESSAGE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDTHREADS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC-C.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC-CXX.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST-1.82.0\BOOSTCONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST-1.82.0\BOOSTCONFIGVERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOSTDETECTTOOLSET-1.82.0.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_HEADERS-1.82.0\BOOST_HEADERS-CONFIG-VERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_HEADERS-1.82.0\BOOST_HEADERS-CONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\BOOST_SYSTEM-CONFIG-VERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\BOOST_SYSTEM-CONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\LIBBOOST_SYSTEM-VARIANT-SHARED.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\LIBBOOST_SYSTEM-VARIANT-STATIC.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKECCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKECXXCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKERCCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\CMAKE\BUILDNONROS.CMAKE
+F:\PROJECTS\LIBOCULUS\CMAKE\OCULUSCONFIG.CMAKE.IN
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.write.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..4befc11
--- /dev/null
+++ b/build_clean/oculus.dir/Debug/oculus.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,2 @@
+^F:\PROJECTS\LIBOCULUS\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/Lib-link.read.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/Lib-link.read.1.tlog
new file mode 100644
index 0000000..4d892c6
Binary files /dev/null and b/build_clean/oculus.dir/Debug/oculus.tlog/Lib-link.read.1.tlog differ
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/Lib-link.write.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/Lib-link.write.1.tlog
new file mode 100644
index 0000000..89cf87a
Binary files /dev/null and b/build_clean/oculus.dir/Debug/oculus.tlog/Lib-link.write.1.tlog differ
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/Lib.command.1.tlog b/build_clean/oculus.dir/Debug/oculus.tlog/Lib.command.1.tlog
new file mode 100644
index 0000000..f491e47
Binary files /dev/null and b/build_clean/oculus.dir/Debug/oculus.tlog/Lib.command.1.tlog differ
diff --git a/build_clean/oculus.dir/Debug/oculus.tlog/oculus.lastbuildstate b/build_clean/oculus.dir/Debug/oculus.tlog/oculus.lastbuildstate
new file mode 100644
index 0000000..419b6d6
--- /dev/null
+++ b/build_clean/oculus.dir/Debug/oculus.tlog/oculus.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\|
diff --git a/build_clean/oculus.vcxproj b/build_clean/oculus.vcxproj
new file mode 100644
index 0000000..7684e3a
--- /dev/null
+++ b/build_clean/oculus.vcxproj
@@ -0,0 +1,304 @@
+
+
+
+ x64
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ MinSizeRel
+ x64
+
+
+ RelWithDebInfo
+ x64
+
+
+
+ {67CF6FC0-DD81-3F6B-BB31-E02488D7E6E8}
+ Win32Proj
+ 10.0.22621.0
+ x64
+ oculus
+ NoUpgrade
+
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+ StaticLibrary
+ MultiByte
+ v143
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.20506.1
+ F:\Projects\liboculus\build_clean\lib\Debug\
+ oculus.dir\Debug\
+ oculus
+ .lib
+ F:\Projects\liboculus\build_clean\lib\Release\
+ oculus.dir\Release\
+ oculus
+ .lib
+ F:\Projects\liboculus\build_clean\lib\MinSizeRel\
+ oculus.dir\MinSizeRel\
+ oculus
+ .lib
+ F:\Projects\liboculus\build_clean\lib\RelWithDebInfo\
+ oculus.dir\RelWithDebInfo\
+ oculus
+ .lib
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ EnableFastChecks
+ ProgramDatabase
+ 5208;4996
+ Sync
+ Disabled
+ stdcpp17
+ Disabled
+ NotUsing
+ MultiThreadedDebugDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING;_USE_MATH_DEFINES;_WIN32_WINNT=0x0601;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="Debug"
+ $(IntDir)
+
+
+ %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING;_USE_MATH_DEFINES;_WIN32_WINNT=0x0601;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"Debug\"
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ 5208;4996
+ Sync
+ AnySuitable
+ stdcpp17
+ MaxSpeed
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING;_USE_MATH_DEFINES;_WIN32_WINNT=0x0601;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="Release"
+ $(IntDir)
+
+
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING;_USE_MATH_DEFINES;_WIN32_WINNT=0x0601;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"Release\"
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ 5208;4996
+ Sync
+ OnlyExplicitInline
+ stdcpp17
+ MinSpace
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING;_USE_MATH_DEFINES;_WIN32_WINNT=0x0601;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="MinSizeRel"
+ $(IntDir)
+
+
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING;_USE_MATH_DEFINES;_WIN32_WINNT=0x0601;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"MinSizeRel\"
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(IntDir)
+ ProgramDatabase
+ 5208;4996
+ Sync
+ OnlyExplicitInline
+ stdcpp17
+ MaxSpeed
+ NotUsing
+ MultiThreadedDLL
+ true
+ false
+ Level3
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING;_USE_MATH_DEFINES;_WIN32_WINNT=0x0601;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR="RelWithDebInfo"
+ $(IntDir)
+
+
+ %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING;_USE_MATH_DEFINES;_WIN32_WINNT=0x0601;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;CMAKE_INTDIR=\"RelWithDebInfo\"
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+
+
+ F:\Projects\liboculus\build_clean\_deps\fmt-src\include;F:\Projects\liboculus\include;D:\software\anaconda3\Library\include;\include;F:\Projects\liboculus\build_clean\_deps\spdlog-src\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir)/$(IntDir)
+ %(Filename).h
+ %(Filename).tlb
+ %(Filename)_i.c
+ %(Filename)_p.c
+
+
+ %(AdditionalOptions) /machine:x64
+
+
+
+
+ Always
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+ Building Custom Rule F:/Projects/liboculus/CMakeLists.txt
+ setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-file F:/Projects/liboculus/build_clean/CMakeFiles/generate.stamp
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
+ C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckCSourceCompiles.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckIncludeFile.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\CheckLibraryExists.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Compiler\MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\ExternalProject\shared_internal_commands.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FetchContent\CMakeLists.cmake.in;C:\Program Files\CMake\share\cmake-3.28\Modules\FindBoost.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindGit.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageHandleStandardArgs.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindPackageMessage.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\FindThreads.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-Initialize.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.28\Modules\Platform\WindowsPaths.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfig.cmake;D:\software\anaconda3\Library\lib\cmake\Boost-1.82.0\BoostConfigVersion.cmake;D:\software\anaconda3\Library\lib\cmake\BoostDetectToolset-1.82.0.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_headers-1.82.0\boost_headers-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config-version.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\boost_system-config.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-shared.cmake;D:\software\anaconda3\Library\lib\cmake\boost_system-1.82.0\libboost_system-variant-static.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeCXXCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeRCCompiler.cmake;F:\Projects\liboculus\build_clean\CMakeFiles\3.28.0\CMakeSystem.cmake;F:\Projects\liboculus\cmake\BuildNonROS.cmake;F:\Projects\liboculus\cmake\oculusConfig.cmake.in;%(AdditionalInputs)
+ F:\Projects\liboculus\build_clean\CMakeFiles\generate.stamp
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {01F63164-BE1F-3EAC-B55E-CC9856C463C3}
+ ZERO_CHECK
+ false
+ Never
+
+
+ {248AB58D-0A27-3451-AB2F-9F4063E13A67}
+ fmt
+
+
+ {AD369C4A-DCA7-3D0B-986F-01D5ABCEABEA}
+ spdlog
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/oculus.vcxproj.filters b/build_clean/oculus.vcxproj.filters
new file mode 100644
index 0000000..eb006dc
--- /dev/null
+++ b/build_clean/oculus.vcxproj.filters
@@ -0,0 +1,37 @@
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+
+
+
+
+
+ {F68D873A-1EB1-3763-9D9A-472A77062F9F}
+
+
+
diff --git a/build_clean/oculusConfig.cmake b/build_clean/oculusConfig.cmake
new file mode 100644
index 0000000..72fe361
--- /dev/null
+++ b/build_clean/oculusConfig.cmake
@@ -0,0 +1,10 @@
+# - Config file for the oculus package
+# It defines the following variables
+# oculus_INCLUDE_DIRS - include directories for oculus
+# oculus_LIBRARY_DIRS - directories for oculus library
+
+# Compute paths
+get_filename_component(oculus_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+set(oculus_INCLUDE_DIRS "F:/Projects/liboculus/include;D:/software/anaconda3/Library/include;/include")
+set(oculus_LIBRARY_DIRS "F:/Projects/liboculus/build_clean/lib/$")
+set(oculus_LIBRARIES "oculus")
diff --git a/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe
new file mode 100644
index 0000000..08e22dd
--- /dev/null
+++ b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.recipe
@@ -0,0 +1,11 @@
+
+
+
+
+ F:\Projects\liboculus\build_clean\x64\Debug\ZERO_CHECK
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog
new file mode 100644
index 0000000..b38059d
--- /dev/null
+++ b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.command.1.tlog
@@ -0,0 +1,10 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\C6591B38E0A7ADD7BE28C2AFAD30E6F0\GENERATE.STAMP.RULE
+setlocal
+"C:\Program Files\CMake\bin\cmake.exe" -SF:/Projects/liboculus -BF:/Projects/liboculus/build_clean --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file F:/Projects/liboculus/build_clean/liboculus.sln
+if %errorlevel% neq 0 goto :cmEnd
+:cmEnd
+endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
+:cmErrorLevel
+exit /b %1
+:cmDone
+if %errorlevel% neq 0 goto :VCEnd
diff --git a/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog
new file mode 100644
index 0000000..356a9f9
--- /dev/null
+++ b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.read.1.tlog
@@ -0,0 +1,65 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\C6591B38E0A7ADD7BE28C2AFAD30E6F0\GENERATE.STAMP.RULE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\BASICCONFIGVERSION-ANYNEWERVERSION.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECXXINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECHECKCOMPILERFLAGCOMMONPATTERNS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKECOMMONLANGUAGEINCLUDE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEGENERICSYSTEM.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEINITIALIZECONFIGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKELANGUAGEINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEPACKAGECONFIGHELPERS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKEPARSEARGUMENTS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKERCINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINFORMATION.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CMAKESYSTEMSPECIFICINITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKCSOURCECOMPILES.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKCXXCOMPILERFLAG.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKCXXSOURCECOMPILES.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKINCLUDEFILE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\CHECKLIBRARYEXISTS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\CMAKECOMMONCOMPILERMACROS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC-C.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC-CXX.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\COMPILER\MSVC.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\EXTERNALPROJECT\SHARED_INTERNAL_COMMANDS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FETCHCONTENT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FETCHCONTENT\CMAKELISTS.CMAKE.IN
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDBOOST.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDGIT.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDPACKAGEHANDLESTANDARDARGS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDPACKAGEMESSAGE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\FINDTHREADS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\GNUINSTALLDIRS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\INTERNAL\CHECKCOMPILERFLAG.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\INTERNAL\CHECKFLAGCOMMONCONFIG.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\INTERNAL\CHECKSOURCECOMPILES.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-INITIALIZE.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC-C.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC-CXX.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS-MSVC.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\PLATFORM\WINDOWSPATHS.CMAKE
+C:\PROGRAM FILES\CMAKE\SHARE\CMAKE-3.28\MODULES\WRITEBASICCONFIGVERSIONFILE.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST-1.82.0\BOOSTCONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST-1.82.0\BOOSTCONFIGVERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOSTDETECTTOOLSET-1.82.0.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_HEADERS-1.82.0\BOOST_HEADERS-CONFIG-VERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_HEADERS-1.82.0\BOOST_HEADERS-CONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\BOOST_SYSTEM-CONFIG-VERSION.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\BOOST_SYSTEM-CONFIG.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\LIBBOOST_SYSTEM-VARIANT-SHARED.CMAKE
+D:\SOFTWARE\ANACONDA3\LIBRARY\LIB\CMAKE\BOOST_SYSTEM-1.82.0\LIBBOOST_SYSTEM-VARIANT-STATIC.CMAKE
+F:\PROJECTS\LIBOCULUS\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKECCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKECXXCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKERCCOMPILER.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\3.28.0\CMAKESYSTEM.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\SUPPORT\CMAKE\JOINPATHS.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\SUPPORT\CMAKE\FMT-CONFIG.CMAKE.IN
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-SRC\SUPPORT\CMAKE\FMT.PC.IN
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SRC\CMAKELISTS.TXT
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SRC\CMAKE\IDE.CMAKE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-SRC\CMAKE\UTILS.CMAKE
+F:\PROJECTS\LIBOCULUS\CMAKE\BUILDNONROS.CMAKE
+F:\PROJECTS\LIBOCULUS\CMAKE\OCULUSCONFIG.CMAKE.IN
diff --git a/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog
new file mode 100644
index 0000000..771e6f5
--- /dev/null
+++ b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/CustomBuild.write.1.tlog
@@ -0,0 +1,4 @@
+^F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\C6591B38E0A7ADD7BE28C2AFAD30E6F0\GENERATE.STAMP.RULE
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\CMAKEFILES\GENERATE.STAMP
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\FMT-BUILD\CMAKEFILES\GENERATE.STAMP
+F:\PROJECTS\LIBOCULUS\BUILD_CLEAN\_DEPS\SPDLOG-BUILD\CMAKEFILES\GENERATE.STAMP
diff --git a/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate
new file mode 100644
index 0000000..419b6d6
--- /dev/null
+++ b/build_clean/x64/Debug/ZERO_CHECK/ZERO_CHECK.tlog/ZERO_CHECK.lastbuildstate
@@ -0,0 +1,2 @@
+PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows:
+Debug|x64|F:\Projects\liboculus\build_clean\|
diff --git a/cmake/BuildNonROS.cmake b/cmake/BuildNonROS.cmake
index 8199ea9..334ce96 100644
--- a/cmake/BuildNonROS.cmake
+++ b/cmake/BuildNonROS.cmake
@@ -2,7 +2,23 @@
cmake_minimum_required(VERSION 3.8)
project(liboculus)
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -march=native -Wl,--no-as-needed")
+if(MSVC)
+ add_compile_options(
+ $<$:/O2>
+ $<$:/O2>
+ $<$:/O1>
+ )
+elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
+ add_compile_options(
+ $<$:-O3>
+ $<$:-O3>
+ $<$:-Os>
+ $<$>:-march=native>
+ )
+ if(UNIX AND NOT APPLE)
+ add_link_options(-Wl,--no-as-needed)
+ endif()
+endif()
# Set the output folder where your program will be created
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin)
@@ -13,10 +29,56 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/lib)
# ###########################################
include_directories("${PROJECT_SOURCE_DIR}/include/")
+# Dependencies
+option(LIBOCULUS_FETCH_DEPS "Fetch fmt/spdlog if not found" OFF)
+option(LIBOCULUS_FORCE_FETCH_DEPS "Always fetch fmt/spdlog (ignore system)" OFF)
+
+if(LIBOCULUS_FETCH_DEPS)
+ include(FetchContent)
+endif()
+
+# fmt
+if(LIBOCULUS_FETCH_DEPS)
+ if(LIBOCULUS_FORCE_FETCH_DEPS)
+ set(fmt_FOUND OFF)
+ else()
+ find_package(fmt QUIET)
+ endif()
+ if(NOT fmt_FOUND)
+ FetchContent_Declare(
+ fmt
+ GIT_REPOSITORY https://github.com/fmtlib/fmt.git
+ GIT_TAG 10.2.1
+ )
+ FetchContent_MakeAvailable(fmt)
+ endif()
+else()
+ find_package(fmt REQUIRED)
+endif()
+
+# spdlog
+if(LIBOCULUS_FETCH_DEPS)
+ if(LIBOCULUS_FORCE_FETCH_DEPS)
+ set(spdlog_FOUND OFF)
+ else()
+ find_package(spdlog QUIET)
+ endif()
+ if(NOT spdlog_FOUND)
+ set(SPDLOG_FMT_EXTERNAL ON CACHE BOOL "" FORCE)
+ set(SPDLOG_FMT_EXTERNAL_HO OFF CACHE BOOL "" FORCE)
+ FetchContent_Declare(
+ spdlog
+ GIT_REPOSITORY https://github.com/gabime/spdlog.git
+ GIT_TAG v1.13.0
+ )
+ FetchContent_MakeAvailable(spdlog)
+ endif()
+else()
+ find_package(spdlog REQUIRED)
+endif()
+
# Threading
find_package(Threads)
-find_package(spdlog)
-find_package(fmt)
# Boost
find_package(Boost 1.57 REQUIRED COMPONENTS system)
@@ -31,12 +93,57 @@ include_directories(${install_dir}/include/)
link_directories(${Boost_LIBRARY_DIRS})
# Create Library
-add_library(oculus SHARED ${oculus_SRCS})
-set_target_properties(oculus PROPERTIES LIBRARY_OUTPUT_NAME oculus)
+if(MSVC)
+ set(OCULUS_LIBRARY_TYPE STATIC)
+else()
+ set(OCULUS_LIBRARY_TYPE SHARED)
+endif()
+
+add_library(oculus ${OCULUS_LIBRARY_TYPE} ${oculus_SRCS})
+set_target_properties(
+ oculus
+ PROPERTIES
+ LIBRARY_OUTPUT_NAME oculus
+ ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/lib/$"
+ LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/lib/$"
+ RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin/$"
+)
target_link_libraries(oculus PUBLIC fmt::fmt spdlog::spdlog)
+if(LIBOCULUS_FETCH_DEPS AND DEFINED fmt_SOURCE_DIR)
+ # Ensure fetched fmt headers are preferred over any system/Anaconda fmt
+ target_include_directories(oculus BEFORE PUBLIC "${fmt_SOURCE_DIR}/include")
+endif()
+if(MSVC)
+ target_compile_options(oculus PRIVATE /wd5208 /wd4996)
+ target_compile_definitions(
+ oculus PRIVATE _SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING
+ _USE_MATH_DEFINES
+ _WIN32_WINNT=0x0601
+ )
+ target_link_libraries(oculus PUBLIC Ws2_32)
+endif()
add_executable(occlient ${PROJECT_SOURCE_DIR}/tools/oculus_client.cpp)
target_link_libraries(occlient oculus)
+if(LIBOCULUS_FETCH_DEPS AND DEFINED fmt_SOURCE_DIR)
+ target_include_directories(occlient BEFORE PUBLIC "${fmt_SOURCE_DIR}/include")
+endif()
+set_target_properties(
+ occlient
+ PROPERTIES
+ RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin/$"
+)
+
+add_executable(ocview ${PROJECT_SOURCE_DIR}/tools/oculus_view.cpp)
+target_link_libraries(ocview oculus)
+if(LIBOCULUS_FETCH_DEPS AND DEFINED fmt_SOURCE_DIR)
+ target_include_directories(ocview BEFORE PUBLIC "${fmt_SOURCE_DIR}/include")
+endif()
+set_target_properties(
+ ocview
+ PROPERTIES
+ RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin/$"
+)
# =============================================
# to allow find_package()
diff --git a/include/liboculus/Constants.h b/include/liboculus/Constants.h
index f9adeb9..11d97a2 100644
--- a/include/liboculus/Constants.h
+++ b/include/liboculus/Constants.h
@@ -41,6 +41,10 @@
namespace liboculus {
+#ifndef M_PI
+#define M_PI 3.14159265358979323846
+#endif
+
const uint16_t StatusBroadcastPort = 52102;
const uint16_t DataPort = 52100;
diff --git a/include/liboculus/DataRx.h b/include/liboculus/DataRx.h
index 46e0b87..d4f8a16 100644
--- a/include/liboculus/DataRx.h
+++ b/include/liboculus/DataRx.h
@@ -168,11 +168,17 @@ void DataRx::sendSimpleFireMessage(const SonarConfiguration &config) {
if (data.size() > 0) {
try {
- auto result = _socket.send(boost::asio::buffer(data));
- // LOG(DEBUG) << "Sent " << result << " bytes to sonar";
+ boost::system::error_code ec;
+ auto result = _socket.send(boost::asio::buffer(data), 0, ec);
+ if (ec) {
+ oclog::error("DataRx send failed: {} ({})", ec.message(), ec.value());
+ disconnect();
+ return;
+ }
+ oclog::info("DataRx sent {} bytes to sonar", result);
haveWritten(data);
} catch (boost::system::system_error &ex) {
- // LOG(WARNING) << "Exception when sending: " << ex.what();
+ oclog::error("DataRx send exception: {}", ex.what());
disconnect();
}
}
diff --git a/include/liboculus/DataTypes.h b/include/liboculus/DataTypes.h
index d511959..09c63a7 100644
--- a/include/liboculus/DataTypes.h
+++ b/include/liboculus/DataTypes.h
@@ -41,6 +41,10 @@
namespace liboculus {
+#ifndef M_PI
+#define M_PI 3.14159265358979323846
+#endif
+
typedef std::vector ByteVector;
template T deg2rad(const T &value) { return M_PI / 180.0 * value; }
diff --git a/include/liboculus/GainData.h b/include/liboculus/GainData.h
index fca0167..d429578 100644
--- a/include/liboculus/GainData.h
+++ b/include/liboculus/GainData.h
@@ -30,7 +30,12 @@
#pragma once
+#ifdef _WIN32
+#include
+#include
+#else
#include
+#endif
#include
#include
diff --git a/include/liboculus/SimplePingResult.h b/include/liboculus/SimplePingResult.h
index fb0a456..e624f42 100644
--- a/include/liboculus/SimplePingResult.h
+++ b/include/liboculus/SimplePingResult.h
@@ -40,6 +40,7 @@
#include "liboculus/DataTypes.h"
#include "liboculus/GainData.h"
#include "liboculus/ImageData.h"
+#include "liboculus/Logger.h"
#include "liboculus/SimpleFireMessage.h"
#include "liboculus/SonarConfiguration.h"
#include "liboculus/thirdparty/Oculus/Oculus.h"
@@ -98,7 +99,40 @@ template
SimplePingResult::SimplePingResult(
const std::shared_ptr &buffer)
: SimpleFireMsg_t(buffer), _bearings(), _gains(), _image() {
- assert(buffer->size() >= sizeof(Ping_t));
+ if (buffer->size() < sizeof(Ping_t)) {
+ oclog::error("SimplePingResult: buffer too small ({} < {})",
+ buffer->size(), sizeof(Ping_t));
+ return;
+ }
+
+ const auto nBeams = this->ping()->nBeams;
+ const auto nRanges = this->ping()->nRanges;
+ const auto imageOffset = this->ping()->imageOffset;
+ const auto imageSize = this->ping()->imageSize;
+
+ oclog::debug(
+ "SimplePingResult: beams={} ranges={} imageOffset={} imageSize={} "
+ "dataSize={}",
+ nBeams, nRanges, imageOffset, imageSize,
+ static_cast(this->ping()->dataSize));
+
+ const size_t bearingsOffset = sizeof(Ping_t);
+ const size_t bearingsBytes = static_cast(nBeams) * sizeof(int16_t);
+ if (bearingsOffset + bearingsBytes > buffer->size()) {
+ oclog::error(
+ "SimplePingResult: bearing data out of range (offset={}, bytes={}, "
+ "buffer={})",
+ bearingsOffset, bearingsBytes, buffer->size());
+ return;
+ }
+
+ if (static_cast(imageOffset) + imageSize > buffer->size()) {
+ oclog::error(
+ "SimplePingResult: image data out of range (offset={}, size={}, "
+ "buffer={})",
+ imageOffset, imageSize, buffer->size());
+ return;
+ }
// Bearing data is packed into an array of numBeams shorts immediately
// the end of the OculusSimplePing struct
@@ -148,6 +182,18 @@ template bool SimplePingResult::valid() const {
return false;
}
+ const size_t bearingsOffset = sizeof(Ping_t);
+ const size_t bearingsBytes =
+ static_cast(ping()->nBeams) * sizeof(int16_t);
+ if (bearingsOffset + bearingsBytes > this->buffer()->size()) {
+ return false;
+ }
+
+ if (static_cast(ping()->imageOffset) + ping()->imageSize >
+ this->buffer()->size()) {
+ return false;
+ }
+
int num_pixels = ping()->nRanges * ping()->nBeams;
size_t expected_size = SizeOfDataSize(ping()->dataSize) * num_pixels;
@@ -162,7 +208,9 @@ template bool SimplePingResult::valid() const {
return false;
}
- assert(ping()->imageOffset > sizeof(OculusSimplePingResult));
+ if (ping()->imageOffset <= sizeof(OculusSimplePingResult)) {
+ return false;
+ }
return true;
}
diff --git a/oculus_fields.md b/oculus_fields.md
new file mode 100644
index 0000000..931f1fc
--- /dev/null
+++ b/oculus_fields.md
@@ -0,0 +1,180 @@
+# Oculus Sonar Fields (liboculus)
+
+> 说明:以下按结构体分类整理。对厂商协议未公开语义的字段,在同一表格内进行合并描述。
+
+## OculusMessageHeader
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| oculusId | uint16_t | 固定校验值0x4f53,用于判定包是否为Oculus协议;不匹配通常意味着错包或数据错位,建议丢弃并记录。 |
+| srcDeviceId | uint16_t | 发送端设备ID,用于区分多设备来源;在多声呐或多进程环境中便于路由与日志关联。 |
+| dstDeviceId | uint16_t | 接收端设备ID,标识目标设备或主机;对广播包可能为特定值,用于过滤或调试。 |
+| msgId | uint16_t | 消息类型枚举值,决定负载结构解析方式;错误解析会导致后续字段错读。 |
+| msgVersion | uint16_t | 消息版本号,用于兼容不同固件结构差异;可据此选择解析路径或告警。 |
+| payloadSize | uint32_t | 负载字节数(不含头),用于完整性校验与跳包;截断时常见不匹配。 |
+| spare2 | uint16_t | 保留字段,协议未说明用途;建议写零并忽略读取,避免版本升级出现兼容问题。 |
+
+## OculusSimpleFireMessage (v1)
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| head | OculusMessageHeader | 内嵌消息头,提供类型与长度等元信息;用于校验并定位后续 Fire 参数字段。 |
+| masterMode | uint8_t | 主模式:1低频、2高频;影响频段、量程与成像特性,不支持的模式会被设备忽略或报错。 |
+| pingRate | PingRateType | 最大 ping 率枚举(低/正常/高/最高/待机);实际速率受链路与设备状态限制。 |
+| networkSpeed | uint8_t | 网络速率上限(Mbps);用于高延迟链路降速,0或0xFF通常代表自动。 |
+| gammaCorrection | uint8_t | 伽马校正参数,0或255≈1.0;影响图像对比度与可视化,不改变原始采样值。 |
+| flags | uint8_t | 位标志集合:范围单位、数据位深、是否发送增益、simple return、增益辅助、512 beams等。 |
+| range | double | 量程需求值,单位由 flags 决定(米或百分比);影响范围分辨率与图像覆盖范围。 |
+| gainPercent | double | 期望增益百分比,控制回波强度;过高易饱和,过低会造成图像偏暗或细节丢失。 |
+| speedOfSound | double | 声速 m/s,0 表示用内部估算;决定测距与范围标定精度,建议按环境设置。 |
+| salinity | double | 盐度 ppt,用于内部声速估算;淡水可设0,海水环境建议设置以提高测距精度。 |
+
+## OculusSimpleFireMessage2 (v2)
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| head | OculusMessageHeader | 内嵌消息头,提供类型与长度等元信息;用于校验并定位后续 Fire2 参数字段。 |
+| masterMode | uint8_t | 主模式:1低频、2高频;决定中心频率与量程能力,需与设备型号支持匹配。 |
+| pingRate | PingRateType | 最大 ping 率枚举;用于限制帧率上限,实际速率仍受网络与设备负载影响。 |
+| networkSpeed | uint8_t | 网络速率上限(Mbps),0或0xFF为自动;用于降低带宽占用或跨网段传输。 |
+| gammaCorrection | uint8_t | 伽马校正参数(255≈1.0);影响回波强度映射和视觉对比度,不改变采样值。 |
+| flags | uint8_t | 位标志集合:范围单位、位深、是否带增益、simple return、增益辅助、512 beams等。 |
+| rangePercent | double | 量程需求百分比(v2字段),设备内部换算为米;影响 rangeResolution 与图像覆盖。 |
+| gainPercent | double | 期望增益百分比;建议结合场景动态调整,避免饱和或低对比度。 |
+| speedOfSound | double | 声速 m/s,0 表示内部估算;影响测距与范围标定精度,建议按环境设置。 |
+| salinity | double | 盐度 ppt,参与声速估算;海水/淡水差异会显著影响声速模型。 |
+| extFlags | uint32_t | 扩展标志位(如 32-bit 模式等);具体位含义依固件而定,未知位建议置0。 |
+| reserved[8] | uint32_t[8] | 保留字段数组,协议未说明语义;建议写零并忽略读取,避免未来版本兼容问题。 |
+
+## OculusSimplePingResult (v1)
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| fireMessage | OculusSimpleFireMessage | 触发本次 ping 的 Fire 参数,用于回溯配置(频段、量程、增益等)并解释结果。 |
+| pingId | uint32_t | 自增序号,用于丢包检测、排序与对齐;设备重启后可能清零需结合时间使用。 |
+| status | uint32_t | 状态位集合(固件相关);可用于诊断异常或告警,但位定义需参考设备文档。 |
+| frequency | double | 实际声学频率(Hz),由设备模式与型号决定;用于后处理算法参数与物理解释。 |
+| temperature | double | 外部温度(°C),可能来自探头或外壳传感器;可用于环境监测与声速推算。 |
+| pressure | double | 外部压力(bar),可换算深度;需结合校准与流体密度模型以提高精度。 |
+| speedOfSoundUsed | double | 本次 ping 实际使用的声速(m/s),决定测距精度与 rangeResolution 计算结果。 |
+| pingStartTime | uint32_t | 上电后的时间戳(秒),用于多源对齐;粒度较粗时建议结合系统时间记录。 |
+| dataSize | DataSizeType | 样本位深枚举(8/16/24/32-bit),决定图像每像素字节数与数据解析路径。 |
+| rangeResolution | double | 每个 range bin 对应的物理距离(米);与 nRanges、量程共同决定覆盖范围。 |
+| nRanges | uint16_t | range 行数,决定图像纵向分辨率;与 rangeResolution 一起确定实际量程。 |
+| nBeams | uint16_t | beam 数,常见256或512;决定横向分辨率与数据量、bearing 数组大小。 |
+| imageOffset | uint32_t | 图像数据在包内字节偏移(从头算起),用于定位图像 payload 起点。 |
+| imageSize | uint32_t | 图像数据字节长度,通常与位深×nRanges×nBeams一致(含增益时需修正)。 |
+| messageSize | uint32_t | 完整消息长度(字节),用于校验读满与跳包;不匹配常见于截断或错位。 |
+| bearings[] | int16_t[] | 结构体后附方位角数组(0.01°精度),用于将 beam 索引映射为实际角度。 |
+
+## OculusSimplePingResult2 (v2)
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| fireMessage | OculusSimpleFireMessage2 | 触发本次 ping 的 Fire2 参数,用于回溯配置(频段、量程、增益等)。 |
+| pingId | uint32_t | 自增序号,用于丢包检测与排序;重启后可能清零需结合时间戳使用。 |
+| status | uint32_t | 状态位集合(固件相关);用于诊断异常或告警,位语义需参考设备文档。 |
+| frequency | double | 实际声学频率(Hz),由设备与模式决定;用于算法参数选择与物理解释。 |
+| temperature | double | 外部温度(°C),用于环境监测;可能来自探头或外壳传感器。 |
+| pressure | double | 外部压力(bar),可换算深度;需结合校准与流体密度模型。 |
+| heading | double | 航向角(度),来自外部传感器或IMU;缺失时可能为0或无效值。 |
+| pitch | double | 俯仰角(度),用于姿态补偿;传感器质量不佳时会影响配准效果。 |
+| roll | double | 横滚角(度),用于姿态补偿;建议在日志中监测是否存在异常跳变。 |
+| speedOfSoundUsed | double | 本次 ping 使用的声速(m/s),决定测距精度与 rangeResolution 结果。 |
+| pingStartTime | double | 上电后时间戳(秒,微秒分辨率);适合与多源传感器做时间对齐。 |
+| dataSize | DataSizeType | 样本位深枚举,决定图像每像素字节数;影响 imageSize 校验与解析逻辑。 |
+| rangeResolution | double | 每个 range bin 对应的物理距离(米),与量程需求与 nRanges 相关。 |
+| nRanges | uint16_t | range 行数,决定图像纵向分辨率;与 rangeResolution 一起确定量程。 |
+| nBeams | uint16_t | beam 数,决定横向分辨率与 bearing 数量;常见256或512。 |
+| spare0–spare3 | uint32_t | 保留字段,协议未说明语义;建议忽略读取,避免依赖不可控的固件变化。 |
+| imageOffset | uint32_t | 图像数据在包内字节偏移(从头算起),用于定位图像 payload 起点。 |
+| imageSize | uint32_t | 图像数据字节长度,通常与位深×nRanges×nBeams一致(含增益时修正)。 |
+| messageSize | uint32_t | 完整消息长度(字节),用于校验读满与跳包;不匹配常见于截断或错位。 |
+| bearings[] | int16_t[] | 结构体后附方位角数组(0.01°精度),用于将 beam 索引映射为实际角度。 |
+
+## OculusVersionInfo
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| firmwareVersion0 | uint32_t | ARM0 固件版本编码(高8位主/次、低16位build),用于兼容性判断与升级追踪。 |
+| firmwareDate0 | uint32_t | ARM0 固件日期编码,用于追溯版本来源与发布时间;便于现场诊断与回滚。 |
+| firmwareVersion1 | uint32_t | ARM1 固件版本编码,区分双核固件差异;用于诊断和对齐升级策略。 |
+| firmwareDate1 | uint32_t | ARM1 固件日期编码;与版本配套用于确认实际运行固件。 |
+| firmwareVersion2 | uint32_t | FPGA/bitfile 版本编码,决定硬件逻辑特性;影响协议细节与性能表现。 |
+| firmwareDate2 | uint32_t | FPGA/bitfile 日期编码;用于判断硬件逻辑是否更新与兼容性风险。 |
+
+## OculusStatusMsg
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| hdr | OculusMessageHeader | 状态广播包头部,提供类型与长度等信息;用于识别与校验该包为状态消息。 |
+| deviceId | uint32_t | 设备唯一ID,用于区分网络中多个声呐;建议作为主键写入日志或数据库。 |
+| deviceType | OculusDeviceType | 设备类型枚举(成像声呐);用于上层应用识别设备类别与功能范围。 |
+| partNumber | OculusPartNumberType | 型号/部件号枚举,决定频段与量程能力;可与 OculusInfo 查表关联。 |
+| status | uint32_t | 设备状态位集合,语义依固件;用于判断故障、告警或工作状态变化。 |
+| versionInfo | OculusVersionInfo | 固件/FPGA版本集合;用于兼容性判断、升级管理与问题追踪。 |
+| ipAddr | uint32_t | 设备IP(网络字节序),用于建立控制与数据链路;需转换为点分十进制。 |
+| ipMask | uint32_t | 子网掩码(网络字节序),用于网络配置校验与联通性判断。 |
+| connectedIpAddr | uint32_t | 当前连接控制端IP;用于判断是否被其他主机占用或发生抢占。 |
+| macAddr0–macAddr5 | uint8_t | MAC地址六字节,合并后形成完整物理地址;用于网络识别与绑定。 |
+| temperature0–temperature7 | double | 温度通道0–7(°C),代表内部/外部不同位置;用于热状态监控与告警。 |
+| pressure | double | 外部压力(bar),可用于估深度;需校准与水体密度模型以提高精度。 |
+
+## OculusUserConfig
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| ipAddr | uint32_t | 静态IP设置(网络字节序);用于配置设备地址,需避免与局域网其他设备冲突。 |
+| ipMask | uint32_t | 子网掩码设置(网络字节序);与 ipAddr 一起决定可通信网段范围。 |
+| dhcpEnable | uint32_t | DHCP开关,非零表示自动获取IP;开启后静态配置通常会被忽略。 |
+
+## OculusUserConfigMessage
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| head | OculusMessageHeader | 用户配置消息头,标识包类型与长度;用于解析与校验配置写入请求。 |
+| config | OculusUserConfig | 网络配置数据(IP/Mask/DHCP),用于写入设备网络参数并重启生效。 |
+
+## OculusReturnFireMessage
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| head | OculusMessageHeader | 返回 Fire 参数消息的头部;用于识别该包为配置回显或诊断数据。 |
+| ping | PingConfig | 厂商协议未公开语义的配置块;建议仅记录原始值或透传,避免业务逻辑依赖。 |
+| t0–t12 | s0–s12 | 厂商协议未公开语义的参数块集合;建议只记录原始值,便于离线分析与回溯。 |
+| ping_params | PingParameters | 含少量注释字段但语义未完整公开;可作调试用途,不建议业务依赖。 |
+
+## PingConfig
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| range | double | 字段名暗示量程相关,但协议未公开;建议仅记录原始值用于调试,不作为算法依据。 |
+| nBeams | uint16_t | 字段名暗示 beam 数,但协议未公开;可能与实际 nBeams 不一致,建议仅作参考。 |
+| b0, b1–b16, u0–u1, d0, d2–d7 | mixed | 厂商协议未公开语义的占位字段集合;建议仅记录原始值或透传,避免依赖。 |
+
+## s0–s12
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| 全部字段 | mixed | s0–s12 为厂商未公开语义的参数块;字段名为 b*/u*/d*/i* 占位,建议仅记录原始值。 |
+
+## PingParameters
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| imageOffset | uint32_t | 图像数据在包内的字节偏移(注释涉及 CHN/CQI/BQI/BMG 等类型),用于定位图像起点。 |
+| imageSize | uint32_t | 图像数据字节长度,用于校验与解析完整性;可作为读包成功的关键验证条件。 |
+| messageSize | uint32_t | 完整消息字节长度,用于检测截断或错位;与头部 payloadSize 可互相校验。 |
+| nRangeLinesBfm | uint32_t | 字段名暗示 BFM range 行数,但协议未公开;建议仅记录原始值用于调试。 |
+| u0–u4, u5–u9, b0–b2, d1–d20 | mixed | 厂商协议未公开语义的占位字段集合;建议只记录原始值或透传,避免依赖。 |
+
+## OculusInfo
+
+| 字段 | 类型 | 描述 |
+|---|---|---|
+| partNumber | OculusPartNumberType | 型号/部件号枚举;用于匹配设备能力与量程限制。 |
+| hasLF | bool | 是否支持低频模式;用于配置层屏蔽不支持的频段,防止无效配置。 |
+| maxLF | double | 低频最大量程(米),用于配置上限与安全约束,避免超出设备能力。 |
+| hasHF | bool | 是否支持高频模式;用于配置层屏蔽不支持的频段,防止无效配置。 |
+| maxHF | double | 高频最大量程(米),用于配置上限与安全约束,避免超出设备能力。 |
+| model | char* | 型号描述字符串;用于展示与日志记录,便于现场人员快速识别设备型号。 |
diff --git a/out.raw b/out.raw
new file mode 100644
index 0000000..e69de29
diff --git a/src/DataRx.cpp b/src/DataRx.cpp
index b8807dc..c8758a5 100644
--- a/src/DataRx.cpp
+++ b/src/DataRx.cpp
@@ -67,7 +67,7 @@ void DataRx::connect(const std::string &strAddr) {
void DataRx::onConnect(const boost::system::error_code &ec) {
if (ec) {
- // LOG(DEBUG) << "Error on connect: " << ec.message();
+ oclog::error("DataRx connect failed: {} ({})", ec.message(), ec.value());
disconnect();
return;
} else if (!isConnected()) {
@@ -75,7 +75,7 @@ void DataRx::onConnect(const boost::system::error_code &ec) {
return;
}
- // LOG(INFO) << "Successful connection to sonar!";
+ oclog::info("DataRx connected");
restartReceiveCycle();
if (_onConnectCallback)
_onConnectCallback();
@@ -93,11 +93,10 @@ void DataRx::onTimeout(const boost::system::error_code &ec) {
if (ec == boost::asio::error::operation_aborted) {
return;
} else if (ec) {
- // LOG(WARNING) << "Error on timeout " << ec.message();
+ oclog::warn("DataRx timeout error: {} ({})", ec.message(), ec.value());
}
- // LOG(DEBUG) << "!! No data from sonar in " << timeout_secs_
- // << " seconds, timeout";
+ oclog::warn("DataRx: no data from sonar in {} seconds", timeout_secs_);
if (_onTimeoutCallback)
_onTimeoutCallback();
}
@@ -147,8 +146,8 @@ void DataRx::rxFirstByteOculusId(const boost::system::error_code &ec,
return;
} else if (ec) {
// Failure of this first read usually indicates a network failure
- // LOG(WARNING) << "Error on receive of header: " << ec.value() << " "
- // << ec.message();
+ oclog::warn("DataRx recv header byte failed: {} ({})", ec.message(),
+ ec.value());
disconnect();
return;
}
@@ -172,8 +171,8 @@ void DataRx::rxSecondByteOculusId(const boost::system::error_code &ec,
// LOG(DEBUG) << "Receive cancelled, giving up...";
return;
} else if (ec) {
- // LOG(WARNING) << "Error on receive of header: " << ec.value() << " "
- // << ec.message();
+ oclog::warn("DataRx recv header byte2 failed: {} ({})", ec.message(),
+ ec.value());
goto exit;
}
@@ -200,8 +199,7 @@ void DataRx::rxHeader(const boost::system::error_code &ec,
// LOG(DEBUG) << "Receive cancelled, giving up...";
return;
} else if (ec) {
- // LOG(WARNING) << "Error on receive of header: " << ec.value() << " "
- // << ec.message();
+ oclog::warn("DataRx recv header failed: {} ({})", ec.message(), ec.value());
return;
}
@@ -209,6 +207,8 @@ void DataRx::rxHeader(const boost::system::error_code &ec,
// LOG(WARNING) << "Received short header of " << bytes_transferred
// << " expected " << sizeof(OculusMessageHeader);
restartReceiveCycle();
+ // Short header means our buffer is incomplete; restart before parsing.
+ return;
}
MessageHeader hdr(_buffer);
@@ -237,8 +237,7 @@ void DataRx::rxPacket(const boost::system::error_code &ec,
// LOG(DEBUG) << "Receive cancelled, giving up...";
return;
} else if (ec) {
- // LOG(WARNING) << "Error on receive of packet data: " << ec.value() << " "
- // << ec.message();
+ oclog::warn("DataRx recv packet failed: {} ({})", ec.message(), ec.value());
goto exit;
}
diff --git a/src/OculusMessageHandler.cpp b/src/OculusMessageHandler.cpp
index 65d4342..7b09822 100644
--- a/src/OculusMessageHandler.cpp
+++ b/src/OculusMessageHandler.cpp
@@ -29,6 +29,7 @@
*/
#include "liboculus/OculusMessageHandler.h"
+#include "liboculus/Logger.h"
namespace liboculus {
@@ -47,15 +48,23 @@ void OculusMessageHandler::setCallback(
template <>
void OculusMessageHandler::callback(
const SimplePingResultV1 &data) {
- if (_simplePingCallback)
- _simplePingCallback(data);
+ if (!_simplePingCallback) {
+ oclog::warn("OculusMessageHandler: v1 callback not set");
+ return;
+ }
+ oclog::debug("OculusMessageHandler: calling v1 callback");
+ _simplePingCallback(data);
}
template <>
void OculusMessageHandler::callback(
const SimplePingResultV2 &data) {
- if (_simplePing2Callback)
- _simplePing2Callback(data);
+ if (!_simplePing2Callback) {
+ oclog::warn("OculusMessageHandler: v2 callback not set");
+ return;
+ }
+ oclog::debug("OculusMessageHandler: calling v2 callback");
+ _simplePing2Callback(data);
}
}; // namespace liboculus
diff --git a/src/SonarPlayer.cpp b/src/SonarPlayer.cpp
index 3bab01b..398ac7e 100644
--- a/src/SonarPlayer.cpp
+++ b/src/SonarPlayer.cpp
@@ -34,6 +34,7 @@
#include "liboculus/Constants.h"
#include "liboculus/DataTypes.h"
+#include "liboculus/Logger.h"
#include "liboculus/MessageHeader.h"
#include "liboculus/SimplePingResult.h"
#include "liboculus/thirdparty/Oculus/Oculus.h"
@@ -51,8 +52,10 @@ shared_ptr
SonarPlayerBase::OpenFile(const std::string &filename) {
std::ifstream f(filename);
- if (!f.is_open())
+ if (!f.is_open()) {
+ oclog::warn("OpenFile: unable to open {}", filename);
return nullptr;
+ }
char c;
f.get(c);
@@ -68,6 +71,7 @@ SonarPlayerBase::OpenFile(const std::string &filename) {
}
} else if (c == 0x53) {
+ oclog::debug("OpenFile: raw sonar data detected");
// LOG(INFO) << "I think this is an raw sonar data.";
return shared_ptr(new RawSonarPlayer());
}
@@ -80,12 +84,20 @@ SonarPlayerBase::OpenFile(const std::string &filename) {
bool SonarPlayerBase::open(const std::string &filename) {
_input.open(filename, ios_base::binary | ios_base::in);
+ if (!_input.is_open()) {
+ oclog::error("SonarPlayerBase: failed to open {}", filename);
+ }
return _input.is_open();
}
//--- RawSonarPlayer --
bool RawSonarPlayer::nextPing() {
+ if (!_input.is_open()) {
+ oclog::warn("RawSonarPlayer: input not open");
+ return false;
+ }
+
unsigned int skipped_bytes = 0;
while (_input.peek() != PacketHeaderLSB) {
char c;
@@ -97,31 +109,76 @@ bool RawSonarPlayer::nextPing() {
}
}
- // LOG_IF(INFO, skipped_bytes > 0)
- // << "Skipped " << skipped_bytes << " before reading start of header";
+ if (skipped_bytes > 0) {
+ oclog::debug("RawSonarPlayer: skipped {} bytes", skipped_bytes);
+ }
std::shared_ptr buffer =
std::make_shared(sizeof(OculusMessageHeader));
- _input.get(reinterpret_cast(buffer->data()),
- sizeof(OculusMessageHeader));
+ _input.read(reinterpret_cast(buffer->data()),
+ sizeof(OculusMessageHeader));
+ if (_input.gcount() !=
+ static_cast(sizeof(OculusMessageHeader))) {
+ oclog::warn("RawSonarPlayer: short read on header (got {})",
+ _input.gcount());
+ return false;
+ }
MessageHeader header(buffer);
- if (!header.valid())
+ if (!header.valid()) {
+ oclog::warn("RawSonarPlayer: invalid header oculusId={:#04x}",
+ header.oculusId());
return false;
+ }
+
+ oclog::debug("RawSonarPlayer: msgId={:#04x} ver={} payload={} packet={}",
+ static_cast(header.msgId()), header.msgVersion(),
+ header.payloadSize(), header.packetSize());
// LOG(DEBUG) << "Reading " << header.payloadSize() << " additional bytes";
// Read the rest of the data
buffer->resize(header.packetSize());
- _input.get(
+ _input.read(
reinterpret_cast(buffer->data() + sizeof(OculusMessageHeader)),
header.payloadSize());
+ if (_input.gcount() != static_cast(header.payloadSize())) {
+ oclog::warn("RawSonarPlayer: short read on payload (wanted {}, got {})",
+ header.payloadSize(), _input.gcount());
+ return false;
+ }
if (header.msgId() == messageSimplePingResult) {
if (header.msgVersion() == 2) {
- callback(SimplePingResultV2(buffer));
+ SimplePingResultV2 ping(buffer);
+ const bool ok = ping.valid();
+ oclog::debug("RawSonarPlayer: ping v2 valid={}", ok);
+ if (!ok) {
+ oclog::warn(
+ "RawSonarPlayer: invalid ping v2 (offset={}, size={}, beams={}, "
+ "ranges={}, dataSize={})",
+ ping.ping()->imageOffset, ping.ping()->imageSize,
+ ping.ping()->nBeams, ping.ping()->nRanges,
+ static_cast(ping.ping()->dataSize));
+ return false;
+ }
+ oclog::debug("RawSonarPlayer: invoking v2 callback");
+ callback(ping);
} else {
- callback(SimplePingResultV1(buffer));
+ SimplePingResultV1 ping(buffer);
+ const bool ok = ping.valid();
+ oclog::debug("RawSonarPlayer: ping v1 valid={}", ok);
+ if (!ok) {
+ oclog::warn(
+ "RawSonarPlayer: invalid ping v1 (offset={}, size={}, beams={}, "
+ "ranges={}, dataSize={})",
+ ping.ping()->imageOffset, ping.ping()->imageSize,
+ ping.ping()->nBeams, ping.ping()->nRanges,
+ static_cast(ping.ping()->dataSize));
+ return false;
+ }
+ oclog::debug("RawSonarPlayer: invoking v1 callback");
+ callback(ping);
}
}
diff --git a/src/StatusRx.cpp b/src/StatusRx.cpp
index ecbe3b5..401fbc2 100644
--- a/src/StatusRx.cpp
+++ b/src/StatusRx.cpp
@@ -31,7 +31,12 @@
#include "liboculus/StatusRx.h"
#include "liboculus/Logger.h"
+#ifdef _WIN32
+#include
+#include
+#else
#include
+#endif
#include
#include
@@ -59,16 +64,36 @@ void StatusRx::doConnect() {
boost::system::error_code error;
_socket.open(boost::asio::ip::udp::v4(), error);
+ if (error) {
+ oclog::error("StatusRx open failed: {} ({})", error.message(),
+ error.value());
+ return;
+ }
boost::asio::socket_base::broadcast option(true);
- _socket.set_option(option);
+ _socket.set_option(option, error);
+ if (error) {
+ oclog::error("StatusRx set broadcast failed: {} ({})", error.message(),
+ error.value());
+ return;
+ }
- if (!error) {
- _socket.bind(local);
- scheduleRead();
- } else {
- oclog::warn("Unable to start reader");
+ boost::asio::socket_base::reuse_address reuse(true);
+ _socket.set_option(reuse, error);
+ if (error) {
+ oclog::error("StatusRx set reuse_address failed: {} ({})", error.message(),
+ error.value());
+ return;
}
+
+ _socket.bind(local, error);
+ if (error) {
+ oclog::error("StatusRx bind failed: {} ({})", error.message(),
+ error.value());
+ return;
+ }
+
+ scheduleRead();
}
void StatusRx::scheduleRead() {
@@ -86,14 +111,17 @@ void StatusRx::handleRead(const boost::system::error_code &ec,
if (ec) {
oclog::warn("Error on receive: {}", ec.message());
scheduleRead();
+ // Don't try to parse a partial buffer after a receive error.
+ return;
}
- oclog::trace("Read {} bytes", bytes_transferred);
+ oclog::info("StatusRx received {} bytes", bytes_transferred);
if (bytes_transferred != sizeof(OculusStatusMsg)) {
- oclog::warn("Got {} bytes, expected OculusStatusMsg of size ",
+ oclog::warn("Got {} bytes, expected OculusStatusMsg of size {}",
bytes_transferred, sizeof(OculusStatusMsg));
_num_invalid_rx++;
+ scheduleRead();
return;
}
diff --git a/test/data/out.raw b/test/data/out.raw
new file mode 100644
index 0000000..add7390
Binary files /dev/null and b/test/data/out.raw differ
diff --git a/tools/oculus_client.cpp b/tools/oculus_client.cpp
index 8cf2f64..7d1c294 100644
--- a/tools/oculus_client.cpp
+++ b/tools/oculus_client.cpp
@@ -1,7 +1,17 @@
+#include
+#include
+#include
+#include
#include
+#include
#include
+#include
+#include
+#include
+#include
#include
#include
+#include
using std::string;
@@ -16,6 +26,7 @@ using std::string;
#include "liboculus/PingAgreesWithConfig.h"
#include "liboculus/SonarPlayer.h"
#include "liboculus/StatusRx.h"
+#include "liboculus/thirdparty/Oculus/Oculus.h"
using std::ios_base;
using std::ofstream;
@@ -31,19 +42,18 @@ using liboculus::StatusRx;
// using liboculus::SonarPlayer;
using std::cout;
-
-int playbackSonarFile(const std::string &filename, ofstream &output,
- int stopAfter = -1);
-
+namespace fs = std::filesystem;
// Make these global so signal handler can access it
std::unique_ptr _io_thread;
-bool doStop = false;
+std::atomic doStop{false};
+
+
// Catch signals
void signalHandler(int signo) {
if (_io_thread)
_io_thread->stop();
- doStop = true;
+ doStop.store(true, std::memory_order_relaxed);
}
double mean_image_intensity(const liboculus::ImageData &imageData) {
@@ -57,119 +67,614 @@ double mean_image_intensity(const liboculus::ImageData &imageData) {
return f;
}
-int main(int argc, char **argv) {
+template ||
+ std::is_convertible_v>>
+void write_kv(std::ofstream &out, const std::string &key, T value) {
+ out << key << "=" << value << "\n";
+}
- // Configure both liboculus and occlient to use the same
- // sink to stdout
- auto stdout_sink = std::make_shared();
+std::string trim_copy(const std::string &s) {
+ const auto start = s.find_first_not_of(" \t\r\n");
+ if (start == std::string::npos) {
+ return "";
+ }
+ const auto end = s.find_last_not_of(" \t\r\n");
+ return s.substr(start, end - start + 1);
+}
- liboculus::Logger::add_sink(stdout_sink);
- spdlog::set_default_logger(
- std::make_shared("occlient", stdout_sink));
+std::unordered_map
+read_ini_kv(const std::string &path) {
+ std::unordered_map kv;
+ std::ifstream in(path);
+ if (!in.is_open()) {
+ return kv;
+ }
+ std::string line;
+ while (std::getline(in, line)) {
+ const auto trimmed = trim_copy(line);
+ if (trimmed.empty()) {
+ continue;
+ }
+ if (trimmed[0] == '#' || trimmed[0] == ';') {
+ continue;
+ }
+ if (trimmed[0] == '[') {
+ continue;
+ }
+ const auto eq = trimmed.find('=');
+ if (eq == std::string::npos) {
+ continue;
+ }
+ const auto key = trim_copy(trimmed.substr(0, eq));
+ const auto val = trim_copy(trimmed.substr(eq + 1));
+ if (!key.empty()) {
+ kv[key] = val;
+ }
+ }
+ return kv;
+}
- // Or simpler, tell liboculus to use the default logger
- // liboculus::Logger::set_logger( spdlog::default_logger() );
+bool write_ini_kv(const std::string &path,
+ const std::unordered_map &kv,
+ std::string &error) {
+ std::ofstream out(path);
+ if (!out.is_open()) {
+ error = "Unable to open profile for writing";
+ return false;
+ }
+ out << "; occlient profile\n";
+ out << "[occlient]\n";
+ for (const auto &it : kv) {
+ out << it.first << "=" << it.second << "\n";
+ }
+ if (!out) {
+ error = "Failed while writing profile";
+ return false;
+ }
+ return true;
+}
- CLI::App app{"Simple Oculus Sonar app"};
+uint32_t adler32(const uint8_t *data, size_t len) {
+ const uint32_t mod_adler = 65521;
+ uint32_t a = 1;
+ uint32_t b = 0;
+ for (size_t i = 0; i < len; ++i) {
+ a = (a + data[i]) % mod_adler;
+ b = (b + a) % mod_adler;
+ }
+ return (b << 16) | a;
+}
- int verbosity = 0;
- app.add_flag("-v,--verbose", verbosity,
- "Additional output (use -vv for even more!)");
+uint32_t crc32(const uint8_t *data, size_t len) {
+ static bool initialized = false;
+ static uint32_t table[256];
+ if (!initialized) {
+ for (uint32_t i = 0; i < 256; ++i) {
+ uint32_t c = i;
+ for (int k = 0; k < 8; ++k) {
+ if (c & 1) {
+ c = 0xEDB88320u ^ (c >> 1);
+ } else {
+ c >>= 1;
+ }
+ }
+ table[i] = c;
+ }
+ initialized = true;
+ }
- string ipAddr("auto");
- app.add_option("ip", ipAddr,
- "IP address of sonar or \"auto\" to automatically detect.");
+ uint32_t c = 0xFFFFFFFFu;
+ for (size_t i = 0; i < len; ++i) {
+ c = table[(c ^ data[i]) & 0xFF] ^ (c >> 8);
+ }
+ return c ^ 0xFFFFFFFFu;
+}
- string outputFilename("");
- app.add_option("-o,--output", outputFilename,
- "Saves raw sonar data to specified file.");
+void write_u32_be(std::ofstream &out, uint32_t v) {
+ const uint8_t b[4] = {
+ static_cast((v >> 24) & 0xFF),
+ static_cast((v >> 16) & 0xFF),
+ static_cast((v >> 8) & 0xFF),
+ static_cast(v & 0xFF)};
+ out.write(reinterpret_cast(b), 4);
+}
- // Playback currently not working
- string inputFilename("");
- app.add_option("-i,--input", inputFilename,
- "Reads raw sonar data from specified file. Plays file "
- "contents rather than contacting \"real\" sonar on network.");
+bool write_chunk(std::ofstream &out, const char type[4],
+ const std::vector &data, std::string &error) {
+ write_u32_be(out, static_cast(data.size()));
+ out.write(type, 4);
+ if (!data.empty()) {
+ out.write(reinterpret_cast(data.data()),
+ static_cast(data.size()));
+ }
- int bitDepth(8);
- app.add_option("-b,--bits", bitDepth, "Bit depth oof data (8,16,32)");
+ std::vector crc_input(4 + data.size());
+ crc_input[0] = static_cast(type[0]);
+ crc_input[1] = static_cast(type[1]);
+ crc_input[2] = static_cast(type[2]);
+ crc_input[3] = static_cast(type[3]);
+ if (!data.empty()) {
+ std::copy(data.begin(), data.end(), crc_input.begin() + 4);
+ }
- int stopAfter = -1;
- app.add_option("-n,--frames", stopAfter, "Stop after (n) frames.");
+ const uint32_t crc = crc32(crc_input.data(), crc_input.size());
+ write_u32_be(out, crc);
+ if (!out) {
+ error = "Failed while writing PNG chunk";
+ return false;
+ }
+ return true;
+}
- float range = 4;
- app.add_option("-r,--range", range, "Range in meters");
+bool write_png(const liboculus::ImageData &image, uint32_t max_override,
+ const std::string &path, std::string &error) {
+ const uint32_t width = static_cast(image.nBeams());
+ const uint32_t height = static_cast(image.nRanges());
+ if (width == 0 || height == 0) {
+ error = "Image has zero width or height";
+ return false;
+ }
- float gain = 50;
- app.add_option("-g, --gain", gain, "Gain as a percentage (1-100)");
+ uint32_t max_val = max_override;
+ if (max_val == 0) {
+ max_val = 0;
+ for (uint32_t r = 0; r < height; ++r) {
+ for (uint32_t b = 0; b < width; ++b) {
+ max_val = std::max(max_val, image.at_uint32(b, r));
+ }
+ }
+ }
- CLI11_PARSE(app, argc, argv);
+ const size_t total = static_cast(width) * height;
+ std::vector pixels(total, 0);
+ if (max_val > 0) {
+ for (uint32_t r = 0; r < height; ++r) {
+ for (uint32_t b = 0; b < width; ++b) {
+ const uint32_t v = image.at_uint32(b, r);
+ const uint64_t scaled = (static_cast(v) * 255u) / max_val;
+ pixels[static_cast(r) * width + b] =
+ static_cast(std::min(scaled, 255u));
+ }
+ }
+ }
+
+ std::ofstream out(path, std::ios::binary);
+ if (!out.is_open()) {
+ error = "Unable to open output file";
+ return false;
+ }
+
+ const uint8_t signature[8] = {0x89, 'P', 'N', 'G',
+ 0x0D, 0x0A, 0x1A, 0x0A};
+ out.write(reinterpret_cast(signature), 8);
+
+ std::vector ihdr(13, 0);
+ ihdr[0] = static_cast((width >> 24) & 0xFF);
+ ihdr[1] = static_cast((width >> 16) & 0xFF);
+ ihdr[2] = static_cast((width >> 8) & 0xFF);
+ ihdr[3] = static_cast(width & 0xFF);
+ ihdr[4] = static_cast((height >> 24) & 0xFF);
+ ihdr[5] = static_cast((height >> 16) & 0xFF);
+ ihdr[6] = static_cast((height >> 8) & 0xFF);
+ ihdr[7] = static_cast(height & 0xFF);
+ ihdr[8] = 8;
+ ihdr[9] = 0;
+ ihdr[10] = 0;
+ ihdr[11] = 0;
+ ihdr[12] = 0;
+
+ if (!write_chunk(out, "IHDR", ihdr, error)) {
+ return false;
+ }
+
+ std::vector raw;
+ raw.reserve(height * (width + 1));
+ for (uint32_t r = 0; r < height; ++r) {
+ raw.push_back(0);
+ const size_t row_offset = static_cast(r) * width;
+ raw.insert(raw.end(), pixels.begin() + row_offset,
+ pixels.begin() + row_offset + width);
+ }
+
+ std::vector zlib;
+ zlib.reserve(raw.size() + 64);
+ zlib.push_back(0x78);
+ zlib.push_back(0x01);
+
+ size_t pos = 0;
+ while (pos < raw.size()) {
+ const size_t remaining = raw.size() - pos;
+ const uint16_t block_len =
+ static_cast(std::min(remaining, 65535));
+ const bool is_final = (pos + block_len) == raw.size();
+ zlib.push_back(static_cast(is_final ? 0x01 : 0x00));
+ zlib.push_back(static_cast(block_len & 0xFF));
+ zlib.push_back(static_cast((block_len >> 8) & 0xFF));
+ const uint16_t nlen = static_cast(~block_len);
+ zlib.push_back(static_cast(nlen & 0xFF));
+ zlib.push_back(static_cast((nlen >> 8) & 0xFF));
+
+ zlib.insert(zlib.end(), raw.begin() + pos, raw.begin() + pos + block_len);
+ pos += block_len;
+ }
+
+ const uint32_t adler = adler32(raw.data(), raw.size());
+ zlib.push_back(static_cast((adler >> 24) & 0xFF));
+ zlib.push_back(static_cast((adler >> 16) & 0xFF));
+ zlib.push_back(static_cast((adler >> 8) & 0xFF));
+ zlib.push_back(static_cast(adler & 0xFF));
+
+ if (!write_chunk(out, "IDAT", zlib, error)) {
+ return false;
+ }
+
+ const std::vector empty;
+ if (!write_chunk(out, "IEND", empty, error)) {
+ return false;
+ }
+
+ return true;
+}
- if (verbosity == 1) {
+struct AppOptions {
+ int verbosity = 0;
+ std::string ipAddr = "auto";
+ std::string outputFilename;
+ std::string inputFilename;
+ int bitDepth = 8;
+ int stopAfter = -1;
+ float range = 4;
+ float gain = 50;
+ int beams = 512;
+ bool noGain = false;
+ bool fullReturn = false;
+ bool forceV1 = false;
+ bool printStatus = false;
+ bool statsOnly = false;
+ bool fireDump = false;
+ bool compareFire = false;
+ std::string videoDir;
+ uint32_t videoMax = 0;
+ bool profileLoad = false;
+ bool profileSave = false;
+ std::string fieldsPath;
+};
+
+// Shared state used by callbacks and the main loop.
+struct RuntimeContext {
+ std::atomic count{0};
+ int frameIndex = 0;
+ std::ofstream *output = nullptr;
+ std::ofstream *fieldsOut = nullptr;
+ std::mutex *fieldsMutex = nullptr;
+ bool computeMean = false;
+};
+
+void configure_logging(const AppOptions &opt) {
+ if (opt.verbosity == 1) {
spdlog::set_level(spdlog::level::debug);
- } else if (verbosity > 1) {
+ } else if (opt.verbosity > 1) {
spdlog::set_level(spdlog::level::trace);
}
+ if (opt.statsOnly) {
+ spdlog::set_level(spdlog::level::warn);
+ }
+}
- if ((bitDepth != 8) && (bitDepth != 16) && (bitDepth != 32)) {
- spdlog::error("Invalid bit depth {}", bitDepth);
- exit(-1);
+bool validate_options(const AppOptions &opt) {
+ if ((opt.bitDepth != 8) && (opt.bitDepth != 16) && (opt.bitDepth != 32)) {
+ spdlog::error("Invalid bit depth {}", opt.bitDepth);
+ return false;
}
- if ((gain < 1) || (gain > 100)) {
- spdlog::error("Invalid gain {}; should be in the range of 1-100", gain);
+ if ((opt.gain < 1) || (opt.gain > 100)) {
+ spdlog::error("Invalid gain {}; should be in the range of 1-100", opt.gain);
+ return false;
}
- ofstream output;
+ if ((opt.beams != 256) && (opt.beams != 512)) {
+ spdlog::error("Invalid beams {}; should be 256 or 512", opt.beams);
+ return false;
+ }
- if (!outputFilename.empty()) {
- spdlog::debug("Opening output file {}", outputFilename);
- output.open(outputFilename, ios_base::binary | ios_base::out);
+ return true;
+}
- if (!output.is_open()) {
- spdlog::error("Unable to open {} for output.", outputFilename);
- exit(-1);
- }
- }
+void apply_profile_kv(const std::unordered_map &kv,
+ AppOptions &opt) {
+ if (kv.count("ip")) opt.ipAddr = kv.at("ip");
+ if (kv.count("range")) opt.range = std::stof(kv.at("range"));
+ if (kv.count("gain")) opt.gain = std::stof(kv.at("gain"));
+ if (kv.count("bits")) opt.bitDepth = std::stoi(kv.at("bits"));
+ if (kv.count("beams")) opt.beams = std::stoi(kv.at("beams"));
+ if (kv.count("no_gain")) opt.noGain = (kv.at("no_gain") == "1");
+ if (kv.count("full_return")) opt.fullReturn = (kv.at("full_return") == "1");
+ if (kv.count("fire_v1")) opt.forceV1 = (kv.at("fire_v1") == "1");
+ if (kv.count("print_status"))
+ opt.printStatus = (kv.at("print_status") == "1");
+ if (kv.count("stats")) opt.statsOnly = (kv.at("stats") == "1");
+ if (kv.count("video_dir")) opt.videoDir = kv.at("video_dir");
+ if (kv.count("video_max")) opt.videoMax = std::stoul(kv.at("video_max"));
+ if (kv.count("output")) opt.outputFilename = kv.at("output");
+ if (kv.count("frames")) opt.stopAfter = std::stoi(kv.at("frames"));
+}
- // If playing back an input file, run a different main loop ...
- if (!inputFilename.empty()) {
- spdlog::info("Playing back file {}", inputFilename);
- playbackSonarFile(inputFilename, output, stopAfter);
- return 0;
+bool save_profile(const AppOptions &opt, const std::string &profilePath) {
+ std::unordered_map kv;
+ kv["ip"] = opt.ipAddr;
+ kv["range"] = std::to_string(opt.range);
+ kv["gain"] = std::to_string(opt.gain);
+ kv["bits"] = std::to_string(opt.bitDepth);
+ kv["beams"] = std::to_string(opt.beams);
+ kv["no_gain"] = opt.noGain ? "1" : "0";
+ kv["full_return"] = opt.fullReturn ? "1" : "0";
+ kv["fire_v1"] = opt.forceV1 ? "1" : "0";
+ kv["print_status"] = opt.printStatus ? "1" : "0";
+ kv["stats"] = opt.statsOnly ? "1" : "0";
+ kv["video_dir"] = opt.videoDir;
+ kv["video_max"] = std::to_string(opt.videoMax);
+ kv["output"] = opt.outputFilename;
+ kv["frames"] = std::to_string(opt.stopAfter);
+
+ std::string error;
+ if (!write_ini_kv(profilePath, kv, error)) {
+ spdlog::error("Profile save failed: {}", error);
+ return false;
}
+ spdlog::info("Saved profile to {}", profilePath);
+ return true;
+}
- int count = 0;
+bool open_outputs(const AppOptions &opt, std::ofstream &output,
+ std::ofstream &fieldsOut) {
+ if (!opt.outputFilename.empty()) {
+ spdlog::debug("Opening output file {}", opt.outputFilename);
+ output.open(opt.outputFilename, ios_base::binary | ios_base::out);
- signal(SIGHUP, signalHandler);
+ if (!output.is_open()) {
+ spdlog::error("Unable to open {} for output.", opt.outputFilename);
+ return false;
+ }
+ }
+ if (!opt.videoDir.empty()) {
+ std::error_code ec;
+ fs::create_directories(opt.videoDir, ec);
+ if (ec) {
+ spdlog::error("Unable to create video dir {}: {}", opt.videoDir,
+ ec.message());
+ return false;
+ }
+ }
- spdlog::debug("Starting loop");
+ if (!opt.fieldsPath.empty()) {
+ fieldsOut.open(opt.fieldsPath, ios_base::out | ios_base::app);
+ if (!fieldsOut.is_open()) {
+ spdlog::error("Unable to open {} for field output.", opt.fieldsPath);
+ return false;
+ }
+ }
+ return true;
+}
+SonarConfiguration build_config(const AppOptions &opt) {
SonarConfiguration config;
config.setPingRate(pingRateNormal);
+ config.setRange(opt.range);
+ config.setGainPercent(opt.gain).noGainAssistance();
- spdlog::info("Setting range to {}", range);
- config.setRange(range);
+ if (opt.beams == 512) {
+ config.use512Beams();
+ } else {
+ config.use256Beams();
+ }
- spdlog::info("Setting gain to {}", gain);
- config.setGainPercent(gain).noGainAssistance();
+ const bool sendGain = !opt.noGain;
+ if (sendGain) {
+ config.sendGain();
+ } else {
+ config.dontSendGain();
+ }
- if (bitDepth == 8) {
+ const bool simpleReturn = !opt.fullReturn;
+ config.setSimpleReturn(simpleReturn);
+
+ if (opt.bitDepth == 8) {
config.setDataSize(dataSize8Bit);
- } else if (bitDepth == 16) {
+ } else if (opt.bitDepth == 16) {
config.setDataSize(dataSize16Bit);
- } else if (bitDepth == 32) {
+ } else if (opt.bitDepth == 32) {
config.sendGain().setDataSize(dataSize32Bit);
}
- _io_thread.reset(new IoServiceThread);
- DataRx _data_rx(_io_thread->context());
- StatusRx _status_rx(_io_thread->context());
+ return config;
+}
+
+void handle_frame_stop(const AppOptions &opt, std::atomic &count) {
+ // Enforce stop-after across both ping versions.
+ const int newCount = count.fetch_add(1, std::memory_order_relaxed) + 1;
+ if ((opt.stopAfter > 0) && (newCount >= opt.stopAfter)) {
+ doStop.store(true, std::memory_order_relaxed);
+ if (_io_thread) {
+ _io_thread->stop();
+ }
+ }
+}
+
+void write_png_frame(const AppOptions &opt, RuntimeContext &ctx,
+ const liboculus::ImageData &image) {
+ if (opt.videoDir.empty()) {
+ return;
+ }
+ std::string error;
+ const auto filename =
+ (fs::path(opt.videoDir) / fmt::format("frame_{:06d}.png", ctx.frameIndex))
+ .string();
+ if (!write_png(image, opt.videoMax, filename, error)) {
+ spdlog::error("Failed to write PNG {}: {}", filename, error);
+ } else if (!opt.statsOnly) {
+ spdlog::debug("Wrote {}", filename);
+ }
+ ctx.frameIndex++;
+}
+
+void write_fields_v1(RuntimeContext &ctx,
+ const liboculus::SimplePingResultV1 &ping) {
+ if (!ctx.fieldsOut || !ctx.fieldsOut->is_open() || !ctx.fieldsMutex) {
+ return;
+ }
+ std::lock_guard lock(*ctx.fieldsMutex);
+ (*ctx.fieldsOut) << "ping_version=1\n";
+ write_kv(*ctx.fieldsOut, "msg_id", static_cast(ping.hdr()->msgId));
+ write_kv(*ctx.fieldsOut, "msg_version", ping.hdr()->msgVersion);
+ write_kv(*ctx.fieldsOut, "src_id", ping.hdr()->srcDeviceId);
+ write_kv(*ctx.fieldsOut, "dst_id", ping.hdr()->dstDeviceId);
+ write_kv(*ctx.fieldsOut, "payload_size", ping.hdr()->payloadSize);
+ write_kv(*ctx.fieldsOut, "range", ping.fireMsg()->range);
+ write_kv(*ctx.fieldsOut, "gain", ping.fireMsg()->gainPercent);
+ write_kv(*ctx.fieldsOut, "frequency", ping.ping()->frequency);
+ write_kv(*ctx.fieldsOut, "temperature", ping.ping()->temperature);
+ write_kv(*ctx.fieldsOut, "pressure", ping.ping()->pressure);
+ write_kv(*ctx.fieldsOut, "speed_of_sound", ping.ping()->speedOfSoundUsed);
+ write_kv(*ctx.fieldsOut, "range_resolution", ping.ping()->rangeResolution);
+ write_kv(*ctx.fieldsOut, "n_ranges", ping.ping()->nRanges);
+ write_kv(*ctx.fieldsOut, "n_beams", ping.ping()->nBeams);
+ write_kv(*ctx.fieldsOut, "image_offset", ping.ping()->imageOffset);
+ write_kv(*ctx.fieldsOut, "image_size", ping.ping()->imageSize);
+ write_kv(*ctx.fieldsOut, "message_size", ping.ping()->messageSize);
+ (*ctx.fieldsOut) << "\n";
+}
+
+void write_fields_v2(RuntimeContext &ctx,
+ const liboculus::SimplePingResultV2 &ping) {
+ if (!ctx.fieldsOut || !ctx.fieldsOut->is_open() || !ctx.fieldsMutex) {
+ return;
+ }
+ std::lock_guard lock(*ctx.fieldsMutex);
+ (*ctx.fieldsOut) << "ping_version=2\n";
+ write_kv(*ctx.fieldsOut, "msg_id", static_cast(ping.hdr()->msgId));
+ write_kv(*ctx.fieldsOut, "msg_version", ping.hdr()->msgVersion);
+ write_kv(*ctx.fieldsOut, "src_id", ping.hdr()->srcDeviceId);
+ write_kv(*ctx.fieldsOut, "dst_id", ping.hdr()->dstDeviceId);
+ write_kv(*ctx.fieldsOut, "payload_size", ping.hdr()->payloadSize);
+ write_kv(*ctx.fieldsOut, "range", ping.fireMsg()->rangePercent);
+ write_kv(*ctx.fieldsOut, "gain", ping.fireMsg()->gainPercent);
+ write_kv(*ctx.fieldsOut, "frequency", ping.ping()->frequency);
+ write_kv(*ctx.fieldsOut, "temperature", ping.ping()->temperature);
+ write_kv(*ctx.fieldsOut, "pressure", ping.ping()->pressure);
+ write_kv(*ctx.fieldsOut, "heading", ping.ping()->heading);
+ write_kv(*ctx.fieldsOut, "pitch", ping.ping()->pitch);
+ write_kv(*ctx.fieldsOut, "roll", ping.ping()->roll);
+ write_kv(*ctx.fieldsOut, "speed_of_sound", ping.ping()->speedOfSoundUsed);
+ write_kv(*ctx.fieldsOut, "range_resolution", ping.ping()->rangeResolution);
+ write_kv(*ctx.fieldsOut, "n_ranges", ping.ping()->nRanges);
+ write_kv(*ctx.fieldsOut, "n_beams", ping.ping()->nBeams);
+ write_kv(*ctx.fieldsOut, "image_offset", ping.ping()->imageOffset);
+ write_kv(*ctx.fieldsOut, "image_size", ping.ping()->imageSize);
+ write_kv(*ctx.fieldsOut, "message_size", ping.ping()->messageSize);
+ (*ctx.fieldsOut) << "\n";
+}
+
+void dump_fire_message(const SonarConfiguration &config, bool forceV1) {
+ std::vector raw;
+ if (forceV1) {
+ raw = config.serialize();
+ } else {
+ raw = config.serialize();
+ }
+
+ std::ostringstream hex;
+ hex << std::hex << std::setfill('0');
+ for (size_t i = 0; i < raw.size(); ++i) {
+ hex << std::setw(2) << static_cast(raw[i]);
+ if ((i + 1) % 16 == 0) {
+ hex << "\n";
+ } else {
+ hex << " ";
+ }
+ }
+ spdlog::info("FireMessage bytes ({}):\n{}", raw.size(), hex.str());
+
+ if (forceV1 && raw.size() >= sizeof(OculusSimpleFireMessage)) {
+ auto msg = reinterpret_cast(raw.data());
+ spdlog::info(
+ "FireMessage v1 fields: mode={} pingRate={} netSpeed={} gamma={} "
+ "flags=0x{:02x} range={} gain={} sos={} salinity={}",
+ static_cast(msg->masterMode), static_cast(msg->pingRate),
+ static_cast(msg->networkSpeed),
+ static_cast(msg->gammaCorrection),
+ static_cast(msg->flags), msg->range, msg->gainPercent,
+ msg->speedOfSound, msg->salinity);
+ } else if (!forceV1 && raw.size() >= sizeof(OculusSimpleFireMessage2)) {
+ auto msg = reinterpret_cast(raw.data());
+ spdlog::info(
+ "FireMessage v2 fields: mode={} pingRate={} netSpeed={} gamma={} "
+ "flags=0x{:02x} rangePct={} gain={} sos={} salinity={} ext=0x{:08x}",
+ static_cast(msg->masterMode), static_cast(msg->pingRate),
+ static_cast(msg->networkSpeed),
+ static_cast(msg->gammaCorrection),
+ static_cast(msg->flags), msg->rangePercent, msg->gainPercent,
+ msg->speedOfSound, msg->salinity, msg->extFlags);
+ }
+}
+
+void register_on_connect(DataRx &data_rx, const SonarConfiguration &config,
+ const AppOptions &opt) {
+ data_rx.setOnConnectCallback([&]() {
+ if (!opt.statsOnly) {
+ std::vector dump_vec;
+ config.dump(dump_vec);
+
+ for (auto const &l : dump_vec) {
+ spdlog::debug("Config: {}", l);
+ }
+ }
+
+ if (opt.fireDump) {
+ dump_fire_message(config, opt.forceV1);
+ }
+
+ if (opt.forceV1) {
+ spdlog::info("Sending FireMessage v1");
+ data_rx.sendSimpleFireMessage(config);
+ } else {
+ spdlog::info("Sending FireMessage v2");
+ data_rx.sendSimpleFireMessage(config);
+ }
+ });
+}
+
+void register_status_callback(StatusRx &status_rx, DataRx &data_rx,
+ const AppOptions &opt) {
+ status_rx.setCallback([&](const SonarStatus &status, bool is_valid) {
+ if (opt.printStatus) {
+ std::vector dump_vec;
+ status.dump(dump_vec);
+ for (auto const &l : dump_vec) {
+ spdlog::info("Status: {}", l);
+ }
+ }
+
+ if (opt.ipAddr != "auto") {
+ return;
+ }
+ if (!is_valid || data_rx.isConnected()) {
+ return;
+ }
+
+ data_rx.connect(status.ipAddr());
+ });
+}
+
+void register_data_callbacks(DataRx &data_rx, const SonarConfiguration &config,
+ const AppOptions &opt, RuntimeContext &ctx) {
// Callback for a SimplePingResultV1
- _data_rx.setCallback(
+ data_rx.setCallback(
[&](const liboculus::SimplePingResultV1 &ping) {
- // Pings are only sent to the callback if valid()
- // don't need to check independently
+ if (!opt.statsOnly) {
+ spdlog::debug("PingV1: begin");
+ }
{
const auto valid = checkPingAgreesWithConfig(ping, config);
@@ -178,32 +683,52 @@ int main(int argc, char **argv) {
}
}
- std::vector dump_vec;
- ping.dump(dump_vec);
+ if (!opt.statsOnly) {
+ std::vector dump_vec;
+ spdlog::debug("PingV1: dump");
+ ping.dump(dump_vec);
- for (auto const &l : dump_vec) {
- spdlog::debug("PingV1: {}", l);
+ for (auto const &l : dump_vec) {
+ spdlog::debug("PingV1: {}", l);
+ }
}
- if (output.is_open()) {
+ if (ctx.output && ctx.output->is_open()) {
const char *cdata =
reinterpret_cast(ping.buffer()->data());
- output.write(cdata, ping.buffer()->size());
+ ctx.output->write(cdata, ping.buffer()->size());
+ }
+
+ if (ctx.computeMean) {
+ spdlog::debug("PingV1: mean");
+ spdlog::info("Average intensity: {}",
+ mean_image_intensity(ping.image()));
}
- spdlog::info("Average intensity: ()",
- mean_image_intensity(ping.image()));
+ if (opt.compareFire) {
+ spdlog::info(
+ "PingV1 vs Fire: range={}m gain={} fireFlags=0x{:02x} dataSize={} beams={} simpleReturn={}",
+ ping.fireMsg()->range, ping.fireMsg()->gainPercent,
+ static_cast(ping.fireMsg()->flags),
+ static_cast(ping.ping()->dataSize), ping.ping()->nBeams,
+ ping.flags().getSimpleReturn() ? "true" : "false");
+ }
+
+ write_fields_v1(ctx, ping);
+ write_png_frame(opt, ctx, ping.image());
- count++;
- if ((stopAfter > 0) && (count >= stopAfter))
- _io_thread->stop();
+ handle_frame_stop(opt, ctx.count);
+ if (!opt.statsOnly) {
+ spdlog::debug("PingV1: end");
+ }
});
// Callback for a SimplePingResultV2
- _data_rx.setCallback(
+ data_rx.setCallback(
[&](const liboculus::SimplePingResultV2 &ping) {
- // Pings are only sent to the callback if valid()
- // don't need to check independently
+ if (!opt.statsOnly) {
+ spdlog::debug("PingV2: begin");
+ }
{
const auto valid = checkPingAgreesWithConfig(ping, config);
@@ -212,74 +737,151 @@ int main(int argc, char **argv) {
}
}
- std::vector dump_vec;
- ping.dump(dump_vec);
+ if (!opt.statsOnly) {
+ std::vector dump_vec;
+ spdlog::debug("PingV2: dump");
+ ping.dump(dump_vec);
- for (auto const &l : dump_vec) {
- spdlog::debug("PingV2: {}", l);
+ for (auto const &l : dump_vec) {
+ spdlog::debug("PingV2: {}", l);
+ }
}
- if (output.is_open()) {
+ if (ctx.output && ctx.output->is_open()) {
const char *cdata =
reinterpret_cast(ping.buffer()->data());
- output.write(cdata, ping.buffer()->size());
+ ctx.output->write(cdata, ping.buffer()->size());
+ }
+
+ if (ctx.computeMean) {
+ spdlog::debug("PingV2: mean");
+ spdlog::debug("Average intensity: {}",
+ mean_image_intensity(ping.image()));
+ }
+
+ if (opt.compareFire) {
+ spdlog::info(
+ "PingV2 vs Fire: range={}m gain={} fireFlags=0x{:02x} dataSize={} beams={} simpleReturn={}",
+ ping.fireMsg()->rangePercent, ping.fireMsg()->gainPercent,
+ static_cast(ping.fireMsg()->flags),
+ static_cast(ping.ping()->dataSize), ping.ping()->nBeams,
+ ping.flags().getSimpleReturn() ? "true" : "false");
}
- spdlog::debug("Average intensity: {}",
- mean_image_intensity(ping.image()));
+ write_fields_v2(ctx, ping);
+ write_png_frame(opt, ctx, ping.image());
- count++;
- if ((stopAfter > 0) && (count >= stopAfter))
- doStop = true;
+ handle_frame_stop(opt, ctx.count);
+ if (!opt.statsOnly) {
+ spdlog::debug("PingV2: end");
+ }
});
+}
+
+template
+void register_playback_callback(SonarPlayerBase &player, const char *version,
+ std::ofstream &output, int &count) {
+ player.setCallback([&](const PingT &ping) {
+ spdlog::debug("Playback {}: begin", version);
+ // Pings are only sent to the callback if valid()
+ // don't need to check independently
- // When the _data_rx connects, send the configuration
- _data_rx.setOnConnectCallback([&]() {
std::vector dump_vec;
- config.dump(dump_vec);
+ try {
+ ping.dump(dump_vec);
+ } catch (const std::exception &e) {
+ spdlog::error("Playback {}: dump exception: {}", version, e.what());
+ return;
+ } catch (...) {
+ spdlog::error("Playback {}: dump exception: unknown", version);
+ return;
+ }
for (auto const &l : dump_vec) {
- spdlog::debug("Config: {}", l);
+ spdlog::debug("Ping{}: {}", version, l);
}
- _data_rx.sendSimpleFireMessage(config);
+ if (output.is_open()) {
+ const char *cdata =
+ reinterpret_cast(ping.buffer()->data());
+ output.write(cdata, ping.buffer()->size());
+ spdlog::debug("Playback {}: wrote {} bytes", version,
+ ping.buffer()->size());
+ }
+
+ try {
+ spdlog::info("Average intensity: {}",
+ mean_image_intensity(ping.image()));
+ } catch (const std::exception &e) {
+ spdlog::error("Playback {}: mean exception: {}", version, e.what());
+ return;
+ } catch (...) {
+ spdlog::error("Playback {}: mean exception: unknown", version);
+ return;
+ }
+
+ count++;
+ spdlog::debug("Playback {}: end", version);
});
+}
- // Connect the client
- if (ipAddr == "auto") {
- // To autoconnect, define a callback for the _status_rx which
- // connects _data_rx to the received IP address
- _status_rx.setCallback([&](const SonarStatus &status, bool is_valid) {
- if (!is_valid || _data_rx.isConnected())
- return;
- _data_rx.connect(status.ipAddr());
- });
- } else {
- // Otherwise, just (attempt to) connect the DataRx to the specified IP
- // address
- _data_rx.connect(ipAddr);
- }
- _io_thread->start();
+void configure_cli(CLI::App &app, AppOptions &opt) {
+ app.add_flag("-v,--verbose", opt.verbosity,
+ "Additional output (use -vv for even more!)");
- int lastCount = 0;
- while (!doStop) {
- // Very rough Hz calculation right now
- const auto c = count;
- spdlog::info("Received pings at {} Hz", c - lastCount);
+ app.add_option("--ip", opt.ipAddr,
+ "IP address of sonar or \"auto\" to automatically detect.");
+ app.allow_extras();
- lastCount = c;
- sleep(1);
- }
+ app.add_option("-o,--output", opt.outputFilename,
+ "Saves raw sonar data to specified file.");
- _io_thread->stop();
- _io_thread->join();
+ // Playback currently not working
+ app.add_option("-i,--input", opt.inputFilename,
+ "Reads raw sonar data from specified file. Plays file "
+ "contents rather than contacting \"real\" sonar on network.");
- if (output.is_open())
- output.close();
+ app.add_option("-b,--bits", opt.bitDepth, "Bit depth oof data (8,16,32)");
- spdlog::info("At exit");
+ app.add_option("-n,--frames", opt.stopAfter, "Stop after (n) frames.");
- return 0;
+ app.add_option("-r,--range", opt.range, "Range in meters");
+
+ app.add_option("-g, --gain", opt.gain, "Gain as a percentage (1-100)");
+
+ app.add_option("--beams", opt.beams, "Number of beams (256 or 512)");
+
+ app.add_flag("--no-gain", opt.noGain, "Do not include gain data in returns");
+
+ app.add_flag("--full-return", opt.fullReturn,
+ "Request full return messages");
+
+ app.add_flag("--fire-v1", opt.forceV1, "Send OculusSimpleFireMessage v1");
+
+ app.add_flag("--print-status", opt.printStatus,
+ "Print key fields from status packets");
+
+ app.add_flag("--stats", opt.statsOnly, "Only print FPS stats");
+
+ app.add_flag("--dump-fire", opt.fireDump,
+ "Print FireMessage bytes and key fields");
+
+ app.add_flag("--compare-fire", opt.compareFire,
+ "Compare ping fields with last FireMessage");
+
+ app.add_option("--video-dir", opt.videoDir,
+ "Directory to write PNG frames (e.g. out_frames)");
+
+ app.add_option("--video-max", opt.videoMax,
+ "Max value for PNG scaling (0 = auto)");
+
+ app.add_flag("--profile-load", opt.profileLoad,
+ "Load settings from occlient.ini");
+ app.add_flag("--profile-save", opt.profileSave,
+ "Save settings to occlient.ini and exit");
+
+ app.add_option("--dump-fields", opt.fieldsPath,
+ "Write parsed ping fields to a text file");
}
int playbackSonarFile(const std::string &filename, ofstream &output,
@@ -298,63 +900,136 @@ int playbackSonarFile(const std::string &filename, ofstream &output,
int count = 0;
- // Callback for a SimplePingResultV1
- player->setCallback(
- [&](const liboculus::SimplePingResultV1 &ping) {
- // Pings are only sent to the callback if valid()
- // don't need to check independently
+ // Playback callbacks share the same behavior; only labels differ.
+ register_playback_callback(*player, "V1",
+ output, count);
+ register_playback_callback(*player, "V2",
+ output, count);
- std::vector dump_vec;
- ping.dump(dump_vec);
+ // SimplePingResult ping;
+ while (player->nextPing() && !player->eof()) {
+ spdlog::debug("Read a ping");
+ ;
+ }
- for (auto const &l : dump_vec) {
- spdlog::debug("PingV1: {}", l);
- }
+ spdlog::info("{} sonar packets decoded", count);
- if (output.is_open()) {
- const char *cdata =
- reinterpret_cast(ping.buffer()->data());
- output.write(cdata, ping.buffer()->size());
- }
+ return 0;
+}
- spdlog::info("Average intensity: {}",
- mean_image_intensity(ping.image()));
+int main(int argc, char **argv) {
- count++;
- });
+ // Configure both liboculus and occlient to use the same
+ // sink to stdout
+ auto stdout_sink = std::make_shared();
- // Callback for a SimplePingResultV2
- player->setCallback(
- [&](const liboculus::SimplePingResultV2 &ping) {
- // Pings are only sent to the callback if valid()
- // don't need to check independently
+ liboculus::Logger::add_sink(stdout_sink);
+ spdlog::set_default_logger(
+ std::make_shared("occlient", stdout_sink));
- std::vector dump_vec;
- ping.dump(dump_vec);
+ // Or simpler, tell liboculus to use the default logger
+ // liboculus::Logger::set_logger( spdlog::default_logger() );
- for (auto const &l : dump_vec) {
- spdlog::debug("PingV2: {}", l);
- }
+ CLI::App app{"Simple Oculus Sonar app"};
+ AppOptions opt;
- if (output.is_open()) {
- const char *cdata =
- reinterpret_cast(ping.buffer()->data());
- output.write(cdata, ping.buffer()->size());
- }
+ configure_cli(app, opt);
- spdlog::info("Average intensity: {}",
- mean_image_intensity(ping.image()));
+ CLI11_PARSE(app, argc, argv);
- count++;
- });
+ if (opt.ipAddr == "auto") {
+ const auto extras = app.remaining();
+ if (!extras.empty()) {
+ opt.ipAddr = extras.front();
+ }
+ }
- // SimplePingResult ping;
- while (player->nextPing() && !player->eof()) {
- spdlog::debug("Read a ping");
- ;
+ const std::string profilePath = "occlient.ini";
+ if (opt.profileLoad) {
+ const auto kv = read_ini_kv(profilePath);
+ if (!kv.empty()) {
+ apply_profile_kv(kv, opt);
+ }
}
- spdlog::info("{} sonar packets decoded", count);
+ if (opt.profileSave) {
+ return save_profile(opt, profilePath) ? 0 : 1;
+ }
+
+ configure_logging(opt);
+ if (!validate_options(opt)) {
+ return 1;
+ }
+
+ ofstream output;
+ ofstream fieldsOut;
+ std::mutex fieldsMutex;
+ if (!open_outputs(opt, output, fieldsOut)) {
+ return 1;
+ }
+
+ // If playing back an input file, run a different main loop ...
+ if (!opt.inputFilename.empty()) {
+ spdlog::info("Playing back file {}", opt.inputFilename);
+ playbackSonarFile(opt.inputFilename, output, opt.stopAfter);
+ return 0;
+ }
+
+#ifdef _WIN32
+ signal(SIGINT, signalHandler);
+#else
+ signal(SIGHUP, signalHandler);
+#endif
+
+ spdlog::debug("Starting loop");
+
+ // Build the sonar configuration from CLI/profile settings.
+ const SonarConfiguration config = build_config(opt);
+
+ _io_thread.reset(new IoServiceThread);
+ DataRx _data_rx(_io_thread->context());
+ StatusRx _status_rx(_io_thread->context());
+
+ RuntimeContext ctx;
+ ctx.output = &output;
+ ctx.fieldsOut = &fieldsOut;
+ ctx.fieldsMutex = &fieldsMutex;
+ ctx.computeMean = (!opt.statsOnly && opt.verbosity > 0);
+
+ register_data_callbacks(_data_rx, config, opt, ctx);
+ register_on_connect(_data_rx, config, opt);
+ register_status_callback(_status_rx, _data_rx, opt);
+
+ if (opt.ipAddr != "auto") {
+ // Otherwise, just (attempt to) connect the DataRx to the specified IP
+ // address
+ _data_rx.connect(opt.ipAddr);
+ }
+ _io_thread->start();
+
+ int lastCount = 0;
+ while (!doStop.load(std::memory_order_relaxed)) {
+ // Very rough Hz calculation right now
+ const auto c = ctx.count.load(std::memory_order_relaxed);
+ if (opt.statsOnly) {
+ std::cout << "FPS: " << (c - lastCount) << std::endl;
+ } else {
+ spdlog::info("Received pings at {} Hz", c - lastCount);
+ }
+
+ lastCount = c;
+ std::this_thread::sleep_for(std::chrono::seconds(1));
+ }
+
+ _io_thread->stop();
+ _io_thread->join();
+
+ if (output.is_open())
+ output.close();
+ if (fieldsOut.is_open())
+ fieldsOut.close();
+
+ spdlog::info("At exit");
return 0;
}
diff --git a/tools/oculus_view.cpp b/tools/oculus_view.cpp
new file mode 100644
index 0000000..2d1ca49
--- /dev/null
+++ b/tools/oculus_view.cpp
@@ -0,0 +1,322 @@
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include "liboculus/thirdparty/CLI11/CLI11.hpp"
+
+#include "spdlog/spdlog.h"
+
+#include "liboculus/Logger.h"
+#include "liboculus/SonarPlayer.h"
+
+namespace {
+
+struct State {
+ int target_index = 0;
+ int seen = 0;
+ bool done = false;
+ bool success = false;
+ uint32_t max_override = 0;
+ std::string output_path;
+ std::string error;
+};
+
+uint32_t compute_max(const liboculus::ImageData &image) {
+ uint32_t max_val = 0;
+ const uint32_t width = static_cast(image.nBeams());
+ const uint32_t height = static_cast(image.nRanges());
+ for (uint32_t r = 0; r < height; ++r) {
+ for (uint32_t b = 0; b < width; ++b) {
+ max_val = std::max(max_val, image.at_uint32(b, r));
+ }
+ }
+ return max_val;
+}
+
+uint32_t adler32(const uint8_t *data, size_t len) {
+ const uint32_t mod_adler = 65521;
+ uint32_t a = 1;
+ uint32_t b = 0;
+ for (size_t i = 0; i < len; ++i) {
+ a = (a + data[i]) % mod_adler;
+ b = (b + a) % mod_adler;
+ }
+ return (b << 16) | a;
+}
+
+uint32_t crc32(const uint8_t *data, size_t len) {
+ static bool initialized = false;
+ static uint32_t table[256];
+ if (!initialized) {
+ for (uint32_t i = 0; i < 256; ++i) {
+ uint32_t c = i;
+ for (int k = 0; k < 8; ++k) {
+ if (c & 1) {
+ c = 0xEDB88320u ^ (c >> 1);
+ } else {
+ c >>= 1;
+ }
+ }
+ table[i] = c;
+ }
+ initialized = true;
+ }
+
+ uint32_t c = 0xFFFFFFFFu;
+ for (size_t i = 0; i < len; ++i) {
+ c = table[(c ^ data[i]) & 0xFF] ^ (c >> 8);
+ }
+ return c ^ 0xFFFFFFFFu;
+}
+
+void write_u32_be(std::ofstream &out, uint32_t v) {
+ const uint8_t b[4] = {
+ static_cast((v >> 24) & 0xFF),
+ static_cast((v >> 16) & 0xFF),
+ static_cast((v >> 8) & 0xFF),
+ static_cast(v & 0xFF)};
+ out.write(reinterpret_cast(b), 4);
+}
+
+bool write_chunk(std::ofstream &out, const char type[4],
+ const std::vector &data, std::string &error) {
+ write_u32_be(out, static_cast(data.size()));
+ out.write(type, 4);
+ if (!data.empty()) {
+ out.write(reinterpret_cast(data.data()),
+ static_cast(data.size()));
+ }
+
+ std::vector crc_input(4 + data.size());
+ crc_input[0] = static_cast(type[0]);
+ crc_input[1] = static_cast(type[1]);
+ crc_input[2] = static_cast(type[2]);
+ crc_input[3] = static_cast(type[3]);
+ if (!data.empty()) {
+ std::copy(data.begin(), data.end(), crc_input.begin() + 4);
+ }
+
+ const uint32_t crc = crc32(crc_input.data(), crc_input.size());
+ write_u32_be(out, crc);
+ if (!out) {
+ error = "Failed while writing PNG chunk";
+ return false;
+ }
+ return true;
+}
+
+bool write_png(const liboculus::ImageData &image, uint32_t max_override,
+ const std::string &path, std::string &error) {
+ const uint32_t width = static_cast(image.nBeams());
+ const uint32_t height = static_cast(image.nRanges());
+ if (width == 0 || height == 0) {
+ error = "Image has zero width or height";
+ return false;
+ }
+
+ uint32_t max_val = max_override;
+ if (max_val == 0) {
+ max_val = compute_max(image);
+ }
+
+ const size_t total = static_cast(width) * height;
+ std::vector pixels(total, 0);
+ if (max_val > 0) {
+ for (uint32_t r = 0; r < height; ++r) {
+ for (uint32_t b = 0; b < width; ++b) {
+ const uint32_t v = image.at_uint32(b, r);
+ const uint64_t scaled = (static_cast(v) * 255u) / max_val;
+ pixels[static_cast(r) * width + b] =
+ static_cast(std::min(scaled, 255u));
+ }
+ }
+ }
+
+ std::ofstream out(path, std::ios::binary);
+ if (!out.is_open()) {
+ error = "Unable to open output file";
+ return false;
+ }
+
+ // PNG signature
+ const uint8_t signature[8] = {0x89, 'P', 'N', 'G',
+ 0x0D, 0x0A, 0x1A, 0x0A};
+ out.write(reinterpret_cast(signature), 8);
+
+ // IHDR
+ std::vector ihdr(13, 0);
+ ihdr[0] = static_cast((width >> 24) & 0xFF);
+ ihdr[1] = static_cast((width >> 16) & 0xFF);
+ ihdr[2] = static_cast((width >> 8) & 0xFF);
+ ihdr[3] = static_cast(width & 0xFF);
+ ihdr[4] = static_cast((height >> 24) & 0xFF);
+ ihdr[5] = static_cast((height >> 16) & 0xFF);
+ ihdr[6] = static_cast((height >> 8) & 0xFF);
+ ihdr[7] = static_cast(height & 0xFF);
+ ihdr[8] = 8; // bit depth
+ ihdr[9] = 0; // color type: grayscale
+ ihdr[10] = 0; // compression
+ ihdr[11] = 0; // filter
+ ihdr[12] = 0; // interlace
+
+ if (!write_chunk(out, "IHDR", ihdr, error)) {
+ return false;
+ }
+
+ // Prepare raw scanlines with filter byte (0) per row
+ std::vector raw;
+ raw.reserve(height * (width + 1));
+ for (uint32_t r = 0; r < height; ++r) {
+ raw.push_back(0);
+ const size_t row_offset = static_cast(r) * width;
+ raw.insert(raw.end(), pixels.begin() + row_offset,
+ pixels.begin() + row_offset + width);
+ }
+
+ // Zlib stream with uncompressed DEFLATE blocks
+ std::vector zlib;
+ zlib.reserve(raw.size() + 64);
+ zlib.push_back(0x78);
+ zlib.push_back(0x01);
+
+ size_t pos = 0;
+ while (pos < raw.size()) {
+ const size_t remaining = raw.size() - pos;
+ const uint16_t block_len =
+ static_cast(std::min(remaining, 65535));
+ const bool is_final = (pos + block_len) == raw.size();
+ zlib.push_back(static_cast(is_final ? 0x01 : 0x00));
+ zlib.push_back(static_cast(block_len & 0xFF));
+ zlib.push_back(static_cast((block_len >> 8) & 0xFF));
+ const uint16_t nlen = static_cast(~block_len);
+ zlib.push_back(static_cast(nlen & 0xFF));
+ zlib.push_back(static_cast((nlen >> 8) & 0xFF));
+
+ zlib.insert(zlib.end(), raw.begin() + pos, raw.begin() + pos + block_len);
+ pos += block_len;
+ }
+
+ const uint32_t adler = adler32(raw.data(), raw.size());
+ zlib.push_back(static_cast((adler >> 24) & 0xFF));
+ zlib.push_back(static_cast((adler >> 16) & 0xFF));
+ zlib.push_back(static_cast((adler >> 8) & 0xFF));
+ zlib.push_back(static_cast(adler & 0xFF));
+
+ if (!write_chunk(out, "IDAT", zlib, error)) {
+ return false;
+ }
+
+ const std::vector empty;
+ if (!write_chunk(out, "IEND", empty, error)) {
+ return false;
+ }
+
+ return true;
+}
+
+template
+void handle_ping(const PingT &ping, State &state) {
+ if (state.done) {
+ return;
+ }
+ if (state.seen == state.target_index) {
+ spdlog::info("Selected ping {} (beams={}, ranges={}, dataSize={})",
+ state.target_index, ping.ping()->nBeams,
+ ping.ping()->nRanges,
+ static_cast(ping.ping()->dataSize));
+ if (!write_png(ping.image(), state.max_override, state.output_path,
+ state.error)) {
+ state.success = false;
+ } else {
+ state.success = true;
+ }
+ state.done = true;
+ }
+ state.seen++;
+}
+
+} // namespace
+
+int main(int argc, char **argv) {
+ auto stdout_sink = std::make_shared();
+ liboculus::Logger::add_sink(stdout_sink);
+ spdlog::set_default_logger(
+ std::make_shared("ocview", stdout_sink));
+
+ CLI::App app{"Simple Oculus sonar image dumper"};
+
+ int verbosity = 0;
+ app.add_flag("-v,--verbose", verbosity,
+ "Additional output (use -vv for even more!)");
+
+ std::string input;
+ std::string output = "out.png";
+ int ping_index = 0;
+ uint32_t max_override = 0;
+
+ app.add_option("-i,--input", input,
+ "Raw sonar data file (e.g. *.raw).")->required();
+ app.add_option("-o,--output", output, "Output PNG file.");
+ app.add_option("--ping", ping_index, "0-based ping index to export.")
+ ->default_val(0);
+ app.add_option("--max", max_override,
+ "Max value for scaling (0 = auto).")
+ ->default_val(0);
+
+ CLI11_PARSE(app, argc, argv);
+
+ if (verbosity == 1) {
+ spdlog::set_level(spdlog::level::debug);
+ } else if (verbosity > 1) {
+ spdlog::set_level(spdlog::level::trace);
+ }
+
+ if (ping_index < 0) {
+ spdlog::error("Ping index must be >= 0");
+ return 1;
+ }
+
+ auto player = liboculus::SonarPlayerBase::OpenFile(input);
+ if (!player) {
+ spdlog::error("Unable to open sonar file {}", input);
+ return 1;
+ }
+ if (!player->open(input)) {
+ spdlog::error("Failed to open {}", input);
+ return 1;
+ }
+
+ State state;
+ state.target_index = ping_index;
+ state.max_override = max_override;
+ state.output_path = output;
+
+ player->setCallback(
+ [&](const liboculus::SimplePingResultV1 &ping) {
+ handle_ping(ping, state);
+ });
+ player->setCallback(
+ [&](const liboculus::SimplePingResultV2 &ping) {
+ handle_ping(ping, state);
+ });
+
+ while (!state.done && player->nextPing() && !player->eof()) {
+ ;
+ }
+
+ if (!state.done) {
+ spdlog::error("Ping index {} out of range (decoded {}).", ping_index,
+ state.seen);
+ return 1;
+ }
+ if (!state.success) {
+ spdlog::error("Failed to write PGM: {}", state.error);
+ return 1;
+ }
+
+ spdlog::info("Wrote {}", output);
+ return 0;
+}