Commit 4ed7abb5 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

MSVC makefiles: provide SSH build targets

"release-ssl-ssh2-zlib" and "debug-ssl-ssh2-zlib" are two new makefile
targets that build libcurl with MSVC and link with libssh2

Bug: http://curl.haxx.se/bug/view.cgi?id=3388920
Reported by: "kdekker"
parent ef2059a4
Loading
Loading
Loading
Loading
+37 −3
Original line number Original line Diff line number Diff line
@@ -64,13 +64,14 @@


!INCLUDE ..\Makefile.msvc.names
!INCLUDE ..\Makefile.msvc.names





!IFNDEF OPENSSL_PATH
!IFNDEF OPENSSL_PATH
OPENSSL_PATH   = ../../openssl-0.9.8r
OPENSSL_PATH   = ../../openssl-0.9.8r
!ENDIF
!ENDIF


!IFNDEF LIBSSH2_PATH
OPENSSH_PATH   = ../../libssh2-1.2.8
!ENDIF

!IFNDEF ZLIB_PATH
!IFNDEF ZLIB_PATH
ZLIB_PATH  = ../../zlib-1.2.5
ZLIB_PATH  = ../../zlib-1.2.5
!ENDIF
!ENDIF
@@ -105,6 +106,7 @@ WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
CCNODBG    = cl.exe /O2 /DNDEBUG
CCNODBG    = cl.exe /O2 /DNDEBUG
CCDEBUG    = cl.exe /Od /Gm /Zi /D_DEBUG /GZ
CCDEBUG    = cl.exe /Od /Gm /Zi /D_DEBUG /GZ
CFLAGSSSL  = /DUSE_SSLEAY /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
CFLAGSSSL  = /DUSE_SSLEAY /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
CFLAGS     = /I. /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
CFLAGS     = /I. /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
CFLAGSLIB  = /DCURL_STATICLIB
CFLAGSLIB  = /DCURL_STATICLIB
@@ -224,6 +226,36 @@ CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
CFGSET   = TRUE
CFGSET   = TRUE
!ENDIF
!ENDIF


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

!IF "$(CFG)" == "release-ssl-ssh2-zlib"
TARGET   = $(LIB_NAME).lib
DIROBJ   = $(CFG)
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
LNK      = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
CFGSET   = TRUE
RESOURCE = $(LIBSSH2_PATH)/Release/src/libssh2.lib $(ZLIB_PATH)/zlib.lib
!ENDIF

######################
# debug-ssl-ssh2-zlib

!IF "$(CFG)" == "debug-ssl-ssh2-zlib"
TARGET   = $(LIB_NAME_DEBUG).lib
DIROBJ   = $(CFG)
LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
CFGSET   = TRUE
RESOURCE = $(LIBSSH2_PATH)/Release/src/libssh2.lib $(ZLIB_PATH)/zlib.lib
!ENDIF

######################
######################
# release-dll
# release-dll


@@ -423,6 +455,7 @@ RESOURCE = $(DIROBJ)\libcurl.res
!MESSAGE   release-ssl                  - release static library with ssl
!MESSAGE   release-ssl                  - release static library with ssl
!MESSAGE   release-zlib                 - release static library with zlib
!MESSAGE   release-zlib                 - release static library with zlib
!MESSAGE   release-ssl-zlib             - release static library with ssl and zlib
!MESSAGE   release-ssl-zlib             - release static library with ssl and zlib
!MESSAGE   release-ssl-ssh2-zlib        - release static library with ssl, ssh2 and zlib
!MESSAGE   release-ssl-dll              - release static library with dynamic ssl
!MESSAGE   release-ssl-dll              - release static library with dynamic ssl
!MESSAGE   release-zlib-dll             - release static library with dynamic zlib
!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-ssl-dll-zlib-dll     - release static library with dynamic ssl and dynamic zlib
@@ -430,6 +463,7 @@ RESOURCE = $(DIROBJ)\libcurl.res
!MESSAGE   release-dll-ssl-dll          - release dynamic library with dynamic ssl
!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-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   release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib
!MESSAGE   debug-ssl-ssh2-zlib          - debug static library with ssl, ssh2 and zlib
!MESSAGE   debug                        - debug static library
!MESSAGE   debug                        - debug static library
!MESSAGE   debug-ssl                    - debug static library with ssl
!MESSAGE   debug-ssl                    - debug static library with ssl
!MESSAGE   debug-zlib                   - debug static library with zlib
!MESSAGE   debug-zlib                   - debug static library with zlib