Add full implementation: core engine, UI, build fixes, and compilation

- Implement all core modules: disk I/O, partition tables, filesystem
  formatting, recovery, imaging, diagnostics, security, and maintenance
- Implement all UI tabs with full widget layouts and backend integration
- Fix MSVC compilation: NOMINMAX, WIN32_LEAN_AND_MEAN, missing includes
  (winioctl.h, bcrypt.h, shellapi.h, cwctype), type mismatches, and
  POSIX macro conflicts
- Add Guid implementation (Types.cpp), move DiskAccessMode to Types.h
- Add CMake presets with embedded MSVC/SDK environment for Git Bash builds
- Add build scripts, key generation, icon resources, and windeployqt
- Include pre-built hwdiag library and third-party integration
This commit is contained in:
DigiJ
2026-03-11 22:48:12 -07:00
parent 179bb85c4f
commit 8656efda63
104 changed files with 33270 additions and 334 deletions

48
third_party/hwdiag/build_library.bat vendored Normal file
View File

@@ -0,0 +1,48 @@
@echo off
REM Build the hwdiag library from source.
REM This script copies internal sources, builds the library, then cleans up.
REM The resulting .lib is placed in lib/ and committed to the repo.
REM
REM Prerequisites:
REM - Qt6 installed and findable by CMake
REM - MSVC build tools on PATH (run from Developer Command Prompt)
REM - Main project configured at least once (for EmbeddedKey.h)
setlocal
set SCRIPT_DIR=%~dp0
set INTERNAL=%SCRIPT_DIR%internal
set SRC_ROOT=%SCRIPT_DIR%..\..\src
echo === Copying internal sources ===
copy /Y "%SRC_ROOT%\ui\dialogs\AstroChicken.h" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\ui\dialogs\AstroChicken.cpp" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\ui\dialogs\Vohaul.h" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\ui\dialogs\Vohaul.cpp" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\ui\dialogs\Arnoid.h" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\ui\dialogs\Arnoid.cpp" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\ui\tabs\StarGenerator.h" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\ui\tabs\StarGenerator.cpp" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\core\security\OratDecoder.h" "%INTERNAL%\" >nul
copy /Y "%SRC_ROOT%\core\security\OratDecoder.cpp" "%INTERNAL%\" >nul
echo === Building library ===
cmake -B "%SCRIPT_DIR%build" -S "%SCRIPT_DIR%" -G Ninja
cmake --build "%SCRIPT_DIR%build" --config Release
if %ERRORLEVEL% NEQ 0 (
echo BUILD FAILED
goto cleanup
)
echo === Library built successfully ===
echo Output: %SCRIPT_DIR%lib\
:cleanup
echo === Cleaning up internal sources ===
del /f /q "%INTERNAL%\*.h" >nul 2>&1
del /f /q "%INTERNAL%\*.cpp" >nul 2>&1
rmdir /s /q "%SCRIPT_DIR%build" >nul 2>&1
echo === Done ===
endlocal