Files
Juliet/misc/launch.bat
Patedam f95ba51c13 Added a basic MemoryArena.
Added one scratch, one engine and one game arena.
Converted the game alloc to arena + the display stuff.
WIP

Made using Antigravity+gemini
2026-01-17 21:09:23 -05:00

72 lines
1.6 KiB
Batchfile

@echo off
setlocal
:: --- 1. Argument Parsing Logic ---
set "ARG1="
set "ARG2="
set "AUTOCLOSE=0"
for %%x in (%*) do (
if /I "%%~x"=="autoclose" (
set "AUTOCLOSE=1"
) else (
if not defined ARG1 (
set "ARG1=%%~x"
) else if not defined ARG2 (
set "ARG2=%%~x"
)
)
)
:: Set Defaults
set "COMPILER_TYPE=clang"
set "CONFIG=Debug"
:: Check if the first argument is a Configuration instead of a Compiler
if /I "%ARG1%"=="Release" (
set "CONFIG=Release"
) else if /I "%ARG1%"=="Profile" (
set "CONFIG=Profile"
) else if /I "%ARG1%"=="Debug" (
set "CONFIG=Debug"
) else if /I "%ARG1%"=="msvc" (
set "COMPILER_TYPE=msvc"
if not "%ARG2%"=="" set "CONFIG=%ARG2%"
) else if /I "%ARG1%"=="clang" (
set "COMPILER_TYPE=clang"
if not "%ARG2%"=="" set "CONFIG=%ARG2%"
)
:: --- 2. Map Compiler to Platform ---
if /I "%COMPILER_TYPE%"=="clang" (
set "PLATFORM=x64Clang"
) else (
set "PLATFORM=x64"
)
:: --- 3. Construct Paths ---
set "APP_DIR=bin\%PLATFORM%-%CONFIG%"
set "APP_EXE=JulietApp.exe"
echo --- Launching %APP_EXE% ---
echo Platform: %PLATFORM%
echo Config: %CONFIG%
:: --- 4. Execution ---
if exist "%APP_DIR%\%APP_EXE%" (
pushd "%APP_DIR%"
start "" "%APP_EXE%"
popd
if "%AUTOCLOSE%"=="1" (
echo [AUTOCLOSE] Waiting 5 seconds...
timeout /t 5 /nobreak >nul
taskkill /IM "%APP_EXE%" /F >nul 2>&1
)
) else (
echo [ERROR] Executable not found at: %APP_DIR%\%APP_EXE%
echo Please build first: fbuild JulietApp-%PLATFORM%-%CONFIG%
pause
)
endlocal