From 7b6964eb1bcf30a0ae7ed3391adce30565b262b4 Mon Sep 17 00:00:00 2001 From: ladevieq Date: Sun, 12 Jul 2026 00:47:54 +0200 Subject: Load functions by hand --- build.bat | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) (limited to 'build.bat') diff --git a/build.bat b/build.bat index cc27d15..91e961e 100644 --- a/build.bat +++ b/build.bat @@ -26,31 +26,36 @@ if EXIST %VS2022_PRO% ( :compilation REM set C_FLAGS=/DHASHMAP /nologo /W4 /WX /Zi /GS- /GR- /Gs1000000000 /Fo:%BUILD_DIR%\ /Iinclude /Isrc /std:c17 /c /Tc -set C_FLAGS=/nologo /W4 /WX /Zi /GS- /GR- /Gs1000000000 /Fo:%BUILD_DIR%\ /Iinclude /Isrc /std:clatest /c /Tc +REM set C_FLAGS=/nologo /W4 /WX /Zi /GS- /GR- /Gs1000000000 /Fo:%BUILD_DIR%\ /Iinclude /Isrc /std:clatest /c /Tc +set C_FLAGS=-fno-builtin -nostdlib -mno-stack-arg-probe --target=x86_64-pc-windows-msvc -Wall -Werror -pedantic -I include -std=c23 -Wno-msvc-not-found -Wno-microsoft-anon-tag -Wno-gnu-binary-literal -g -O0 -c REM set L_FLAGS=/WX /SUBSYSTEM:CONSOLE /NODEFAULTLIB /stack:0x100000,100000 -set L_FLAGS=/WX /SUBSYSTEM:CONSOLE /NODEFAULTLIB +set L_FLAGS=/WX /SUBSYSTEM:CONSOLE /NODEFAULTLIB /DEBUG -if "%release%"=="0" ( - set C_FLAGS=/Od %C_FLAGS% - set L_FLAGS=/DEBUG %L_FLAGS% -) +REM if "%release%"=="0" ( +REM set C_FLAGS=/Od %C_FLAGS% +REM set L_FLAGS=/DEBUG %L_FLAGS% +REM ) -set src=main utils events module parser pdb hashmap stack_walk disasm +set src=main utils events module parser pdb hashmap stack_walk disasm loader :: DBG :: Compile (for %%s in (%src%) do ( call set OBJS=%%OBJS%% %BUILD_DIR%\%%s.obj - cl /Fd:%BUILD_DIR%\%%s.pdb %C_FLAGS% src\%%s.c + clang -o %BUILD_DIR%\%%s.obj %C_FLAGS% src\%%s.c )) +:: cl /Fd:%BUILD_DIR%\%%s.pdb %C_FLAGS% src\%%s.c :: Link -link %L_FLAGS% /OUT:%BUILD_DIR%\main.exe %OBJS% kernel32.lib +REM link %L_FLAGS% /OUT:%BUILD_DIR%\main.exe %OBJS% kernel32.lib +lld-link %L_FLAGS% /OUT:%BUILD_DIR%\main.exe %OBJS% :: Test program set SRC_FILE=test :: Compile -cl /Fd:%BUILD_DIR%\%SRC_FILE%.pdb %C_FLAGS% src/%SRC_FILE%.c +REM cl /Fd:%BUILD_DIR%\%SRC_FILE%.pdb %C_FLAGS% src/%SRC_FILE%.c +:: clang -o %BUILD_DIR%\%SRC_FILE%.obj %C_FLAGS% src/%SRC_FILE%.c :: Link -link %L_FLAGS% %BUILD_DIR%\%SRC_FILE%.obj /OUT:%BUILD_DIR%\%SRC_FILE%.exe kernel32.lib +REM link %L_FLAGS% %BUILD_DIR%\%SRC_FILE%.obj /OUT:%BUILD_DIR%\%SRC_FILE%.exe kernel32.lib +:: lld-link %L_FLAGS% %BUILD_DIR%\%SRC_FILE%.obj %BUILD_DIR%\loader.obj /OUT:%BUILD_DIR%\%SRC_FILE%.exe -- cgit v1.3