@echo off setlocal enabledelayedexpansion cd /D "%~dp0" if not exist build mkdir build pushd build for %%a in (%*) do set "%%a=1" set program_build_cmd=meta.exe %* set meta_build_cmd=cl.exe ../src/meta/meta.c -Od -Z7 -nologo -diagnostics:column -WX -link -DEBUG:FULL -INCREMENTAL:NO set meta_rebuild_code=1317212284 if "%--force_meta_build%"=="1" ( if exist meta.exe del meta.exe ) echo build_cmd: %program_build_cmd% ::- Meta build :meta_build if not exist meta.exe ( echo ====== Meta build ===== %meta_build_cmd% set "rc=!errorlevel!" if !rc! NEQ 0 ( if exist meta.exe del meta.exe exit /b !rc! ) ) ::- Program build if not "%--no_program_build%"=="1" ( echo ======== Build ======== %program_build_cmd% set "rc=!errorlevel!" if !rc! NEQ 0 ( if !rc! EQU %meta_rebuild_code% ( del meta.exe goto meta_build ) exit /b !rc! ) )