xref: /llvm-project/libc/fuzzing/stdlib/CMakeLists.txt (revision a738d81cd2822698539b0482af48d49d91ea5a2e)
1add_libc_fuzzer(
2  quick_sort_fuzz
3  SRCS
4    quick_sort_fuzz.cpp
5  DEPENDS
6    libc.src.stdlib.qsort_util
7)
8
9add_libc_fuzzer(
10  heap_sort_fuzz
11  SRCS
12    heap_sort_fuzz.cpp
13  DEPENDS
14    libc.src.stdlib.qsort_util
15)
16
17add_libc_fuzzer(
18  atof_differential_fuzz
19  SRCS
20    atof_differential_fuzz.cpp
21  HDRS
22    StringParserOutputDiff.h
23  DEPENDS
24    libc.src.stdlib.atof
25)
26
27add_libc_fuzzer(
28  strtofloat_fuzz
29  NEED_MPFR
30  SRCS
31    strtofloat_fuzz.cpp
32  DEPENDS
33    libc.hdr.math_macros
34    libc.src.stdlib.atof
35    libc.src.stdlib.strtof
36    libc.src.stdlib.strtod
37    libc.src.stdlib.strtold
38    libc.src.__support.FPUtil.fp_bits
39)
40
41add_libc_fuzzer(
42  strtointeger_differential_fuzz
43  SRCS
44    strtointeger_differential_fuzz.cpp
45  HDRS
46    StringParserOutputDiff.h
47  DEPENDS
48    libc.src.stdlib.atoi
49    libc.src.stdlib.atol
50    libc.src.stdlib.atoll
51    libc.src.stdlib.strtol
52    libc.src.stdlib.strtoll
53    libc.src.stdlib.strtoul
54    libc.src.stdlib.strtoull
55)
56
57add_libc_fuzzer(
58  strtointeger_differential_fuzz_cleaner
59  SRCS
60    strtointeger_differential_fuzz.cpp
61  HDRS
62    StringParserOutputDiff.h
63  DEPENDS
64    libc.src.stdlib.atoi
65    libc.src.stdlib.atol
66    libc.src.stdlib.atoll
67    libc.src.stdlib.strtol
68    libc.src.stdlib.strtoll
69    libc.src.stdlib.strtoul
70    libc.src.stdlib.strtoull
71  COMPILE_OPTIONS
72    -DLIBC_COPT_FUZZ_ATOI_CLEANER_INPUT
73)
74
75add_libc_fuzzer(
76  strtointeger_fuzz
77  SRCS
78    strtointeger_fuzz.cpp
79  DEPENDS
80    libc.src.stdlib.atoi
81    libc.src.stdlib.atol
82    libc.src.stdlib.atoll
83    libc.src.stdlib.strtol
84    libc.src.stdlib.strtoll
85    libc.src.stdlib.strtoul
86    libc.src.stdlib.strtoull
87)
88