@ECHO OFF SETLOCAL REM DEFAULT MAIN FILE %_DEFAULT%.asm SET _DEFAULT=b288 REM LINKER OPTIONS SET _LIBPATH0=/LIBPATH:".\lib" SET _LIBPATH1=/LIBPATH:"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib" SET _LIBFILES0=kernel32.lib user32.lib gdi32.lib winmm.lib ntdll.lib d3d11.lib d3dcompiler.lib 4klang.obj SET _SUBSYS=/SUBSYSTEM:CONSOLE SET _ENTRY=/ENTRY:start SET _SAFESEH=/SAFESEH:NO REM CRINKLER OPTIONS SET _FAST0=/PRIORITY:NORMAL /COMPMODE:FAST /HASHSIZE:256 /HASHTRIES:10 SET _FAST1=/ORDERTRIES:200 /UNSAFEIMPORT /REPORT:report.html SET _SLOW0=/PRIORITY:NORMAL /COMPMODE:SLOW /HASHSIZE:256 /HASHTRIES:1000 SET _SLOW1=/ORDERTRIES:2000 /UNSAFEIMPORT /REPORT:report.html REM MAYBE ADD /OVERRIDEALIGNMENTS:8 REM CHECK PARAMETERS SET _n_=%_DEFAULT% nasm -w-orphan-labels -o 4klang.obj -f win32 4klang.asm call minify IF "%1"=="ibh" GOTO :IBH IF "%1"=="clean" GOTO :CLEAN IF "%1"=="dbg" GOTO :USEDEFAULT IF "%1"=="" GOTO :USEDEFAULT SET _n_=%1 :USEDEFAULT IF "%1"=="dbg" GOTO :DBG IF "%2"=="" GOTO :4 GOTO :%2 :CLEAN call clean.bat del %_DEFAULT%*.exe GOTO :END :IBH REM BUILD HASHTABLE FOR IBH IMPORTER glfnGenerator.exe ibh.glfn.in inc/ibh.ht.inc GOTO :end :DBG REM DEBUG nasm %_n_%.asm -f win32 -dDEBUG link %_SUBSYS% %_ENTRY% %_SAFESEH% %_LIBPATH0% %_LIBPATH1% %_LIBFILES0% /OUT:%_n_%_debug.exe %_n_%.obj %_n_%_debug.exe GOTO :end :1 REM DEBUG BUILD nasm %_n_%.asm -f win32 -dDEBUG link %_SUBSYS% %_ENTRY% %_SAFESEH% %_LIBPATH0% %_LIBPATH1% %_LIBFILES0% /OUT:%_n_%_debug.exe %_n_%.obj GOTO :end :2 REM UNCOMPRESSED BUILD nasm %_n_%.asm -f win32 link %_SUBSYS% %_ENTRY% %_SAFESEH% %_LIBPATH0% %_LIBPATH1% %_LIBFILES0% /OUT:%_n_%_uncompressed.exe %_n_%.obj GOTO :end :3 REM FAST COMPRESSED BUILD nasm %_n_%.asm -f win32 crinkler /CRINKLER %_SUBSYS% %_ENTRY% %_FAST0% %_FAST1% %_LIBPATH0% %_LIBPATH1% %_LIBFILES0% /OUT:%_n_%_fast.exe %_n_%.obj GOTO :end :4 REM SLOW COMPRESSED BUILD nasm %_n_%.asm -f win32 crinkler /CRINKLER %_SUBSYS% %_ENTRY% %_SLOW0% %_SLOW1% %_LIBPATH0% %_LIBPATH1% %_LIBFILES0% /OUT:%_n_%_slow.exe %_n_%.obj GOTO :end :5 REM SLOW COMPRESSED BUILD nasm %_n_%.asm -f win32 crinkler /CRINKLER %_SUBSYS% %_ENTRY% %_SLOW0% %_SLOW1% %_LIBPATH0% %_LIBPATH1% %_LIBFILES0% /OUT:%_n_%.exe %_n_%.obj GOTO :end :6 REM FAST COMPRESSED DEBUG BUILD nasm %_n_%.asm -f win32 -dDEBUG crinkler /CRINKLER %_SUBSYS% %_ENTRY% %_FAST0% %_FAST1% %_LIBPATH0% %_LIBPATH1% %_LIBFILES0% /OUT:%_n_%_debug_fast.exe %_n_%.obj %_n_%_debug_fast.exe GOTO :end :end REM DISPLAY SOME SIZE INFORMATION dir /OS /AA %_n_%*