- Reorganize project structure: Port/ → DotNet/, VC/, C++/ - Add comprehensive cross-platform build automation - Windows: build_all.bat, build.bat files for all components - Linux/macOS: build_all.sh, build.sh files for all components - Update all build scripts with correct folder paths - Create test automation scripts (test_all.bat/sh) - Update documentation to reflect new structure - Maintain 100% roundtrip accuracy for test5.exi (pure EXI) - Support both Windows MSBuild and Linux GCC compilation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
89 lines
2.3 KiB
Batchfile
89 lines
2.3 KiB
Batchfile
@echo off
|
|
rem =============================================================================
|
|
rem V2G EXI Decoder - 전체 플랫폼 빌드 스크립트
|
|
rem 설명: C, VC2022, .NET Core 모든 버전을 한 번에 빌드
|
|
rem =============================================================================
|
|
|
|
echo.
|
|
echo ==========================================
|
|
echo V2G EXI Decoder 전체 빌드 시작
|
|
echo ==========================================
|
|
echo.
|
|
|
|
set BUILD_ERROR=0
|
|
|
|
rem .NET Core 빌드
|
|
echo [1/3] .NET Core 빌드 중...
|
|
cd /d "%~dp0"
|
|
dotnet build DotNet/V2GDecoderNet.csproj -c Release
|
|
if %ERRORLEVEL% neq 0 (
|
|
echo ERROR: .NET Core 빌드 실패
|
|
set BUILD_ERROR=1
|
|
) else (
|
|
echo SUCCESS: .NET Core 빌드 완료
|
|
)
|
|
echo.
|
|
|
|
rem VC2022 MSBuild 빌드
|
|
echo [2/3] VC2022 MSBuild 빌드 중...
|
|
if exist "VC\build.bat" (
|
|
cd VC
|
|
call build.bat
|
|
if %ERRORLEVEL% neq 0 (
|
|
echo ERROR: VC2022 빌드 실패
|
|
set BUILD_ERROR=1
|
|
) else (
|
|
echo SUCCESS: VC2022 빌드 완료
|
|
)
|
|
cd /d "%~dp0"
|
|
) else (
|
|
echo WARNING: VC2022 빌드 스크립트를 찾을 수 없습니다
|
|
)
|
|
echo.
|
|
|
|
rem C++ 빌드 확인
|
|
echo [3/3] C++ 빌드 확인 중...
|
|
if exist "C++\build.bat" (
|
|
cd C++
|
|
call build.bat
|
|
if %ERRORLEVEL% neq 0 (
|
|
echo ERROR: C++ 빌드 실패
|
|
set BUILD_ERROR=1
|
|
) else (
|
|
echo SUCCESS: C++ 빌드 완료
|
|
)
|
|
cd /d "%~dp0"
|
|
) else (
|
|
echo INFO: C++ 빌드 스크립트가 없어 C++ 빌드를 건너뜁니다
|
|
)
|
|
echo.
|
|
|
|
rem 결과 요약
|
|
echo ==========================================
|
|
echo 빌드 결과 요약
|
|
echo ==========================================
|
|
if %BUILD_ERROR% equ 0 (
|
|
echo ✅ 모든 빌드가 성공적으로 완료되었습니다
|
|
|
|
echo.
|
|
echo 생성된 실행 파일들:
|
|
if exist "DotNet\bin\Release\net8.0\V2GDecoderNet.exe" (
|
|
echo 📦 .NET: DotNet\bin\Release\net8.0\V2GDecoderNet.exe
|
|
)
|
|
if exist "VC\x64\Debug\V2GDecoder.exe" (
|
|
echo 📦 VC2022: VC\x64\Debug\V2GDecoder.exe
|
|
)
|
|
if exist "C++\V2GDecoder.exe" (
|
|
echo 📦 C++: C++\V2GDecoder.exe
|
|
)
|
|
|
|
echo.
|
|
echo 사용법:
|
|
echo dotnet run --project DotNet/V2GDecoderNet.csproj Sample/test5.exi
|
|
echo DotNet\bin\Release\net8.0\V2GDecoderNet.exe Sample/test5.exi
|
|
|
|
exit /b 0
|
|
) else (
|
|
echo ❌ 일부 빌드가 실패했습니다
|
|
exit /b 1
|
|
) |