175335808b
version of libcurl with different Windows versions. Current version of libcurl imports SSPI functions from secur32.dll. However, under Windows NT 4.0 these functions are located in security.dll, under Windows 9x - in secur32.dll and Windows 2000 and XP contains both these DLLs (security.dll just forwards calls to secur32.dll). Dmitry's patch loads proper library dynamically depending on Windows version. Function InitSecurityInterface() is used to obtain pointers to all of SSPI function in one structure. : ----------------------------------------------------------------------
520 lines
16 KiB
Makefile
520 lines
16 KiB
Makefile
#############################################################
|
|
#
|
|
# Makefile for building libcurl with MSVC6
|
|
#
|
|
# Usage: see usage message below
|
|
# Should be invoked from \lib directory
|
|
# Edit the paths and desired library name
|
|
# SSL path is only required if you intend compiling
|
|
# with SSL.
|
|
#
|
|
# This make file leaves the result either a .lib or .dll file
|
|
# in the \lib directory. It should be called from the \lib
|
|
# directory.
|
|
#
|
|
# An option would have been to allow the source directory to
|
|
# be specified, but I saw no requirement.
|
|
#
|
|
# Another option would have been to leave the .lib and .dll
|
|
# files in the "cfg" directory, but then the make file
|
|
# in \src would need to be changed.
|
|
#
|
|
##############################################################
|
|
|
|
#
|
|
# Stem for static libs and DLLs
|
|
#
|
|
LIB_NAME = libcurl
|
|
LIB_NAME_DEBUG = libcurld
|
|
|
|
#
|
|
# Stem for DLL import libs
|
|
#
|
|
IMPLIB_NAME = libcurl_imp
|
|
IMPLIB_NAME_DEBUG = libcurld_imp
|
|
|
|
!IFNDEF OPENSSL_PATH
|
|
OPENSSL_PATH = ../../openssl-0.9.7e
|
|
!ENDIF
|
|
|
|
!IFNDEF ZLIB_PATH
|
|
ZLIB_PATH = ../../zlib-1.2.1
|
|
!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". It does however require that the
|
|
# Windows SDK be installed.
|
|
#
|
|
# 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/
|
|
|
|
# USE_WINDOWS_SSPI = 1
|
|
|
|
!IFDEF WINDOWS_SSPI
|
|
!IFNDEF WINDOWS_SDK_PATH
|
|
WINDOWS_SDK_PATH = "C:\Program Files\Microsoft SDK"
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
# Use the high resolution time by default. Comment this out to use low
|
|
# resolution time and not require winmm.lib
|
|
USEMM_LIBS = YES
|
|
|
|
#############################################################
|
|
## Nothing more to do below this line!
|
|
|
|
CCNODBG = cl.exe /O2 /DNDEBUG
|
|
CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /GZ
|
|
CFLAGSSSL = /DUSE_SSLEAY /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
|
|
CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
|
|
CFLAGS = /I. /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL
|
|
CFLAGSLIB = /DCURL_STATICLIB
|
|
LNKDLL = link.exe /DLL
|
|
LNKLIB = link.exe /lib
|
|
LFLAGS = /nologo
|
|
SSLLIBS = libeay32.lib ssleay32.lib
|
|
ZLIBLIBSDLL= zdll.lib
|
|
ZLIBLIBS = zlib.lib
|
|
!IFDEF USEMM_LIBS
|
|
WINLIBS = wsock32.lib winmm.lib
|
|
!ELSE
|
|
WINLIBS = wsock32.lib
|
|
CFLAGS = $(CFLAGS) /DWITHOUT_MM_LIB
|
|
!ENDIF
|
|
# RSAglue.lib was formerly needed in the SSLLIBS
|
|
CFGSET = FALSE
|
|
|
|
!IFDEF WINDOWS_SSPI
|
|
CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
|
|
!ENDIF
|
|
|
|
##############################################################
|
|
# Runtime library configuration
|
|
|
|
RTLIB = /MD
|
|
RTLIBD = /MDd
|
|
|
|
!IF "$(RTLIBCFG)" == "static"
|
|
RTLIB = /MT
|
|
RTLIBD = /MTd
|
|
!ENDIF
|
|
|
|
|
|
######################
|
|
# release
|
|
|
|
!IF "$(CFG)" == "release"
|
|
TARGET = $(LIB_NAME).lib
|
|
DIROBJ = $(CFG)
|
|
LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-zlib
|
|
|
|
!IF "$(CFG)" == "release-zlib"
|
|
TARGET = $(LIB_NAME).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-dll
|
|
|
|
!IF "$(CFG)" == "release-dll"
|
|
TARGET = $(LIB_NAME).dll
|
|
DIROBJ = $(CFG)
|
|
LNK = $(LNKDLL) $(RTLIB) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
|
|
CC = $(CCNODBG)
|
|
CFGSET = TRUE
|
|
RESOURCE = $(DIROBJ)\libcurl.res
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-ssl
|
|
|
|
!IF "$(CFG)" == "release-ssl"
|
|
TARGET = $(LIB_NAME).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
|
|
LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-ssl-dll
|
|
|
|
!IF "$(CFG)" == "release-ssl-dll"
|
|
TARGET = $(LIB_NAME).dll
|
|
DIROBJ = $(CFG)
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
|
|
LNK = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) $(SSLLIBS) $(LFLAGSSSL) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-ssl-zlib
|
|
|
|
!IF "$(CFG)" == "release-ssl-zlib"
|
|
TARGET = $(LIB_NAME).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-dll-ssl-dll
|
|
|
|
!IF "$(CFG)" == "release-dll-ssl-dll"
|
|
TARGET = $(LIB_NAME).dll
|
|
DIROBJ = $(CFG)
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
|
|
LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)
|
|
CFGSET = TRUE
|
|
RESOURCE = $(DIROBJ)\libcurl.res
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-zlib-dll
|
|
|
|
!IF "$(CFG)" == "release-zlib-dll"
|
|
TARGET = $(LIB_NAME).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-ssl-dll-zlib-dll
|
|
|
|
!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
|
|
TARGET = $(LIB_NAME).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
|
|
LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-dll-zlib-dll
|
|
|
|
!IF "$(CFG)" == "release-dll-zlib-dll"
|
|
TARGET = $(LIB_NAME).dll
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB)
|
|
CFGSET = TRUE
|
|
RESOURCE = $(DIROBJ)\libcurl.res
|
|
!ENDIF
|
|
|
|
######################
|
|
# release-dll-ssl-dll-zlib-dll
|
|
|
|
!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
|
|
TARGET = $(LIB_NAME).dll
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
|
|
LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
|
|
CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB)
|
|
CFGSET = TRUE
|
|
RESOURCE = $(DIROBJ)\libcurl.res
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug
|
|
|
|
!IF "$(CFG)" == "debug"
|
|
TARGET = $(LIB_NAME_DEBUG).lib
|
|
DIROBJ = $(CFG)
|
|
LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-ssl
|
|
|
|
!IF "$(CFG)" == "debug-ssl"
|
|
TARGET = $(LIB_NAME_DEBUG).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
|
|
LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-zlib
|
|
|
|
!IF "$(CFG)" == "debug-zlib"
|
|
TARGET = $(LIB_NAME_DEBUG).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-ssl-dll
|
|
|
|
!IF "$(CFG)" == "debug-ssl-dll"
|
|
TARGET = $(LIB_NAME_DEBUG).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll
|
|
LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-ssl-zlib
|
|
|
|
!IF "$(CFG)" == "debug-ssl-zlib"
|
|
TARGET = $(LIB_NAME_DEBUG).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
|
|
LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-zlib-dll
|
|
|
|
!IF "$(CFG)" == "debug-zlib-dll"
|
|
TARGET = $(LIB_NAME_DEBUG).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-ssl-dll-zlib-dll
|
|
|
|
!IF "$(CFG)" == "debug-ssl-dll-zlib-dll"
|
|
TARGET = $(LIB_NAME_DEBUG).lib
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
|
|
LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
|
|
CFGSET = TRUE
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-dll
|
|
|
|
!IF "$(CFG)" == "debug-dll"
|
|
TARGET = $(LIB_NAME_DEBUG).dll
|
|
DIROBJ = $(CFG)
|
|
LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
|
|
CC = $(CCDEBUG) $(RTLIBD)
|
|
CFGSET = TRUE
|
|
RESOURCE = $(DIROBJ)\libcurl.res
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-dll-ssl-dll
|
|
|
|
!IF "$(CFG)" == "debug-dll-ssl-dll"
|
|
TARGET = $(LIB_NAME_DEBUG).dll
|
|
DIROBJ = $(CFG)
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
|
|
LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL)
|
|
CFGSET = TRUE
|
|
RESOURCE = $(DIROBJ)\libcurl.res
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-dll-zlib-dll
|
|
|
|
!IF "$(CFG)" == "debug-dll-zlib-dll"
|
|
TARGET = $(LIB_NAME_DEBUG).dll
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB)
|
|
CFGSET = TRUE
|
|
RESOURCE = $(DIROBJ)\libcurl.res
|
|
!ENDIF
|
|
|
|
######################
|
|
# debug-dll-ssl-dll-zlib-dll
|
|
|
|
!IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll"
|
|
TARGET = $(LIB_NAME_DEBUG).dll
|
|
DIROBJ = $(CFG)
|
|
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
|
|
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
|
|
LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
|
|
CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB)
|
|
CFGSET = TRUE
|
|
RESOURCE = $(DIROBJ)\libcurl.res
|
|
!ENDIF
|
|
|
|
#######################
|
|
# Usage
|
|
#
|
|
!IF "$(CFGSET)" == "FALSE" && "$(CFG)" != ""
|
|
!MESSAGE Usage: nmake /f makefile.vc6 CFG=<config> <target>
|
|
!MESSAGE where <config> is one of:
|
|
!MESSAGE release - release static library
|
|
!MESSAGE release-ssl - release static library with ssl
|
|
!MESSAGE release-zlib - release static library with zlib
|
|
!MESSAGE release-ssl-zlib - release static library with ssl and zlib
|
|
!MESSAGE release-ssl-dll - release static library with dynamic ssl
|
|
!MESSAGE release-zlib-dll - release static library with dynamic zlib
|
|
!MESSAGE release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynamic zlib
|
|
!MESSAGE release-dll - release dynamic library
|
|
!MESSAGE release-dll-ssl-dll - release dynamic library with dynamic ssl
|
|
!MESSAGE release-dll-zlib-dll - release dynamic library with dynamic zlib
|
|
!MESSAGE release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib
|
|
!MESSAGE debug - debug static library
|
|
!MESSAGE debug-ssl - debug static library with ssl
|
|
!MESSAGE debug-zlib - debug static library with zlib
|
|
!MESSAGE debug-ssl-zlib - debug static library with ssl and zlib
|
|
!MESSAGE debug-ssl-dll - debug static library with dynamic ssl
|
|
!MESSAGE debug-zlib-dll - debug static library with dynamic zlib
|
|
!MESSAGE debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib
|
|
!MESSAGE debug-dll - debug dynamic library
|
|
!MESSAGE debug-dll-ssl-dll - debug dynamic library with dynamic ssl
|
|
!MESSAGE debug-dll-zlib-dll - debug dynamic library with dynamic zlib1
|
|
!MESSAGE debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynamic zlib
|
|
!MESSAGE <target> can be left blank in which case all is assumed
|
|
!ERROR please choose a valid configuration "$(CFG)"
|
|
!ENDIF
|
|
|
|
#######################
|
|
# Only the clean target can be used if a config was not provided.
|
|
#
|
|
!IF "$(CFGSET)" == "FALSE"
|
|
clean:
|
|
@-erase /s *.dll 2> NUL
|
|
@-erase /s *.exp 2> NUL
|
|
@-erase /s *.idb 2> NUL
|
|
@-erase /s *.lib 2> NUL
|
|
@-erase /s *.obj 2> NUL
|
|
@-erase /s *.pch 2> NUL
|
|
@-erase /s *.pdb 2> NUL
|
|
@-erase /s *.res 2> NUL
|
|
!ELSE
|
|
# A config was provided, so the library can be built.
|
|
#
|
|
X_OBJS= \
|
|
$(DIROBJ)\base64.obj \
|
|
$(DIROBJ)\cookie.obj \
|
|
$(DIROBJ)\transfer.obj \
|
|
$(DIROBJ)\escape.obj \
|
|
$(DIROBJ)\formdata.obj \
|
|
$(DIROBJ)\ftp.obj \
|
|
$(DIROBJ)\http.obj \
|
|
$(DIROBJ)\http_chunks.obj \
|
|
$(DIROBJ)\ldap.obj \
|
|
$(DIROBJ)\dict.obj \
|
|
$(DIROBJ)\telnet.obj \
|
|
$(DIROBJ)\parsedate.obj \
|
|
$(DIROBJ)\getenv.obj \
|
|
$(DIROBJ)\gtls.obj \
|
|
$(DIROBJ)\inet_pton.obj \
|
|
$(DIROBJ)\hostip.obj \
|
|
$(DIROBJ)\hostasyn.obj \
|
|
$(DIROBJ)\hostsyn.obj \
|
|
$(DIROBJ)\hostares.obj \
|
|
$(DIROBJ)\hostthre.obj \
|
|
$(DIROBJ)\hostip4.obj \
|
|
$(DIROBJ)\hostip6.obj \
|
|
$(DIROBJ)\inet_ntop.obj \
|
|
$(DIROBJ)\if2ip.obj \
|
|
$(DIROBJ)\mprintf.obj \
|
|
$(DIROBJ)\netrc.obj \
|
|
$(DIROBJ)\progress.obj \
|
|
$(DIROBJ)\sendf.obj \
|
|
$(DIROBJ)\speedcheck.obj \
|
|
$(DIROBJ)\sslgen.obj \
|
|
$(DIROBJ)\ssluse.obj \
|
|
$(DIROBJ)\timeval.obj \
|
|
$(DIROBJ)\url.obj \
|
|
$(DIROBJ)\file.obj \
|
|
$(DIROBJ)\getinfo.obj \
|
|
$(DIROBJ)\version.obj \
|
|
$(DIROBJ)\easy.obj \
|
|
$(DIROBJ)\strequal.obj \
|
|
$(DIROBJ)\strtok.obj \
|
|
$(DIROBJ)\strtoofft.obj \
|
|
$(DIROBJ)\connect.obj \
|
|
$(DIROBJ)\hash.obj \
|
|
$(DIROBJ)\llist.obj \
|
|
$(DIROBJ)\share.obj \
|
|
$(DIROBJ)\multi.obj \
|
|
$(DIROBJ)\http_digest.obj \
|
|
$(DIROBJ)\http_negotiate.obj \
|
|
$(DIROBJ)\http_ntlm.obj \
|
|
$(DIROBJ)\md5.obj \
|
|
$(DIROBJ)\memdebug.obj \
|
|
$(DIROBJ)\strerror.obj \
|
|
$(DIROBJ)\select.obj \
|
|
$(DIROBJ)\content_encoding.obj \
|
|
$(DIROBJ)\tftp.obj \
|
|
$(RESOURCE)
|
|
|
|
all : $(TARGET)
|
|
|
|
$(TARGET): $(X_OBJS)
|
|
$(LNK) $(LFLAGS) $(X_OBJS)
|
|
-xcopy $(DIROBJ)\$(LIB_NAME).dll . /y
|
|
-xcopy $(DIROBJ)\$(LIB_NAME).lib . /y
|
|
-xcopy $(DIROBJ)\$(LIB_NAME_DEBUG).dll . /y
|
|
-xcopy $(DIROBJ)\$(LIB_NAME_DEBUG).lib . /y
|
|
-xcopy $(DIROBJ)\$(IMPLIB_NAME).lib . /y
|
|
-xcopy $(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib . /y
|
|
-xcopy $(DIROBJ)\*.exp . /y
|
|
-xcopy $(DIROBJ)\*.pdb . /y
|
|
|
|
$(X_OBJS): $(DIROBJ)
|
|
|
|
$(DIROBJ):
|
|
@if not exist "$(DIROBJ)" mkdir $(DIROBJ)
|
|
|
|
.SUFFIXES: .c .obj .res
|
|
|
|
{.\}.c{$(DIROBJ)\}.obj:
|
|
$(CC) $(CFLAGS) /Fo"$@" $<
|
|
|
|
debug-dll\libcurl.res \
|
|
debug-dll-ssl-dll\libcurl.res \
|
|
debug-dll-zlib-dll\libcurl.res \
|
|
debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
|
|
rc /dCURLDEBUG=1 /Fo $@ libcurl.rc
|
|
|
|
release-dll\libcurl.res \
|
|
release-dll-ssl-dll\libcurl.res \
|
|
release-dll-zlib-dll\libcurl.res \
|
|
release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
|
|
rc /dCURLDEBUG=0 /Fo $@ libcurl.rc
|
|
!ENDIF # End of case where a config was provided.
|