1
2SD_ASAN+=	asan
3SD_ASAN+=	asan-preinit
4SD_ASAN+=	asan_cxx
5SD_ASAN+=	asan_dynamic
6SD_ASAN+=	asan_static
7
8SD_CFI+=	cfi
9SD_CFI+= 	cfi_diag
10
11SD_DD+=		dd
12
13SD_FUZZER+=	fuzzer
14SD_FUZZER+=	fuzzer_interceptors
15SD_FUZZER+=	fuzzer_no_main
16
17SD_INCLUDE+=	include
18
19SD_MSAN+=	msan
20SD_MSAN+=	msan_cxx
21
22SD_PROFILE+=	profile
23
24SD_SAFESTACK+=	safestack
25
26SD_STATS+=	stats
27SD_STATS+=	stats_client
28
29SD_TSAN+=	tsan
30SD_TSAN+=	tsan_cxx
31
32SD_UBSAN+=	ubsan_minimal
33SD_UBSAN+=	ubsan_standalone
34SD_UBSAN+=	ubsan_standalone_cxx
35
36SD_XRAY+=	xray
37SD_XRAY+=	xray-basic
38SD_XRAY+=	xray-fdr
39SD_XRAY+=	xray-profiling
40
41.if ${MACHINE_CPUARCH} == "aarch64"
42SUBDIR+=	${SD_ASAN}
43SUBDIR+=	${SD_CFI}
44SUBDIR+=	${SD_FUZZER}
45SUBDIR+=	${SD_MSAN}
46SUBDIR+=	${SD_SAFESTACK}
47SUBDIR+=	${SD_STATS}
48SUBDIR+=	${SD_TSAN}
49SUBDIR+=	${SD_UBSAN}
50SUBDIR+=	${SD_XRAY}
51.elif ${MACHINE_CPUARCH} == "amd64"
52SUBDIR+=	${SD_ASAN}
53SUBDIR+=	${SD_CFI}
54SUBDIR+=	${SD_DD}
55SUBDIR+=	${SD_FUZZER}
56SUBDIR+=	${SD_MSAN}
57SUBDIR+=	${SD_SAFESTACK}
58SUBDIR+=	${SD_STATS}
59SUBDIR+=	${SD_TSAN}
60SUBDIR+=	${SD_UBSAN}
61SUBDIR+=	${SD_XRAY}
62.elif ${MACHINE_CPUARCH} == "arm"
63# nothing for 32-bit arm yet
64.elif ${MACHINE_CPUARCH} == "i386"
65SUBDIR+=	${SD_ASAN}
66SUBDIR+=	${SD_CFI}
67SUBDIR+=	${SD_SAFESTACK}
68SUBDIR+=	${SD_STATS}
69SUBDIR+=	${SD_UBSAN}
70.elif ${MACHINE_CPUARCH} == "powerpc"
71. if ${MACHINE_ARCH} == "powerpc64"
72SUBDIR+=	${SD_ASAN}
73SUBDIR+=	${SD_MSAN}
74SUBDIR+=	${SD_STATS}
75SUBDIR+=	${SD_TSAN}
76SUBDIR+=	${SD_UBSAN}
77. elif ${MACHINE_ARCH} == "powerpc64le"
78SUBDIR+=	${SD_ASAN}
79SUBDIR+=	${SD_MSAN}
80SUBDIR+=	${SD_STATS}
81SUBDIR+=	${SD_TSAN}
82SUBDIR+=	${SD_UBSAN}
83SUBDIR+=	${SD_XRAY}
84. else
85# nothing for other powerpc yet
86. endif
87.elif ${MACHINE_CPUARCH} == "riscv"
88SUBDIR+=	${SD_ASAN}
89SUBDIR+=	${SD_STATS}
90SUBDIR+=	${SD_UBSAN}
91.endif
92
93SUBDIR+=	${SD_INCLUDE}
94SUBDIR+=	${SD_PROFILE}
95
96SUBDIR_PARALLEL=
97
98.include <bsd.subdir.mk>
99