|
#############################################################
# Makefile for Visual C++ 6.0 #
# #
# To compile "http.exe", use the following command line: #
# #
# nmake /f makefile_win all #
#############################################################
TARGET = NT
EXTRA_DEFINES = /UDEBUG
LOCAL_INCLUDES = .\includes
LOCAL_SRC = .\src
LOCAL_OBJS = .\objs
WINSOCK_LIB = Ws2_32.lib
CC = cl.exe
LINKER = link.exe
CFLAGS = /DNT /GX /I$(LOCAL_INCLUDES) /D$(TARGET) $(EXTRA_DEFINES)
#############################################################
# Single thread #
#############################################################
MULTI_THREAD_FLAG = /MT
$(LOCAL_OBJS)\m_sockets.obj: $(LOCAL_SRC)\sockets.cpp $(LOCAL_INCLUDES)\sockets.h Makefile_win
$(CC) $(CFLAGS) $(MULTI_THREAD_FLAG) /c $(LOCAL_SRC)\sockets.cpp /Fo$(LOCAL_OBJS)\m_sockets.obj
$(LOCAL_OBJS)\m_http.obj: $(LOCAL_SRC)\http.cpp $(LOCAL_INCLUDES)\http.hpp Makefile_win
$(CC) $(CFLAGS) $(MULTI_THREAD_FLAG) /c $(LOCAL_SRC)\http.cpp /Fo$(LOCAL_OBJS)\m_http.obj
http_multi.exe: multi_thread_win.cpp $(LOCAL_OBJS)\m_sockets.obj $(LOCAL_OBJS)\m_http.obj
$(CC) $(CFLAGS) $(MULTI_THREAD_FLAG) multi_thread_win.cpp /Fehttp_multi.exe /link $(WINSOCK_LIB) $(LOCAL_OBJS)\m_sockets.obj $(LOCAL_OBJS)\m_http.obj
#############################################################
# Multi thread #
#############################################################
$(LOCAL_OBJS)\s_sockets.obj: $(LOCAL_SRC)\sockets.cpp $(LOCAL_INCLUDES)\sockets.h Makefile_win
$(CC) $(CFLAGS) /c $(LOCAL_SRC)\sockets.cpp /Fo$(LOCAL_OBJS)\s_sockets.obj
$(LOCAL_OBJS)\s_http.obj: $(LOCAL_SRC)\http.cpp $(LOCAL_INCLUDES)\http.hpp Makefile_win
$(CC) $(CFLAGS) /c $(LOCAL_SRC)\http.cpp /Fo$(LOCAL_OBJS)\s_http.obj
http_single.exe: single_thread.cpp $(LOCAL_OBJS)\s_sockets.obj $(LOCAL_OBJS)\s_http.obj
$(CC) $(CFLAGS) single_thread.cpp /Fehttp_single.exe /link $(WINSOCK_LIB) $(LOCAL_OBJS)\s_sockets.obj $(LOCAL_OBJS)\s_http.obj
all: http_multi.exe http_single.exe
single_thread: http_single.exe
multi_thread: http_multi.exe
clean:
del "$(LOCAL_OBJS)\*.obj"
del http_single.exe
del http_multi.exe
del *.obj |
|