Skip to content
Snippets Groups Projects
Makefile.vc6 15.8 KiB
Newer Older
  • Learn to ignore specific revisions
  • #############################################################
    
    # Makefile for building libcurl with MSVC6
    #
    # Usage: see usage message below
    #        Should be invoked from \lib directory
    #        Edit the paths and desired library name
    
    sm's avatar
    sm committed
    #        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
    
    sm's avatar
    sm committed
    # in \src would need to be changed.
    #
    
    ##############################################################
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    #
    # Stem for static libs and DLLs
    #
    
    LIB_NAME       = libcurl
    
    LIB_NAME_DEBUG = libcurld
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    
    #
    # Stem for DLL import libs
    #
    
    IMPLIB_NAME       = libcurl_imp
    IMPLIB_NAME_DEBUG = libcurld_imp
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    !IFNDEF OPENSSL_PATH
    
    OPENSSL_PATH   = ../../openssl-0.9.7e
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    !ENDIF
    
    !IFNDEF ZLIB_PATH
    
    ZLIB_PATH  = ../../zlib-1.2.1
    
    # 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
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    CFLAGSSSL  = /DUSE_SSLEAY /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
    CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    CFLAGS     = /I. /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    LNKDLL     = link.exe /DLL
    
    LNKLIB     = link.exe /lib
    LFLAGS     = /nologo
    SSLLIBS    = libeay32.lib ssleay32.lib
    
    ZLIBLIBSDLL= zdll.lib
    ZLIBLIBS   = zlib.lib
    
    WINLIBS    = wsock32.lib winmm.lib
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    WINLIBS    = wsock32.lib
    CFLAGS     = $(CFLAGS) /DWITHOUT_MM_LIB
    
    #  RSAglue.lib was formerly needed in the SSLLIBS
    
    !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"
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    TARGET   = $(LIB_NAME).lib
    
    LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
    
    LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
    
    CC       = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
    
    ######################
    # release-dll
    
    
    sm's avatar
    sm committed
    !IF "$(CFG)" == "release-dll"
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    TARGET = $(LIB_NAME).dll
    
    LNK    = $(LNKDLL) $(RTLIB) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
    
    CC     = $(CCNODBG)
    CFGSET = TRUE
    
    RESOURCE = $(DIROBJ)\libcurl.res
    
    !ENDIF
    
    ######################
    # release-ssl
    
    sm's avatar
    sm committed
    
    
    sm's avatar
    sm committed
    !IF "$(CFG)" == "release-ssl"
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    TARGET   = $(LIB_NAME).lib
    
    DIROBJ   = $(CFG)
    LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
    LNK      = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
    
    CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
    
    sm's avatar
    sm committed
    CFGSET   = TRUE
    
    !ENDIF
    
    ######################
    # release-ssl-dll
    
    
    sm's avatar
    sm committed
    !IF "$(CFG)" == "release-ssl-dll"
    
    DIROBJ   = $(CFG)
    LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
    
    LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
    
    sm's avatar
    sm committed
    CFGSET   = TRUE
    
    ######################
    # release-ssl-zlib
    
    !IF "$(CFG)" == "release-ssl-zlib"
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    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)
    
    # 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
    
    RESOURCE = $(DIROBJ)\libcurl.res
    
    ######################
    # 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)
    
    ######################
    
    !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)
    
    !ENDIF
    
    ######################
    
    !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
    
    sm's avatar
    sm committed
    !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
    
    LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
    
    LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
    
    CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
    
    ######################
    # debug-ssl-dll
    
    
    sm's avatar
    sm committed
    !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
    
    CFGSET = TRUE
    RESOURCE = $(DIROBJ)\libcurl.res
    !ENDIF
    
    ######################
    # debug-dll-ssl-dll
    
    !IF "$(CFG)" == "debug-dll-ssl-dll"
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    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
    
    ######################
    # 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)\getenv.obj \
    
    	$(DIROBJ)\gtls.obj \
    
    	$(DIROBJ)\hostip.obj \
    
    	$(DIROBJ)\hostasyn.obj \
    	$(DIROBJ)\hostsyn.obj \
    	$(DIROBJ)\hostares.obj \
    	$(DIROBJ)\hostthre.obj \
    	$(DIROBJ)\hostip4.obj \
    	$(DIROBJ)\hostip6.obj \
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    	$(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 \
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    	$(DIROBJ)\strtok.obj \
    
    	$(DIROBJ)\strtoofft.obj \
    
    sm's avatar
    sm committed
    	$(DIROBJ)\connect.obj \
    	$(DIROBJ)\hash.obj \
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    	$(DIROBJ)\llist.obj \
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    	$(DIROBJ)\share.obj \
    
    	$(DIROBJ)\multi.obj \
    	$(DIROBJ)\http_digest.obj \
    
            $(DIROBJ)\http_negotiate.obj \
            $(DIROBJ)\http_ntlm.obj \
    
    Gisle Vanem's avatar
     
    Gisle Vanem committed
    	$(DIROBJ)\memdebug.obj \
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    	$(DIROBJ)\strerror.obj \
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    	$(DIROBJ)\select.obj \
    
    	$(DIROBJ)\content_encoding.obj \
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    	$(DIROBJ)\tftp.obj \
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    	$(DIROBJ)\splay.obj \
    
    
    all : $(TARGET)
    
    $(TARGET): $(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-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.