119 lines
3.9 KiB
Batchfile
119 lines
3.9 KiB
Batchfile
@echo off
|
|
REM =============================================================================
|
|
REM Windows Platform Build Script - All Components
|
|
REM =============================================================================
|
|
|
|
echo [BUILD] Starting Windows platform build process...
|
|
|
|
REM Set build configuration
|
|
set BUILD_CONFIG=Debug
|
|
set PLATFORM=x64
|
|
|
|
REM Build directories
|
|
set VAVCORE_DIR=%~dp0vavcore
|
|
set GODOT_DIR=%~dp0godot-plugin
|
|
set APP_DIR=%~dp0applications\vav2player
|
|
set TEST_DIR=%~dp0tests
|
|
|
|
echo.
|
|
echo ============================================================
|
|
echo BUILDING VAVCORE LIBRARY
|
|
echo ============================================================
|
|
cd /d "%VAVCORE_DIR%"
|
|
echo [BUILD] Building VavCore library...
|
|
"C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" VavCore.vcxproj /p:Configuration=%BUILD_CONFIG% /p:Platform=%PLATFORM% /v:minimal
|
|
if errorlevel 1 (
|
|
echo [ERROR] VavCore build failed!
|
|
exit /b 1
|
|
)
|
|
echo [SUCCESS] VavCore library built successfully
|
|
|
|
echo.
|
|
echo ============================================================
|
|
echo BUILDING GODOT EXTENSION
|
|
echo ============================================================
|
|
cd /d "%GODOT_DIR%"
|
|
echo [BUILD] Building Godot extension...
|
|
dotnet build src\VavCore.Wrapper\VavCore.Wrapper.csproj -c %BUILD_CONFIG%
|
|
if errorlevel 1 (
|
|
echo [ERROR] VavCore.Wrapper build failed!
|
|
exit /b 1
|
|
)
|
|
|
|
dotnet build src\VavCore.Godot\VavCore.Godot.csproj -c %BUILD_CONFIG%
|
|
if errorlevel 1 (
|
|
echo [ERROR] VavCore.Godot build failed!
|
|
exit /b 1
|
|
)
|
|
echo [SUCCESS] Godot extension built successfully
|
|
|
|
echo.
|
|
echo ============================================================
|
|
echo BUILDING APPLICATIONS
|
|
echo ============================================================
|
|
cd /d "%APP_DIR%"
|
|
echo [BUILD] Building Vav2Player application...
|
|
"C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" Vav2Player.sln /p:Configuration=%BUILD_CONFIG% /p:Platform=%PLATFORM% /v:minimal
|
|
if errorlevel 1 (
|
|
echo [ERROR] Vav2Player build failed!
|
|
exit /b 1
|
|
)
|
|
echo [SUCCESS] Vav2Player application built successfully
|
|
|
|
echo.
|
|
echo ============================================================
|
|
echo BUILDING TESTS
|
|
echo ============================================================
|
|
cd /d "%TEST_DIR%"
|
|
|
|
REM Build VavCore DLL Test
|
|
echo [BUILD] Building VavCore DLL test...
|
|
cd vavcore-dll
|
|
dotnet build TestVavCoreDLL.csproj -c %BUILD_CONFIG%
|
|
if errorlevel 1 (
|
|
echo [ERROR] VavCore DLL test build failed!
|
|
exit /b 1
|
|
)
|
|
|
|
REM Build Integration Test
|
|
echo [BUILD] Building integration test...
|
|
cd ..\integration
|
|
dotnet build VavCoreTest.csproj -c %BUILD_CONFIG%
|
|
if errorlevel 1 (
|
|
echo [ERROR] Integration test build failed!
|
|
exit /b 1
|
|
)
|
|
|
|
REM Build Unit Tests
|
|
echo [BUILD] Building unit tests...
|
|
cd ..\unit-tests\Vav2UnitTest
|
|
"C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" Vav2UnitTest.vcxproj /p:Configuration=%BUILD_CONFIG% /p:Platform=%PLATFORM% /v:minimal
|
|
if errorlevel 1 (
|
|
echo [ERROR] Unit tests build failed!
|
|
exit /b 1
|
|
)
|
|
|
|
REM Build Headless Test
|
|
echo [BUILD] Building headless test...
|
|
cd ..\..\headless
|
|
"C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" Vav2PlayerHeadless.vcxproj /p:Configuration=%BUILD_CONFIG% /p:Platform=%PLATFORM% /v:minimal
|
|
if errorlevel 1 (
|
|
echo [ERROR] Headless test build failed!
|
|
exit /b 1
|
|
)
|
|
|
|
echo [SUCCESS] All tests built successfully
|
|
|
|
echo.
|
|
echo ============================================================
|
|
echo BUILD COMPLETE
|
|
echo ============================================================
|
|
echo [SUCCESS] All Windows platform components built successfully!
|
|
echo.
|
|
echo Built components:
|
|
echo - VavCore Library (C/C++)
|
|
echo - Godot Extension (C# Wrapper + Godot Plugin)
|
|
echo - Vav2Player Application (WinUI3)
|
|
echo - All Test Projects
|
|
echo.
|
|
echo Build artifacts are located in respective output directories. |