Initial release: SDL Windows Tetris
This commit is contained in:
86
build-production.bat
Normal file
86
build-production.bat
Normal file
@ -0,0 +1,86 @@
|
||||
@echo off
|
||||
REM Simple Production Build Script for Tetris SDL3
|
||||
REM This batch file builds and packages the game for distribution
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
echo ======================================
|
||||
echo Tetris SDL3 Production Builder
|
||||
echo ======================================
|
||||
echo.
|
||||
|
||||
REM Check if we're in the right directory
|
||||
if not exist "CMakeLists.txt" (
|
||||
echo Error: CMakeLists.txt not found. Please run this script from the project root directory.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM Clean previous builds
|
||||
echo Cleaning previous builds...
|
||||
if exist "build-release" rmdir /s /q "build-release"
|
||||
if exist "dist" rmdir /s /q "dist"
|
||||
|
||||
REM Create and configure build directory
|
||||
echo Configuring CMake for Release build...
|
||||
mkdir "build-release"
|
||||
cd "build-release"
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release
|
||||
if !errorlevel! neq 0 (
|
||||
echo CMake configuration failed!
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM Build the project
|
||||
echo Building Release version...
|
||||
cmake --build . --config Release
|
||||
if !errorlevel! neq 0 (
|
||||
echo Build failed!
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
cd ..
|
||||
|
||||
REM Create distribution directory
|
||||
echo Creating distribution package...
|
||||
mkdir "dist\TetrisGame"
|
||||
|
||||
REM Copy executable
|
||||
if exist "build-release\Release\tetris.exe" (
|
||||
copy "build-release\Release\tetris.exe" "dist\TetrisGame\"
|
||||
) else if exist "build-release\tetris.exe" (
|
||||
copy "build-release\tetris.exe" "dist\TetrisGame\"
|
||||
) else (
|
||||
echo Error: Executable not found!
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM Copy assets
|
||||
echo Copying game assets...
|
||||
if exist "assets" xcopy "assets" "dist\TetrisGame\assets\" /E /I /Y
|
||||
if exist "FreeSans.ttf" copy "FreeSans.ttf" "dist\TetrisGame\"
|
||||
|
||||
REM Copy SDL DLLs (if available) - SDL_image no longer needed
|
||||
echo Copying dependencies...
|
||||
if exist "vcpkg_installed\x64-windows\bin\SDL3.dll" copy "vcpkg_installed\x64-windows\bin\SDL3.dll" "dist\TetrisGame\"
|
||||
if exist "vcpkg_installed\x64-windows\bin\SDL3_ttf.dll" copy "vcpkg_installed\x64-windows\bin\SDL3_ttf.dll" "dist\TetrisGame\"
|
||||
|
||||
REM Create launcher batch file
|
||||
echo @echo off > "dist\TetrisGame\Launch-Tetris.bat"
|
||||
echo cd /d "%%~dp0" >> "dist\TetrisGame\Launch-Tetris.bat"
|
||||
echo tetris.exe >> "dist\TetrisGame\Launch-Tetris.bat"
|
||||
echo pause >> "dist\TetrisGame\Launch-Tetris.bat"
|
||||
|
||||
echo.
|
||||
echo ======================================
|
||||
echo Build Completed Successfully!
|
||||
echo ======================================
|
||||
echo Package location: dist\TetrisGame
|
||||
echo.
|
||||
echo The game is ready for distribution!
|
||||
echo Users can run tetris.exe or Launch-Tetris.bat
|
||||
echo.
|
||||
pause
|
||||
Reference in New Issue
Block a user