diff options
| author | Indrajith K L | 2025-11-07 04:55:35 +0530 |
|---|---|---|
| committer | Indrajith K L | 2025-11-07 04:55:35 +0530 |
| commit | 3090134068e99e73ca57e8c0b62534c9bc99e93b (patch) | |
| tree | b52d4c0531ea9dd003a939b0cfe384b09dc5dbbf /docs/BUILD_SCRIPTS.md | |
| parent | 839b3793a5ec4af58d4dabae85e8f8a211ace258 (diff) | |
| download | reilua-enhanced-3090134068e99e73ca57e8c0b62534c9bc99e93b.tar.gz reilua-enhanced-3090134068e99e73ca57e8c0b62534c9bc99e93b.tar.bz2 reilua-enhanced-3090134068e99e73ca57e8c0b62534c9bc99e93b.zip | |
Changes Docs Folders
Diffstat (limited to 'docs/BUILD_SCRIPTS.md')
| -rw-r--r-- | docs/BUILD_SCRIPTS.md | 213 |
1 files changed, 0 insertions, 213 deletions
diff --git a/docs/BUILD_SCRIPTS.md b/docs/BUILD_SCRIPTS.md deleted file mode 100644 index 191bd37..0000000 --- a/docs/BUILD_SCRIPTS.md +++ /dev/null @@ -1,213 +0,0 @@ -# Build Scripts Documentation - -ReiLua includes automated build scripts for easy development and release builds. - -## Available Scripts - -### Development Build Scripts -- **Windows**: `scripts\build_dev.bat` -- **Linux/Unix**: `scripts/build_dev.sh` - -### Release Build Scripts -- **Windows**: `scripts\build_release.bat` -- **Linux/Unix**: `scripts/build_release.sh` - -## Development Build - -### Purpose -Fast iteration during game development with external Lua files and assets. - -### Usage - -Windows: -```cmd -scripts\build_dev.bat -``` - -Linux/Unix: -```bash -chmod +x scripts/build_dev.sh -scripts/build_dev.sh -``` - -### Features -- No embedding - loads Lua and assets from file system -- Fast build times -- Edit code and assets without rebuilding -- Automatic cleanup of embedded files -- Warns if Lua files or assets are in build directory -- Optional clean build: `scripts\build_dev.bat clean` or `scripts/build_dev.sh clean` - -### Output -- Development executable: `build/ReiLua.exe` -- Run your game: `cd your_game && path/to/build/ReiLua.exe` -- Debug mode: `path/to/build/ReiLua.exe --log` - -## Release Build - -### Purpose -Create a single-file executable for distribution with all code and assets embedded. - -### Preparation - -Before running the release build, prepare your files: - -```bash -cd build - -# Copy all Lua files -copy ..\your_game\*.lua . -# Or: cp ../your_game/*.lua . - -# Copy assets -mkdir assets -copy ..\your_game\assets\* assets\ -# Or: cp -r ../your_game/assets/* assets/ -``` - -### Usage - -Windows: -```cmd -scripts\build_release.bat -``` - -Linux/Unix: -```bash -chmod +x scripts/build_release.sh -scripts/build_release.sh -``` - -### Features -- Embeds all Lua files from `build/` directory -- Embeds all assets from `build/assets/` folder -- Creates single-file executable -- Release optimization enabled -- Verifies Lua files and assets before building -- Shows summary of embedded files after build -- Interactive confirmation before building - -### Output -- Release executable: `build/ReiLua.exe` -- Ready for distribution - no external dependencies -- Can be renamed to your game name - -### Build Configuration - -The release build automatically configures: -- `EMBED_MAIN=ON` - Embeds all Lua files -- `EMBED_ASSETS=ON` - Embeds all assets (if assets folder exists) -- `CMAKE_BUILD_TYPE=Release` - Optimized build - -## Customizing Your Executable - -### Adding Custom Icon - -1. Replace `icon.ico` with your own icon file -2. Keep the same filename or update `resources.rc` -3. Rebuild - -### Changing Executable Properties - -Edit `resources.rc` to customize: - -```rc -VALUE "CompanyName", "Your Studio Name" -VALUE "FileDescription", "Your Game Description" -VALUE "ProductName", "Your Game Name" -VALUE "LegalCopyright", "Copyright (C) Your Name, 2025" -``` - -### Renaming the Executable - -Edit `CMakeLists.txt`: -```cmake -project( YourGameName ) # Line 6 -``` - -After building, the executable will be named `YourGameName.exe`. - -## Workflow Examples - -### Development Workflow - -```bash -# Initial setup -scripts\build_dev.bat - -# Edit your Lua files in your game directory -# ... make changes ... - -# Just run - no rebuild needed! -cd your_game -path\to\build\ReiLua.exe - -# If you modify C code, rebuild -scripts\build_dev.bat -``` - -### Release Workflow - -```bash -# 1. Prepare files -cd build -copy ..\your_game\*.lua . -mkdir assets -copy ..\your_game\assets\* assets\ - -# 2. Build release -cd .. -scripts\build_release.bat - -# 3. Test -cd build -ReiLua.exe --log - -# 4. Distribute -# Copy build\ReiLua.exe to your distribution folder -``` - -## Troubleshooting - -### "CMake configuration failed" -- Ensure CMake is installed and in PATH -- Ensure MinGW is installed and in PATH -- Check `CMakeLists.txt` exists in parent directory - -### "No Lua files found" -- Copy your Lua files to `build/` directory before release build -- Ensure `main.lua` exists (required entry point) - -### "Build failed" -- Check compiler errors in output -- Ensure all dependencies are installed -- Try clean build: `scripts\build_dev.bat clean` - -### Development build embedding warning -- The dev build script warns if it finds Lua files or assets in build/ -- These should be removed for development builds -- The script offers to remove them automatically - -## Script Features - -### Safety Features -- Checks for correct directory before running -- Validates required files exist -- Warns about potential issues -- Interactive confirmations for release builds -- Automatic cleanup of old embedded files - -### User Friendly -- Clear progress messages -- Colored output (where supported) -- Helpful error messages -- Pause at end to review results -- Quick reference commands shown after build - -## Notes - -- Development builds are **much faster** than release builds -- Release builds may take longer due to embedding and optimization -- Always test your release build before distribution -- The scripts work on both Windows (CMD/PowerShell) and Unix shells -- On Unix, make scripts executable: `chmod +x build_*.sh` |
