1.include <bsd.init.mk> 2.include "../clang.pre.mk" 3 4.PATH: ${CLANG_SRCS}/lib/Headers 5 6INCSGROUPS+= INCS 7INCSDIR= ${LIBDIR}/clang/18/include 8INCS+= __clang_cuda_builtin_vars.h 9INCS+= __clang_cuda_cmath.h 10INCS+= __clang_cuda_complex_builtins.h 11INCS+= __clang_cuda_device_functions.h 12INCS+= __clang_cuda_intrinsics.h 13INCS+= __clang_cuda_libdevice_declares.h 14INCS+= __clang_cuda_math.h 15INCS+= __clang_cuda_math_forward_declares.h 16INCS+= __clang_cuda_runtime_wrapper.h 17INCS+= __clang_cuda_texture_intrinsics.h 18INCS+= __clang_hip_cmath.h 19INCS+= __clang_hip_libdevice_declares.h 20INCS+= __clang_hip_math.h 21INCS+= __clang_hip_runtime_wrapper.h 22INCS+= __clang_hip_stdlib.h 23INCS+= __stdarg___gnuc_va_list.h 24INCS+= __stdarg___va_copy.h 25INCS+= __stdarg_va_arg.h 26INCS+= __stdarg_va_copy.h 27INCS+= __stdarg_va_list.h 28INCS+= __stddef_max_align_t.h 29INCS+= __stddef_null.h 30INCS+= __stddef_nullptr_t.h 31INCS+= __stddef_offsetof.h 32INCS+= __stddef_ptrdiff_t.h 33INCS+= __stddef_rsize_t.h 34INCS+= __stddef_size_t.h 35INCS+= __stddef_unreachable.h 36INCS+= __stddef_wchar_t.h 37INCS+= __stddef_wint_t.h 38INCS+= __wmmintrin_aes.h 39INCS+= __wmmintrin_pclmul.h 40INCS+= adcintrin.h 41INCS+= adxintrin.h 42INCS+= altivec.h 43INCS+= ammintrin.h 44INCS+= amxcomplexintrin.h 45INCS+= amxfp16intrin.h 46INCS+= amxintrin.h 47INCS+= arm64intr.h 48INCS+= arm_acle.h 49INCS+= arm_cmse.h 50INCS+= arm_neon_sve_bridge.h 51INCS+= armintr.h 52INCS+= avx2intrin.h 53INCS+= avx512bf16intrin.h 54INCS+= avx512bitalgintrin.h 55INCS+= avx512bwintrin.h 56INCS+= avx512cdintrin.h 57INCS+= avx512dqintrin.h 58INCS+= avx512erintrin.h 59INCS+= avx512fintrin.h 60INCS+= avx512fp16intrin.h 61INCS+= avx512ifmaintrin.h 62INCS+= avx512ifmavlintrin.h 63INCS+= avx512pfintrin.h 64INCS+= avx512vbmi2intrin.h 65INCS+= avx512vbmiintrin.h 66INCS+= avx512vbmivlintrin.h 67INCS+= avx512vlbf16intrin.h 68INCS+= avx512vlbitalgintrin.h 69INCS+= avx512vlbwintrin.h 70INCS+= avx512vlcdintrin.h 71INCS+= avx512vldqintrin.h 72INCS+= avx512vlfp16intrin.h 73INCS+= avx512vlintrin.h 74INCS+= avx512vlvbmi2intrin.h 75INCS+= avx512vlvnniintrin.h 76INCS+= avx512vlvp2intersectintrin.h 77INCS+= avx512vnniintrin.h 78INCS+= avx512vp2intersectintrin.h 79INCS+= avx512vpopcntdqintrin.h 80INCS+= avx512vpopcntdqvlintrin.h 81INCS+= avxifmaintrin.h 82INCS+= avxintrin.h 83INCS+= avxneconvertintrin.h 84INCS+= avxvnniint16intrin.h 85INCS+= avxvnniint8intrin.h 86INCS+= avxvnniintrin.h 87INCS+= bmi2intrin.h 88INCS+= bmiintrin.h 89INCS+= builtins.h 90INCS+= cet.h 91INCS+= cetintrin.h 92INCS+= cldemoteintrin.h 93INCS+= clflushoptintrin.h 94INCS+= clwbintrin.h 95INCS+= clzerointrin.h 96INCS+= cmpccxaddintrin.h 97INCS+= cpuid.h 98INCS+= crc32intrin.h 99INCS+= emmintrin.h 100INCS+= enqcmdintrin.h 101INCS+= f16cintrin.h 102INCS+= fma4intrin.h 103INCS+= fmaintrin.h 104INCS+= fxsrintrin.h 105INCS+= gfniintrin.h 106INCS+= hexagon_circ_brev_intrinsics.h 107INCS+= hexagon_protos.h 108INCS+= hexagon_types.h 109INCS+= hlsl.h 110INCS+= hresetintrin.h 111INCS+= htmintrin.h 112INCS+= htmxlintrin.h 113INCS+= hvx_hexagon_protos.h 114INCS+= ia32intrin.h 115INCS+= immintrin.h 116INCS+= invpcidintrin.h 117INCS+= keylockerintrin.h 118INCS+= larchintrin.h 119INCS+= lasxintrin.h 120INCS+= lsxintrin.h 121INCS+= lwpintrin.h 122INCS+= lzcntintrin.h 123INCS+= mm3dnow.h 124INCS+= mm_malloc.h 125INCS+= mmintrin.h 126INCS+= module.modulemap 127INCS+= movdirintrin.h 128INCS+= msa.h 129INCS+= mwaitxintrin.h 130INCS+= nmmintrin.h 131INCS+= opencl-c-base.h 132INCS+= opencl-c.h 133INCS+= pconfigintrin.h 134INCS+= pkuintrin.h 135INCS+= pmmintrin.h 136INCS+= popcntintrin.h 137INCS+= prfchiintrin.h 138INCS+= prfchwintrin.h 139INCS+= ptwriteintrin.h 140INCS+= raointintrin.h 141INCS+= rdpruintrin.h 142INCS+= rdseedintrin.h 143INCS+= riscv_bitmanip.h 144INCS+= riscv_crypto.h 145INCS+= riscv_ntlh.h 146INCS+= riscv_vector.h 147INCS+= rtmintrin.h 148INCS+= s390intrin.h 149INCS+= serializeintrin.h 150INCS+= sgxintrin.h 151INCS+= sha512intrin.h 152INCS+= shaintrin.h 153INCS+= sifive_vector.h 154INCS+= sm3intrin.h 155INCS+= sm4intrin.h 156INCS+= smmintrin.h 157INCS+= stdckdint.h 158INCS+= tbmintrin.h 159INCS+= tmmintrin.h 160INCS+= tsxldtrkintrin.h 161INCS+= uintrintrin.h 162INCS+= usermsrintrin.h 163INCS+= vadefs.h 164INCS+= vaesintrin.h 165INCS+= vecintrin.h 166INCS+= velintrin.h 167INCS+= velintrin_approx.h 168INCS+= velintrin_gen.h 169INCS+= vpclmulqdqintrin.h 170INCS+= waitpkgintrin.h 171INCS+= wasm_simd128.h 172INCS+= wbnoinvdintrin.h 173INCS+= wmmintrin.h 174INCS+= x86gprintrin.h 175INCS+= x86intrin.h 176INCS+= xmmintrin.h 177INCS+= xopintrin.h 178INCS+= xsavecintrin.h 179INCS+= xsaveintrin.h 180INCS+= xsaveoptintrin.h 181INCS+= xsavesintrin.h 182INCS+= xtestintrin.h 183INCS+= ${GENINCS} 184 185# Headers which possibly conflict with our own versions: 186.ifdef INSTALL_CONFLICTING_CLANG_HEADERS 187INCS+= float.h 188INCS+= intrin.h 189INCS+= inttypes.h 190INCS+= iso646.h 191INCS+= limits.h 192INCS+= stdalign.h 193INCS+= stdarg.h 194INCS+= stdatomic.h 195INCS+= stdbool.h 196INCS+= stddef.h 197INCS+= stdint.h 198INCS+= stdnoreturn.h 199INCS+= tgmath.h 200INCS+= unwind.h 201INCS+= varargs.h 202.endif # INSTALL_CONFLICTING_CLANG_HEADERS 203 204INCSGROUPS+= CUDA 205CUDADIR= ${INCSDIR}/cuda_wrappers 206CUDA+= cuda_wrappers/algorithm 207CUDA+= cuda_wrappers/cmath 208CUDA+= cuda_wrappers/complex 209CUDA+= cuda_wrappers/new 210 211INCSGROUPS+= CUDB 212CUDBDIR= ${INCSDIR}/cuda_wrappers/bits 213CUDB+= cuda_wrappers/bits/basic_string.h 214CUDB+= cuda_wrappers/bits/basic_string.tcc 215CUDB+= cuda_wrappers/bits/shared_ptr_base.h 216 217INCSGROUPS+= HLSL 218HLSLDIR= ${INCSDIR}/hlsl 219HLSL+= hlsl/hlsl_basic_types.h 220HLSL+= hlsl/hlsl_intrinsics.h 221 222INCSGROUPS+= OMP 223OMPDIR= ${INCSDIR}/openmp_wrappers 224OMP+= openmp_wrappers/__clang_openmp_device_functions.h 225OMP+= openmp_wrappers/cmath 226OMP+= openmp_wrappers/complex 227OMP+= openmp_wrappers/complex.h 228OMP+= openmp_wrappers/complex_cmath.h 229OMP+= openmp_wrappers/math.h 230OMP+= openmp_wrappers/new 231 232INCSGROUPS+= PPC 233PPCDIR= ${INCSDIR}/ppc_wrappers 234PPC+= ppc_wrappers/bmi2intrin.h 235PPC+= ppc_wrappers/bmiintrin.h 236PPC+= ppc_wrappers/emmintrin.h 237PPC+= ppc_wrappers/immintrin.h 238PPC+= ppc_wrappers/mm_malloc.h 239PPC+= ppc_wrappers/mmintrin.h 240PPC+= ppc_wrappers/nmmintrin.h 241PPC+= ppc_wrappers/pmmintrin.h 242PPC+= ppc_wrappers/smmintrin.h 243PPC+= ppc_wrappers/tmmintrin.h 244PPC+= ppc_wrappers/x86gprintrin.h 245PPC+= ppc_wrappers/x86intrin.h 246PPC+= ppc_wrappers/xmmintrin.h 247 248.for hdr in bf16/bf16 cde/cde-header fp16/fp16 mve/mve-header neon/neon \ 249 sve/sve-header 250arm_${hdr:H}.h: ${CLANG_SRCS}/include/clang/Basic/arm_${hdr:H}.td 251 ${CLANG_TBLGEN} -gen-arm-${hdr:T} \ 252 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 253 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_${hdr:H}.td 254GENINCS+= arm_${hdr:H}.h 255.endfor 256 257arm_sme_draft_spec_subject_to_change.h: ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 258 ${CLANG_TBLGEN} -gen-arm-sme-header \ 259 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 260 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 261GENINCS+= arm_sme_draft_spec_subject_to_change.h 262 263arm_vector_types.h: ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 264 ${CLANG_TBLGEN} -gen-arm-vector-type \ 265 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 266 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_neon.td 267GENINCS+= arm_vector_types.h 268 269.for hdr in vector/vector-header 270riscv_${hdr:H}.h: ${CLANG_SRCS}/include/clang/Basic/riscv_${hdr:H}.td 271 ${CLANG_TBLGEN} -gen-riscv-${hdr:T} \ 272 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 273 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_${hdr:H}.td 274GENINCS+= riscv_${hdr:H}.h 275.endfor 276 277CLEANFILES= ${GENINCS} ${GENINCS:C/$/.d/} 278 279.include <bsd.prog.mk> 280