#*************************************************************************** | |
# _ _ ____ _ | |
# Project ___| | | | _ \| | | |
# / __| | | | |_) | | | |
# | (__| |_| | _ <| |___ | |
# \___|\___/|_| \_\_____| | |
# | |
# Copyright (C) 1999 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al. | |
# | |
# This software is licensed as described in the file COPYING, which | |
# you should have received as part of this distribution. The terms | |
# are also available at http://curl.haxx.se/docs/copyright.html. | |
# | |
# You may opt to use, copy, modify, merge, publish, distribute and/or sell | |
# copies of the Software, and permit persons to whom the Software is | |
# furnished to do so, under the terms of the COPYING file. | |
# | |
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | |
# KIND, either express or implied. | |
# | |
#*************************************************************************** | |
# All files in the Makefile.vc* series are generated automatically from the | |
# one made for MSVC version 6. Alas, if you want to do changes to any of the | |
# fiels and send back to the project, edit the version six, make your diff and | |
# mail curl-users. | |
############################################################# | |
# | |
## Makefile for building curl.exe with MSVC6 | |
## Use: nmake -f makefile.vc6 [release | debug] [CFG=release-ssl] | |
## (default is release) | |
## "nmake -f makefile.vc6 CFG=release-ssl" statically links OpenSSL | |
## into curl.exe producing a standalone SSL-enabled executable. | |
## | |
# | |
############################################################# | |
PROGRAM_NAME = curl.exe | |
# ------------------------------------------- | |
# Verify that current subdir is curl's 'src' | |
# ------------------------------------------- | |
!IF ! EXIST(.\main.c) | |
! MESSAGE Can not process this makefile from outside of curl's 'src' subdirectory. | |
! MESSAGE Change to curl's 'src' subdirectory, and try again. | |
! ERROR See previous message. | |
!ENDIF | |
# ------------------------------------------------ | |
# Makefile.msvc.names provides libcurl file names | |
# ------------------------------------------------ | |
!INCLUDE ..\Makefile.msvc.names | |
!IFNDEF OPENSSL_PATH | |
OPENSSL_PATH = ../../openssl-0.9.8r | |
!ENDIF | |
!IFNDEF ZLIB_PATH | |
ZLIB_PATH = ../../zlib-1.2.5 | |
!ENDIF | |
!IFNDEF MACHINE | |
MACHINE = X86 | |
!ENDIF | |
# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication | |
# without an openssl installation and offers the ability to authenticate | |
# using the "current logged in user". Since at least with MSVC6 the sspi.h | |
# header is broken it is either required to install the Windows SDK, | |
# or to fix sspi.h with adding this define at the beginning of sspi.h: | |
# #define FreeCredentialHandle FreeCredentialsHandle | |
# | |
# If, for some reason the Windows SDK is installed but not installed | |
# in the default location, you can specify WINDOWS_SDK_PATH. | |
# It can be downloaded from: | |
# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/ | |
# WINDOWS_SSPI = 1 | |
!IFDEF WINDOWS_SSPI | |
!IFNDEF WINDOWS_SDK_PATH | |
WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK" | |
!ENDIF | |
!ENDIF | |
######################################################## | |
## Nothing more to do below this line! | |
ZLIB_CFLAGS = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)" | |
ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)" | |
ZLIB_LIBS = zlib.lib | |
ZLIB_IMP_LIBS = zdll.lib | |
SSL_CFLAGS = /DUSE_SSLEAY | |
SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32" | |
SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll" | |
SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib advapi32.lib | |
# Runtime library configuration | |
RTLIB = /MD | |
RTLIBD = /MDd | |
!IF "$(RTLIBCFG)" == "static" | |
RTLIB = /MT | |
RTLIBD = /MTd | |
!ENDIF | |
## Release | |
CCR = cl.exe $(RTLIB) /O2 /DNDEBUG | |
LINKR = link.exe /incremental:no /libpath:"../lib" | |
RCR = rc.exe /dDEBUGBUILD=0 | |
## Debug | |
CCD = cl.exe $(RTLIBD) /Gm /ZI /Od /D_DEBUG /GZ | |
LINKD = link.exe /incremental:yes /debug /libpath:"../lib" | |
RCD = rc.exe /dDEBUGBUILD=1 | |
CFLAGS = /I../lib /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /D_BIND_TO_CURRENT_VCLIBS_VERSION=1 | |
LFLAGS = /nologo /out:$(PROGRAM_NAME) /subsystem:console /machine:$(MACHINE) | |
RESFLAGS = /i../include | |
# This manifest thing is for VC8, enabled by the maketgz script that | |
# builds the VC8 version of this makefile. Left commented out in the VC6 | |
# version! | |
#MANIFESTTOOL = mt -manifest $(PROGRAM_NAME).manifest -outputresource:$(PROGRAM_NAME);1 | |
!IFDEF WINDOWS_SSPI | |
CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include | |
!ENDIF | |
RELEASE_OBJS= \ | |
curlutilr.obj \ | |
getpassr.obj \ | |
homedirr.obj \ | |
hugehelpr.obj \ | |
mainr.obj \ | |
nonblockr.obj \ | |
os-specificr.obj \ | |
rawstrr.obj \ | |
strtoofftr.obj \ | |
urlglobr.obj \ | |
writeoutr.obj \ | |
xattrr.obj \ | |
curlr.res | |
DEBUG_OBJS= \ | |
curlutild.obj \ | |
getpassd.obj \ | |
homedird.obj \ | |
hugehelpd.obj \ | |
maind.obj \ | |
nonblockd.obj \ | |
os-specificd.obj \ | |
rawstrd.obj \ | |
strtoofftd.obj \ | |
urlglobd.obj \ | |
writeoutd.obj \ | |
xattrd.obj \ | |
curld.res | |
################################################# | |
# If CFG not specified, use static libs | |
CFLAGS = $(CFLAGS) /DCURL_STATICLIB | |
LINKLIBS = $(LIBCURL_STA_LIB_REL) | |
LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) | |
################################################# | |
# release dynamic library | |
!IF "$(CFG)" == "release-dll" | |
LINKLIBS = $(LIBCURL_IMP_LIB_REL) | |
LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) | |
!ENDIF | |
################################################# | |
# release static library with zlib | |
!IF "$(CFG)" == "release-zlib" | |
CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB | |
LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_LIBS) | |
LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS) | |
!ENDIF | |
################################################# | |
# release static library with ssl | |
!IF "$(CFG)" == "release-ssl" | |
CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB | |
LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) | |
LFLAGS = $(LFLAGS) $(SSL_LFLAGS) | |
!ENDIF | |
################################################# | |
# release dynamic library with dynamic ssl | |
!IF "$(CFG)" == "release-dll-ssl-dll" | |
CFLAGS = $(CFLAGS) $(SSL_CFLAGS) | |
LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS) | |
LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) | |
!ENDIF | |
################################################# | |
# release static library with ssl and zlib | |
!IF "$(CFG)" == "release-ssl-zlib" | |
CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB | |
LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_LIBS) | |
LFLAGS = $(LFLAGS) $(SSL_LFLAGS) $(ZLIB_LFLAGS) | |
!ENDIF | |
################################################# | |
# release static library with dynamic ssl | |
!IF "$(CFG)" == "release-ssl-dll" | |
CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB | |
LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) | |
LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) | |
!ENDIF | |
################################################# | |
# release static library with dynamic zlib | |
!IF "$(CFG)" == "release-zlib-dll" | |
CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB | |
LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_IMP_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_IMP_LIBS) | |
LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS) | |
!ENDIF | |
################################################# | |
# release dynamic library with dynamic zlib | |
!IF "$(CFG)" == "release-dll-zlib-dll" | |
CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) | |
LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(ZLIB_IMP_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(ZLIB_IMP_LIBS) | |
LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS) | |
!ENDIF | |
################################################# | |
# release static library with dynamic ssl and dynamic zlib | |
!IF "$(CFG)" == "release-ssl-dll-zlib-dll" | |
CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB | |
LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS) | |
LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS) | |
!ENDIF | |
################################################# | |
# release dynamic library with dynamic ssl and dynamic zlib | |
!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll" | |
CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) | |
LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS) | |
LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS) | |
LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS) | |
!ENDIF | |
LINKLIBS = $(LINKLIBS) ws2_32.lib wldap32.lib | |
LINKLIBS_DEBUG = $(LINKLIBS_DEBUG) ws2_32.lib wldap32.lib | |
all : release | |
release: $(RELEASE_OBJS) | |
$(LINKR) $(LFLAGS) $(LINKLIBS) $(RELEASE_OBJS) | |
$(MANIFESTTOOL) | |
debug: $(DEBUG_OBJS) | |
$(LINKD) $(LFLAGS) $(LINKLIBS_DEBUG) $(DEBUG_OBJS) | |
$(MANIFESTTOOL) | |
## Release | |
hugehelpr.obj: hugehelp.c | |
$(CCR) $(CFLAGS) /Zm200 /Fo"$@" hugehelp.c | |
writeoutr.obj: writeout.c | |
$(CCR) $(CFLAGS) /Fo"$@" writeout.c | |
urlglobr.obj: urlglob.c | |
$(CCR) $(CFLAGS) /Fo"$@" urlglob.c | |
getpassr.obj: getpass.c | |
$(CCR) $(CFLAGS) /Fo"$@" getpass.c | |
homedirr.obj: homedir.c | |
$(CCR) $(CFLAGS) /Fo"$@" homedir.c | |
curlutilr.obj: curlutil.c | |
$(CCR) $(CFLAGS) /Fo"$@" curlutil.c | |
os-specificr.obj: os-specific.c | |
$(CCR) $(CFLAGS) /Fo"$@" os-specific.c | |
nonblockr.obj: ../lib/nonblock.c | |
$(CCR) $(CFLAGS) /Fo"$@" ../lib/nonblock.c | |
rawstrr.obj: ../lib/rawstr.c | |
$(CCR) $(CFLAGS) /Fo"$@" ../lib/rawstr.c | |
strtoofftr.obj: ../lib/strtoofft.c | |
$(CCR) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c | |
xattrr.obj: xattr.c | |
$(CCR) $(CFLAGS) /Fo"$@" xattr.c | |
mainr.obj: main.c | |
$(CCR) $(CFLAGS) /Fo"$@" main.c | |
curlr.res : curl.rc | |
$(RCR) $(RESFLAGS) /Fo"$@" curl.rc | |
## Debug | |
hugehelpd.obj: hugehelp.c | |
$(CCD) $(CFLAGS) /Zm200 /Fo"$@" hugehelp.c | |
writeoutd.obj: writeout.c | |
$(CCD) $(CFLAGS) /Fo"$@" writeout.c | |
urlglobd.obj: urlglob.c | |
$(CCD) $(CFLAGS) /Fo"$@" urlglob.c | |
getpassd.obj: getpass.c | |
$(CCD) $(CFLAGS) /Fo"$@" getpass.c | |
homedird.obj: homedir.c | |
$(CCD) $(CFLAGS) /Fo"$@" homedir.c | |
curlutild.obj: curlutil.c | |
$(CCD) $(CFLAGS) /Fo"$@" curlutil.c | |
os-specificd.obj: os-specific.c | |
$(CCD) $(CFLAGS) /Fo"$@" os-specific.c | |
nonblockd.obj: ../lib/nonblock.c | |
$(CCD) $(CFLAGS) /Fo"$@" ../lib/nonblock.c | |
rawstrd.obj: ../lib/rawstr.c | |
$(CCD) $(CFLAGS) /Fo"$@" ../lib/rawstr.c | |
strtoofftd.obj: ../lib/strtoofft.c | |
$(CCD) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c | |
xattrd.obj: xattr.c | |
$(CCD) $(CFLAGS) /Fo"$@" xattr.c | |
maind.obj: main.c | |
$(CCD) $(CFLAGS) /Fo"$@" main.c | |
curld.res : curl.rc | |
$(RCD) $(RESFLAGS) /Fo"$@" curl.rc | |
clean: | |
@-erase $(PROGRAM_NAME) 2> NUL | |
@-erase $(RELEASE_OBJS) 2> NUL | |
@-erase $(DEBUG_OBJS) 2> NUL | |
@-erase *.idb 2> NUL | |
@-erase *.pdb 2> NUL | |
@-erase *.pch 2> NUL | |
@-erase *.ilk 2> NUL |