Commit b1080f7c authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

Cody Jones' enhanced version of Samuel Daz Garca's MSVC makefile patch.

parent 7bfd58d4
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -7,6 +7,10 @@
                                  Changelog


Daniel (18 January 2005)
- Cody Jones' enhanced version of Samuel Díaz García's MSVC makefile patch was
  applied.

Daniel (16 January 2005)
- Alex aka WindEagle pointed out that when doing "curl -v dictionary.com", curl
  assumed this used the DICT protocol. While guessing protocols will remain
+65 −4
Original line number Diff line number Diff line
@@ -77,6 +77,37 @@ mingw32-clean:
	$(MAKE) -C lib -f Makefile.m32 clean
	$(MAKE) -C src -f Makefile.m32 clean

vc-clean:
	cd lib
	nmake -f Makefile.vc6 clean
	cd ..\src
	nmake -f Makefile.vc6 clean

vc-all:
	cd lib
	nmake -f Makefile.vc6 cfg=release
	nmake -f Makefile.vc6 cfg=release-ssl
	nmake -f Makefile.vc6 cfg=release-zlib
	nmake -f Makefile.vc6 cfg=release-ssl-zlib
	nmake -f Makefile.vc6 cfg=release-ssl-dll
	nmake -f Makefile.vc6 cfg=release-zlib-dll
	nmake -f Makefile.vc6 cfg=release-ssl-dll-zlib-dll
	nmake -f Makefile.vc6 cfg=release-dll
	nmake -f Makefile.vc6 cfg=release-dll-ssl-dll
	nmake -f Makefile.vc6 cfg=release-dll-zlib-dll
	nmake -f Makefile.vc6 cfg=release-dll-ssl-dll-zlib-dll
	nmake -f Makefile.vc6 cfg=debug
	nmake -f Makefile.vc6 cfg=debug-ssl
	nmake -f Makefile.vc6 cfg=debug-zlib
	nmake -f Makefile.vc6 cfg=debug-ssl-zlib
	nmake -f Makefile.vc6 cfg=debug-ssl-dll
	nmake -f Makefile.vc6 cfg=debug-zlib-dll
	nmake -f Makefile.vc6 cfg=debug-ssl-dll-zlib-dll
	nmake -f Makefile.vc6 cfg=debug-dll
	nmake -f Makefile.vc6 cfg=debug-dll-ssl-dll
	nmake -f Makefile.vc6 cfg=debug-dll-zlib-dll
	nmake -f Makefile.vc6 cfg=debug-dll-ssl-dll-zlib-dll

vc:
	cd lib
	nmake /f Makefile.vc6 cfg=release
@@ -105,13 +136,43 @@ vc-ssl-dll:
	cd lib
	nmake /f Makefile.vc6 cfg=release-ssl-dll
	cd ..\src
	nmake /f Makefile.vc6
	nmake /f Makefile.vc6 cfg=release-ssl-dll

vc-libcurl-ssl-dll:
vc-dll-ssl-dll:
	cd lib
	nmake /f Makefile.vc6 cfg=release-libcurl-ssl-dll
	nmake /f Makefile.vc6 cfg=release-dll-ssl-dll
	cd ..\src
	nmake /f Makefile.vc6
	nmake /f Makefile.vc6 cfg=release-dll-ssl-dll

vc-dll:
	cd lib
	nmake /f Makefile.vc6 cfg=release-dll
	cd ..\src
	nmake /f Makefile.vc6 cfg=release-dll

vc-dll-zlib-dll:
	cd lib
	nmake /f Makefile.vc6 cfg=release-dll-zlib-dll
	cd ..\src
	nmake /f Makefile.vc6 cfg=release-dll-zlib-dll

vc-dll-ssl-dll-zlib-dll:
	cd lib
	nmake /f Makefile.vc6 cfg=release-dll-ssl-dll-zlib-dll
	cd ..\src
	nmake /f Makefile.vc6 cfg=release-dll-ssl-dll-zlib-dll

vc-ssl-dll-zlib-dll:
	cd lib
	nmake /f Makefile.vc6 cfg=release-ssl-dll-zlib-dll
	cd ..\src
	nmake /f Makefile.vc6 cfg=release-ssl-dll-zlib-dll

vc-zlib-dll:
	cd lib
	nmake /f Makefile.vc6 cfg=release-zlib-dll
	cd ..\src
	nmake /f Makefile.vc6 cfg=release-zlib-dll

djgpp:
	$(MAKE) -C lib -f Makefile.dj
+1 −1
Original line number Diff line number Diff line
@@ -39,6 +39,6 @@ advice from friends like these:
 Dan Fandrich, Peter Pentchev, Marcin Konicki, Rune Kleveland, David Shaw,
 Werner Koch, Gisle Vanem, Alex Neblett, Kai Sommerfeld, Marty Kuhrt,
 Hzhijun, Pavel Orehov, Bruce Mitchener, Cyrill Osterwalder, Dan Torop,
 Martijn Koster, Alex aka WindEagle
 Martijn Koster, Alex aka WindEagle, Cody Jones, Samuel Daz Garca

        Thanks! (and sorry if I forgot to mention someone)
+229 −69
Original line number Diff line number Diff line
@@ -58,6 +58,8 @@ 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
@@ -72,8 +74,8 @@ CFGSET = FALSE

!IF "$(CFG)" == "release"
TARGET = $(LIB_NAME).lib
DIROBJ = .\$(CFG)
LNK    = $(LNKLIB) /out:$(TARGET)
DIROBJ = $(CFG)
LNK    = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
CC     = $(CCNODBG)
CFGSET = TRUE
!ENDIF
@@ -83,9 +85,9 @@ CFGSET = TRUE

!IF "$(CFG)" == "release-zlib"
TARGET   = $(LIB_NAME).lib
DIROBJ   = .\$(CFG)
DIROBJ   = $(CFG)
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
LNK      = $(LNKLIB) $(LFLAGSZLIB) /out:$(TARGET)
LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCNODBG) $(CFLAGSZLIB)
CFGSET   = TRUE
!ENDIF
@@ -95,8 +97,8 @@ CFGSET = TRUE

!IF "$(CFG)" == "release-dll"
TARGET = $(LIB_NAME).dll
DIROBJ = .\$(CFG)
LNK    = $(LNKDLL) $(WINLIBS) /out:$(TARGET) /IMPLIB:$(IMPLIB_NAME).lib
DIROBJ = $(CFG)
LNK    = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
CC     = $(CCNODBG)
CFGSET = TRUE
RESOURCE = $(DIROBJ)\libcurl.res
@@ -107,9 +109,9 @@ RESOURCE = $(DIROBJ)\libcurl.res

!IF "$(CFG)" == "release-ssl"
TARGET   = $(LIB_NAME).lib
DIROBJ   = .\$(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)/out32"
LNK      = $(LNKLIB) $(LFLAGSSSL) /out:$(TARGET)
DIROBJ   = $(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
LNK      = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCNODBG) $(CFLAGSSSL)
CFGSET   = TRUE
!ENDIF
@@ -118,81 +120,123 @@ CFGSET = TRUE
# release-ssl-dll

!IF "$(CFG)" == "release-ssl-dll"
TARGET   = $(LIB_NAME).dll
DIROBJ   = .\$(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)/out32dll"
LNK      = $(LNKDLL) $(SSLLIBS) $(WINLIBS) $(LFLAGSSSL) /out:$(TARGET) /IMPLIB:$(IMPLIB_NAME).lib
TARGET   = $(LIB_NAME).lib
DIROBJ   = $(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCNODBG) $(CFLAGSSSL)
CFGSET   = TRUE
RESOURCE = $(DIROBJ)\libcurl.res
!ENDIF

######################
# release-ssl-zlib

!IF "$(CFG)" == "release-ssl-zlib"
TARGET   = $(LIB_NAME).lib
DIROBJ   = .\$(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)/out32"
DIROBJ   = $(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
LNK      = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(TARGET)
LNK      = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCNODBG) $(CFLAGSSSL) $(CFLAGSZLIB)
CFGSET   = TRUE
!ENDIF

######################
# release-libcurl-ssl-dll
!IF "$(CFG)" == "release-libcurl-ssl-dll"
TARGET   = $(LIB_NAME).lib
DIROBJ   = .\$(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)/out32dll"
LNK      = $(LNKLIB) $(SSLLIBS) $(LFLAGSSSL) /out:$(TARGET)
# 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) $(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) $(CFLAGSZLIB)
CFGSET   = TRUE
!ENDIF

######################
# debug
# release-ssl-dll-zlib-dll

!IF "$(CFG)" == "debug"
TARGET = $(LIB_NAME_DEBUG).lib
DIROBJ = .\$(CFG)
LNK    = $(LNKLIB) /out:$(TARGET)
CC     = $(CCDEBUG)
!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) $(CFLAGSSSL) $(CFLAGSZLIB)
CFGSET   = TRUE
!ENDIF

######################
# debug-dll
# release-dll-zlib-dll

!IF "$(CFG)" == "debug-dll"
TARGET = $(LIB_NAME_DEBUG).dll
DIROBJ = .\$(CFG)
LNK    = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(TARGET) /IMPLIB:$(IMPLIB_NAME_DEBUG).lib /PDB:$(IMPLIB_NAME_DEBUG).pdb
CC     = $(CCDEBUG)
!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) $(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) $(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)
CFGSET = TRUE
!ENDIF

######################
# debug-ssl
#todo

!IF "$(CFG)" == "debug-ssl"
TARGET   = $(LIB_NAME_DEBUG).lib
DIROBJ   = .\$(CFG)
LNK      = $(LNKLIB) $(LFLAGSSSL) /out:$(TARGET)
DIROBJ   = $(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
LNK      = $(LNKLIB) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCDEBUG) $(CFLAGSSSL)
CFGSET   = TRUE
!ENDIF

######################
# debug-zlib

!IF "$(CFG)" == "debug-zlib"
TARGET   = $(LIB_NAME_DEBUG).lib
DIROBJ   = .\$(CFG)
DIROBJ   = $(CFG)
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
LNK      = $(LNKLIB) $(LFLAGSZLIB) /out:$(TARGET)
LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCDEBUG) $(CFLAGSZLIB)
CFGSET   = TRUE
!ENDIF
@@ -201,38 +245,151 @@ CFGSET = TRUE
# 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) $(CFLAGSSSL)
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) $(SSLLIBS) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCDEBUG) $(CFLAGSSSL) $(CFLAGSZLIB)
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) $(CFLAGSZLIB)
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) $(CFLAGSSSL) $(CFLAGSZLIB)
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)\$(LIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
CC     = $(CCDEBUG)
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) $(LFLAGSSSL) /DEBUG /out:$(TARGET) /IMPLIB:$(IMPLIB_NAME_DEBUG).lib /PDB:$(IMPLIB_NAME_DEBUG).pdb
DIROBJ   = $(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
CC       = $(CCDEBUG) $(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)\$(LIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
CC       = $(CCDEBUG) $(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)\$(LIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
CC       = $(CCDEBUG) $(CFLAGSSSL) $(CFLAGSZLIB)
CFGSET   = TRUE
RESOURCE = $(DIROBJ)\libcurl.res
!ENDIF

#######################
# Usage
#
!IF "$(CFGSET)" == "FALSE"
!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-dll      - release dll
!MESSAGE   release-zlib     - release static library with zlib
!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 dll library with ssl
!MESSAGE   release-libcurl-ssl-dll - static libcurl with shared ssl
!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-dll        - debug dll
!MESSAGE   debug-zlib       - debug static library with zlib
!MESSAGE   debug-ssl                    - debug static library with ssl
!MESSAGE   debug-ssl-dll    - debug dll 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 \
@@ -290,9 +447,16 @@ X_OBJS= \

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).lib    . /y
	-xcopy $(DIROBJ)\*.exp                 . /y
	-xcopy $(DIROBJ)\*.pdb                 . /y

$(X_OBJS): $(DIROBJ)

@@ -305,18 +469,14 @@ $(DIROBJ):
	$(CC) $(CFLAGS) /Fo"$@"  $<

debug-dll\libcurl.res \
debug-ssl-dll\libcurl.res \
release-libcurl-ssl-dll\libcurl.res: libcurl.rc
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-ssl-dll\libcurl.res \
release-libcurl-ssl-dll\libcurl.res: 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

clean:
	-@erase $(DIROBJ)\*.obj
	-@erase $(DIROBJ)\*.res
	-@erase vc60.idb
	-@erase vc60.pch
!ENDIF  # End of case where a config was provided.
+98 −45
Original line number Diff line number Diff line
@@ -25,13 +25,15 @@ OPENSSL_PATH = ../../openssl-0.9.7e

########################################################
## Nothing more to do below this line!
CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
ZLIBLIBS   = zlib.lib
SSLINC     = /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
CFLAGSSSL  = /DUSE_SSLEAY
LFLAGSSSL  = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
SSLLIBS    = libeay32.lib ssleay32.lib gdi32.lib
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

## Release
CCR   = cl.exe /MD /O2 /DNDEBUG
@@ -71,52 +73,108 @@ DEBUG_OBJS= \
	curld.res

#################################################
# release-zlib (static libcurl + zlib)
# If CFG not specified, use static libs

CFLAGS         = $(CFLAGS) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib
LINKLIBS_DEBUG = libcurld.lib

#################################################
# release dynamic library

!IF "$(CFG)" == "release-dll"
LINKLIBS       = libcurl_imp.lib
LINKLIBS_DEBUG = libcurld_imp.lib
!ENDIF

#################################################
# release static library with zlib

!IF "$(CFG)" == "release-zlib"
CFLAGS         = $(CFLAGS) $(CFLAGSZLIB) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib  $(ZLIBLIBS)
LINKLIBS_DEBUG = libcurld.lib $(ZLIBLIBS)
LFLAGS         = $(LFLAGS) $(LFLAGSZLIB)
CFLAGS         = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib  $(ZLIB_LIBS)
LINKLIBS_DEBUG = libcurld.lib $(ZLIB_LIBS)
LFLAGS         = $(LFLAGS) $(ZLIB_LFLAGS)
!ENDIF

#################################################
# release-ssl (static libcurl + ssl)
# release static library with ssl

!IF "$(CFG)" == "release-ssl"
CFLAGS         = $(CFLAGS) $(CFLAGSSSL) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib  $(SSLLIBS)
LINKLIBS_DEBUG = libcurld.lib $(SSLLIBS)
LFLAGS         = $(LFLAGS) $(LFLAGSSSL)
CFLAGS         = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib  $(SSL_LIBS)
LINKLIBS_DEBUG = libcurld.lib $(SSL_LIBS)
LFLAGS         = $(LFLAGS) $(SSL_LFLAGS)
!ENDIF

#################################################
# release-libcurl-ssl-dll (libcurl.dll + ssl)
# release dynamic library with dynamic ssl

!IF "$(CFG)" == "release-libcurl-ssl-dll"
CFLAGS         = $(CFLAGS) $(CFLAGSSSL)
LINKLIBS       = libcurl_imp.lib  $(SSLLIBS)
LINKLIBS_DEBUG = libcurld_imp.lib $(SSLLIBS)
LFLAGS         = $(LFLAGS) $(LFLAGSSSL)
!IF "$(CFG)" == "release-dll-ssl-dll"
CFLAGS         = $(CFLAGS) $(SSL_CFLAGS)
LINKLIBS       = libcurl_imp.lib  $(SSL_LIBS)
LINKLIBS_DEBUG = libcurld_imp.lib $(SSL_LIBS)
LFLAGS         = $(LFLAGS) $(SSL_IMP_LFLAGS)
!ENDIF

#################################################
# release-ssl-zlib (static libcurl +  ssl + zlib)
# release static library with ssl and zlib

!IF "$(CFG)" == "release-ssl-zlib"
CFLAGS         = $(CFLAGS) $(CFLAGSSSL) $(CFLAGSZLIB) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib  $(SSLLIBS) $(ZLIBLIBS)
LINKLIBS_DEBUG = libcurld.lib $(SSLLIBS) $(ZLIBLIBS)
LFLAGS         = $(LFLAGS) $(LFLAGSSSL) $(LFLAGSZLIB)
CFLAGS         = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib  $(SSL_LIBS) $(ZLIB_LIBS)
LINKLIBS_DEBUG = libcurld.lib $(SSL_LIBS) $(ZLIB_LIBS)
LFLAGS         = $(LFLAGS) $(SSL_LFLAGS) $(ZLIB_LFLAGS)
!ENDIF

#################################################
# If CFG not specified, use static libs
# release static library with dynamic ssl

!IF "$(CFG)." == "."
CFLAGS         = $(CFLAGS) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib
LINKLIBS_DEBUG = libcurld.lib
!IF "$(CFG)" == "release-ssl-dll"
CFLAGS         = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
LINKLIBS       = libcurl.lib  $(SSL_LIBS)
LINKLIBS_DEBUG = libcurld.lib $(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.lib  $(ZLIB_IMP_LIBS)
LINKLIBS_DEBUG = libcurld.lib $(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  $(ZLIB_IMP_LIBS)
LINKLIBS_DEBUG = libcurld_imp.lib $(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.lib  $(SSL_LIBS) $(ZLIB_IMP_LIBS)
LINKLIBS_DEBUG = libcurld.lib $(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  $(SSL_LIBS) $(ZLIB_IMP_LIBS)
LINKLIBS_DEBUG = libcurld_imp.lib $(SSL_LIBS) $(ZLIB_IMP_LIBS)
LFLAGS         = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
!ENDIF


@@ -172,15 +230,10 @@ curld.res : curl.rc
	$(RCD) $(RESFLAGS) /Fo"$@" curl.rc

clean:
	-@erase $(RELEASE_OBJS)
	-@erase $(DEBUG_OBJS)
	-@erase vc60.idb
	-@erase vc60.pdb
	-@erase vc60.pch
	-@erase vc70.idb
	-@erase vc70.pch
	-@erase curl.ilk
	-@erase curl.pdb

distrib: clean
	-@erase $(PROGRAM_NAME)
	@-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