!IF "$(MODE)"=="static" | |
TARGET = $(LIB_NAME_STATIC) | |
AS_DLL = false | |
CFGSET=true | |
!ELSEIF "$(MODE)"=="dll" | |
TARGET = $(LIB_NAME_DLL) | |
AS_DLL = true | |
CFGSET=true | |
!ELSE | |
!MESSAGE Invalid mode: $(MODE) | |
####################### | |
# Usage | |
# | |
!MESSAGE Usage: nmake /f makefile.vc mode=<static or dll> <options> | |
!MESSAGE where <options> is one or many of: | |
!MESSAGE VC=<6,7,8,9,10> - VC versions | |
!MESSAGE WITH_DEVEL=<path> - Paths for the development files (SSL, zlib, etc.) | |
!MESSAGE Default to sibbling directory deps: ../deps | |
!MESSAGE Libraries can be fetched at http://pecl2.php.net/downloads/php-windows-builds/ | |
!MESSAGE Uncompress them into the deps folder. | |
!MESSAGE WITH_SSL=<dll or static> - Enable OpenSSL support, DLL or static | |
!MESSAGE WITH_ZLIB=<dll or static> - Enable ZLib support, DLL or static | |
!MESSAGE WITH_SSH2=<dll or static> - Enable LIbSSH2 support, DLL or static | |
!MESSAGE USE_SSSPI=<yes or no> - Enable SSPI support, default to yes | |
!MESSAGE ENABLE_IPV6=<yes or no> - Enable IPV6, default to yes | |
!MESSAGE DEBUG=<yes or no> - Debug builds | |
!MESSAGE ENABLE_IDN=<yes or no> - Wheter or not to use IDN Windows APIs. Requires Windows Vista or later. | |
!MESSAGE or to install http://www.microsoft.com/downloads/details.aspx?FamilyID=AD6158D7-DDBA-416A-9109-07607425A815 | |
!MESSAGE GEN_PDB=<yes or no> - Generate Program Database (debug symbols release build) | |
!ERROR please choose a valid mode | |
!ENDIF | |
!INCLUDE "../lib/Makefile.inc" | |
LIBCURL_OBJS=$(CSOURCES:.c=.obj) | |
top_srcdir=.. | |
!INCLUDE "../src/Makefile.inc" | |
# hugehelp has a special rule | |
CURL_OBJS= $(CURL_CFILES:hugehelp.c=) | |
CURL_OBJS=$(CURL_OBJS:.c=.obj) | |
# default options | |
!IFNDEF USE_SSPI | |
USE_SSPI=true | |
!ENDIF | |
!IFNDEF ENABLE_IPV6 | |
USE_IPV6 = true | |
!ELSEIF "$(ENABLE_IPV6)"=="yes" | |
USE_IPV6 = true | |
!ENDIF | |
!IFNDEF ENABLE_IDN | |
USE_IDN=true | |
!ENDIF | |
CONFIG_NAME_LIB = libcurl | |
!IF "$(WITH_SSL)"=="dll" | |
USE_SSL = true | |
SSL=dll | |
!ELSEIF "$(WITH_SSL)"=="static" | |
USE_SSL = true | |
SSL=static | |
!ENDIF | |
!IF "$(WITH_ZLIB)"=="dll" | |
USE_ZLIB = true | |
zlib=dll | |
!ELSEIF "$(WITH_ZLIB)"=="static" | |
USE_ZLIB = true | |
ZLIB=static | |
!ENDIF | |
!IF "$(WITH_SSH2)"=="dll" | |
USE_SSH2 = true | |
SSH2=dll | |
!ELSEIF "$(WITH_SSH2)"=="static" | |
USE_SSH2 = true | |
SSH2=static | |
!ENDIF | |
!IF "$(DEBUG)"=="yes" | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-debug | |
!ELSE | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-release | |
!ENDIF | |
!IF "$(AS_DLL)" == "true" | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-dll | |
!ELSE | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-static | |
!ENDIF | |
!IF "$(USE_SSL)"=="true" | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-ssl-$(SSL) | |
!ENDIF | |
!IF "$(USE_ZLIB)"=="true" | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-zlib-$(ZLIB) | |
!ENDIF | |
!IF "$(USE_SSH2)"=="true" | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-ssh2-$(SSH2) | |
!ENDIF | |
!IF "$(USE_IPV6)"=="true" | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-ipv6 | |
!ENDIF | |
!IF "$(USE_SSPI)"=="true" | |
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-sspi | |
!ENDIF | |
!MESSAGE configuration name: $(CONFIG_NAME_LIB) | |
BUILD_DIR=../builds/$(CONFIG_NAME_LIB) | |
LIBCURL_DIROBJ = ..\builds\$(CONFIG_NAME_LIB)-obj-lib | |
CURL_DIROBJ = ..\builds\$(CONFIG_NAME_LIB)-obj-curl | |
DIRDIST = ..\builds\$(CONFIG_NAME_LIB)\ | |
$(MODE): | |
@SET LIBCURL_DIROBJ=$(LIBCURL_DIROBJ) | |
@SET MACRO_NAME=LIBCURL_OBJS | |
@SET OUTFILE=LIBCURL_OBJS.inc | |
@gen_resp_file.bat $(LIBCURL_OBJS) | |
@SET LIBCURL_DIROBJ=$(CURL_DIROBJ) | |
@SET MACRO_NAME=CURL_OBJS | |
@SET OUTFILE=CURL_OBJS.inc | |
@gen_resp_file.bat $(CURL_OBJS) | |
@$(MAKE) /NOLOGO /F MakefileBuild.vc | |
copy_from_lib: | |
echo copying .c... | |
FOR %%i IN ($(CURLX_ONES:/=\)) DO copy %%i ..\src\ |