xref: /llvm-project/libc/test/src/unistd/CMakeLists.txt (revision db6b7a84e6e4949569e756f46357d9f54ad16a03)
1add_custom_target(libc_unistd_unittests)
2
3add_subdirectory(testdata)
4
5add_libc_unittest(
6  access_test
7  SUITE
8    libc_unistd_unittests
9  SRCS
10    access_test.cpp
11  DEPENDS
12    libc.include.unistd
13    libc.src.errno.errno
14    libc.src.fcntl.open
15    libc.src.unistd.access
16    libc.src.unistd.close
17    libc.src.unistd.unlink
18)
19
20add_libc_unittest(
21  chdir_test
22  SUITE
23    libc_unistd_unittests
24  SRCS
25    chdir_test.cpp
26  DEPENDS
27    libc.hdr.fcntl_macros
28    libc.include.unistd
29    libc.src.errno.errno
30    libc.src.unistd.chdir
31    libc.src.unistd.close
32    libc.src.fcntl.open
33    libc.test.UnitTest.ErrnoSetterMatcher
34)
35
36add_libc_unittest(
37  dup_test
38  SUITE
39    libc_unistd_unittests
40  SRCS
41    dup_test.cpp
42  DEPENDS
43    libc.include.unistd
44    libc.src.errno.errno
45    libc.src.fcntl.open
46    libc.src.unistd.close
47    libc.src.unistd.dup
48    libc.src.unistd.read
49    libc.src.unistd.unlink
50    libc.src.unistd.write
51    libc.test.UnitTest.ErrnoSetterMatcher
52)
53
54add_libc_unittest(
55  dup2_test
56  SUITE
57    libc_unistd_unittests
58  SRCS
59    dup2_test.cpp
60  DEPENDS
61    libc.include.unistd
62    libc.src.errno.errno
63    libc.src.fcntl.open
64    libc.src.unistd.close
65    libc.src.unistd.dup2
66    libc.src.unistd.read
67    libc.src.unistd.unlink
68    libc.src.unistd.write
69    libc.test.UnitTest.ErrnoSetterMatcher
70)
71
72add_libc_unittest(
73  dup3_test
74  SUITE
75    libc_unistd_unittests
76  SRCS
77    dup3_test.cpp
78  DEPENDS
79    libc.include.unistd
80    libc.src.errno.errno
81    libc.src.fcntl.open
82    libc.src.unistd.close
83    libc.src.unistd.dup3
84    libc.src.unistd.read
85    libc.src.unistd.unlink
86    libc.src.unistd.write
87    libc.test.UnitTest.ErrnoSetterMatcher
88)
89
90add_libc_unittest(
91  fchdir_test
92  SUITE
93    libc_unistd_unittests
94  SRCS
95    fchdir_test.cpp
96  DEPENDS
97    libc.include.unistd
98    libc.src.errno.errno
99    libc.src.fcntl.open
100    libc.src.unistd.fchdir
101    libc.src.unistd.close
102    libc.test.UnitTest.ErrnoSetterMatcher
103)
104
105add_libc_unittest(
106  ftruncate_test
107  SUITE
108    libc_unistd_unittests
109  SRCS
110    ftruncate_test.cpp
111  DEPENDS
112    libc.include.unistd
113    libc.src.errno.errno
114    libc.src.fcntl.open
115    libc.src.unistd.close
116    libc.src.unistd.read
117    libc.src.unistd.ftruncate
118    libc.src.unistd.unlink
119    libc.src.unistd.write
120    libc.src.__support.CPP.string_view
121)
122
123add_libc_unittest(
124  pread_pwrite_test
125  SUITE
126    libc_unistd_unittests
127  SRCS
128    pread_pwrite_test.cpp
129  DEPENDS
130    libc.include.unistd
131    libc.src.errno.errno
132    libc.src.fcntl.open
133    libc.src.unistd.close
134    libc.src.unistd.fsync
135    libc.src.unistd.pread
136    libc.src.unistd.pwrite
137    libc.src.unistd.unlink
138    libc.src.unistd.write
139    libc.test.UnitTest.ErrnoSetterMatcher
140)
141
142add_libc_unittest(
143  read_write_test
144  SUITE
145    libc_unistd_unittests
146  SRCS
147    read_write_test.cpp
148  DEPENDS
149    libc.include.unistd
150    libc.src.errno.errno
151    libc.src.fcntl.open
152    libc.src.unistd.close
153    libc.src.unistd.fsync
154    libc.src.unistd.read
155    libc.src.unistd.write
156    libc.src.stdio.remove
157    libc.test.UnitTest.ErrnoSetterMatcher
158)
159
160add_libc_unittest(
161  link_test
162  SUITE
163    libc_unistd_unittests
164  SRCS
165    link_test.cpp
166  DEPENDS
167    libc.include.unistd
168    libc.src.errno.errno
169    libc.src.fcntl.open
170    libc.src.unistd.close
171    libc.src.unistd.link
172    libc.src.unistd.unlink
173)
174
175add_libc_unittest(
176  linkat_test
177  SUITE
178    libc_unistd_unittests
179  SRCS
180    linkat_test.cpp
181  DEPENDS
182    libc.include.unistd
183    libc.src.errno.errno
184    libc.src.fcntl.open
185    libc.src.unistd.close
186    libc.src.unistd.linkat
187    libc.src.unistd.unlink
188)
189
190add_libc_unittest(
191  lseek_test
192  SUITE
193    libc_unistd_unittests
194  SRCS
195    lseek_test.cpp
196  DEPENDS
197    libc.include.unistd
198    libc.src.errno.errno
199    libc.src.fcntl.open
200    libc.src.unistd.close
201    libc.src.unistd.lseek
202    libc.src.unistd.read
203    libc.test.UnitTest.ErrnoSetterMatcher
204)
205
206add_libc_unittest(
207  pipe_test
208  SUITE
209    libc_unistd_unittests
210  SRCS
211    pipe_test.cpp
212  DEPENDS
213    libc.include.unistd
214    libc.src.errno.errno
215    libc.src.unistd.close
216    libc.src.unistd.pipe
217    libc.test.UnitTest.ErrnoSetterMatcher
218)
219
220add_libc_unittest(
221  pipe2_test
222  SUITE
223    libc_unistd_unittests
224  SRCS
225    pipe2_test.cpp
226  DEPENDS
227    libc.include.unistd
228    libc.src.errno.errno
229    libc.src.unistd.close
230    libc.src.unistd.pipe2
231    libc.test.UnitTest.ErrnoSetterMatcher
232)
233
234add_libc_unittest(
235  rmdir_test
236  SUITE
237    libc_unistd_unittests
238  SRCS
239    rmdir_test.cpp
240  DEPENDS
241    libc.hdr.fcntl_macros
242    libc.src.errno.errno
243    libc.src.sys.stat.mkdir
244    libc.src.unistd.rmdir
245)
246
247add_libc_unittest(
248  swab_test
249  SUITE
250    libc_unistd_unittests
251  SRCS
252    swab_test.cpp
253  DEPENDS
254    libc.src.unistd.swab
255)
256
257add_libc_unittest(
258  readlink_test
259  SUITE
260    libc_unistd_unittests
261  SRCS
262    readlink_test.cpp
263  DEPENDS
264    libc.include.unistd
265    libc.src.errno.errno
266    libc.src.unistd.readlink
267    libc.src.string.string_utils
268    libc.src.unistd.symlink
269    libc.src.unistd.unlink
270    libc.src.__support.CPP.string_view
271)
272
273add_libc_unittest(
274  readlinkat_test
275  SUITE
276    libc_unistd_unittests
277  SRCS
278    readlinkat_test.cpp
279  DEPENDS
280    libc.hdr.fcntl_macros
281    libc.include.unistd
282    libc.src.errno.errno
283    libc.src.unistd.readlinkat
284    libc.src.string.string_utils
285    libc.src.unistd.symlink
286    libc.src.unistd.unlink
287    libc.src.__support.CPP.string_view
288)
289
290add_libc_unittest(
291  symlink_test
292  SUITE
293    libc_unistd_unittests
294  SRCS
295    symlink_test.cpp
296  DEPENDS
297    libc.include.unistd
298    libc.src.errno.errno
299    libc.src.fcntl.open
300    libc.src.unistd.close
301    libc.src.unistd.symlink
302    libc.src.unistd.unlink
303)
304
305add_libc_unittest(
306  symlinkat_test
307  SUITE
308    libc_unistd_unittests
309  SRCS
310    symlinkat_test.cpp
311  DEPENDS
312    libc.include.unistd
313    libc.src.errno.errno
314    libc.src.fcntl.open
315    libc.src.unistd.close
316    libc.src.unistd.symlinkat
317    libc.src.unistd.unlink
318)
319
320add_libc_unittest(
321  truncate_test
322  SUITE
323    libc_unistd_unittests
324  SRCS
325    truncate_test.cpp
326  DEPENDS
327    libc.include.unistd
328    libc.src.errno.errno
329    libc.src.fcntl.open
330    libc.src.unistd.close
331    libc.src.unistd.read
332    libc.src.unistd.truncate
333    libc.src.unistd.unlink
334    libc.src.unistd.write
335    libc.src.__support.CPP.string_view
336)
337
338add_libc_unittest(
339  unlink_test
340  SUITE
341    libc_unistd_unittests
342  SRCS
343    unlink_test.cpp
344  DEPENDS
345    libc.include.unistd
346    libc.src.errno.errno
347    libc.src.fcntl.open
348    libc.src.unistd.close
349    libc.src.unistd.unlink
350)
351
352add_libc_unittest(
353  unlinkat_test
354  SUITE
355    libc_unistd_unittests
356  SRCS
357    unlinkat_test.cpp
358  DEPENDS
359    libc.include.unistd
360    libc.src.errno.errno
361    libc.src.fcntl.open
362    libc.src.fcntl.openat
363    libc.src.unistd.close
364    libc.src.unistd.unlinkat
365)
366
367add_libc_unittest(
368  getpid_test
369  SUITE
370    libc_unistd_unittests
371  SRCS
372    getpid_test.cpp
373  DEPENDS
374    libc.src.unistd.getpid
375)
376
377add_libc_unittest(
378  getppid_test
379  SUITE
380    libc_unistd_unittests
381  SRCS
382    getppid_test.cpp
383  DEPENDS
384    libc.src.unistd.getppid
385)
386
387add_libc_unittest(
388  getuid_test
389  SUITE
390    libc_unistd_unittests
391  SRCS
392    getuid_test.cpp
393  DEPENDS
394    libc.src.unistd.getuid
395)
396
397add_libc_unittest(
398  isatty_test
399  SUITE
400    libc_unistd_unittests
401  SRCS
402    isatty_test.cpp
403  DEPENDS
404    libc.src.unistd.isatty
405    libc.src.fcntl.open
406    libc.src.unistd.close
407    libc.src.errno.errno
408)
409
410add_libc_unittest(
411  geteuid_test
412  SUITE
413    libc_unistd_unittests
414  SRCS
415    geteuid_test.cpp
416  DEPENDS
417    libc.src.unistd.geteuid
418)
419
420add_libc_unittest(
421  syscall_test
422  SUITE
423    libc_unistd_unittests
424  SRCS
425    syscall_test.cpp
426  DEPENDS
427    libc.include.unistd
428    libc.hdr.fcntl_macros
429    libc.include.sys_syscall
430    libc.src.errno.errno
431    libc.src.unistd.__llvm_libc_syscall
432    libc.test.UnitTest.ErrnoSetterMatcher
433)
434
435
436add_libc_unittest(
437  sysconf_test
438  SUITE
439    libc_unistd_unittests
440  SRCS
441    sysconf_test.cpp
442  DEPENDS
443    libc.include.unistd
444    libc.src.unistd.sysconf
445)
446
447add_libc_unittest(
448  fpathconf_test
449  SUITE
450    libc_unistd_unittests
451  SRCS
452    fpathconf_test.cpp
453  DEPENDS
454    libc.hdr.limits_macros
455    libc.hdr.unistd_macros
456    libc.hdr.sys_stat_macros
457    libc.src.unistd.fpathconf
458    libc.src.fcntl.open
459    libc.src.unistd.close
460)
461
462add_libc_unittest(
463  pathconf_test
464  SUITE
465    libc_unistd_unittests
466  SRCS
467    pathconf_test.cpp
468  DEPENDS
469    libc.hdr.limits_macros
470    libc.hdr.unistd_macros
471    libc.hdr.sys_stat_macros
472    libc.src.unistd.pathconf
473    libc.src.fcntl.open
474    libc.src.unistd.close
475)
476
477add_libc_test(
478  getopt_test
479  HERMETIC_TEST_ONLY # Uses libc's own stderr
480  SUITE
481    libc_unistd_unittests
482  SRCS
483    getopt_test.cpp
484  DEPENDS
485    libc.src.unistd.getopt
486    libc.src.__support.CPP.array
487    libc.src.stdio.fopencookie
488    libc.src.stdio.fflush
489)
490
491add_libc_test(
492  getentropy_test
493  SUITE
494    libc_unistd_unittests
495  SRCS
496    getentropy_test.cpp
497  DEPENDS
498    libc.src.unistd.getentropy
499    libc.src.errno.errno
500    libc.test.UnitTest.ErrnoSetterMatcher
501)
502
503if(LLVM_LIBC_FULL_BUILD)
504  add_libc_test(
505    _exit_test
506    UNIT_TEST_ONLY
507    SUITE
508      libc_unistd_unittests
509    SRCS
510      _exit_test.cpp
511    DEPENDS
512      libc.include.unistd
513      libc.src.unistd._exit
514  )
515endif()
516