[libc][NFC] Move aligned access implementations to separate header
[llvm-project.git] / libc / src / stdio / CMakeLists.txt
blob4747b5daee9e6b850741f8800d1c16e6e16c92a9
1 if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS})
2   add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS})
3 endif()
5 add_subdirectory(printf_core)
6 add_subdirectory(scanf_core)
8 add_entrypoint_object(
9   fopen
10   SRCS
11     fopen.cpp
12   HDRS
13     fopen.h
14   DEPENDS
15     libc.include.stdio
16     libc.src.__support.File.file
17     libc.src.__support.File.platform_file
20 add_entrypoint_object(
21   fclose
22   SRCS
23     fclose.cpp
24   HDRS
25     fclose.h
26   DEPENDS
27     libc.include.stdio
28     libc.src.errno.errno
29     libc.src.__support.File.file
30     libc.src.__support.File.platform_file
33 add_entrypoint_object(
34   clearerr
35   SRCS
36     clearerr.cpp
37   HDRS
38     clearerr.h
39   DEPENDS
40     libc.include.stdio
41     libc.src.__support.File.file
42     libc.src.__support.File.platform_file
45 add_entrypoint_object(
46   clearerr_unlocked
47   SRCS
48     clearerr_unlocked.cpp
49   HDRS
50     clearerr_unlocked.h
51   DEPENDS
52     libc.include.stdio
53     libc.src.__support.File.file
54     libc.src.__support.File.platform_file
57 add_entrypoint_object(
58   feof
59   SRCS
60     feof.cpp
61   HDRS
62     feof.h
63   DEPENDS
64     libc.include.stdio
65     libc.src.__support.File.file
66     libc.src.__support.File.platform_file
69 add_entrypoint_object(
70   feof_unlocked
71   SRCS
72     feof_unlocked.cpp
73   HDRS
74     feof_unlocked.h
75   DEPENDS
76     libc.include.stdio
77     libc.src.__support.File.file
78     libc.src.__support.File.platform_file
81 add_entrypoint_object(
82   ferror
83   SRCS
84     ferror.cpp
85   HDRS
86     ferror.h
87   DEPENDS
88     libc.include.stdio
89     libc.src.__support.File.file
90     libc.src.__support.File.platform_file
93 add_entrypoint_object(
94   ferror_unlocked
95   SRCS
96     ferror_unlocked.cpp
97   HDRS
98     ferror_unlocked.h
99   DEPENDS
100     libc.include.stdio
101     libc.src.__support.File.file
102     libc.src.__support.File.platform_file
105 add_entrypoint_object(
106   fgetc
107   SRCS
108     fgetc.cpp
109   HDRS
110     fgetc.h
111   DEPENDS
112     libc.src.errno.errno
113     libc.include.stdio
114     libc.src.__support.File.file
115     libc.src.__support.File.platform_file
118 add_entrypoint_object(
119   fgetc_unlocked
120   SRCS
121     fgetc_unlocked.cpp
122   HDRS
123     fgetc_unlocked.h
124   DEPENDS
125     libc.src.errno.errno
126     libc.include.stdio
127     libc.src.__support.File.file
128     libc.src.__support.File.platform_file
131 add_entrypoint_object(
132   getc
133   SRCS
134     getc.cpp
135   HDRS
136     getc.h
137   DEPENDS
138     libc.src.errno.errno
139     libc.include.stdio
140     libc.src.__support.File.file
141     libc.src.__support.File.platform_file
144 add_entrypoint_object(
145   getc_unlocked
146   SRCS
147     getc_unlocked.cpp
148   HDRS
149     getc_unlocked.h
150   DEPENDS
151     libc.src.errno.errno
152     libc.include.stdio
153     libc.src.__support.File.file
154     libc.src.__support.File.platform_file
157 add_entrypoint_object(
158   getchar
159   SRCS
160     getchar.cpp
161   HDRS
162     getchar.h
163   DEPENDS
164     libc.src.errno.errno
165     libc.include.stdio
166     libc.src.__support.File.file
167     libc.src.__support.File.platform_file
170 add_entrypoint_object(
171   getchar_unlocked
172   SRCS
173     getc_unlocked.cpp
174   HDRS
175     getc_unlocked.h
176   DEPENDS
177     libc.src.errno.errno
178     libc.include.stdio
179     libc.src.__support.File.file
180     libc.src.__support.File.platform_file
183 add_entrypoint_object(
184   fgets
185   SRCS
186     fgets.cpp
187   HDRS
188     fgets.h
189   DEPENDS
190     libc.src.errno.errno
191     libc.include.stdio
192     libc.src.__support.File.file
193     libc.src.__support.File.platform_file
196 add_entrypoint_object(
197   fflush
198   SRCS
199     fflush.cpp
200   HDRS
201     fflush.h
202   DEPENDS
203     libc.src.errno.errno
204     libc.include.stdio
205     libc.src.__support.File.file
206     libc.src.__support.File.platform_file
209 add_entrypoint_object(
210   flockfile
211   SRCS
212     flockfile.cpp
213   HDRS
214     flockfile.h
215   DEPENDS
216     libc.include.stdio
217     libc.src.__support.File.file
218     libc.src.__support.File.platform_file
221 add_entrypoint_object(
222   funlockfile
223   SRCS
224     funlockfile.cpp
225   HDRS
226     funlockfile.h
227   DEPENDS
228     libc.include.stdio
229     libc.src.__support.File.file
230     libc.src.__support.File.platform_file
233 add_entrypoint_object(
234   fread_unlocked
235   SRCS
236     fread_unlocked.cpp
237   HDRS
238     fread_unlocked.h
239   DEPENDS
240     libc.src.errno.errno
241     libc.include.stdio
242     libc.src.__support.File.file
243     libc.src.__support.File.platform_file
246 add_entrypoint_object(
247   fread
248   SRCS
249     fread.cpp
250   HDRS
251     fread.h
252   DEPENDS
253     libc.src.errno.errno
254     libc.include.stdio
255     libc.src.__support.File.file
256     libc.src.__support.File.platform_file
259 add_entrypoint_object(
260   fwrite_unlocked
261   SRCS
262     fwrite_unlocked.cpp
263   HDRS
264     fwrite_unlocked.h
265   DEPENDS
266     libc.src.errno.errno
267     libc.include.stdio
268     libc.src.__support.File.file
269     libc.src.__support.File.platform_file
272 add_entrypoint_object(
273   fwrite
274   SRCS
275     fwrite.cpp
276   HDRS
277     fwrite.h
278   DEPENDS
279     libc.src.errno.errno
280     libc.include.stdio
281     libc.src.__support.File.file
282     libc.src.__support.File.platform_file
285 add_entrypoint_object(
286   fputc
287   SRCS
288     fputc.cpp
289   HDRS
290     fputc.h
291   DEPENDS
292     libc.src.errno.errno
293     libc.include.stdio
294     libc.src.__support.File.file
295     libc.src.__support.File.platform_file
298 add_entrypoint_object(
299   putc
300   SRCS
301     putc.cpp
302   HDRS
303     putc.h
304   DEPENDS
305     libc.src.errno.errno
306     libc.include.stdio
307     libc.src.__support.File.file
308     libc.src.__support.File.platform_file
311 add_entrypoint_object(
312   putchar
313   SRCS
314     putchar.cpp
315   HDRS
316     putchar.h
317   DEPENDS
318     libc.src.errno.errno
319     libc.include.stdio
320     libc.src.__support.File.file
321     libc.src.__support.File.platform_file
324 add_entrypoint_object(
325   fputs
326   SRCS
327     fputs.cpp
328   HDRS
329     fputs.h
330   DEPENDS
331     libc.src.errno.errno
332     libc.include.stdio
333     libc.src.__support.File.file
334     libc.src.__support.File.platform_file
338 add_entrypoint_object(
339   puts
340   SRCS
341     puts.cpp
342   HDRS
343     puts.h
344   DEPENDS
345     libc.src.errno.errno
346     libc.include.stdio
347     libc.src.__support.File.file
348     libc.src.__support.File.platform_file
351 add_entrypoint_object(
352   fseek
353   SRCS
354     fseek.cpp
355   HDRS
356     fseek.h
357   DEPENDS
358     libc.src.errno.errno
359     libc.include.stdio
360     libc.src.__support.File.file
361     libc.src.__support.File.platform_file
364 add_entrypoint_object(
365   ungetc
366   SRCS
367     ungetc.cpp
368   HDRS
369     ungetc.h
370   DEPENDS
371     libc.include.stdio
372     libc.src.__support.File.file
373     libc.src.__support.File.platform_file
376 add_entrypoint_object(
377   fopencookie
378   SRCS
379     fopencookie.cpp
380   HDRS
381     fopencookie.h
382   DEPENDS
383     libc.include.stdio
384     libc.src.__support.CPP.new
385     libc.src.__support.File.file
388 add_entrypoint_object(
389   stdin
390   SRCS
391     stdin.cpp
392   HDRS
393     stdin.h
394   DEPENDS
395     libc.include.stdio
396     libc.src.__support.File.file
397     libc.src.__support.File.platform_file
400 add_entrypoint_object(
401   stdout
402   SRCS
403     stdout.cpp
404   HDRS
405     stdout.h
406   DEPENDS
407     libc.include.stdio
408     libc.src.__support.File.file
409     libc.src.__support.File.platform_file
412 add_entrypoint_object(
413   stderr
414   SRCS
415     stderr.cpp
416   HDRS
417     stderr.h
418   DEPENDS
419     libc.include.stdio
420     libc.src.__support.File.file
421     libc.src.__support.File.platform_file
424 add_entrypoint_object(
425   setbuf
426   SRCS
427     setbuf.cpp
428   HDRS
429     setbuf.h
430   DEPENDS
431     libc.src.errno.errno
432     libc.include.stdio
433     libc.src.__support.File.file
434     libc.src.__support.File.platform_file
437 add_entrypoint_object(
438   setvbuf
439   SRCS
440     setvbuf.cpp
441   HDRS
442     setvbuf.h
443   DEPENDS
444     libc.src.errno.errno
445     libc.include.stdio
446     libc.src.__support.File.file
447     libc.src.__support.File.platform_file
450 add_entrypoint_object(
451   sscanf
452   SRCS
453     sscanf.cpp
454   HDRS
455     sscanf.h
456   DEPENDS
457     libc.src.__support.arg_list
458     libc.src.stdio.scanf_core.string_reader
459     libc.src.stdio.scanf_core.reader
460     libc.src.stdio.scanf_core.scanf_main
463 add_entrypoint_object(
464   fscanf
465   SRCS
466     fscanf.cpp
467   HDRS
468     fscanf.h
469   DEPENDS
470     libc.src.__support.arg_list
471     libc.src.stdio.scanf_core.vfscanf_internal
474 add_entrypoint_object(
475   scanf
476   SRCS
477     scanf.cpp
478   HDRS
479     scanf.h
480   DEPENDS
481     libc.src.__support.arg_list
482     libc.src.stdio.scanf_core.vfscanf_internal
485 add_entrypoint_object(
486   sprintf
487   SRCS
488     sprintf.cpp
489   HDRS
490     sprintf.h
491   DEPENDS
492     libc.src.stdio.printf_core.printf_main
493     libc.src.stdio.printf_core.string_writer
494     libc.src.stdio.printf_core.writer
497 add_entrypoint_object(
498   snprintf
499   SRCS
500     snprintf.cpp
501   HDRS
502     snprintf.h
503   DEPENDS
504     libc.src.stdio.printf_core.printf_main
505     libc.src.stdio.printf_core.string_writer
506     libc.src.stdio.printf_core.writer
509 list(APPEND printf_deps 
510       libc.src.__support.arg_list 
511       libc.src.stdio.printf_core.vfprintf_internal
513 if(LLVM_LIBC_FULL_BUILD)
514  list(APPEND printf_deps  
515       libc.src.__support.File.file 
516       libc.src.__support.File.platform_file 
517   )
518 else()
519  set(printf_copts "-DLIBC_COPT_PRINTF_USE_SYSTEM_FILE")
520 endif()
522 add_entrypoint_object(
523   printf
524   SRCS
525     printf.cpp
526   HDRS
527     printf.h
528   DEPENDS
529     ${printf_deps}
530   COMPILE_OPTIONS
531     ${printf_copts}
534 add_entrypoint_object(
535   fprintf
536   SRCS
537     fprintf.cpp
538   HDRS
539     fprintf.h
540   DEPENDS
541     libc.src.__support.arg_list
542     libc.src.stdio.printf_core.vfprintf_internal
543   COMPILE_OPTIONS
544     ${printf_copts}
547 add_entrypoint_object(
548   ftell
549   SRCS
550     ftell.cpp
551   HDRS
552     ftell.h
553   DEPENDS
554     libc.src.errno.errno
555     libc.include.stdio
556     libc.src.__support.File.file
557     libc.src.__support.File.platform_file
560 add_entrypoint_object(
561   remove
562   ALIAS
563   DEPENDS
564     .${LIBC_TARGET_OS}.remove