From 9bb3957d5fd3f176e8bd888c53a65c54f62cfab6 Mon Sep 17 00:00:00 2001 From: Indrajith K L Date: Mon, 3 Nov 2025 19:43:05 +0530 Subject: cleaned up root folder, organized files into docs/scripts/tools dirs --- scripts/build_dev.sh | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 scripts/build_dev.sh (limited to 'scripts/build_dev.sh') diff --git a/scripts/build_dev.sh b/scripts/build_dev.sh new file mode 100644 index 0000000..4383d36 --- /dev/null +++ b/scripts/build_dev.sh @@ -0,0 +1,96 @@ +#!/bin/bash +# ReiLua Development Build Script +# Run this from w64devkit shell + +echo "================================" +echo "ReiLua - Development Build" +echo "================================" +echo "" + +# Navigate to build directory +cd build || exit 1 + +# Clean old embedded files (important for dev builds!) +echo "Cleaning old embedded files..." +rm -f embedded_main.h embedded_assets.h + +# Warn about Lua files in build directory +LUA_COUNT=$(ls *.lua 2>/dev/null | wc -l) +if [ "$LUA_COUNT" -gt 0 ]; then + echo "" + echo "WARNING: Found Lua files in build directory!" + echo "Development builds should load from file system, not embed." + echo "" + ls -1 *.lua + echo "" + read -p "Remove these files from build directory? (Y/n): " -n 1 -r + echo "" + if [[ ! $REPLY =~ ^[Nn]$ ]]; then + rm -f *.lua + echo "Lua files removed." + fi + echo "" +fi + +# Warn about assets folder in build directory +if [ -d "assets" ]; then + echo "" + echo "WARNING: Found assets folder in build directory!" + echo "Development builds should load from file system, not embed." + echo "" + read -p "Remove assets folder from build directory? (Y/n): " -n 1 -r + echo "" + if [[ ! $REPLY =~ ^[Nn]$ ]]; then + rm -rf assets + echo "Assets folder removed." + fi + echo "" +fi + +# Clean old configuration if requested +if [ "$1" == "clean" ]; then + echo "Cleaning build directory..." + rm -rf CMakeCache.txt CMakeFiles/ *.o *.a + echo "Clean complete!" + echo "" +fi + +# Configure with MinGW +echo "Configuring CMake for development..." +cmake -G "MinGW Makefiles" .. + +if [ $? -ne 0 ]; then + echo "" + echo "ERROR: CMake configuration failed!" + exit 1 +fi + +echo "" +echo "Building ReiLua..." +make + +if [ $? -ne 0 ]; then + echo "" + echo "ERROR: Build failed!" + exit 1 +fi + +echo "" +echo "================================" +echo "Build Complete!" +echo "================================" +echo "" +echo "Development build created successfully!" +echo "" +echo "To run your game:" +echo " cd /path/to/your/game" +echo " /path/to/ReiLua/build/ReiLua.exe" +echo "" +echo "To run with console logging:" +echo " /path/to/ReiLua/build/ReiLua.exe --log" +echo "" +echo "Features:" +echo " - Lua files load from file system" +echo " - Assets load from file system" +echo " - Fast iteration - edit and reload" +echo "" -- cgit v1.2.3 From e19bddd8d7b77e6aa173b8138b31679415afb3fa Mon Sep 17 00:00:00 2001 From: Indrajith K L Date: Mon, 3 Nov 2025 19:50:20 +0530 Subject: chore: fix build scripts to create build directory and update gitignore - Update all build scripts (.sh and .bat) to automatically create build directory if it doesn't exist - Fix 'can't cd to build' error that occurred when build directory was missing - Update .gitignore to exclude build artifacts and IDE files - Add proper navigation to project root in build_dev.bat for consistency --- scripts/build_dev.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'scripts/build_dev.sh') diff --git a/scripts/build_dev.sh b/scripts/build_dev.sh index 4383d36..ed5079d 100644 --- a/scripts/build_dev.sh +++ b/scripts/build_dev.sh @@ -7,7 +7,12 @@ echo "ReiLua - Development Build" echo "================================" echo "" -# Navigate to build directory +# Get the script directory and navigate to project root +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +cd "$SCRIPT_DIR/.." || exit 1 + +# Create and navigate to build directory +mkdir -p build cd build || exit 1 # Clean old embedded files (important for dev builds!) -- cgit v1.2.3