1 #*************************************************************************** 2 # _ _ ____ _ 3 # Project ___| | | | _ \| | 4 # / __| | | | |_) | | 5 # | (__| |_| | _ <| |___ 6 # \___|\___/|_| \_\_____| 7 # 8 # Copyright (C) 1999 - 2016, Daniel Stenberg, <daniel (a] haxx.se>, et al. 9 # 10 # This software is licensed as described in the file COPYING, which 11 # you should have received as part of this distribution. The terms 12 # are also available at https://curl.haxx.se/docs/copyright.html. 13 # 14 # You may opt to use, copy, modify, merge, publish, distribute and/or sell 15 # copies of the Software, and permit persons to whom the Software is 16 # furnished to do so, under the terms of the COPYING file. 17 # 18 # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 19 # KIND, either express or implied. 20 # 21 #*************************************************************************** 22 23 # All files in the Makefile.vc* series are generated automatically from the 24 # one made for MSVC version 6. Alas, if you want to do changes to any of the 25 # files and send back to the project, edit the version six, make your diff and 26 # mail curl-library. 27 28 ########################################################################### 29 # 30 # Makefile for building libcurl with MSVC6 31 # 32 # Usage: see usage message below 33 # Should be invoked from \lib directory 34 # Edit the paths and desired library name 35 # SSL path is only required if you intend compiling 36 # with SSL. 37 # 38 # This make file leaves the result either a .lib or .dll file 39 # in the \lib directory. It should be called from the \lib 40 # directory. 41 # 42 # An option would have been to allow the source directory to 43 # be specified, but I saw no requirement. 44 # 45 # Another option would have been to leave the .lib and .dll 46 # files in the "cfg" directory, but then the make file 47 # in \src would need to be changed. 48 # 49 ############################################################## 50 51 # ---------------------------------------------- 52 # Verify that current subdir is libcurl's 'lib' 53 # ---------------------------------------------- 54 55 !IF ! EXIST(.\curl_addrinfo.c) 56 ! MESSAGE Can not process this makefile from outside of libcurl's 'lib' subdirectory. 57 ! MESSAGE Change to libcurl's 'lib' subdirectory, and try again. 58 ! ERROR See previous message. 59 !ENDIF 60 61 # ------------------------------------------------ 62 # Makefile.msvc.names provides libcurl file names 63 # ------------------------------------------------ 64 65 !INCLUDE ..\winbuild\Makefile.msvc.names 66 67 !IFNDEF OPENSSL_PATH 68 OPENSSL_PATH = ../../openssl-1.0.2a 69 !ENDIF 70 71 !IFNDEF LIBSSH2_PATH 72 LIBSSH2_PATH = ../../libssh2-1.5.0 73 !ENDIF 74 75 !IFNDEF ZLIB_PATH 76 ZLIB_PATH = ../../zlib-1.2.8 77 !ENDIF 78 79 !IFNDEF MACHINE 80 MACHINE = X86 81 !ENDIF 82 83 # USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication 84 # without an openssl installation and offers the ability to authenticate 85 # using the "current logged in user". Since at least with MSVC6 the sspi.h 86 # header is broken it is either required to install the Windows SDK, 87 # or to fix sspi.h with adding this define at the beginning of sspi.h: 88 # #define FreeCredentialHandle FreeCredentialsHandle 89 # 90 # If, for some reason the Windows SDK is installed but not installed 91 # in the default location, you can specify WINDOWS_SDK_PATH. 92 # It can be downloaded from: 93 # https://msdn.microsoft.com/windows/bb980924.aspx 94 95 # WINDOWS_SSPI = 1 96 97 !IFDEF WINDOWS_SSPI 98 !IFNDEF WINDOWS_SDK_PATH 99 WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK" 100 !ENDIF 101 !ENDIF 102 103 ############################################################# 104 ## Nothing more to do below this line! 105 106 CCNODBG = cl.exe /O2 /DNDEBUG 107 CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /GZ 108 CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl" 109 CFLAGSWINSSL = /DUSE_SCHANNEL 110 CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include" 111 CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)" 112 CFLAGS = /I. /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL /D_BIND_TO_CURRENT_VCLIBS_VERSION=1 113 CFLAGSLIB = /DCURL_STATICLIB 114 LNKDLL = link.exe /DLL 115 LNKLIB = link.exe /lib 116 LFLAGS = /nologo /machine:$(MACHINE) 117 SSLLIBS = libeay32.lib ssleay32.lib 118 WINSSLLIBS = crypt32.lib 119 ZLIBLIBSDLL = zdll.lib 120 ZLIBLIBS = zlib.lib 121 WINLIBS = ws2_32.lib wldap32.lib advapi32.lib 122 CFLAGS = $(CFLAGS) 123 124 CFGSET = FALSE 125 126 !IFDEF WINDOWS_SSPI 127 CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include 128 !ENDIF 129 130 !IFDEF USE_IPV6 131 CFLAGS = $(CFLAGS) /DUSE_IPV6 132 !ENDIF 133 134 !IFDEF USE_IDN 135 CFLAGS = $(CFLAGS) /DUSE_WIN32_IDN /DWANT_IDN_PROTOTYPES 136 !ENDIF 137 138 ############################################################## 139 # Runtime library configuration 140 141 RTLIB = /MD 142 RTLIBD = /MDd 143 144 !IF "$(RTLIBCFG)" == "static" 145 RTLIB = /MT 146 RTLIBD = /MTd 147 !ENDIF 148 149 150 ###################### 151 # release 152 153 !IF "$(CFG)" == "release" 154 TARGET = $(LIBCURL_STA_LIB_REL) 155 DIROBJ = $(CFG) 156 LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET) 157 CC = $(CCNODBG) $(RTLIB) $(CFLAGSLIB) 158 CFGSET = TRUE 159 !ENDIF 160 161 ###################### 162 # release-ssl 163 164 !IF "$(CFG)" == "release-ssl" 165 TARGET = $(LIBCURL_STA_LIB_REL) 166 DIROBJ = $(CFG) 167 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 168 LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) 169 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB) 170 CFGSET = TRUE 171 !ENDIF 172 173 ###################### 174 # release-winssl 175 176 !IF "$(CFG)" == "release-winssl" 177 TARGET = $(LIBCURL_STA_LIB_REL) 178 DIROBJ = $(CFG) 179 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 180 LNK = $(LNKLIB) $(WINSSLLIBS) /out:$(DIROBJ)\$(TARGET) 181 CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSLIB) 182 CFGSET = TRUE 183 !ENDIF 184 185 ###################### 186 # release-zlib 187 188 !IF "$(CFG)" == "release-zlib" 189 TARGET = $(LIBCURL_STA_LIB_REL) 190 DIROBJ = $(CFG) 191 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 192 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 193 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB) 194 CFGSET = TRUE 195 !ENDIF 196 197 ###################### 198 # release-ssl-zlib 199 200 !IF "$(CFG)" == "release-ssl-zlib" 201 TARGET = $(LIBCURL_STA_LIB_REL) 202 DIROBJ = $(CFG) 203 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 204 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 205 LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 206 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 207 CFGSET = TRUE 208 !ENDIF 209 210 ###################### 211 # release-winssl-zlib 212 213 !IF "$(CFG)" == "release-winssl-zlib" 214 TARGET = $(LIBCURL_STA_LIB_REL) 215 DIROBJ = $(CFG) 216 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 217 LNK = $(LNKLIB) $(LFLAGSZLIB) $(WINSSLLIBS) /out:$(DIROBJ)\$(TARGET) 218 CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 219 CFGSET = TRUE 220 !ENDIF 221 222 ###################### 223 # release-ssl-ssh2-zlib 224 225 !IF "$(CFG)" == "release-ssl-ssh2-zlib" 226 TARGET = $(LIBCURL_STA_LIB_REL) 227 DIROBJ = $(CFG) 228 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 229 LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)" 230 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 231 LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 232 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB) 233 CFGSET = TRUE 234 !ENDIF 235 236 ###################### 237 # release-ssl-dll 238 239 !IF "$(CFG)" == "release-ssl-dll" 240 TARGET = $(LIBCURL_STA_LIB_REL) 241 DIROBJ = $(CFG) 242 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 243 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) 244 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB) 245 CFGSET = TRUE 246 !ENDIF 247 248 ###################### 249 # release-zlib-dll 250 251 !IF "$(CFG)" == "release-zlib-dll" 252 TARGET = $(LIBCURL_STA_LIB_REL) 253 DIROBJ = $(CFG) 254 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 255 LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 256 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB) 257 CFGSET = TRUE 258 !ENDIF 259 260 ###################### 261 # release-ssl-dll-zlib-dll 262 263 !IF "$(CFG)" == "release-ssl-dll-zlib-dll" 264 TARGET = $(LIBCURL_STA_LIB_REL) 265 DIROBJ = $(CFG) 266 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 267 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 268 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 269 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 270 CFGSET = TRUE 271 !ENDIF 272 273 ###################### 274 # release-dll 275 276 !IF "$(CFG)" == "release-dll" 277 TARGET = $(LIBCURL_DYN_LIB_REL) 278 DIROBJ = $(CFG) 279 LNK = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL) 280 CC = $(CCNODBG) $(RTLIB) 281 CFGSET = TRUE 282 RESOURCE = $(DIROBJ)\libcurl.res 283 !ENDIF 284 285 ###################### 286 # release-dll-ssl-dll 287 288 !IF "$(CFG)" == "release-dll-ssl-dll" 289 TARGET = $(LIBCURL_DYN_LIB_REL) 290 DIROBJ = $(CFG) 291 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 292 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL) 293 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) 294 CFGSET = TRUE 295 RESOURCE = $(DIROBJ)\libcurl.res 296 !ENDIF 297 298 ###################### 299 # release-dll-zlib-dll 300 301 !IF "$(CFG)" == "release-dll-zlib-dll" 302 TARGET = $(LIBCURL_DYN_LIB_REL) 303 DIROBJ = $(CFG) 304 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 305 LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL) 306 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) 307 CFGSET = TRUE 308 RESOURCE = $(DIROBJ)\libcurl.res 309 !ENDIF 310 311 ###################### 312 # release-dll-ssl-dll-zlib-dll 313 314 !IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll" 315 TARGET = $(LIBCURL_DYN_LIB_REL) 316 DIROBJ = $(CFG) 317 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 318 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 319 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL) 320 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) 321 CFGSET = TRUE 322 RESOURCE = $(DIROBJ)\libcurl.res 323 !ENDIF 324 325 ###################### 326 # debug 327 328 !IF "$(CFG)" == "debug" 329 TARGET = $(LIBCURL_STA_LIB_DBG) 330 DIROBJ = $(CFG) 331 LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET) 332 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB) 333 CFGSET = TRUE 334 !ENDIF 335 336 ###################### 337 # debug-ssl 338 339 !IF "$(CFG)" == "debug-ssl" 340 TARGET = $(LIBCURL_STA_LIB_DBG) 341 DIROBJ = $(CFG) 342 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 343 LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) 344 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB) 345 CFGSET = TRUE 346 !ENDIF 347 348 ###################### 349 # debug-zlib 350 351 !IF "$(CFG)" == "debug-zlib" 352 TARGET = $(LIBCURL_STA_LIB_DBG) 353 DIROBJ = $(CFG) 354 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 355 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 356 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB) 357 CFGSET = TRUE 358 !ENDIF 359 360 ###################### 361 # debug-ssl-zlib 362 363 !IF "$(CFG)" == "debug-ssl-zlib" 364 TARGET = $(LIBCURL_STA_LIB_DBG) 365 DIROBJ = $(CFG) 366 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 367 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 368 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 369 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 370 CFGSET = TRUE 371 !ENDIF 372 373 ###################### 374 # debug-ssl-ssh2-zlib 375 376 !IF "$(CFG)" == "debug-ssl-ssh2-zlib" 377 TARGET = $(LIBCURL_STA_LIB_DBG) 378 DIROBJ = $(CFG) 379 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 380 LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)" 381 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 382 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 383 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB) 384 CFGSET = TRUE 385 !ENDIF 386 387 ###################### 388 # debug-ssl-dll 389 390 !IF "$(CFG)" == "debug-ssl-dll" 391 TARGET = $(LIBCURL_STA_LIB_DBG) 392 DIROBJ = $(CFG) 393 LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll 394 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) 395 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB) 396 CFGSET = TRUE 397 !ENDIF 398 399 ###################### 400 # debug-zlib-dll 401 402 !IF "$(CFG)" == "debug-zlib-dll" 403 TARGET = $(LIBCURL_STA_LIB_DBG) 404 DIROBJ = $(CFG) 405 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 406 LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 407 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB) 408 CFGSET = TRUE 409 !ENDIF 410 411 ###################### 412 # debug-ssl-dll-zlib-dll 413 414 !IF "$(CFG)" == "debug-ssl-dll-zlib-dll" 415 TARGET = $(LIBCURL_STA_LIB_DBG) 416 DIROBJ = $(CFG) 417 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 418 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 419 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 420 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 421 CFGSET = TRUE 422 !ENDIF 423 424 ###################### 425 # debug-dll 426 427 !IF "$(CFG)" == "debug-dll" 428 TARGET = $(LIBCURL_DYN_LIB_DBG) 429 DIROBJ = $(CFG) 430 LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB) 431 CC = $(CCDEBUG) $(RTLIBD) 432 CFGSET = TRUE 433 RESOURCE = $(DIROBJ)\libcurl.res 434 !ENDIF 435 436 ###################### 437 # debug-dll-ssl-dll 438 439 !IF "$(CFG)" == "debug-dll-ssl-dll" 440 TARGET = $(LIBCURL_DYN_LIB_DBG) 441 DIROBJ = $(CFG) 442 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 443 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB) 444 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) 445 CFGSET = TRUE 446 RESOURCE = $(DIROBJ)\libcurl.res 447 !ENDIF 448 449 ###################### 450 # debug-dll-zlib-dll 451 452 !IF "$(CFG)" == "debug-dll-zlib-dll" 453 TARGET = $(LIBCURL_DYN_LIB_DBG) 454 DIROBJ = $(CFG) 455 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 456 LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB) 457 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) 458 CFGSET = TRUE 459 RESOURCE = $(DIROBJ)\libcurl.res 460 !ENDIF 461 462 ###################### 463 # debug-dll-ssl-dll-zlib-dll 464 465 !IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll" 466 TARGET = $(LIBCURL_DYN_LIB_DBG) 467 DIROBJ = $(CFG) 468 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 469 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 470 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB) 471 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) 472 CFGSET = TRUE 473 RESOURCE = $(DIROBJ)\libcurl.res 474 !ENDIF 475 476 ####################### 477 # Usage 478 # 479 !IF "$(CFGSET)" == "FALSE" && "$(CFG)" != "" 480 !MESSAGE Usage: nmake /f makefile.vc6 CFG=<config> <target> 481 !MESSAGE where <config> is one of: 482 !MESSAGE release - release static library 483 !MESSAGE release-ssl - release static library with ssl 484 !MESSAGE release-zlib - release static library with zlib 485 !MESSAGE release-ssl-zlib - release static library with ssl and zlib 486 !MESSAGE release-ssl-ssh2-zlib - release static library with ssl, ssh2 and zlib 487 !MESSAGE release-ssl-dll - release static library with dynamic ssl 488 !MESSAGE release-zlib-dll - release static library with dynamic zlib 489 !MESSAGE release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynamic zlib 490 !MESSAGE release-dll - release dynamic library 491 !MESSAGE release-dll-ssl-dll - release dynamic library with dynamic ssl 492 !MESSAGE release-dll-zlib-dll - release dynamic library with dynamic zlib 493 !MESSAGE release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib 494 !MESSAGE debug - debug static library 495 !MESSAGE debug-ssl - debug static library with ssl 496 !MESSAGE debug-zlib - debug static library with zlib 497 !MESSAGE debug-ssl-zlib - debug static library with ssl and zlib 498 !MESSAGE debug-ssl-ssh2-zlib - debug static library with ssl, ssh2 and zlib 499 !MESSAGE debug-ssl-dll - debug static library with dynamic ssl 500 !MESSAGE debug-zlib-dll - debug static library with dynamic zlib 501 !MESSAGE debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib 502 !MESSAGE debug-dll - debug dynamic library 503 !MESSAGE debug-dll-ssl-dll - debug dynamic library with dynamic ssl 504 !MESSAGE debug-dll-zlib-dll - debug dynamic library with dynamic zlib1 505 !MESSAGE debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynamic zlib 506 !MESSAGE <target> can be left blank in which case all is assumed 507 !ERROR please choose a valid configuration "$(CFG)" 508 !ENDIF 509 510 ####################### 511 # Only the clean target can be used if a config was not provided. 512 # 513 !IF "$(CFGSET)" == "FALSE" 514 clean: 515 @-erase /s *.dll 2> NUL 516 @-erase /s *.exp 2> NUL 517 @-erase /s *.idb 2> NUL 518 @-erase /s *.lib 2> NUL 519 @-erase /s *.obj 2> NUL 520 @-erase /s *.pch 2> NUL 521 @-erase /s *.pdb 2> NUL 522 @-erase /s *.res 2> NUL 523 !ELSE 524 # A config was provided, so the library can be built. 525 # 526 X_OBJS= \ 527 $(DIROBJ)\amigaos.obj \ 528 $(DIROBJ)\asyn-ares.obj \ 529 $(DIROBJ)\asyn-thread.obj \ 530 $(DIROBJ)\axtls.obj \ 531 $(DIROBJ)\base64.obj \ 532 $(DIROBJ)\conncache.obj \ 533 $(DIROBJ)\connect.obj \ 534 $(DIROBJ)\content_encoding.obj \ 535 $(DIROBJ)\cookie.obj \ 536 $(DIROBJ)\curl_addrinfo.obj \ 537 $(DIROBJ)\curl_des.obj \ 538 $(DIROBJ)\curl_endian.obj \ 539 $(DIROBJ)\curl_fnmatch.obj \ 540 $(DIROBJ)\curl_gethostname.obj \ 541 $(DIROBJ)\curl_gssapi.obj \ 542 $(DIROBJ)\curl_memrchr.obj \ 543 $(DIROBJ)\curl_multibyte.obj \ 544 $(DIROBJ)\curl_ntlm_core.obj \ 545 $(DIROBJ)\curl_ntlm_wb.obj \ 546 $(DIROBJ)\curl_rtmp.obj \ 547 $(DIROBJ)\curl_sasl.obj \ 548 $(DIROBJ)\curl_sspi.obj \ 549 $(DIROBJ)\curl_threads.obj \ 550 $(DIROBJ)\cyassl.obj \ 551 $(DIROBJ)\darwinssl.obj \ 552 $(DIROBJ)\dict.obj \ 553 $(DIROBJ)\dotdot.obj \ 554 $(DIROBJ)\easy.obj \ 555 $(DIROBJ)\escape.obj \ 556 $(DIROBJ)\file.obj \ 557 $(DIROBJ)\fileinfo.obj \ 558 $(DIROBJ)\formdata.obj \ 559 $(DIROBJ)\ftp.obj \ 560 $(DIROBJ)\ftplistparser.obj \ 561 $(DIROBJ)\getenv.obj \ 562 $(DIROBJ)\getinfo.obj \ 563 $(DIROBJ)\gopher.obj \ 564 $(DIROBJ)\gtls.obj \ 565 $(DIROBJ)\hash.obj \ 566 $(DIROBJ)\hmac.obj \ 567 $(DIROBJ)\hostasyn.obj \ 568 $(DIROBJ)\hostcheck.obj \ 569 $(DIROBJ)\hostip.obj \ 570 $(DIROBJ)\hostip4.obj \ 571 $(DIROBJ)\hostip6.obj \ 572 $(DIROBJ)\hostsyn.obj \ 573 $(DIROBJ)\http.obj \ 574 $(DIROBJ)\http_chunks.obj \ 575 $(DIROBJ)\http_digest.obj \ 576 $(DIROBJ)\http_negotiate.obj \ 577 $(DIROBJ)\http_ntlm.obj \ 578 $(DIROBJ)\http_proxy.obj \ 579 $(DIROBJ)\idn_win32.obj \ 580 $(DIROBJ)\if2ip.obj \ 581 $(DIROBJ)\imap.obj \ 582 $(DIROBJ)\inet_ntop.obj \ 583 $(DIROBJ)\inet_pton.obj \ 584 $(DIROBJ)\krb5.obj \ 585 $(DIROBJ)\ldap.obj \ 586 $(DIROBJ)\llist.obj \ 587 $(DIROBJ)\md4.obj \ 588 $(DIROBJ)\md5.obj \ 589 $(DIROBJ)\memdebug.obj \ 590 $(DIROBJ)\mprintf.obj \ 591 $(DIROBJ)\multi.obj \ 592 $(DIROBJ)\netrc.obj \ 593 $(DIROBJ)\non-ascii.obj \ 594 $(DIROBJ)\nonblock.obj \ 595 $(DIROBJ)\nss.obj \ 596 $(DIROBJ)\openldap.obj \ 597 $(DIROBJ)\parsedate.obj \ 598 $(DIROBJ)\pingpong.obj \ 599 $(DIROBJ)\pipeline.obj \ 600 $(DIROBJ)\polarssl.obj \ 601 $(DIROBJ)\polarssl_threadlock.obj \ 602 $(DIROBJ)\pop3.obj \ 603 $(DIROBJ)\progress.obj \ 604 $(DIROBJ)\rawstr.obj \ 605 $(DIROBJ)\rtsp.obj \ 606 $(DIROBJ)\schannel.obj \ 607 $(DIROBJ)\security.obj \ 608 $(DIROBJ)\select.obj \ 609 $(DIROBJ)\sendf.obj \ 610 $(DIROBJ)\share.obj \ 611 $(DIROBJ)\slist.obj \ 612 $(DIROBJ)\smb.obj \ 613 $(DIROBJ)\smtp.obj \ 614 $(DIROBJ)\socks.obj \ 615 $(DIROBJ)\socks_gssapi.obj \ 616 $(DIROBJ)\socks_sspi.obj \ 617 $(DIROBJ)\speedcheck.obj \ 618 $(DIROBJ)\splay.obj \ 619 $(DIROBJ)\ssh.obj \ 620 $(DIROBJ)\system_win32.obj \ 621 $(DIROBJ)\vauth.obj \ 622 $(DIROBJ)\cleartext.obj \ 623 $(DIROBJ)\cram.obj \ 624 $(DIROBJ)\digest.obj \ 625 $(DIROBJ)\digest_sspi.obj \ 626 $(DIROBJ)\krb5_gssapi.obj \ 627 $(DIROBJ)\krb5_sspi.obj \ 628 $(DIROBJ)\ntlm.obj \ 629 $(DIROBJ)\ntlm_sspi.obj \ 630 $(DIROBJ)\oauth2.obj \ 631 $(DIROBJ)\spnego_gssapi.obj \ 632 $(DIROBJ)\spnego_sspi.obj \ 633 $(DIROBJ)\vtls.obj \ 634 $(DIROBJ)\openssl.obj \ 635 $(DIROBJ)\strdup.obj \ 636 $(DIROBJ)\strequal.obj \ 637 $(DIROBJ)\strerror.obj \ 638 $(DIROBJ)\strtok.obj \ 639 $(DIROBJ)\strtoofft.obj \ 640 $(DIROBJ)\telnet.obj \ 641 $(DIROBJ)\tftp.obj \ 642 $(DIROBJ)\timeval.obj \ 643 $(DIROBJ)\transfer.obj \ 644 $(DIROBJ)\url.obj \ 645 $(DIROBJ)\version.obj \ 646 $(DIROBJ)\warnless.obj \ 647 $(DIROBJ)\wildcard.obj \ 648 $(DIROBJ)\x509asn1.obj \ 649 $(RESOURCE) 650 651 all : $(TARGET) 652 653 $(TARGET): $(X_OBJS) 654 $(LNK) $(LFLAGS) $(X_OBJS) 655 -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_REL) . /y 656 -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_DBG) . /y 657 -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_REL) . /y 658 -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_DBG) . /y 659 -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_REL) . /y 660 -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) . /y 661 -xcopy $(DIROBJ)\*.exp . /y 662 -xcopy $(DIROBJ)\*.pdb . /y 663 664 $(X_OBJS): $(DIROBJ) 665 666 $(DIROBJ): 667 @if not exist "$(DIROBJ)" mkdir $(DIROBJ) 668 669 .SUFFIXES: .c .obj .res 670 671 {.\}.c{$(DIROBJ)\}.obj: 672 $(CC) $(CFLAGS) /Fo"$@" $< 673 674 {.\vauth\}.c{$(DIROBJ)\}.obj: 675 $(CC) $(CFLAGS) /Fo"$@" $< 676 677 {.\vtls\}.c{$(DIROBJ)\}.obj: 678 $(CC) $(CFLAGS) /Fo"$@" $< 679 680 debug-dll\libcurl.res \ 681 debug-dll-ssl-dll\libcurl.res \ 682 debug-dll-zlib-dll\libcurl.res \ 683 debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc 684 rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc 685 686 release-dll\libcurl.res \ 687 release-dll-ssl-dll\libcurl.res \ 688 release-dll-zlib-dll\libcurl.res \ 689 release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc 690 rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc 691 !ENDIF # End of case where a config was provided. 692