Files
ToolBox/2022Build.bat
2026-03-30 16:39:34 +08:00

83 lines
1.9 KiB
Batchfile

@echo off
setlocal
:: Configuration
set "CMAKE_ARGS=-DCMAKE_PREFIX_PATH=C:/local -G Ninja -DCMAKE_BUILD_TYPE=Release"
set "BUILD_DIR=build-release"
set "BUILD_CONFIG=Release"
set "ERROR_CODE=0"
:: Clean up any existing build directory
if exist "%BUILD_DIR%" (
echo Removing existing build directory: %BUILD_DIR%
rmdir /s /q "%BUILD_DIR%"
if errorlevel 1 (
echo ERROR: Failed to remove build directory: %BUILD_DIR%
exit /b 1
)
)
:: Create build directory
if not exist "%BUILD_DIR%" (
echo Creating build directory: %BUILD_DIR%
mkdir "%BUILD_DIR%"
if errorlevel 1 (
echo ERROR: Failed to create build directory: %BUILD_DIR%
exit /b 1
)
)
call "C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvars64.bat"
:: Run CMake configuration
echo Running CMake configuration...
cmake -B"%BUILD_DIR%" %CMAKE_ARGS%
if errorlevel 1 (
echo ERROR: CMake configuration failed
set "ERROR_CODE=1"
goto cleanup
)
:: Build the project
echo Building project with configuration: %BUILD_CONFIG%
cmake --build "%BUILD_DIR%" --config %BUILD_CONFIG%
if errorlevel 1 (
echo ERROR: Build failed
set "ERROR_CODE=1"
goto cleanup
)
:: Change to build directory
echo Changing to build directory: %BUILD_DIR%
cd "%BUILD_DIR%"
if errorlevel 1 (
echo ERROR: Failed to change to build directory: %BUILD_DIR%
set "ERROR_CODE=1"
goto cleanup
)
:: Run CPack
echo Running CPack...
cpack
if errorlevel 1 (
echo ERROR: CPack failed
set "ERROR_CODE=1"
goto cleanup
)
echo.
echo ========================================
echo Build and packaging completed successfully!
echo ========================================
goto end
:cleanup
if "%ERROR_CODE%"=="1" (
echo.
echo ========================================
echo Build process failed!
echo ========================================
)
:end
pause