1 #***************************************************************************
\r
3 # Project ___| | | | _ \| |
\r
4 # / __| | | | |_) | |
\r
5 # | (__| |_| | _ <| |___
\r
6 # \___|\___/|_| \_\_____|
\r
8 # Copyright (C) 1999 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
\r
10 # This software is licensed as described in the file COPYING, which
\r
11 # you should have received as part of this distribution. The terms
\r
12 # are also available at https://curl.haxx.se/docs/copyright.html.
\r
14 # You may opt to use, copy, modify, merge, publish, distribute and/or sell
\r
15 # copies of the Software, and permit persons to whom the Software is
\r
16 # furnished to do so, under the terms of the COPYING file.
\r
18 # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
\r
19 # KIND, either express or implied.
\r
21 #***************************************************************************
\r
23 # All files in the Makefile.vc* series are generated automatically from the
\r
24 # one made for MSVC version 6. Alas, if you want to do changes to any of the
\r
25 # files and send back to the project, edit the version six, make your diff and
\r
26 # mail curl-library.
\r
28 ###########################################################################
\r
30 # Makefile for building libcurl with MSVC9
\r
32 # Usage: see usage message below
\r
33 # Should be invoked from \lib directory
\r
34 # Edit the paths and desired library name
\r
35 # SSL path is only required if you intend compiling
\r
38 # This make file leaves the result either a .lib or .dll file
\r
39 # in the \lib directory. It should be called from the \lib
\r
42 # An option would have been to allow the source directory to
\r
43 # be specified, but I saw no requirement.
\r
45 # Another option would have been to leave the .lib and .dll
\r
46 # files in the "cfg" directory, but then the make file
\r
47 # in \src would need to be changed.
\r
49 ##############################################################
\r
51 # ----------------------------------------------
\r
52 # Verify that current subdir is libcurl's 'lib'
\r
53 # ----------------------------------------------
\r
55 !IF ! EXIST(.\curl_addrinfo.c)
\r
56 ! MESSAGE Can not process this makefile from outside of libcurl's 'lib' subdirectory.
\r
57 ! MESSAGE Change to libcurl's 'lib' subdirectory, and try again.
\r
58 ! ERROR See previous message.
\r
61 # ------------------------------------------------
\r
62 # Makefile.msvc.names provides libcurl file names
\r
63 # ------------------------------------------------
\r
65 !INCLUDE ..\winbuild\Makefile.msvc.names
\r
67 !IFNDEF OPENSSL_PATH
\r
68 OPENSSL_PATH = ../../openssl-1.0.2a
\r
71 !IFNDEF LIBSSH2_PATH
\r
72 LIBSSH2_PATH = ../../libssh2-1.5.0
\r
76 ZLIB_PATH = ../../zlib-1.2.8
\r
83 # USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
\r
84 # without an openssl installation and offers the ability to authenticate
\r
85 # using the "current logged in user". Since at least with MSVC9 the sspi.h
\r
86 # header is broken it is either required to install the Windows SDK,
\r
87 # or to fix sspi.h with adding this define at the beginning of sspi.h:
\r
88 # #define FreeCredentialHandle FreeCredentialsHandle
\r
90 # If, for some reason the Windows SDK is installed but not installed
\r
91 # in the default location, you can specify WINDOWS_SDK_PATH.
\r
92 # It can be downloaded from:
\r
93 # https://msdn.microsoft.com/windows/bb980924.aspx
\r
98 !IFNDEF WINDOWS_SDK_PATH
\r
99 WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
\r
103 #############################################################
\r
104 ## Nothing more to do below this line!
\r
106 CCNODBG = cl.exe /O2 /DNDEBUG
\r
107 CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /RTC1
\r
108 CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
\r
109 CFLAGSWINSSL = /DUSE_SCHANNEL
\r
110 CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
\r
111 CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
\r
112 CFLAGS = /I. /I../include /nologo /W3 /EHsc /DWIN32 /FD /c /DBUILDING_LIBCURL /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
\r
113 CFLAGSLIB = /DCURL_STATICLIB
\r
114 LNKDLL = link.exe /DLL
\r
115 LNKLIB = link.exe /lib
\r
116 LFLAGS = /nologo /machine:$(MACHINE)
\r
117 SSLLIBS = libeay32.lib ssleay32.lib
\r
118 ZLIBLIBSDLL = zdll.lib
\r
119 ZLIBLIBS = zlib.lib
\r
120 WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
\r
125 !IFDEF WINDOWS_SSPI
\r
126 CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
\r
130 CFLAGS = $(CFLAGS) /DUSE_IPV6
\r
134 CFLAGS = $(CFLAGS) /DUSE_WIN32_IDN /DWANT_IDN_PROTOTYPES
\r
137 ##############################################################
\r
138 # Runtime library configuration
\r
143 !IF "$(RTLIBCFG)" == "static"
\r
149 ######################
\r
152 !IF "$(CFG)" == "release"
\r
153 TARGET = $(LIBCURL_STA_LIB_REL)
\r
155 LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
\r
156 CC = $(CCNODBG) $(RTLIB) $(CFLAGSLIB)
\r
160 ######################
\r
163 !IF "$(CFG)" == "release-ssl"
\r
164 TARGET = $(LIBCURL_STA_LIB_REL)
\r
166 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
\r
167 LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
\r
168 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
\r
172 ######################
\r
175 !IF "$(CFG)" == "release-winssl"
\r
176 TARGET = $(LIBCURL_STA_LIB_REL)
\r
178 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
179 LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
\r
180 CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSLIB)
\r
184 ######################
\r
187 !IF "$(CFG)" == "release-zlib"
\r
188 TARGET = $(LIBCURL_STA_LIB_REL)
\r
190 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
191 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
192 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
196 ######################
\r
199 !IF "$(CFG)" == "release-ssl-zlib"
\r
200 TARGET = $(LIBCURL_STA_LIB_REL)
\r
202 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
\r
203 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
204 LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
205 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
209 ######################
\r
210 # release-winssl-zlib
\r
212 !IF "$(CFG)" == "release-winssl-zlib"
\r
213 TARGET = $(LIBCURL_STA_LIB_REL)
\r
215 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
216 LNK = $(LNKLIB) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
217 CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
221 ######################
\r
222 # release-ssl-ssh2-zlib
\r
224 !IF "$(CFG)" == "release-ssl-ssh2-zlib"
\r
225 TARGET = $(LIBCURL_STA_LIB_REL)
\r
227 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
\r
228 LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
\r
229 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
230 LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
231 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
235 ######################
\r
238 !IF "$(CFG)" == "release-ssl-dll"
\r
239 TARGET = $(LIBCURL_STA_LIB_REL)
\r
241 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
\r
242 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
\r
243 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
\r
247 ######################
\r
250 !IF "$(CFG)" == "release-zlib-dll"
\r
251 TARGET = $(LIBCURL_STA_LIB_REL)
\r
253 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
254 LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
255 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
259 ######################
\r
260 # release-ssl-dll-zlib-dll
\r
262 !IF "$(CFG)" == "release-ssl-dll-zlib-dll"
\r
263 TARGET = $(LIBCURL_STA_LIB_REL)
\r
265 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
266 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
\r
267 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
268 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
272 ######################
\r
275 !IF "$(CFG)" == "release-dll"
\r
276 TARGET = $(LIBCURL_DYN_LIB_REL)
\r
278 LNK = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
\r
279 CC = $(CCNODBG) $(RTLIB)
\r
281 RESOURCE = $(DIROBJ)\libcurl.res
\r
284 ######################
\r
285 # release-dll-ssl-dll
\r
287 !IF "$(CFG)" == "release-dll-ssl-dll"
\r
288 TARGET = $(LIBCURL_DYN_LIB_REL)
\r
290 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
\r
291 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
\r
292 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)
\r
294 RESOURCE = $(DIROBJ)\libcurl.res
\r
297 ######################
\r
298 # release-dll-zlib-dll
\r
300 !IF "$(CFG)" == "release-dll-zlib-dll"
\r
301 TARGET = $(LIBCURL_DYN_LIB_REL)
\r
303 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
304 LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
\r
305 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB)
\r
307 RESOURCE = $(DIROBJ)\libcurl.res
\r
310 ######################
\r
311 # release-dll-ssl-dll-zlib-dll
\r
313 !IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
\r
314 TARGET = $(LIBCURL_DYN_LIB_REL)
\r
316 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
317 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
\r
318 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
\r
319 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB)
\r
321 RESOURCE = $(DIROBJ)\libcurl.res
\r
324 ######################
\r
327 !IF "$(CFG)" == "debug"
\r
328 TARGET = $(LIBCURL_STA_LIB_DBG)
\r
330 LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
\r
331 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB)
\r
335 ######################
\r
338 !IF "$(CFG)" == "debug-ssl"
\r
339 TARGET = $(LIBCURL_STA_LIB_DBG)
\r
341 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
\r
342 LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
\r
343 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
\r
347 ######################
\r
350 !IF "$(CFG)" == "debug-zlib"
\r
351 TARGET = $(LIBCURL_STA_LIB_DBG)
\r
353 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
354 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
355 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
359 ######################
\r
362 !IF "$(CFG)" == "debug-ssl-zlib"
\r
363 TARGET = $(LIBCURL_STA_LIB_DBG)
\r
365 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
366 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
\r
367 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
368 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
372 ######################
\r
373 # debug-ssl-ssh2-zlib
\r
375 !IF "$(CFG)" == "debug-ssl-ssh2-zlib"
\r
376 TARGET = $(LIBCURL_STA_LIB_DBG)
\r
378 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
379 LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
\r
380 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
\r
381 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
382 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
386 ######################
\r
389 !IF "$(CFG)" == "debug-ssl-dll"
\r
390 TARGET = $(LIBCURL_STA_LIB_DBG)
\r
392 LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll
\r
393 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
\r
394 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
\r
398 ######################
\r
401 !IF "$(CFG)" == "debug-zlib-dll"
\r
402 TARGET = $(LIBCURL_STA_LIB_DBG)
\r
404 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
405 LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
406 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
410 ######################
\r
411 # debug-ssl-dll-zlib-dll
\r
413 !IF "$(CFG)" == "debug-ssl-dll-zlib-dll"
\r
414 TARGET = $(LIBCURL_STA_LIB_DBG)
\r
416 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
417 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
\r
418 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
\r
419 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
\r
423 ######################
\r
426 !IF "$(CFG)" == "debug-dll"
\r
427 TARGET = $(LIBCURL_DYN_LIB_DBG)
\r
429 LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
\r
430 CC = $(CCDEBUG) $(RTLIBD)
\r
432 RESOURCE = $(DIROBJ)\libcurl.res
\r
435 ######################
\r
436 # debug-dll-ssl-dll
\r
438 !IF "$(CFG)" == "debug-dll-ssl-dll"
\r
439 TARGET = $(LIBCURL_DYN_LIB_DBG)
\r
441 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
\r
442 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
\r
443 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL)
\r
445 RESOURCE = $(DIROBJ)\libcurl.res
\r
448 ######################
\r
449 # debug-dll-zlib-dll
\r
451 !IF "$(CFG)" == "debug-dll-zlib-dll"
\r
452 TARGET = $(LIBCURL_DYN_LIB_DBG)
\r
454 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
455 LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
\r
456 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB)
\r
458 RESOURCE = $(DIROBJ)\libcurl.res
\r
461 ######################
\r
462 # debug-dll-ssl-dll-zlib-dll
\r
464 !IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll"
\r
465 TARGET = $(LIBCURL_DYN_LIB_DBG)
\r
467 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
\r
468 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
\r
469 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
\r
470 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB)
\r
472 RESOURCE = $(DIROBJ)\libcurl.res
\r
475 #######################
\r
478 !IF "$(CFGSET)" == "FALSE" && "$(CFG)" != ""
\r
479 !MESSAGE Usage: nmake /f makefile.vc9 CFG=<config> <target>
\r
480 !MESSAGE where <config> is one of:
\r
481 !MESSAGE release - release static library
\r
482 !MESSAGE release-ssl - release static library with ssl
\r
483 !MESSAGE release-zlib - release static library with zlib
\r
484 !MESSAGE release-ssl-zlib - release static library with ssl and zlib
\r
485 !MESSAGE release-ssl-ssh2-zlib - release static library with ssl, ssh2 and zlib
\r
486 !MESSAGE release-ssl-dll - release static library with dynamic ssl
\r
487 !MESSAGE release-zlib-dll - release static library with dynamic zlib
\r
488 !MESSAGE release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynamic zlib
\r
489 !MESSAGE release-dll - release dynamic library
\r
490 !MESSAGE release-dll-ssl-dll - release dynamic library with dynamic ssl
\r
491 !MESSAGE release-dll-zlib-dll - release dynamic library with dynamic zlib
\r
492 !MESSAGE release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib
\r
493 !MESSAGE debug - debug static library
\r
494 !MESSAGE debug-ssl - debug static library with ssl
\r
495 !MESSAGE debug-zlib - debug static library with zlib
\r
496 !MESSAGE debug-ssl-zlib - debug static library with ssl and zlib
\r
497 !MESSAGE debug-ssl-ssh2-zlib - debug static library with ssl, ssh2 and zlib
\r
498 !MESSAGE debug-ssl-dll - debug static library with dynamic ssl
\r
499 !MESSAGE debug-zlib-dll - debug static library with dynamic zlib
\r
500 !MESSAGE debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib
\r
501 !MESSAGE debug-dll - debug dynamic library
\r
502 !MESSAGE debug-dll-ssl-dll - debug dynamic library with dynamic ssl
\r
503 !MESSAGE debug-dll-zlib-dll - debug dynamic library with dynamic zlib1
\r
504 !MESSAGE debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynamic zlib
\r
505 !MESSAGE <target> can be left blank in which case all is assumed
\r
506 !ERROR please choose a valid configuration "$(CFG)"
\r
509 #######################
\r
510 # Only the clean target can be used if a config was not provided.
\r
512 !IF "$(CFGSET)" == "FALSE"
\r
514 @-erase /s *.dll 2> NUL
\r
515 @-erase /s *.exp 2> NUL
\r
516 @-erase /s *.idb 2> NUL
\r
517 @-erase /s *.lib 2> NUL
\r
518 @-erase /s *.obj 2> NUL
\r
519 @-erase /s *.pch 2> NUL
\r
520 @-erase /s *.pdb 2> NUL
\r
521 @-erase /s *.res 2> NUL
\r
523 # A config was provided, so the library can be built.
\r
526 $(DIROBJ)\amigaos.obj \
\r
527 $(DIROBJ)\asyn-ares.obj \
\r
528 $(DIROBJ)\asyn-thread.obj \
\r
529 $(DIROBJ)\axtls.obj \
\r
530 $(DIROBJ)\base64.obj \
\r
531 $(DIROBJ)\conncache.obj \
\r
532 $(DIROBJ)\connect.obj \
\r
533 $(DIROBJ)\content_encoding.obj \
\r
534 $(DIROBJ)\cookie.obj \
\r
535 $(DIROBJ)\curl_addrinfo.obj \
\r
536 $(DIROBJ)\curl_des.obj \
\r
537 $(DIROBJ)\curl_endian.obj \
\r
538 $(DIROBJ)\curl_fnmatch.obj \
\r
539 $(DIROBJ)\curl_gethostname.obj \
\r
540 $(DIROBJ)\curl_gssapi.obj \
\r
541 $(DIROBJ)\curl_memrchr.obj \
\r
542 $(DIROBJ)\curl_multibyte.obj \
\r
543 $(DIROBJ)\curl_ntlm_core.obj \
\r
544 $(DIROBJ)\curl_ntlm_wb.obj \
\r
545 $(DIROBJ)\curl_rtmp.obj \
\r
546 $(DIROBJ)\curl_sasl.obj \
\r
547 $(DIROBJ)\curl_sspi.obj \
\r
548 $(DIROBJ)\curl_threads.obj \
\r
549 $(DIROBJ)\cyassl.obj \
\r
550 $(DIROBJ)\darwinssl.obj \
\r
551 $(DIROBJ)\dict.obj \
\r
552 $(DIROBJ)\dotdot.obj \
\r
553 $(DIROBJ)\easy.obj \
\r
554 $(DIROBJ)\escape.obj \
\r
555 $(DIROBJ)\file.obj \
\r
556 $(DIROBJ)\fileinfo.obj \
\r
557 $(DIROBJ)\formdata.obj \
\r
558 $(DIROBJ)\ftp.obj \
\r
559 $(DIROBJ)\ftplistparser.obj \
\r
560 $(DIROBJ)\getenv.obj \
\r
561 $(DIROBJ)\getinfo.obj \
\r
562 $(DIROBJ)\gopher.obj \
\r
563 $(DIROBJ)\gtls.obj \
\r
564 $(DIROBJ)\hash.obj \
\r
565 $(DIROBJ)\hmac.obj \
\r
566 $(DIROBJ)\hostasyn.obj \
\r
567 $(DIROBJ)\hostcheck.obj \
\r
568 $(DIROBJ)\hostip.obj \
\r
569 $(DIROBJ)\hostip4.obj \
\r
570 $(DIROBJ)\hostip6.obj \
\r
571 $(DIROBJ)\hostsyn.obj \
\r
572 $(DIROBJ)\http.obj \
\r
573 $(DIROBJ)\http_chunks.obj \
\r
574 $(DIROBJ)\http_digest.obj \
\r
575 $(DIROBJ)\http_negotiate.obj \
\r
576 $(DIROBJ)\http_ntlm.obj \
\r
577 $(DIROBJ)\http_proxy.obj \
\r
578 $(DIROBJ)\idn_win32.obj \
\r
579 $(DIROBJ)\if2ip.obj \
\r
580 $(DIROBJ)\imap.obj \
\r
581 $(DIROBJ)\inet_ntop.obj \
\r
582 $(DIROBJ)\inet_pton.obj \
\r
583 $(DIROBJ)\krb5.obj \
\r
584 $(DIROBJ)\ldap.obj \
\r
585 $(DIROBJ)\llist.obj \
\r
586 $(DIROBJ)\md4.obj \
\r
587 $(DIROBJ)\md5.obj \
\r
588 $(DIROBJ)\memdebug.obj \
\r
589 $(DIROBJ)\mprintf.obj \
\r
590 $(DIROBJ)\multi.obj \
\r
591 $(DIROBJ)\netrc.obj \
\r
592 $(DIROBJ)\non-ascii.obj \
\r
593 $(DIROBJ)\nonblock.obj \
\r
594 $(DIROBJ)\nss.obj \
\r
595 $(DIROBJ)\openldap.obj \
\r
596 $(DIROBJ)\parsedate.obj \
\r
597 $(DIROBJ)\pingpong.obj \
\r
598 $(DIROBJ)\pipeline.obj \
\r
599 $(DIROBJ)\polarssl.obj \
\r
600 $(DIROBJ)\polarssl_threadlock.obj \
\r
601 $(DIROBJ)\pop3.obj \
\r
602 $(DIROBJ)\progress.obj \
\r
603 $(DIROBJ)\rawstr.obj \
\r
604 $(DIROBJ)\rtsp.obj \
\r
605 $(DIROBJ)\schannel.obj \
\r
606 $(DIROBJ)\security.obj \
\r
607 $(DIROBJ)\select.obj \
\r
608 $(DIROBJ)\sendf.obj \
\r
609 $(DIROBJ)\share.obj \
\r
610 $(DIROBJ)\slist.obj \
\r
611 $(DIROBJ)\smb.obj \
\r
612 $(DIROBJ)\smtp.obj \
\r
613 $(DIROBJ)\socks.obj \
\r
614 $(DIROBJ)\socks_gssapi.obj \
\r
615 $(DIROBJ)\socks_sspi.obj \
\r
616 $(DIROBJ)\speedcheck.obj \
\r
617 $(DIROBJ)\splay.obj \
\r
618 $(DIROBJ)\ssh.obj \
\r
619 $(DIROBJ)\system_win32.obj \
\r
620 $(DIROBJ)\vauth.obj \
\r
621 $(DIROBJ)\cleartext.obj \
\r
622 $(DIROBJ)\cram.obj \
\r
623 $(DIROBJ)\digest.obj \
\r
624 $(DIROBJ)\digest_sspi.obj \
\r
625 $(DIROBJ)\krb5_gssapi.obj \
\r
626 $(DIROBJ)\krb5_sspi.obj \
\r
627 $(DIROBJ)\ntlm.obj \
\r
628 $(DIROBJ)\ntlm_sspi.obj \
\r
629 $(DIROBJ)\oauth2.obj \
\r
630 $(DIROBJ)\spnego_gssapi.obj \
\r
631 $(DIROBJ)\spnego_sspi.obj \
\r
632 $(DIROBJ)\vtls.obj \
\r
633 $(DIROBJ)\openssl.obj \
\r
634 $(DIROBJ)\strdup.obj \
\r
635 $(DIROBJ)\strequal.obj \
\r
636 $(DIROBJ)\strerror.obj \
\r
637 $(DIROBJ)\strtok.obj \
\r
638 $(DIROBJ)\strtoofft.obj \
\r
639 $(DIROBJ)\telnet.obj \
\r
640 $(DIROBJ)\tftp.obj \
\r
641 $(DIROBJ)\timeval.obj \
\r
642 $(DIROBJ)\transfer.obj \
\r
643 $(DIROBJ)\url.obj \
\r
644 $(DIROBJ)\version.obj \
\r
645 $(DIROBJ)\warnless.obj \
\r
646 $(DIROBJ)\wildcard.obj \
\r
651 $(TARGET): $(X_OBJS)
\r
652 $(LNK) $(LFLAGS) $(X_OBJS)
\r
653 -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_REL) . /y
\r
654 -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_DBG) . /y
\r
655 -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_REL) . /y
\r
656 -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_DBG) . /y
\r
657 -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_REL) . /y
\r
658 -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) . /y
\r
659 -xcopy $(DIROBJ)\*.exp . /y
\r
660 -xcopy $(DIROBJ)\*.pdb . /y
\r
662 $(X_OBJS): $(DIROBJ)
\r
665 @if not exist "$(DIROBJ)" mkdir $(DIROBJ)
\r
667 .SUFFIXES: .c .obj .res
\r
669 {.\}.c{$(DIROBJ)\}.obj:
\r
670 $(CC) $(CFLAGS) /Fo"$@" $<
\r
672 {.\vauth\}.c{$(DIROBJ)\}.obj:
\r
673 $(CC) $(CFLAGS) /Fo"$@" $<
\r
675 {.\vtls\}.c{$(DIROBJ)\}.obj:
\r
676 $(CC) $(CFLAGS) /Fo"$@" $<
\r
678 debug-dll\libcurl.res \
\r
679 debug-dll-ssl-dll\libcurl.res \
\r
680 debug-dll-zlib-dll\libcurl.res \
\r
681 debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
\r
682 rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
\r
684 release-dll\libcurl.res \
\r
685 release-dll-ssl-dll\libcurl.res \
\r
686 release-dll-zlib-dll\libcurl.res \
\r
687 release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
\r
688 rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
\r
689 !ENDIF # End of case where a config was provided.
\r