mirror of
https://github.com/Ed94/Odin.git
synced 2026-06-14 09:52:23 -07:00
71 lines
1.6 KiB
Batchfile
71 lines
1.6 KiB
Batchfile
@echo off
|
|
if "%VSCMD_ARG_TGT_ARCH%"=="" call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x64
|
|
set genconfig=Release
|
|
pushd %~dp0
|
|
|
|
set genname=win32gen
|
|
set cl_output_path=%genname%\x64\%genconfig%
|
|
set gen_output_path=x64\%genconfig%
|
|
set genexe=%gen_output_path%\%genname%.exe
|
|
|
|
if exist "%genexe%" (del /f "%genexe%" > NUL 2> NUL)
|
|
|
|
:compiling
|
|
echo Compiling...
|
|
mkdir %cl_output_path% > NUL 2> NUL
|
|
set compiler_flags=^
|
|
/c /Zi /nologo /W3 /WX- ^
|
|
/diagnostics:column /sdl /O2 /Oi /GL ^
|
|
/D NDEBUG /D _CONSOLE /D _UNICODE /D UNICODE ^
|
|
/Gm- /EHsc /MD /GS /Gy /fp:precise ^
|
|
/Zc:wchar_t /Zc:forScope /Zc:inline ^
|
|
/std:c++20 /permissive- /Fo"%cl_output_path%\\" ^
|
|
/external:W3 /Gd /TP /FC /errorReport:queue
|
|
|
|
@echo on
|
|
cl %compiler_flags% win32gen.cpp
|
|
@echo off
|
|
if %ERRORLEVEL% NEQ 0 (goto error)
|
|
|
|
:linking
|
|
echo Linking...
|
|
mkdir "%gen_output_path%" > NUL 2> NUL
|
|
set libs=^
|
|
kernel32.lib ^
|
|
user32.lib ^
|
|
gdi32.lib ^
|
|
comdlg32.lib ^
|
|
advapi32.lib ^
|
|
shell32.lib ^
|
|
ole32.lib ^
|
|
uuid.lib
|
|
set linker_flags=^
|
|
/ERRORREPORT:QUEUE ^
|
|
/OUT:%genexe% ^
|
|
/NOLOGO ^
|
|
%libs% ^
|
|
/MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed ^
|
|
/SUBSYSTEM:CONSOLE ^
|
|
/OPT:REF /OPT:ICF /LTCG:incremental ^
|
|
/LTCGOUT:"%cl_output_path%\%genname%.iobj" ^
|
|
/TLBID:1 /DYNAMICBASE /NXCOMPAT ^
|
|
/IMPLIB:"%gen_output_path%\%genname%.lib" ^
|
|
/MACHINE:X64
|
|
|
|
@echo on
|
|
link %linker_flags% %cl_output_path%\%genname%.obj
|
|
@echo off
|
|
if %ERRORLEVEL% NEQ 0 (goto error)
|
|
|
|
:generate
|
|
echo Generating...
|
|
%genexe% ..\test_windows_generated.odin
|
|
goto done
|
|
|
|
:error
|
|
echo Last command returned %ERRORLEVEL%
|
|
|
|
:done
|
|
popd
|
|
echo Done.
|