# Res_center - Pro/TOOLKIT DLL Makefile (short paths)
MAKEFILENAME = makefile_short

PRO_MACHINE_TYPE = x86e_win64

!ifndef PROTOOL_SRC
PROTOOL_SRC = D:\A开发型项目\AI_Agent相关开发\Res_center\sdk7\protoolkit
!endif
!ifndef PROTOOL_SYS
PROTOOL_SYS = $(PROTOOL_SRC)\$(PRO_MACHINE_TYPE)
!endif

EXE_DLL = Res_center.dll

INCS = -I.\include -I$(PROTOOL_SRC)\includes -I$(PROTOOL_SRC)\protk_appls\includes

CC = cl
MACH = -DPRO_MACHINE=36 -DPRO_OS=4
CCFLAGS = -c -GS -fp:precise -D_WSTDIO_DEFINED /utf-8 /wd4828
CFLAGS = $(CCFLAGS) $(INCS) $(MACH)

PTCLIBS_DLL = $(PROTOOL_SYS)\obj\protk_dll_NU.lib \
              $(PROTOOL_SYS)\obj\ucore.lib        \
              $(PROTOOL_SYS)\obj\udata.lib

LIBS = libcmt.lib kernel32.lib user32.lib gdi32.lib shell32.lib comdlg32.lib ole32.lib \
       comctl32.lib advapi32.lib ws2_32.lib mpr.lib winspool.lib netapi32.lib psapi.lib wsock32.lib \
       opengl32.lib glu32.lib iphlpapi.lib

SRCDIR = src
OBJS = main.obj dialog.obj menu.obj assembly.obj preview.obj

LINK = link

$(EXE_DLL): $(OBJS)
	$(LINK) /dll /out:$(EXE_DLL) /machine:amd64 /debug:none /subsystem:windows $(OBJS) $(PTCLIBS_DLL) $(LIBS)
	del $(OBJS)

main.obj: $(SRCDIR)\main.c
	$(CC) $(CFLAGS) $(SRCDIR)\main.c /Fo:$@

dialog.obj: $(SRCDIR)\dialog.c
	$(CC) $(CFLAGS) $(SRCDIR)\dialog.c /Fo:$@

menu.obj: $(SRCDIR)\menu.c
	$(CC) $(CFLAGS) $(SRCDIR)\menu.c /Fo:$@

assembly.obj: $(SRCDIR)\assembly.c
	$(CC) $(CFLAGS) $(SRCDIR)\assembly.c /Fo:$@

preview.obj: $(SRCDIR)\preview.cpp
	$(CC) $(CFLAGS) /I$(SRCDIR) $(SRCDIR)\preview.cpp /Fo:$@

clean:
	del $(OBJS) 2>nul
	del $(EXE_DLL) 2>nul
	del *.exp 2>nul
	del *.lib 2>nul
	del Res_center_70.dll 2>nul
	del Res_center_70.lib 2>nul
	del Res_center_70.exp 2>nul
