106 lines
2.8 KiB
Plaintext
106 lines
2.8 KiB
Plaintext
#
|
|
# NMakefile for Windows MSVC
|
|
#
|
|
!IF DEFINED(debug)
|
|
COMP_TYPE = Debug
|
|
!ELSE
|
|
COMP_TYPE = Release
|
|
!ENDIF
|
|
|
|
!IF DEFINED(debug)
|
|
IONU_LIBDIR = /libpath:../libeye/x64/Debug
|
|
OPENSSL_LIBDIR = /libpath:../thirdparty/openssl/lib/$(PLATFORM)/Debug
|
|
!ELSE
|
|
IONU_LIBDIR = /libpath:../libeye/Release
|
|
OPENSSL_LIBDIR = /libpath:../thirdparty/openssl/lib/$(PLATFORM)/Release
|
|
!ENDIF
|
|
|
|
LIBEYE_INCLUDE = -I../libeye
|
|
LIBEYE_LIB = libeye.lib
|
|
|
|
OPENSSL_INCLUDE = -I../thirdparty/openssl/include
|
|
OPENSSL_LIB = libeay32.lib ssleay32.lib
|
|
|
|
PTHREAD_INCLUDE = -I../thirdparty/pthreads-1.11/include
|
|
PTHREAD_LIBDIR = /libpath:../thirdparty/pthreads-1.11/lib/$(PLATFORM)/$(COMP_TYPE)
|
|
PTHREAD_LIB = pthreadVCE1.lib
|
|
|
|
|
|
WIN_LIBS=
|
|
|
|
OPTIM = /arch:SSE2 /GS /GL /analyze- /W3 /Gy /Zc:wchar_t /Zi /Gm- /O2 /fp:precise /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /errorReport:prompt /WX- /Zc:forScope /Gd /Oy- /Oi /MT /EHsc /nologo
|
|
OPTIMD = /arch:SSE2 /GS /analyze- /W3 /Zc:wchar_t /ZI /Gm /Od /fp:precise /D "WIN32" /D "_DEBUG" /D "_LIB" /D "_MBCS" /errorReport:prompt /WX- /Zc:forScope /RTC1 /Gd /Oy- /MTd /EHsc /nologo
|
|
|
|
CCFLAGS_COMMON = /TP /W3 /DWIN32 /D_CRT_SECURE_NO_WARNINGS /nologo /I. $(LIBEYE_INCLUDE) $(PTHREAD_INCLUDE) $(OPENSSL_INCLUDE)
|
|
!IF "$(PLATFORM)" == "win64"
|
|
LFLAGSO = /LTCG /MACHINE:X64 /NOLOGO
|
|
LFLAGSD = /MACHINE:X64 /NOLOGO
|
|
!ELSE
|
|
LFLAGSO = /LTCG /MACHINE:X86 /NOLOGO
|
|
LFLAGSD = /MACHINE:X86 /NOLOGO
|
|
!ENDIF
|
|
|
|
DEBUG_DIR = Debug
|
|
RELEASE_DIR = Release
|
|
|
|
!IF DEFINED(debug)
|
|
CCFLAGS = $(OPTIMD) $(CCFLAGS_COMMON)
|
|
LFLAGS = $(LFLAGSD)
|
|
OUTPUT_DIR = $(DEBUG_DIR)
|
|
!ELSE
|
|
CCFLAGS = $(OPTIM) $(CCFLAGS_COMMON)
|
|
LFLAGS = $(LFLAGSO)
|
|
OUTPUT_DIR = $(RELEASE_DIR)
|
|
!ENDIF
|
|
|
|
OBJDIR = obj/$(PLATFORM)/$(OUTPUT_DIR)
|
|
LIBDIR = lib/$(PLATFORM)/$(OUTPUT_DIR)
|
|
BINDIR = bin/$(PLATFORM)/$(OUTPUT_DIR)
|
|
|
|
LIBS = $(LIBDIR)/k2client.lib
|
|
|
|
LIB_OBJS = \
|
|
$(OBJDIR)/Hash.obj \
|
|
$(OBJDIR)/K2Client.obj \
|
|
$(OBJDIR)/proxy.obj \
|
|
$(OBJDIR)/servers.obj \
|
|
$(OBJDIR)/util.obj \
|
|
$(OBJDIR)/platform_binding.obj
|
|
|
|
all: showconfig $(LIBS)
|
|
|
|
compile: showconfig $(LIBS)
|
|
|
|
showconfig:
|
|
@echo PLATFORM : $(PLATFORM)
|
|
@echo PLATFORMFLAGS : $(PLATFORMFLAGS)
|
|
mkdir -p $(OBJDIR)
|
|
mkdir -p $(LIBDIR)
|
|
mkdir -p $(BINDIR)
|
|
|
|
$(LIBS): $(LIB_OBJS) Hash.h K2Client.h K2IPC.h platform_binding.h proxy.h servers.h util.h constants.h
|
|
lib $(LFLAGS) $(LIB_OBJS) /out:$@
|
|
|
|
{}.cpp{$(OBJDIR)}.obj :
|
|
cl $(CCFLAGS) -c $< /Fo$@
|
|
|
|
clean:
|
|
rm -f $(OBJDIR)/*
|
|
rm -f $(LIBDIR)/*
|
|
rm -f $(BINDIR)/*
|
|
rm -f *.idb
|
|
rm -f *.pdb
|
|
|
|
bin\$(PLATFORM)\$(OUTPUT_DIR)\testapi.exe: main.cpp $(LIBS)
|
|
cl /Fe$(BINDIR)/testapi.exe /Fo$(OBJDIR)/main.obj $(CCFLAGS) main.cpp /link /SUBSYSTEM:CONSOLE $(PTHREAD_LIBDIR) $(IONU_LIBDIR) $(LIBS) $(PTHREAD_LIB) $(WIN_LIBS) $(LIBEYE_LIB)
|
|
|
|
test: showconfig $(LIBS) bin\$(PLATFORM)\$(OUTPUT_DIR)\testapi.exe
|
|
@echo "\n\n*** testapi ***"
|
|
bin\$(PLATFORM)\$(OUTPUT_DIR)\testapi.exe -health-check $(K2DAEMON)
|
|
|
|
release: showconfig $(LIBS)
|
|
|
|
install: showconfig $(LIBS)
|
|
|
|
package:
|