paulo@0: # $Id: Make.msvc,v 1.11 2006/08/06 17:31:22 mkern Exp $ paulo@0: paulo@0: GT_MAJOR_VERSION = 0 paulo@0: GT_MINOR_VERSION = 0 paulo@0: GT_MICRO_VERSION = 11 paulo@0: GT_EXTRA_VERSION = paulo@0: VERSION = $(GT_MAJOR_VERSION).$(GT_MINOR_VERSION).$(GT_MICRO_VERSION) paulo@0: paulo@0: paulo@0: O = .obj paulo@0: paulo@0: paulo@0: # dynamic by default paulo@0: !if !defined(static) && !defined(STATIC) paulo@0: DYNAMIC=1 paulo@0: !endif paulo@0: paulo@0: paulo@0: ########################## paulo@0: # release / debug paulo@0: ########################## paulo@0: paulo@0: paulo@0: !if defined(release) || defined(RELEASE) paulo@0: paulo@0: paulo@0: D= paulo@0: DEXT= paulo@0: paulo@0: paulo@0: CFLAGS = $(CFLAGS) -Ox -G6 paulo@0: LDFLAGS = $(LDFLAGS) -release -FORCE:UNRESOLVED paulo@0: paulo@0: #DEFS = $(DEFS) -DNDEBUG -UDEBUG -U_DEBUG paulo@0: DEFS = $(DEFS) -D_DEBUG -DDEBUG -UNDEBUG -D_WALL paulo@0: paulo@0: paulo@0: !else # !defined(release) && !defined(RELEASE) paulo@0: paulo@0: paulo@0: D=d paulo@0: DEXT=d paulo@0: paulo@0: paulo@0: CFLAGS = $(CFLAGS) -Od -Gm -GZ -W3 -Zi paulo@0: DEFS = $(DEFS) -D_DEBUG -DDEBUG -UNDEBUG -D_WALL paulo@0: LDFLAGS = $(LDFLAGS) -debug paulo@0: paulo@0: paulo@0: !endif # defined(release) || defined(RELEASE) paulo@0: paulo@0: paulo@0: ########################## paulo@0: # static / dynamic linking paulo@0: ########################## paulo@0: paulo@0: paulo@0: !if defined(dynamic) || defined(DYNAMIC) paulo@0: paulo@0: CFLAGS = $(CFLAGS) -MD$(D) -DUSE_LTDL paulo@0: paulo@0: !else # !(defined(dynamic) || defined(DYNAMIC)) paulo@0: paulo@0: CFLAGS = $(CFLAGS) -MT$(D) -UUSE_LTDL paulo@0: paulo@0: !endif # defined(dynamic) || defined(DYNAMIC) paulo@0: paulo@0: paulo@0: ########################## paulo@0: # libxml2 support paulo@0: ########################## paulo@0: paulo@0: !if defined(libxml2) || defined(LIBXML2) || defined(xml) || defined(XML) paulo@0: paulo@0: paulo@0: !if "$(LIBXML2_ROOT)" == "" paulo@0: paulo@0: LIBXML2_ROOT=$(BUILD_ROOT)\libxml2 paulo@0: paulo@0: !endif # "$(LIBXML2_ROOT)" == "" paulo@0: paulo@0: !if !exists($(LIBXML2_ROOT)) paulo@0: paulo@0: !error Directory $(LIBXML2_ROOT) not found! paulo@0: paulo@0: !endif # !exists($(LIBXML2_ROOT)) paulo@0: paulo@0: paulo@0: INCLUDES = $(INCLUDES) -I$(LIBXML2_ROOT)\include paulo@0: DEFS = $(DEFS) -DUSE_LIBXML2 paulo@0: LDFLAGS = $(LDFLAGS) -libpath:"$(LIBXML2_ROOT)\win32\bin.msvc" paulo@0: LIBS = $(LIBS) libxml2.lib paulo@0: paulo@0: paulo@0: !if defined(dynamic) || defined(DYNAMIC) paulo@0: paulo@0: DIST_DLLS = $(DIST_DLLS) $(LIBXML2_ROOT)\win32\bin.msvc\libxml2.dll paulo@0: paulo@0: !endif # defined(dynamic) || defined(DYNAMIC) paulo@0: paulo@0: paulo@0: !endif # defined(libxml2) || defined(LIBXML2) || defined(xml) || defined(XML) paulo@0: paulo@0: paulo@0: ########################## paulo@0: # zlib support paulo@0: ########################## paulo@0: paulo@0: paulo@0: !if defined(zlib) || defined(ZLIB) paulo@0: paulo@0: paulo@0: !if "$(ZLIB_ROOT)" == "" paulo@0: paulo@0: paulo@0: ZLIB_ROOT=$(BUILD_ROOT)\zlib paulo@0: paulo@0: paulo@0: !endif # "$(ZLIB_ROOT)" == "" paulo@0: paulo@0: paulo@0: !if !exists($(ZLIB_ROOT)) paulo@0: paulo@0: paulo@0: !error Directory $(ZLIB_ROOT) not found! paulo@0: paulo@0: paulo@0: !endif # !exists($(ZLIB_ROOT)) paulo@0: paulo@0: paulo@0: INCLUDES = $(INCLUDES) -I$(ZLIB_ROOT) paulo@0: DEFS = $(DEFS) -DUSE_ZLIB paulo@0: LDFLAGS = $(LDFLAGS) -libpath:"$(ZLIB_ROOT)" paulo@0: LIBS = $(LIBS) zlib.lib paulo@0: paulo@0: paulo@0: !endif # defined(zlib) || defined(ZLIB) paulo@0: paulo@0: paulo@0: ########################## paulo@0: # general paulo@0: ########################## paulo@0: paulo@0: paulo@0: # temporary till Gnutella doesn't require giFT symbols anymore paulo@0: GIFT_LIB = giFT$(DEXT).lib paulo@0: GIFT_DLL = giFT$(DEXT).dll paulo@0: GIFT_EXE = giFT$(DEXT).exe paulo@0: paulo@0: paulo@0: LIBGIFT_LIB = libgiFT$(DEXT).lib paulo@0: LIBGIFT_DLL = libgiFT$(DEXT).dll paulo@0: LIBGIFT_STATIC = libgiFTstatic$(DEXT).lib paulo@0: LIBGIFTPROTO_LIB = libgiFTproto$(DEXT).lib paulo@0: LIBGIFTPROTO_DLL = libgiFTproto$(DEXT).dll paulo@0: LIBGIFTPROTO_STATIC = libgiFTprotostatic$(DEXT).lib paulo@0: GNUTELLA_LIB = Gnutella$(DEXT).lib paulo@0: GNUTELLA_DLL = Gnutella.dll paulo@0: GNUTELLA_STATIC = Gnutellastatic$(DEXT).lib paulo@0: paulo@0: paulo@0: CFLAGS = $(CFLAGS) -nologo paulo@0: DEFS = $(DEFS) -DHAVE_CONFIG_H -DWIN32 -DNO_STRICT paulo@0: DEFS = $(DEFS) -DGT_MAJOR_VERSION=\"$(GT_MAJOR_VERSION)\" \ paulo@0: -DGT_MINOR_VERSION=\"$(GT_MINOR_VERSION)\" \ paulo@0: -DGT_MICRO_VERSION=\"$(GT_MICRO_VERSION)\" \ paulo@0: -DGT_EXTRA_VERSION=\"$(GT_EXTRA_VERSION)\" paulo@0: paulo@0: paulo@0: INCLUDES = -I$(BUILD_ROOT) -I$(BUILD_ROOT)\libgift\win32 $(INCLUDES) paulo@0: paulo@0: paulo@0: LDFLAGS = $(LDFLAGS) -nologo -version:$(VERSION) paulo@0: LDFLAGS = $(LDFLAGS) -libpath:"$(BUILD_ROOT)\libgift" -libpath:"$(BUILD_ROOT)\libgift\proto" paulo@0: paulo@0: paulo@0: LIBS = $(LIBS) wsock32.lib paulo@0: paulo@0: paulo@0: DEFS = $(DEFS) -D_WINDOWS -U_CONSOLE paulo@0: LDFLAGS = $(LDFLAGS) /subsystem:windows paulo@0: paulo@0: paulo@0: ########################## paulo@0: # tools paulo@0: ########################## paulo@0: paulo@0: paulo@0: CC = cl paulo@0: LD = link paulo@0: LT = lib