1 #*************************************************************************** 2 # _ _ ____ _ 3 # Project ___| | | | _ \| | 4 # / __| | | | |_) | | 5 # | (__| |_| | _ <| |___ 6 # \___|\___/|_| \_\_____| 7 # 8 # Copyright (C) 1999 - 2015, 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 http://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 ZLIBLIBSDLL = zdll.lib 119 ZLIBLIBS = zlib.lib 120 WINLIBS = ws2_32.lib wldap32.lib advapi32.lib 121 CFLAGS = $(CFLAGS) 122 123 CFGSET = FALSE 124 125 !IFDEF WINDOWS_SSPI 126 CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include 127 !ENDIF 128 129 !IFDEF USE_IPV6 130 CFLAGS = $(CFLAGS) /DUSE_IPV6 131 !ENDIF 132 133 !IFDEF USE_IDN 134 CFLAGS = $(CFLAGS) /DUSE_WIN32_IDN /DWANT_IDN_PROTOTYPES 135 !ENDIF 136 137 ############################################################## 138 # Runtime library configuration 139 140 RTLIB = /MD 141 RTLIBD = /MDd 142 143 !IF "$(RTLIBCFG)" == "static" 144 RTLIB = /MT 145 RTLIBD = /MTd 146 !ENDIF 147 148 149 ###################### 150 # release 151 152 !IF "$(CFG)" == "release" 153 TARGET = $(LIBCURL_STA_LIB_REL) 154 DIROBJ = $(CFG) 155 LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET) 156 CC = $(CCNODBG) $(RTLIB) $(CFLAGSLIB) 157 CFGSET = TRUE 158 !ENDIF 159 160 ###################### 161 # release-ssl 162 163 !IF "$(CFG)" == "release-ssl" 164 TARGET = $(LIBCURL_STA_LIB_REL) 165 DIROBJ = $(CFG) 166 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 167 LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) 168 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB) 169 CFGSET = TRUE 170 !ENDIF 171 172 ###################### 173 # release-winssl 174 175 !IF "$(CFG)" == "release-winssl" 176 TARGET = $(LIBCURL_STA_LIB_REL) 177 DIROBJ = $(CFG) 178 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 179 LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET) 180 CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSLIB) 181 CFGSET = TRUE 182 !ENDIF 183 184 ###################### 185 # release-zlib 186 187 !IF "$(CFG)" == "release-zlib" 188 TARGET = $(LIBCURL_STA_LIB_REL) 189 DIROBJ = $(CFG) 190 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 191 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 192 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB) 193 CFGSET = TRUE 194 !ENDIF 195 196 ###################### 197 # release-ssl-zlib 198 199 !IF "$(CFG)" == "release-ssl-zlib" 200 TARGET = $(LIBCURL_STA_LIB_REL) 201 DIROBJ = $(CFG) 202 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 203 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 204 LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 205 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 206 CFGSET = TRUE 207 !ENDIF 208 209 ###################### 210 # release-winssl-zlib 211 212 !IF "$(CFG)" == "release-winssl-zlib" 213 TARGET = $(LIBCURL_STA_LIB_REL) 214 DIROBJ = $(CFG) 215 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 216 LNK = $(LNKLIB) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 217 CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 218 CFGSET = TRUE 219 !ENDIF 220 221 ###################### 222 # release-ssl-ssh2-zlib 223 224 !IF "$(CFG)" == "release-ssl-ssh2-zlib" 225 TARGET = $(LIBCURL_STA_LIB_REL) 226 DIROBJ = $(CFG) 227 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 228 LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)" 229 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 230 LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 231 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB) 232 CFGSET = TRUE 233 !ENDIF 234 235 ###################### 236 # release-ssl-dll 237 238 !IF "$(CFG)" == "release-ssl-dll" 239 TARGET = $(LIBCURL_STA_LIB_REL) 240 DIROBJ = $(CFG) 241 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 242 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) 243 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB) 244 CFGSET = TRUE 245 !ENDIF 246 247 ###################### 248 # release-zlib-dll 249 250 !IF "$(CFG)" == "release-zlib-dll" 251 TARGET = $(LIBCURL_STA_LIB_REL) 252 DIROBJ = $(CFG) 253 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 254 LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 255 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB) 256 CFGSET = TRUE 257 !ENDIF 258 259 ###################### 260 # release-ssl-dll-zlib-dll 261 262 !IF "$(CFG)" == "release-ssl-dll-zlib-dll" 263 TARGET = $(LIBCURL_STA_LIB_REL) 264 DIROBJ = $(CFG) 265 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 266 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 267 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 268 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 269 CFGSET = TRUE 270 !ENDIF 271 272 ###################### 273 # release-dll 274 275 !IF "$(CFG)" == "release-dll" 276 TARGET = $(LIBCURL_DYN_LIB_REL) 277 DIROBJ = $(CFG) 278 LNK = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL) 279 CC = $(CCNODBG) $(RTLIB) 280 CFGSET = TRUE 281 RESOURCE = $(DIROBJ)\libcurl.res 282 !ENDIF 283 284 ###################### 285 # release-dll-ssl-dll 286 287 !IF "$(CFG)" == "release-dll-ssl-dll" 288 TARGET = $(LIBCURL_DYN_LIB_REL) 289 DIROBJ = $(CFG) 290 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 291 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL) 292 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) 293 CFGSET = TRUE 294 RESOURCE = $(DIROBJ)\libcurl.res 295 !ENDIF 296 297 ###################### 298 # release-dll-zlib-dll 299 300 !IF "$(CFG)" == "release-dll-zlib-dll" 301 TARGET = $(LIBCURL_DYN_LIB_REL) 302 DIROBJ = $(CFG) 303 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 304 LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL) 305 CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) 306 CFGSET = TRUE 307 RESOURCE = $(DIROBJ)\libcurl.res 308 !ENDIF 309 310 ###################### 311 # release-dll-ssl-dll-zlib-dll 312 313 !IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll" 314 TARGET = $(LIBCURL_DYN_LIB_REL) 315 DIROBJ = $(CFG) 316 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 317 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 318 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL) 319 CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) 320 CFGSET = TRUE 321 RESOURCE = $(DIROBJ)\libcurl.res 322 !ENDIF 323 324 ###################### 325 # debug 326 327 !IF "$(CFG)" == "debug" 328 TARGET = $(LIBCURL_STA_LIB_DBG) 329 DIROBJ = $(CFG) 330 LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET) 331 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB) 332 CFGSET = TRUE 333 !ENDIF 334 335 ###################### 336 # debug-ssl 337 338 !IF "$(CFG)" == "debug-ssl" 339 TARGET = $(LIBCURL_STA_LIB_DBG) 340 DIROBJ = $(CFG) 341 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 342 LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) 343 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB) 344 CFGSET = TRUE 345 !ENDIF 346 347 ###################### 348 # debug-zlib 349 350 !IF "$(CFG)" == "debug-zlib" 351 TARGET = $(LIBCURL_STA_LIB_DBG) 352 DIROBJ = $(CFG) 353 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 354 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 355 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB) 356 CFGSET = TRUE 357 !ENDIF 358 359 ###################### 360 # debug-ssl-zlib 361 362 !IF "$(CFG)" == "debug-ssl-zlib" 363 TARGET = $(LIBCURL_STA_LIB_DBG) 364 DIROBJ = $(CFG) 365 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 366 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 367 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 368 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 369 CFGSET = TRUE 370 !ENDIF 371 372 ###################### 373 # debug-ssl-ssh2-zlib 374 375 !IF "$(CFG)" == "debug-ssl-ssh2-zlib" 376 TARGET = $(LIBCURL_STA_LIB_DBG) 377 DIROBJ = $(CFG) 378 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 379 LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)" 380 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32" 381 LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 382 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB) 383 CFGSET = TRUE 384 !ENDIF 385 386 ###################### 387 # debug-ssl-dll 388 389 !IF "$(CFG)" == "debug-ssl-dll" 390 TARGET = $(LIBCURL_STA_LIB_DBG) 391 DIROBJ = $(CFG) 392 LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll 393 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) 394 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB) 395 CFGSET = TRUE 396 !ENDIF 397 398 ###################### 399 # debug-zlib-dll 400 401 !IF "$(CFG)" == "debug-zlib-dll" 402 TARGET = $(LIBCURL_STA_LIB_DBG) 403 DIROBJ = $(CFG) 404 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 405 LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 406 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB) 407 CFGSET = TRUE 408 !ENDIF 409 410 ###################### 411 # debug-ssl-dll-zlib-dll 412 413 !IF "$(CFG)" == "debug-ssl-dll-zlib-dll" 414 TARGET = $(LIBCURL_STA_LIB_DBG) 415 DIROBJ = $(CFG) 416 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 417 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 418 LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) 419 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB) 420 CFGSET = TRUE 421 !ENDIF 422 423 ###################### 424 # debug-dll 425 426 !IF "$(CFG)" == "debug-dll" 427 TARGET = $(LIBCURL_DYN_LIB_DBG) 428 DIROBJ = $(CFG) 429 LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB) 430 CC = $(CCDEBUG) $(RTLIBD) 431 CFGSET = TRUE 432 RESOURCE = $(DIROBJ)\libcurl.res 433 !ENDIF 434 435 ###################### 436 # debug-dll-ssl-dll 437 438 !IF "$(CFG)" == "debug-dll-ssl-dll" 439 TARGET = $(LIBCURL_DYN_LIB_DBG) 440 DIROBJ = $(CFG) 441 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 442 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB) 443 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) 444 CFGSET = TRUE 445 RESOURCE = $(DIROBJ)\libcurl.res 446 !ENDIF 447 448 ###################### 449 # debug-dll-zlib-dll 450 451 !IF "$(CFG)" == "debug-dll-zlib-dll" 452 TARGET = $(LIBCURL_DYN_LIB_DBG) 453 DIROBJ = $(CFG) 454 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 455 LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB) 456 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) 457 CFGSET = TRUE 458 RESOURCE = $(DIROBJ)\libcurl.res 459 !ENDIF 460 461 ###################### 462 # debug-dll-ssl-dll-zlib-dll 463 464 !IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll" 465 TARGET = $(LIBCURL_DYN_LIB_DBG) 466 DIROBJ = $(CFG) 467 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)" 468 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll" 469 LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB) 470 CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) 471 CFGSET = TRUE 472 RESOURCE = $(DIROBJ)\libcurl.res 473 !ENDIF 474 475 ####################### 476 # Usage 477 # 478 !IF "$(CFGSET)" == "FALSE" && "$(CFG)" != "" 479 !MESSAGE Usage: nmake /f makefile.vc6 CFG=<config> <target> 480 !MESSAGE where <config> is one of: 481 !MESSAGE release - release static library 482 !MESSAGE release-ssl - release static library with ssl 483 !MESSAGE release-zlib - release static library with zlib 484 !MESSAGE release-ssl-zlib - release static library with ssl and zlib 485 !MESSAGE release-ssl-ssh2-zlib - release static library with ssl, ssh2 and zlib 486 !MESSAGE release-ssl-dll - release static library with dynamic ssl 487 !MESSAGE release-zlib-dll - release static library with dynamic zlib 488 !MESSAGE release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynamic zlib 489 !MESSAGE release-dll - release dynamic library 490 !MESSAGE release-dll-ssl-dll - release dynamic library with dynamic ssl 491 !MESSAGE release-dll-zlib-dll - release dynamic library with dynamic zlib 492 !MESSAGE release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib 493 !MESSAGE debug - debug static library 494 !MESSAGE debug-ssl - debug static library with ssl 495 !MESSAGE debug-zlib - debug static library with zlib 496 !MESSAGE debug-ssl-zlib - debug static library with ssl and zlib 497 !MESSAGE debug-ssl-ssh2-zlib - debug static library with ssl, ssh2 and zlib 498 !MESSAGE debug-ssl-dll - debug static library with dynamic ssl 499 !MESSAGE debug-zlib-dll - debug static library with dynamic zlib 500 !MESSAGE debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib 501 !MESSAGE debug-dll - debug dynamic library 502 !MESSAGE debug-dll-ssl-dll - debug dynamic library with dynamic ssl 503 !MESSAGE debug-dll-zlib-dll - debug dynamic library with dynamic zlib1 504 !MESSAGE debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynamic zlib 505 !MESSAGE <target> can be left blank in which case all is assumed 506 !ERROR please choose a valid configuration "$(CFG)" 507 !ENDIF 508 509 ####################### 510 # Only the clean target can be used if a config was not provided. 511 # 512 !IF "$(CFGSET)" == "FALSE" 513 clean: 514 @-erase /s *.dll 2> NUL 515 @-erase /s *.exp 2> NUL 516 @-erase /s *.idb 2> NUL 517 @-erase /s *.lib 2> NUL 518 @-erase /s *.obj 2> NUL 519 @-erase /s *.pch 2> NUL 520 @-erase /s *.pdb 2> NUL 521 @-erase /s *.res 2> NUL 522 !ELSE 523 # A config was provided, so the library can be built. 524 # 525 X_OBJS= \ 526 $(DIROBJ)\amigaos.obj \ 527 $(DIROBJ)\asyn-ares.obj \ 528 $(DIROBJ)\asyn-thread.obj \ 529 $(DIROBJ)\axtls.obj \ 530 $(DIROBJ)\base64.obj \ 531 $(DIROBJ)\conncache.obj \ 532 $(DIROBJ)\connect.obj \ 533 $(DIROBJ)\content_encoding.obj \ 534 $(DIROBJ)\cookie.obj \ 535 $(DIROBJ)\curl_addrinfo.obj \ 536 $(DIROBJ)\curl_des.obj \ 537 $(DIROBJ)\curl_endian.obj \ 538 $(DIROBJ)\curl_fnmatch.obj \ 539 $(DIROBJ)\curl_gethostname.obj \ 540 $(DIROBJ)\curl_gssapi.obj \ 541 $(DIROBJ)\curl_memrchr.obj \ 542 $(DIROBJ)\curl_multibyte.obj \ 543 $(DIROBJ)\curl_ntlm.obj \ 544 $(DIROBJ)\curl_ntlm_core.obj \ 545 $(DIROBJ)\curl_ntlm_msgs.obj \ 546 $(DIROBJ)\curl_ntlm_wb.obj \ 547 $(DIROBJ)\curl_rtmp.obj \ 548 $(DIROBJ)\curl_sasl.obj \ 549 $(DIROBJ)\curl_sasl_gssapi.obj \ 550 $(DIROBJ)\curl_sasl_sspi.obj \ 551 $(DIROBJ)\curl_sspi.obj \ 552 $(DIROBJ)\curl_threads.obj \ 553 $(DIROBJ)\cyassl.obj \ 554 $(DIROBJ)\darwinssl.obj \ 555 $(DIROBJ)\dict.obj \ 556 $(DIROBJ)\dotdot.obj \ 557 $(DIROBJ)\easy.obj \ 558 $(DIROBJ)\escape.obj \ 559 $(DIROBJ)\file.obj \ 560 $(DIROBJ)\fileinfo.obj \ 561 $(DIROBJ)\formdata.obj \ 562 $(DIROBJ)\ftp.obj \ 563 $(DIROBJ)\ftplistparser.obj \ 564 $(DIROBJ)\getenv.obj \ 565 $(DIROBJ)\getinfo.obj \ 566 $(DIROBJ)\gopher.obj \ 567 $(DIROBJ)\gtls.obj \ 568 $(DIROBJ)\hash.obj \ 569 $(DIROBJ)\hmac.obj \ 570 $(DIROBJ)\hostasyn.obj \ 571 $(DIROBJ)\hostcheck.obj \ 572 $(DIROBJ)\hostip.obj \ 573 $(DIROBJ)\hostip4.obj \ 574 $(DIROBJ)\hostip6.obj \ 575 $(DIROBJ)\hostsyn.obj \ 576 $(DIROBJ)\http.obj \ 577 $(DIROBJ)\http_chunks.obj \ 578 $(DIROBJ)\http_digest.obj \ 579 $(DIROBJ)\http_negotiate.obj \ 580 $(DIROBJ)\http_negotiate_sspi.obj \ 581 $(DIROBJ)\http_proxy.obj \ 582 $(DIROBJ)\idn_win32.obj \ 583 $(DIROBJ)\if2ip.obj \ 584 $(DIROBJ)\imap.obj \ 585 $(DIROBJ)\inet_ntop.obj \ 586 $(DIROBJ)\inet_pton.obj \ 587 $(DIROBJ)\krb5.obj \ 588 $(DIROBJ)\ldap.obj \ 589 $(DIROBJ)\llist.obj \ 590 $(DIROBJ)\md4.obj \ 591 $(DIROBJ)\md5.obj \ 592 $(DIROBJ)\memdebug.obj \ 593 $(DIROBJ)\mprintf.obj \ 594 $(DIROBJ)\multi.obj \ 595 $(DIROBJ)\netrc.obj \ 596 $(DIROBJ)\non-ascii.obj \ 597 $(DIROBJ)\nonblock.obj \ 598 $(DIROBJ)\nss.obj \ 599 $(DIROBJ)\openldap.obj \ 600 $(DIROBJ)\parsedate.obj \ 601 $(DIROBJ)\pingpong.obj \ 602 $(DIROBJ)\pipeline.obj \ 603 $(DIROBJ)\polarssl.obj \ 604 $(DIROBJ)\polarssl_threadlock.obj \ 605 $(DIROBJ)\pop3.obj \ 606 $(DIROBJ)\progress.obj \ 607 $(DIROBJ)\rawstr.obj \ 608 $(DIROBJ)\rtsp.obj \ 609 $(DIROBJ)\schannel.obj \ 610 $(DIROBJ)\security.obj \ 611 $(DIROBJ)\select.obj \ 612 $(DIROBJ)\sendf.obj \ 613 $(DIROBJ)\share.obj \ 614 $(DIROBJ)\slist.obj \ 615 $(DIROBJ)\smb.obj \ 616 $(DIROBJ)\smtp.obj \ 617 $(DIROBJ)\socks.obj \ 618 $(DIROBJ)\socks_gssapi.obj \ 619 $(DIROBJ)\socks_sspi.obj \ 620 $(DIROBJ)\speedcheck.obj \ 621 $(DIROBJ)\splay.obj \ 622 $(DIROBJ)\ssh.obj \ 623 $(DIROBJ)\vtls.obj \ 624 $(DIROBJ)\openssl.obj \ 625 $(DIROBJ)\strdup.obj \ 626 $(DIROBJ)\strequal.obj \ 627 $(DIROBJ)\strerror.obj \ 628 $(DIROBJ)\strtok.obj \ 629 $(DIROBJ)\strtoofft.obj \ 630 $(DIROBJ)\telnet.obj \ 631 $(DIROBJ)\tftp.obj \ 632 $(DIROBJ)\timeval.obj \ 633 $(DIROBJ)\transfer.obj \ 634 $(DIROBJ)\url.obj \ 635 $(DIROBJ)\version.obj \ 636 $(DIROBJ)\warnless.obj \ 637 $(DIROBJ)\wildcard.obj \ 638 $(RESOURCE) 639 640 all : $(TARGET) 641 642 $(TARGET): $(X_OBJS) 643 $(LNK) $(LFLAGS) $(X_OBJS) 644 -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_REL) . /y 645 -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_DBG) . /y 646 -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_REL) . /y 647 -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_DBG) . /y 648 -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_REL) . /y 649 -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) . /y 650 -xcopy $(DIROBJ)\*.exp . /y 651 -xcopy $(DIROBJ)\*.pdb . /y 652 653 $(X_OBJS): $(DIROBJ) 654 655 $(DIROBJ): 656 @if not exist "$(DIROBJ)" mkdir $(DIROBJ) 657 658 .SUFFIXES: .c .obj .res 659 660 {.\}.c{$(DIROBJ)\}.obj: 661 $(CC) $(CFLAGS) /Fo"$@" $< 662 663 {.\vtls\}.c{$(DIROBJ)\}.obj: 664 $(CC) $(CFLAGS) /Fo"$@" $< 665 666 debug-dll\libcurl.res \ 667 debug-dll-ssl-dll\libcurl.res \ 668 debug-dll-zlib-dll\libcurl.res \ 669 debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc 670 rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc 671 672 release-dll\libcurl.res \ 673 release-dll-ssl-dll\libcurl.res \ 674 release-dll-zlib-dll\libcurl.res \ 675 release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc 676 rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc 677 !ENDIF # End of case where a config was provided. 678