- Robert A. Monat improved the maketgz and VC6/8 generating to set the correct
[platform/upstream/curl.git] / lib / Makefile.vc6
1 #############################################################\r
2 #\r
3 # Makefile for building libcurl with MSVC6\r
4 #\r
5 # Usage: see usage message below\r
6 #        Should be invoked from \lib directory\r
7 #        Edit the paths and desired library name\r
8 #        SSL path is only required if you intend compiling\r
9 #        with SSL.\r
10 #\r
11 # This make file leaves the result either a .lib or .dll file\r
12 # in the \lib directory. It should be called from the \lib\r
13 # directory.\r
14 #\r
15 # An option would have been to allow the source directory to\r
16 # be specified, but I saw no requirement.\r
17 #\r
18 # Another option would have been to leave the .lib and .dll\r
19 # files in the "cfg" directory, but then the make file\r
20 # in \src would need to be changed.\r
21 #\r
22 ##############################################################\r
23 \r
24 #\r
25 # Stem for static libs and DLLs\r
26 #\r
27 LIB_NAME       = libcurl\r
28 LIB_NAME_DEBUG = libcurld\r
29 \r
30 #\r
31 # Stem for DLL import libs\r
32 #\r
33 IMPLIB_NAME       = libcurl_imp\r
34 IMPLIB_NAME_DEBUG = libcurld_imp\r
35 \r
36 !IFNDEF OPENSSL_PATH\r
37 OPENSSL_PATH   = ../../openssl-0.9.7e\r
38 !ENDIF\r
39 \r
40 !IFNDEF ZLIB_PATH\r
41 ZLIB_PATH  = ../../zlib-1.2.1\r
42 !ENDIF\r
43 \r
44 !IFNDEF MACHINE\r
45 MACHINE  = X86\r
46 !ENDIF\r
47 \r
48 # USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication\r
49 # without an openssl installation and offers the ability to authenticate\r
50 # using the "current logged in user".  It does however require that the\r
51 # Windows SDK be installed.\r
52 #\r
53 # If, for some reason the Windows SDK is installed but not installed\r
54 # in the default location, you can specify WINDOWS_SDK_PATH.\r
55 # It can be downloaded from:\r
56 # http://www.microsoft.com/msdownload/platformsdk/sdkupdate/\r
57 \r
58 # USE_WINDOWS_SSPI = 1\r
59 \r
60 !IFDEF WINDOWS_SSPI\r
61 !IFNDEF WINDOWS_SDK_PATH\r
62 WINDOWS_SDK_PATH = "C:\Program Files\Microsoft SDK"\r
63 !ENDIF\r
64 !ENDIF\r
65 \r
66 # Use the high resolution time by default.  Comment this out to use low\r
67 # resolution time and not require winmm.lib\r
68 USEMM_LIBS = YES\r
69 \r
70 #############################################################\r
71 ## Nothing more to do below this line!\r
72 \r
73 CCNODBG    = cl.exe /O2 /DNDEBUG\r
74 CCDEBUG    = cl.exe /Od /Gm /Zi /D_DEBUG /GZ\r
75 CFLAGSSSL  = /DUSE_SSLEAY /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"\r
76 CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"\r
77 CFLAGS     = /I. /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL\r
78 CFLAGSLIB  = /DCURL_STATICLIB\r
79 LNKDLL     = link.exe /DLL\r
80 LNKLIB     = link.exe /lib\r
81 LFLAGS     = /nologo /machine:$(MACHINE)\r
82 SSLLIBS    = libeay32.lib ssleay32.lib\r
83 ZLIBLIBSDLL= zdll.lib\r
84 ZLIBLIBS   = zlib.lib\r
85 !IFDEF USEMM_LIBS\r
86 WINLIBS    = wsock32.lib winmm.lib\r
87 !ELSE\r
88 WINLIBS    = wsock32.lib\r
89 CFLAGS     = $(CFLAGS) /DWITHOUT_MM_LIB\r
90 !ENDIF\r
91 #  RSAglue.lib was formerly needed in the SSLLIBS\r
92 CFGSET     = FALSE\r
93 \r
94 !IFDEF WINDOWS_SSPI\r
95 CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include\r
96 !ENDIF\r
97 \r
98 ##############################################################\r
99 # Runtime library configuration\r
100 \r
101 RTLIB   = /MD\r
102 RTLIBD  = /MDd\r
103 \r
104 !IF "$(RTLIBCFG)" == "static"\r
105 RTLIB  = /MT\r
106 RTLIBD = /MTd\r
107 !ENDIF\r
108 \r
109 \r
110 ######################\r
111 # release\r
112 \r
113 !IF "$(CFG)" == "release"\r
114 TARGET = $(LIB_NAME).lib\r
115 DIROBJ = $(CFG)\r
116 LNK    = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)\r
117 CC     = $(CCNODBG) $(RTLIB) $(CFLAGSLIB)\r
118 CFGSET = TRUE\r
119 !ENDIF\r
120 \r
121 ######################\r
122 # release-zlib\r
123 \r
124 !IF "$(CFG)" == "release-zlib"\r
125 TARGET   = $(LIB_NAME).lib\r
126 DIROBJ   = $(CFG)\r
127 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
128 LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)\r
129 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)\r
130 CFGSET   = TRUE\r
131 !ENDIF\r
132 \r
133 ######################\r
134 # release-dll\r
135 \r
136 !IF "$(CFG)" == "release-dll"\r
137 TARGET = $(LIB_NAME).dll\r
138 DIROBJ = $(CFG)\r
139 LNK    = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib\r
140 CC     = $(CCNODBG) $(RTLIB)\r
141 CFGSET = TRUE\r
142 RESOURCE = $(DIROBJ)\libcurl.res\r
143 !ENDIF\r
144 \r
145 ######################\r
146 # release-ssl\r
147 \r
148 !IF "$(CFG)" == "release-ssl"\r
149 TARGET   = $(LIB_NAME).lib\r
150 DIROBJ   = $(CFG)\r
151 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"\r
152 LNK      = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)\r
153 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)\r
154 CFGSET   = TRUE\r
155 !ENDIF\r
156 \r
157 ######################\r
158 # release-ssl-dll\r
159 \r
160 !IF "$(CFG)" == "release-ssl-dll"\r
161 TARGET   = $(LIB_NAME).lib\r
162 DIROBJ   = $(CFG)\r
163 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"\r
164 LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)\r
165 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)\r
166 CFGSET   = TRUE\r
167 !ENDIF\r
168 \r
169 ######################\r
170 # release-ssl-zlib\r
171 \r
172 !IF "$(CFG)" == "release-ssl-zlib"\r
173 TARGET   = $(LIB_NAME).lib\r
174 DIROBJ   = $(CFG)\r
175 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"\r
176 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
177 LNK      = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)\r
178 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)\r
179 CFGSET   = TRUE\r
180 !ENDIF\r
181 \r
182 ######################\r
183 # release-dll-ssl-dll\r
184 \r
185 !IF "$(CFG)" == "release-dll-ssl-dll"\r
186 TARGET   = $(LIB_NAME).dll\r
187 DIROBJ   = $(CFG)\r
188 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"\r
189 LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib\r
190 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)\r
191 CFGSET   = TRUE\r
192 RESOURCE = $(DIROBJ)\libcurl.res\r
193 !ENDIF\r
194 \r
195 ######################\r
196 # release-zlib-dll\r
197 \r
198 !IF "$(CFG)" == "release-zlib-dll"\r
199 TARGET   = $(LIB_NAME).lib\r
200 DIROBJ   = $(CFG)\r
201 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
202 LNK      = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)\r
203 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)\r
204 CFGSET   = TRUE\r
205 !ENDIF\r
206 \r
207 ######################\r
208 # release-ssl-dll-zlib-dll\r
209 \r
210 !IF "$(CFG)" == "release-ssl-dll-zlib-dll"\r
211 TARGET   = $(LIB_NAME).lib\r
212 DIROBJ   = $(CFG)\r
213 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
214 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"\r
215 LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)\r
216 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)\r
217 CFGSET   = TRUE\r
218 !ENDIF\r
219 \r
220 ######################\r
221 # release-dll-zlib-dll\r
222 \r
223 !IF "$(CFG)" == "release-dll-zlib-dll"\r
224 TARGET   = $(LIB_NAME).dll\r
225 DIROBJ   = $(CFG)\r
226 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
227 LNK      = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib\r
228 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB)\r
229 CFGSET   = TRUE\r
230 RESOURCE = $(DIROBJ)\libcurl.res\r
231 !ENDIF\r
232 \r
233 ######################\r
234 # release-dll-ssl-dll-zlib-dll\r
235 \r
236 !IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"\r
237 TARGET   = $(LIB_NAME).dll\r
238 DIROBJ   = $(CFG)\r
239 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
240 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"\r
241 LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib\r
242 CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB)\r
243 CFGSET   = TRUE\r
244 RESOURCE = $(DIROBJ)\libcurl.res\r
245 !ENDIF\r
246 \r
247 ######################\r
248 # debug\r
249 \r
250 !IF "$(CFG)" == "debug"\r
251 TARGET = $(LIB_NAME_DEBUG).lib\r
252 DIROBJ = $(CFG)\r
253 LNK    = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)\r
254 CC     = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB)\r
255 CFGSET = TRUE\r
256 !ENDIF\r
257 \r
258 ######################\r
259 # debug-ssl\r
260 \r
261 !IF "$(CFG)" == "debug-ssl"\r
262 TARGET   = $(LIB_NAME_DEBUG).lib\r
263 DIROBJ   = $(CFG)\r
264 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"\r
265 LNK      = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)\r
266 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)\r
267 CFGSET   = TRUE\r
268 !ENDIF\r
269 \r
270 ######################\r
271 # debug-zlib\r
272 \r
273 !IF "$(CFG)" == "debug-zlib"\r
274 TARGET   = $(LIB_NAME_DEBUG).lib\r
275 DIROBJ   = $(CFG)\r
276 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
277 LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)\r
278 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)\r
279 CFGSET   = TRUE\r
280 !ENDIF\r
281 \r
282 ######################\r
283 # debug-ssl-dll\r
284 \r
285 !IF "$(CFG)" == "debug-ssl-dll"\r
286 TARGET   = $(LIB_NAME_DEBUG).lib\r
287 DIROBJ   = $(CFG)\r
288 LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll\r
289 LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)\r
290 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)\r
291 CFGSET   = TRUE\r
292 !ENDIF\r
293 \r
294 ######################\r
295 # debug-ssl-zlib\r
296 \r
297 !IF "$(CFG)" == "debug-ssl-zlib"\r
298 TARGET   = $(LIB_NAME_DEBUG).lib\r
299 DIROBJ   = $(CFG)\r
300 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
301 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"\r
302 LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)\r
303 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)\r
304 CFGSET   = TRUE\r
305 !ENDIF\r
306 \r
307 ######################\r
308 # debug-zlib-dll\r
309 \r
310 !IF "$(CFG)" == "debug-zlib-dll"\r
311 TARGET   = $(LIB_NAME_DEBUG).lib\r
312 DIROBJ   = $(CFG)\r
313 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
314 LNK      = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)\r
315 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)\r
316 CFGSET   = TRUE\r
317 !ENDIF\r
318 \r
319 ######################\r
320 # debug-ssl-dll-zlib-dll\r
321 \r
322 !IF "$(CFG)" == "debug-ssl-dll-zlib-dll"\r
323 TARGET   = $(LIB_NAME_DEBUG).lib\r
324 DIROBJ   = $(CFG)\r
325 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
326 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"\r
327 LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)\r
328 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)\r
329 CFGSET   = TRUE\r
330 !ENDIF\r
331 \r
332 ######################\r
333 # debug-dll\r
334 \r
335 !IF "$(CFG)" == "debug-dll"\r
336 TARGET = $(LIB_NAME_DEBUG).dll\r
337 DIROBJ = $(CFG)\r
338 LNK    = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb\r
339 CC     = $(CCDEBUG) $(RTLIBD) \r
340 CFGSET = TRUE\r
341 RESOURCE = $(DIROBJ)\libcurl.res\r
342 !ENDIF\r
343 \r
344 ######################\r
345 # debug-dll-ssl-dll\r
346 \r
347 !IF "$(CFG)" == "debug-dll-ssl-dll"\r
348 TARGET   = $(LIB_NAME_DEBUG).dll\r
349 DIROBJ   = $(CFG)\r
350 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"\r
351 LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb\r
352 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL)\r
353 CFGSET   = TRUE\r
354 RESOURCE = $(DIROBJ)\libcurl.res\r
355 !ENDIF\r
356 \r
357 ######################\r
358 # debug-dll-zlib-dll\r
359 \r
360 !IF "$(CFG)" == "debug-dll-zlib-dll"\r
361 TARGET   = $(LIB_NAME_DEBUG).dll\r
362 DIROBJ   = $(CFG)\r
363 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
364 LNK      = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb\r
365 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB)\r
366 CFGSET   = TRUE\r
367 RESOURCE = $(DIROBJ)\libcurl.res\r
368 !ENDIF\r
369 \r
370 ######################\r
371 # debug-dll-ssl-dll-zlib-dll\r
372 \r
373 !IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll"\r
374 TARGET   = $(LIB_NAME_DEBUG).dll\r
375 DIROBJ   = $(CFG)\r
376 LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"\r
377 LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"\r
378 LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb\r
379 CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB)\r
380 CFGSET   = TRUE\r
381 RESOURCE = $(DIROBJ)\libcurl.res\r
382 !ENDIF\r
383 \r
384 #######################\r
385 # Usage\r
386 #\r
387 !IF "$(CFGSET)" == "FALSE" && "$(CFG)" != ""\r
388 !MESSAGE Usage: nmake /f makefile.vc6 CFG=<config> <target>\r
389 !MESSAGE where <config> is one of:\r
390 !MESSAGE   release                      - release static library\r
391 !MESSAGE   release-ssl                  - release static library with ssl\r
392 !MESSAGE   release-zlib                 - release static library with zlib\r
393 !MESSAGE   release-ssl-zlib             - release static library with ssl and zlib\r
394 !MESSAGE   release-ssl-dll              - release static library with dynamic ssl\r
395 !MESSAGE   release-zlib-dll             - release static library with dynamic zlib\r
396 !MESSAGE   release-ssl-dll-zlib-dll     - release static library with dynamic ssl and dynamic zlib\r
397 !MESSAGE   release-dll                  - release dynamic library\r
398 !MESSAGE   release-dll-ssl-dll          - release dynamic library with dynamic ssl\r
399 !MESSAGE   release-dll-zlib-dll         - release dynamic library with dynamic zlib\r
400 !MESSAGE   release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib\r
401 !MESSAGE   debug                        - debug static library\r
402 !MESSAGE   debug-ssl                    - debug static library with ssl\r
403 !MESSAGE   debug-zlib                   - debug static library with zlib\r
404 !MESSAGE   debug-ssl-zlib               - debug static library with ssl and zlib\r
405 !MESSAGE   debug-ssl-dll                - debug static library with dynamic ssl\r
406 !MESSAGE   debug-zlib-dll               - debug static library with dynamic zlib\r
407 !MESSAGE   debug-ssl-dll-zlib-dll       - debug static library with dynamic ssl and dynamic zlib\r
408 !MESSAGE   debug-dll                    - debug dynamic library\r
409 !MESSAGE   debug-dll-ssl-dll            - debug dynamic library with dynamic ssl\r
410 !MESSAGE   debug-dll-zlib-dll           - debug dynamic library with dynamic zlib1\r
411 !MESSAGE   debug-dll-ssl-dll-zlib-dll   - debug dynamic library with dynamic ssl and dynamic zlib\r
412 !MESSAGE <target> can be left blank in which case all is assumed\r
413 !ERROR please choose a valid configuration "$(CFG)"\r
414 !ENDIF\r
415 \r
416 #######################\r
417 # Only the clean target can be used if a config was not provided.\r
418 #\r
419 !IF "$(CFGSET)" == "FALSE"\r
420 clean:\r
421         @-erase /s *.dll 2> NUL\r
422         @-erase /s *.exp 2> NUL\r
423         @-erase /s *.idb 2> NUL\r
424         @-erase /s *.lib 2> NUL\r
425         @-erase /s *.obj 2> NUL\r
426         @-erase /s *.pch 2> NUL\r
427         @-erase /s *.pdb 2> NUL\r
428         @-erase /s *.res 2> NUL\r
429 !ELSE\r
430 # A config was provided, so the library can be built.\r
431 #\r
432 X_OBJS= \\r
433         $(DIROBJ)\base64.obj \\r
434         $(DIROBJ)\cookie.obj \\r
435         $(DIROBJ)\transfer.obj \\r
436         $(DIROBJ)\escape.obj \\r
437         $(DIROBJ)\formdata.obj \\r
438         $(DIROBJ)\ftp.obj \\r
439         $(DIROBJ)\http.obj \\r
440         $(DIROBJ)\http_chunks.obj \\r
441         $(DIROBJ)\ldap.obj \\r
442         $(DIROBJ)\dict.obj \\r
443         $(DIROBJ)\telnet.obj \\r
444         $(DIROBJ)\parsedate.obj \\r
445         $(DIROBJ)\getenv.obj \\r
446         $(DIROBJ)\gtls.obj \\r
447         $(DIROBJ)\inet_pton.obj \\r
448         $(DIROBJ)\hostip.obj \\r
449         $(DIROBJ)\hostasyn.obj \\r
450         $(DIROBJ)\hostsyn.obj \\r
451         $(DIROBJ)\hostares.obj \\r
452         $(DIROBJ)\hostthre.obj \\r
453         $(DIROBJ)\hostip4.obj \\r
454         $(DIROBJ)\hostip6.obj \\r
455         $(DIROBJ)\inet_ntop.obj \\r
456         $(DIROBJ)\if2ip.obj \\r
457         $(DIROBJ)\mprintf.obj \\r
458         $(DIROBJ)\netrc.obj \\r
459         $(DIROBJ)\progress.obj \\r
460         $(DIROBJ)\sendf.obj \\r
461         $(DIROBJ)\speedcheck.obj \\r
462         $(DIROBJ)\sslgen.obj \\r
463         $(DIROBJ)\ssluse.obj \\r
464         $(DIROBJ)\timeval.obj \\r
465         $(DIROBJ)\url.obj \\r
466         $(DIROBJ)\file.obj \\r
467         $(DIROBJ)\getinfo.obj \\r
468         $(DIROBJ)\version.obj \\r
469         $(DIROBJ)\easy.obj \\r
470         $(DIROBJ)\strequal.obj \\r
471         $(DIROBJ)\strtok.obj \\r
472         $(DIROBJ)\strtoofft.obj \\r
473         $(DIROBJ)\connect.obj \\r
474         $(DIROBJ)\hash.obj \\r
475         $(DIROBJ)\llist.obj \\r
476         $(DIROBJ)\share.obj \\r
477         $(DIROBJ)\multi.obj \\r
478         $(DIROBJ)\http_digest.obj \\r
479         $(DIROBJ)\http_negotiate.obj \\r
480         $(DIROBJ)\http_ntlm.obj \\r
481         $(DIROBJ)\md5.obj \\r
482         $(DIROBJ)\memdebug.obj \\r
483         $(DIROBJ)\strerror.obj \\r
484         $(DIROBJ)\select.obj \\r
485         $(DIROBJ)\content_encoding.obj \\r
486         $(DIROBJ)\tftp.obj \\r
487         $(DIROBJ)\splay.obj \\r
488         $(DIROBJ)\socks.obj \\r
489         $(RESOURCE)\r
490 \r
491 all : $(TARGET)\r
492 \r
493 $(TARGET): $(X_OBJS)\r
494         $(LNK) $(LFLAGS) $(X_OBJS)\r
495         -xcopy $(DIROBJ)\$(LIB_NAME).dll       . /y\r
496         -xcopy $(DIROBJ)\$(LIB_NAME).lib       . /y\r
497         -xcopy $(DIROBJ)\$(LIB_NAME_DEBUG).dll . /y\r
498         -xcopy $(DIROBJ)\$(LIB_NAME_DEBUG).lib . /y\r
499         -xcopy $(DIROBJ)\$(IMPLIB_NAME).lib    . /y\r
500         -xcopy $(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib . /y\r
501         -xcopy $(DIROBJ)\*.exp                 . /y\r
502         -xcopy $(DIROBJ)\*.pdb                 . /y\r
503 \r
504 $(X_OBJS): $(DIROBJ)\r
505 \r
506 $(DIROBJ):\r
507         @if not exist "$(DIROBJ)" mkdir $(DIROBJ)\r
508 \r
509 .SUFFIXES: .c .obj .res\r
510 \r
511 {.\}.c{$(DIROBJ)\}.obj:\r
512         $(CC) $(CFLAGS) /Fo"$@"  $<\r
513 \r
514 debug-dll\libcurl.res \\r
515 debug-dll-ssl-dll\libcurl.res \\r
516 debug-dll-zlib-dll\libcurl.res \\r
517 debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc\r
518         rc /dCURLDEBUG=1 /Fo $@ libcurl.rc\r
519 \r
520 release-dll\libcurl.res \\r
521 release-dll-ssl-dll\libcurl.res \\r
522 release-dll-zlib-dll\libcurl.res \\r
523 release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc\r
524         rc /dCURLDEBUG=0 /Fo $@ libcurl.rc\r
525 !ENDIF  # End of case where a config was provided.\r