make debug build work, remove /NODEFAULTLIB for now

This commit is contained in:
u130b8
2023-09-06 15:05:22 +03:00
parent 0d0e37b561
commit 5d0a3f1ccf
2 changed files with 9 additions and 6 deletions

View File

@@ -9,12 +9,11 @@ rmdir /S /Q "%DIR_RELEASE%" > nul 2>&1
if not exist "%DIR_RELEASE%" mkdir "%DIR_RELEASE%"
if "%1" == "debug" (
rem NOTE: This currently doesn't link properly
set CL=/MT /Od /Zi /RTC1 /Fdprogmgr.pdb /fsanitize=address %DEFS%
set LINK=/DEBUG msvcrt.lib vcruntime.lib ucrtd.lib
set LINK=/DEBUG
) else (
set CL=/O1 /DNDEBUG /GS- %DEFS%
set LINK=/OPT:REF /OPT:ICF
set CL=/GL /O1 /DNDEBUG /GS- %DEFS%
set LINK=/LTCG /OPT:REF /OPT:ICF
)
pushd "%DIR_RELEASE%"
@@ -26,7 +25,7 @@ cl /nologo /W3 /WX /MP /Feprogmgr.exe ^
"%DIR_PROGMGR%\resource.res" ^
"%DIR_PROGMGR%\lang\dlg_en-US.res" ^
"%DIR_PROGMGR%\lang\res_en-US.res" ^
/link /NODEFAULTLIB /INCREMENTAL:NO /SUBSYSTEM:WINDOWS /FIXED /merge:_RDATA=.rdata ^
/link /INCREMENTAL:NO /SUBSYSTEM:WINDOWS /FIXED /merge:_RDATA=.rdata ^
/MANIFEST:EMBED /MANIFESTINPUT:%DIR_PROGMGR%\progmgr.exe.manifest ^
kernel32.lib user32.lib gdi32.lib advapi32.lib shell32.lib ^
secur32.lib comdlg32.lib pathcch.lib shlwapi.lib

View File

@@ -166,6 +166,8 @@ int WINAPI wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance,
return 0;
}
#ifdef PROGMGR_NO_CRT
#pragma function(memset)
void *memset(char* dst, int value, size_t count) {
while (count--) { *dst++ = value; }
@@ -181,4 +183,6 @@ void *memcpy(char *dst, const char *src, size_t count) {
void __stdcall wWinMainCRTStartup() {
int code = wWinMain(GetModuleHandle(0), 0, 0, 0);
ExitProcess(code);
}
}
#endif