1d79fffeec692936caaba5c6b16b3d5946a10ec9
[reactos.git] / reactos / lib / msvcrt / Makefile
1 # $Id: Makefile,v 1.21 2002/04/01 21:33:27 hbirr Exp $
2
3 PATH_TO_TOP = ../..
4
5 TARGET_DEFONLY = yes
6
7 TARGET_TYPE = dynlink
8
9 TARGET_NAME = msvcrt
10
11 TARGET_LFLAGS = -nostartfiles
12
13 TARGET_SDKLIBS = kernel32.a ntdll.a
14
15 TARGET_GCCLIBS = gcc
16
17 TARGET_BASE = 0x78000000
18
19 TARGET_CFLAGS = -D__MSVCRT__
20
21 TARGET_OBJECTS = $(TARGET_NAME).o
22
23 TARGET_CLEAN = \
24 conio/*.o ctype/*.o direct/*.o except/*.o float/*.o io/*.o \
25 locale/*.o math/*.o mbstring/*.o misc/*.o process/*.o search/*.o \
26 setjmp/*.o signal/*.o stdio/*.o stdlib/*.o string/*.o sys_stat/*.o \
27 time/*.o wstring/*.o
28
29
30 include $(PATH_TO_TOP)/rules.mak
31
32 include $(TOOLS_PATH)/helper.mk
33
34
35 OBJECTS_CONIO = \
36 conio/cgets.o \
37 conio/cprintf.o \
38 conio/cputs.o \
39 conio/cscanf.o \
40 conio/getch.o \
41 conio/getche.o \
42 conio/kbhit.o \
43 conio/putch.o \
44 conio/ungetch.o
45
46 OBJECTS_CTYPE = \
47 ctype/isalnum.o \
48 ctype/isalpha.o \
49 ctype/isascii.o \
50 ctype/iscntrl.o \
51 ctype/isdigit.o \
52 ctype/isgraph.o \
53 ctype/islower.o \
54 ctype/isprint.o \
55 ctype/ispunct.o \
56 ctype/isspace.o \
57 ctype/isupper.o \
58 ctype/isxdigit.o \
59 ctype/toascii.o \
60 ctype/tolower.o \
61 ctype/toupper.o \
62 ctype/iscsym.o \
63 ctype/isctype.o
64
65 OBJECTS_DIRECT = \
66 direct/chdir.o \
67 direct/chdrive.o \
68 direct/getcwd.o \
69 direct/getdcwd.o \
70 direct/getdfree.o \
71 direct/getdrive.o \
72 direct/mkdir.o \
73 direct/rmdir.o
74
75 OBJECTS_EXCEPT = \
76 except/abnorter.o \
77 except/exhand2.o \
78 except/exhand3.o \
79 except/matherr.o \
80 except/unwind.o \
81 except/xcptfil.o
82
83 OBJECTS_FLOAT = \
84 float/chgsign.o \
85 float/clearfp.o \
86 float/cntrlfp.o \
87 float/copysign.o \
88 float/fpclass.o \
89 float/fpecode.o \
90 float/fpreset.o \
91 float/isnan.o \
92 float/logb.o \
93 float/nafter.o \
94 float/scalb.o \
95 float/statfp.o
96
97 OBJECTS_IO = \
98 io/access.o \
99 io/chmod.o \
100 io/chsize.o \
101 io/close.o \
102 io/commit.o \
103 io/create.o \
104 io/dup.o \
105 io/dup2.o \
106 io/eof.o \
107 io/filelen.o \
108 io/find.o \
109 io/fmode.o \
110 io/isatty.o \
111 io/locking.o \
112 io/lseek.o \
113 io/mktemp.o \
114 io/open.o \
115 io/pipe.o \
116 io/read.o \
117 io/setmode.o \
118 io/sopen.o \
119 io/tell.o \
120 io/umask.o \
121 io/unlink.o \
122 io/utime.o \
123 io/write.o
124
125 OBJECTS_LOCALE = \
126 locale/locale.o
127
128 OBJECTS_MATH = \
129 math/acos.o \
130 math/adjust.o \
131 math/asin.o \
132 math/atan.o \
133 math/atan2.o \
134 math/cabs.o \
135 math/ceil.o \
136 math/cos.o \
137 math/cosh.o \
138 math/exp.o \
139 math/fabs.o \
140 math/floor.o \
141 math/fmod.o \
142 math/frexp.o \
143 math/ftol.o \
144 math/huge_val.o \
145 math/hypot.o \
146 math/j0_y0.o \
147 math/j1_y1.o \
148 math/jn_yn.o \
149 math/ldexp.o \
150 math/log.o \
151 math/log10.o \
152 math/modf.o \
153 math/pow.o \
154 math/sin.o \
155 math/sinh.o \
156 math/sqrt.o \
157 math/stubs.o \
158 math/tan.o \
159 math/tanh.o
160
161 OBJECTS_MBSTRING = \
162 mbstring/hanzen.o \
163 mbstring/ischira.o \
164 mbstring/iskana.o \
165 mbstring/iskpun.o \
166 mbstring/islead.o \
167 mbstring/islwr.o \
168 mbstring/ismbal.o \
169 mbstring/ismbaln.o \
170 mbstring/ismbc.o \
171 mbstring/ismbgra.o \
172 mbstring/ismbkaln.o \
173 mbstring/ismblead.o \
174 mbstring/ismbpri.o \
175 mbstring/ismbpun.o \
176 mbstring/ismbtrl.o \
177 mbstring/isuppr.o \
178 mbstring/jistojms.o \
179 mbstring/jmstojis.o \
180 mbstring/mbbtype.o \
181 mbstring/mbccpy.o \
182 mbstring/mbclen.o \
183 mbstring/mbscat.o \
184 mbstring/mbschr.o \
185 mbstring/mbscmp.o \
186 mbstring/mbscoll.o \
187 mbstring/mbscpy.o \
188 mbstring/mbscspn.o \
189 mbstring/mbsdec.o \
190 mbstring/mbsdup.o \
191 mbstring/mbsicmp.o \
192 mbstring/mbsicoll.o \
193 mbstring/mbsinc.o \
194 mbstring/mbslen.o \
195 mbstring/mbslwr.o \
196 mbstring/mbsncat.o \
197 mbstring/mbsnccnt.o \
198 mbstring/mbsncmp.o \
199 mbstring/mbsncoll.o \
200 mbstring/mbsncpy.o \
201 mbstring/mbsnextc.o \
202 mbstring/mbsnicmp.o \
203 mbstring/mbsnicoll.o \
204 mbstring/mbsninc.o \
205 mbstring/mbsnset.o \
206 mbstring/mbspbrk.o \
207 mbstring/mbsrchr.o \
208 mbstring/mbsrev.o \
209 mbstring/mbsset.o \
210 mbstring/mbsspn.o \
211 mbstring/mbsspnp.o \
212 mbstring/mbsstr.o \
213 mbstring/mbstok.o \
214 mbstring/mbstrlen.o \
215 mbstring/mbsupr.o
216
217 OBJECTS_MISC = \
218 misc/amsg.o \
219 misc/assert.o \
220 misc/dllmain.o \
221 misc/getargs.o \
222 misc/initterm.o \
223 misc/purecall.o \
224 misc/tls.o
225
226 OBJECTS_PROCESS = \
227 process/_cwait.o \
228 process/_system.o \
229 process/dll.o \
230 process/execl.o \
231 process/execle.o \
232 process/execlp.o \
233 process/execlpe.o \
234 process/execv.o \
235 process/execve.o \
236 process/execvp.o \
237 process/execvpe.o \
238 process/procid.o \
239 process/spawnl.o \
240 process/spawnle.o \
241 process/spawnlp.o \
242 process/spawnlpe.o \
243 process/spawnv.o \
244 process/spawnve.o \
245 process/spawnvp.o \
246 process/spawnvpe.o \
247 process/thread.o \
248 process/threadid.o
249
250 OBJECTS_SEARCH = \
251 search/lfind.o \
252 search/lsearch.o
253
254 OBJECTS_SETJMP = \
255 setjmp/setjmp.o
256
257 OBJECTS_SIGNAL = \
258 signal/signal.o
259
260 OBJECTS_STDIO = \
261 stdio/allocfil.o \
262 stdio/clearerr.o \
263 stdio/fclose.o \
264 stdio/fdopen.o \
265 stdio/feof.o \
266 stdio/ferror.o \
267 stdio/fflush.o \
268 stdio/fgetc.o \
269 stdio/fgetchar.o \
270 stdio/fgetpos.o \
271 stdio/fgets.o \
272 stdio/filbuf.o \
273 stdio/fileno.o \
274 stdio/flsbuf.o \
275 stdio/fopen.o \
276 stdio/fprintf.o \
277 stdio/fputc.o \
278 stdio/fputchar.o \
279 stdio/fputs.o \
280 stdio/fread.o \
281 stdio/freopen.o \
282 stdio/fscanf.o \
283 stdio/fseek.o \
284 stdio/fsetpos.o \
285 stdio/fsopen.o \
286 stdio/ftell.o \
287 stdio/fwalk.o \
288 stdio/fwrite.o \
289 stdio/getc.o \
290 stdio/getchar.o \
291 stdio/gets.o \
292 stdio/getw.o \
293 stdio/perror.o \
294 stdio/popen.o \
295 stdio/printf.o \
296 stdio/putc.o \
297 stdio/putchar.o \
298 stdio/puts.o \
299 stdio/putw.o \
300 stdio/remove.o \
301 stdio/rename.o \
302 stdio/rewind.o \
303 stdio/rmtmp.o \
304 stdio/scanf.o \
305 stdio/setbuf.o \
306 stdio/setvbuf.o \
307 stdio/sprintf.o \
308 stdio/sscanf.o \
309 stdio/stdhnd.o \
310 stdio/tempnam.o \
311 stdio/tmpfile.o \
312 stdio/tmpnam.o \
313 stdio/ungetc.o \
314 stdio/vfprintf.o \
315 stdio/vfscanf.o \
316 stdio/vfwprint.o \
317 stdio/vprintf.o \
318 stdio/vscanf.o \
319 stdio/vsprintf.o \
320 stdio/vsscanf.o
321
322 OBJECTS_STDLIB = \
323 stdlib/_exit.o \
324 stdlib/abort.o \
325 stdlib/abs.o \
326 stdlib/atexit.o \
327 stdlib/atof.o \
328 stdlib/atoi.o \
329 stdlib/atoi64.o \
330 stdlib/atol.o \
331 stdlib/bsearch.o \
332 stdlib/div.o \
333 stdlib/ecvt.o \
334 stdlib/ecvtbuf.o \
335 stdlib/errno.o \
336 stdlib/fcvt.o \
337 stdlib/fcvtbuf.o \
338 stdlib/fullpath.o \
339 stdlib/gcvt.o \
340 stdlib/getenv.o \
341 stdlib/itoa.o \
342 stdlib/itow.o \
343 stdlib/labs.o \
344 stdlib/ldiv.o \
345 stdlib/makepath.o \
346 stdlib/malloc.o \
347 stdlib/obsol.o \
348 stdlib/putenv.o \
349 stdlib/qsort.o \
350 stdlib/rand.o \
351 stdlib/rot.o \
352 stdlib/senv.o \
353 stdlib/splitp.o \
354 stdlib/strtod.o \
355 stdlib/strtol.o \
356 stdlib/strtoul.o \
357 stdlib/swab.o \
358 stdlib/wcstod.o \
359 stdlib/wcstol.o \
360 stdlib/wcstoul.o \
361 stdlib/wtoi.o \
362 stdlib/wtoi64.o
363
364 OBJECTS_STRING = \
365 string/memccpy.o \
366 string/memchr.o \
367 string/memcmp.o \
368 string/memcpy.o \
369 string/memicmp.o \
370 string/memmove.o \
371 string/memset.o \
372 string/strcat.o \
373 string/strchr.o \
374 string/strcmp.o \
375 string/strcoll.o \
376 string/strcpy.o \
377 string/strcspn.o \
378 string/strdup.o \
379 string/strerror.o \
380 string/stricmp.o \
381 string/strlen.o \
382 string/strlwr.o \
383 string/strncat.o \
384 string/strncmp.o \
385 string/strncpy.o \
386 string/strnicmp.o \
387 string/strnlen.o \
388 string/strpbrk.o \
389 string/strrchr.o \
390 string/strrev.o\
391 string/strset.o \
392 string/strspn.o \
393 string/strstr.o \
394 string/strtok.o \
395 string/strupr.o \
396 string/strxfrm.o
397
398 OBJECTS_SYS_STAT = \
399 sys_stat/fstat.o \
400 sys_stat/futime.o \
401 sys_stat/stat.o
402
403 OBJECTS_TIME = \
404 time/clock.o \
405 time/ctime.o \
406 time/difftime.o \
407 time/strdate.o \
408 time/strftime.o \
409 time/strtime.o \
410 time/time.o
411
412 OBJECTS_WSTRING = \
413 wstring/wcscat.o \
414 wstring/wcschr.o \
415 wstring/wcscmp.o \
416 wstring/wcscoll.o \
417 wstring/wcscpy.o \
418 wstring/wcscspn.o \
419 wstring/wcsdup.o \
420 wstring/wcsicmp.o \
421 wstring/wcslen.o \
422 wstring/wcslwr.o \
423 wstring/wcsncat.o \
424 wstring/wcsncmp.o \
425 wstring/wcsncpy.o \
426 wstring/wcsnicmp.o \
427 wstring/wcsnlen.o \
428 wstring/wcspbrk.o \
429 wstring/wcsrchr.o \
430 wstring/wcsrev.o \
431 wstring/wcsset.o \
432 wstring/wcsspn.o \
433 wstring/wcsstr.o \
434 wstring/wcstok.o \
435 wstring/wcsupr.o \
436 wstring/wcsxfrm.o
437
438 OBJECTS = \
439 $(OBJECTS_CONIO) \
440 $(OBJECTS_CTYPE) \
441 $(OBJECTS_DIRECT) \
442 $(OBJECTS_EXCEPT) \
443 $(OBJECTS_FLOAT) \
444 $(OBJECTS_IO) \
445 $(OBJECTS_LOCALE) \
446 $(OBJECTS_MATH) \
447 $(OBJECTS_MBSTRING) \
448 $(OBJECTS_MISC) \
449 $(OBJECTS_PROCESS) \
450 $(OBJECTS_SEARCH) \
451 $(OBJECTS_SETJMP) \
452 $(OBJECTS_SIGNAL) \
453 $(OBJECTS_STDIO) \
454 $(OBJECTS_STDLIB) \
455 $(OBJECTS_STRING) \
456 $(OBJECTS_SYS_STAT) \
457 $(OBJECTS_TIME) \
458 $(OBJECTS_WSTRING)
459
460 $(TARGET_NAME).o: $(OBJECTS)
461 $(LD) -r $(OBJECTS) -o $(TARGET_NAME).o
462
463 # EOF