diff options
| author | Indrajith K L | 2025-11-03 18:11:34 +0530 |
|---|---|---|
| committer | Indrajith K L | 2025-11-03 18:11:34 +0530 |
| commit | 4859c415cc7c2274a642b045ff3016b7aae3dbd1 (patch) | |
| tree | 7be4f439426874fc0207de87261c955f209b0498 /build_release.bat | |
| parent | f4d927aac0f5ce13eca3bc57595d71827b40e657 (diff) | |
| download | reilua-enhanced-4859c415cc7c2274a642b045ff3016b7aae3dbd1.tar.gz reilua-enhanced-4859c415cc7c2274a642b045ff3016b7aae3dbd1.tar.bz2 reilua-enhanced-4859c415cc7c2274a642b045ff3016b7aae3dbd1.zip | |
Add build scripts and Windows icon/resources
Added:
- build_dev.bat / build_dev.sh - Development build scripts
- build_release.bat / build_release.sh - Release build scripts with embedding
- icon.ico - Default Windows icon for executable
- resources.rc - Windows resource file for icon and exe metadata
- BUILD_SCRIPTS.md - Complete documentation for build scripts
Features:
- Automated development builds (no embedding, fast iteration)
- Automated release builds (with Lua and asset embedding)
- Interactive verification and cleanup
- Custom icon and version info in Windows executables
- Cross-platform scripts (Windows .bat and Unix .sh)
- Safety checks and helpful messages
The build scripts provide one-command building for both development
and release workflows, with clear instructions and progress feedback.
Diffstat (limited to 'build_release.bat')
| -rw-r--r-- | build_release.bat | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/build_release.bat b/build_release.bat new file mode 100644 index 0000000..17b76c1 --- /dev/null +++ b/build_release.bat @@ -0,0 +1,144 @@ +@echo off +REM ReiLua Release Build Script +REM Run this from w64devkit shell or CMD with MinGW in PATH + +echo ================================ +echo ReiLua - Release Build +echo ================================ +echo. + +REM Check if we're in the right directory +if not exist "CMakeLists.txt" ( + echo ERROR: Please run this script from the ReiLua root directory + exit /b 1 +) + +REM Navigate to build directory +cd build +if errorlevel 1 ( + echo ERROR: Cannot access build directory + exit /b 1 +) + +REM Clean old embedded files +echo Cleaning old embedded files... +del /Q embedded_main.h embedded_assets.h 2>nul + +REM Check for Lua files +echo. +echo Checking for Lua files... +dir /b *.lua >nul 2>&1 +if errorlevel 1 ( + echo. + echo WARNING: No Lua files found in build directory! + echo. + echo Please copy your Lua files: + echo cd build + echo copy ..\your_game\*.lua . + echo. + set /p CONTINUE="Do you want to continue anyway? (y/N): " + if /i not "%CONTINUE%"=="y" exit /b 1 +) else ( + echo Found Lua files: + dir /b *.lua +) + +REM Check for assets folder +echo. +echo Checking for assets... +if not exist "assets" ( + echo. + echo WARNING: No assets folder found! + echo. + echo To embed assets, create the folder and copy files: + echo cd build + echo mkdir assets + echo copy ..\your_game\assets\* assets\ + echo. + set /p CONTINUE="Do you want to continue without assets? (y/N): " + if /i not "%CONTINUE%"=="y" exit /b 1 + set EMBED_ASSETS=OFF +) else ( + echo Found assets folder + set EMBED_ASSETS=ON +) + +echo. +echo ================================ +echo Build Configuration +echo ================================ +echo Lua Embedding: ON +echo Asset Embedding: %EMBED_ASSETS% +echo Build Type: Release +echo ================================ +echo. +pause + +REM Clean CMake cache +echo. +echo Cleaning CMake cache... +del /Q CMakeCache.txt 2>nul +rmdir /S /Q CMakeFiles 2>nul + +REM Configure with embedding enabled +echo. +echo Configuring CMake for release... +cmake -G "MinGW Makefiles" .. -DEMBED_MAIN=ON -DEMBED_ASSETS=%EMBED_ASSETS% -DCMAKE_BUILD_TYPE=Release + +if errorlevel 1 ( + echo. + echo ERROR: CMake configuration failed! + pause + exit /b 1 +) + +REM Build +echo. +echo Building ReiLua Release... +mingw32-make + +if errorlevel 1 ( + echo. + echo ERROR: Build failed! + pause + exit /b 1 +) + +REM Show summary +echo. +echo ================================ +echo Embedded Files Summary +echo ================================ + +if exist "embedded_main.h" ( + echo. + echo Embedded Lua files: + findstr /C:"Embedded file:" embedded_main.h +) + +if exist "embedded_assets.h" ( + echo. + echo Embedded assets: + findstr /C:"Embedded asset:" embedded_assets.h +) + +echo. +echo ================================ +echo Build Complete! +echo ================================ +echo. +echo Executable: ReiLua.exe +echo Location: %CD%\ReiLua.exe +echo. +echo Your game is ready for distribution! +echo. +echo To test the release build: +echo ReiLua.exe --log (with console) +echo ReiLua.exe (production mode) +echo. +echo To distribute: +echo - Copy ReiLua.exe to your distribution folder +echo - Rename it to your game name (optional) +echo - That's it! Single file distribution! +echo. +pause |
